usermod
を使用してユーザーのホームディレクトリを変更することはできません。
[root@server ~]# usermod -d /some/opther/path userfoo
usermod: user userfoo is currently logged in
[root@server ~]$ who
myuser pts/0 2013-06-17 11:29 (1.2.3.4)
ご覧のとおり、ログインしているのは私だけです。userfoodはどこにもログインしていません。
[root@waccoe-web ~]$ ps aux | grep userfoo
root 16724 0.0 0.0 103236 884 pts/0 S+ 11:36 0:00 grep userfoo
userfooにも実行中のプロセスはありません。
userfooは、サーバーへのFTPアクセスのためだけに存在します。 FTPサーバー(ProFTPD)を停止、起動、再起動して、FTP接続がハングしていないことを確認しました。このサーバーは、userfooがログインしていると見なします。
usermod
コマンドuserfooがログインしていないことを納得させる、または使用中のアカウントの痕跡を削除するにはどうすればよいですか?/etc/passwdを編集できると思いますが、それは私には問題を回避しているようです。それとも、その事実は大丈夫ですか?ユーザーがまだログインしているとシステムが判断した場合、すべてのセッションが終了するまで、これは機能しないと思いました。
[root@server ~]# cat /etc/issue
CentOS release 6.3 (Final)
数週間後、新しいカーネルをコンパイルしたので、とにかくボックスを再起動する必要がありました。これは本質的に解決されていませんでしたが、今ではこの問題の調査を続けることができません。