Freebsd
FreeBSD 創建沒有實用程序的使用者?
我有一個通過
pw
FreeBSD 上的實用程序創建的使用者。我使用的完整命令是: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
執行時失去,並且無論如何都不會被應用程序看到。