ホームディレクトリを移動したいです。古いホームと新しいホームの両方に対する読み取り、書き込み、および実行権限があります。なぜ私の家がどこにいるのかをLinuxに伝えることはできませんか?
usermod -m -d /newhome/username username
可能だと思いますが、ルートアクセスが必要です。他の設定ではこれを行う機能があります。たとえば、chsh
setuid フラグを使用すると が修正されます/etc/passwd
。chhome
ユーザーがホームディレクトリ設定を変更できるようにするのは妥当ではありませんか?
提供しないのには妥当な理由があるようですが、残念ですね。どんなアイデアがありますか?
答え1
まず、変更したいホームディレクトリのユーザーとして現在ログインしている間は、この変更を実行できません。同じユーザー名で実行されている別のプロセスがあると、usermodが失敗するためです。ルート権限を持つコンピュータの他のアカウントを介してホームディレクトリを変更する方法はいくつかあります。これらの変更をすぐに実行すると、Linuxに新しいディレクトリがどこにあるかを知らせるために必要なすべてのファイルを編集することなく、bashのような作業を台無しにすることができます。
これは、ユーザーが自分のホームディレクトリを必要に応じてランダムに変更し、その過程でファイルやアカウントへのアクセス権が永久に失われることを防ぐ機能です。