Linuxシステムで「有効なホームディレクトリ」を変更する

Linuxシステムで「有効なホームディレクトリ」を変更する

依存関係が非常に高いリモートコンピュータでいくつかのPythonコードを実行する必要があります。私のホームディレクトリには(.../home/d/my-name)ディスクスペースがほとんどないため、通常は(/local/my-name)「有効な」ホームディレクトリとして大容量ディスクがマウントされている別のディレクトリを使用します。

依存関係をインストールしようとすると、ホームディレクトリにスペースが不足します。したがって、私はこれらすべての依存関係をディレクトリに保存したいと思いますlocal(そしてこれが将来のデフォルトになることに完全に同意します)。私はConda環境を使用しており、その中でpipを実行しています。私はpipに家以外の場所に物を保管するように指示することができることを知っていますが、家を参照するソフトウェアに問題が発生する可能性があります。したがって、私のホームディレクトリをに配置するように効果的に変更したいと思いますlocal。これは可能ですか?関連がある場合、sudo権限はありません。

答え1

move-and-symlinkこの種の問題に対する伝統的な解決策です。

~/lib/たとえば、ディレクトリ全体を次の場所に移動したい場合/local/my-name

mv ~/lib/ /local/my-name/
ln -sf /local/my-name/lib/ ~/

/ちなみに、シンボリックリンクソースの末尾に末尾は/local/my-name/lib/必要ありませんが、強くお勧めします。これにより、bashのタブの完成がよりうまく機能します。

ホームディレクトリの親ディレクトリへの書き込み権限がある場合(たとえばsudoを使用)、ホームディレクトリ全体を/ localに移動することもできます。usermod -m -d変更を使用することもできます/etc/passwd

関連情報