Freebsd

FreeBSD 創建沒有實用程序的使用者?

  • December 10, 2015

我有一個通過pwFreeBSD 上的實用程序創建的使用者。我使用的完整命令是:

pw add user example -s /usr/local/scripts/example.sh -w none

使用者可以作為範例登錄,而無需密碼,該密碼將執行範例腳本。腳本執行完成後,使用者將自動註銷。

我想複製這個使用者,但我正在尋找一種不需要實用程序的方法。例如,我研究過修改/etc/passwd文件,但它看起來不起作用。我說它不起作用的原因是它提示我輸入密碼,當然我沒有我試圖添加的這個使用者的密碼。

我追求的可能嗎?我是否絕對必須使用實用程序,例如pw

只是一個快速的編輯。也許我唯一缺少的是將使用者設置為不需要密碼。我的編輯/etc/passwd可能是正確的,我所需要的只是以某種方式將此新使用者設置為不需要密碼。

您正在編輯錯誤的文件,並且您實際上並沒有修改系統帳戶數據庫,這就是您沒有看到任何修改的原因。

這不是 Linux。帳戶數據庫的主源文件/etc/master.passwd. /etc/passwd是版本 7 的 Unix 兼容文件,從源文件生成的從屬文件。想要查找資料的應用程序所查詢的實際系統帳戶數據庫是一對 Berkeley DB 文件,也是由pwd_mkdb.

vipw自動執行pwd_mkdb。如果你手動編輯/etc/master.passwd,你必須(小心地)pwd_mkdb自己執行。

如果您手動編輯,/etc/passwd您的更改將在下次pwd_mkdb執行時失去,並且無論如何都不會被應用程序看到。

引用自:https://unix.stackexchange.com/questions/248591