
OS X では、パスワードのないユーザーを持つことが可能です。dscl
パスワード付きでそれらを調べると、 として表示されます。これは、*
などのデータベースのユーザーなどのシステム ユーザーに使用されます。これのよいところは、これらのユーザーはログイン画面に表示されず、 などなしではログインできないことです。mysql
pgsql
sudo
そのようなユーザーを削除した後、いくつか試してみて、再作成したいと思いましたが、できませんでした。空のパスワードを持つユーザーを取得し、パスワードを に設定することができました*
。しかし、どれも上記と同じ効果はなく、ユーザーがログイン画面に表示されました。
そのようなユーザーをどのように作成しますか?
答え1
passwd --delete <username>
でユーザーを作成した後、を実行できますadduser
。その後は、パスワードを入力せずにログインできるようになります。
答え2
を使用すると、ではなく をusermod
使用するパスワードが無効になります。!
*
usermod -L <username>
usermod のマニュアルページから:
-L, --lock Lock a user's password. This puts a '!' in front of the encrypted password, effectively disabling the password.
答え3
/etc/passwd 内の、ホーム ディレクトリが /dev/null、シェルが /sbin/nologin のユーザーは、sudo コマンドに使用できますが、実際にログインすることはできません。たとえば、
私の/etc/passwdから
tcpdump:x:104:441:added by portage for tcpdump:/dev/null:/sbin/nologin
これによって XDM ログイン画面からも消えるようになることを半分覚えていますが、私はもう XDM を使用していないので、それは推測です :-)
答え4
OSX については確信はありませんが、FreeBSD では以下を使用できます。
pw add user mymuser -g mygroup -s /nonexistent -h -
オプション-
に渡される の値は、master.passwd のパスワード フィールドを に設定し、ログイン不要のアカウントを作成するように指示します。シェルの設定は厳密には必要ではありませんが、/etc/pw.conf からのシェル チェックを回避します。-h
pw
*