最近、すべてのドットファイルをVCSに入れ始め、完全な設定のために、デフォルトフォルダのフォルダなどの個人用フォルダを作成してPATHからコマンドを検索するたびに、フォルダは次の「マージ」とマニュアルusr
ページusr
までです。それでは質問に答えてみましょう。
- 私に何の理由もあるのかしてはいけないこれをするの?私が見ていない欠点やより良い選択肢がありますか?
- 欠点なしにこれを達成する方法は何ですか?
私はすでに知っていますこの問題しかし、私が理解しているように、親の答えは実際にファイルをに保存するオプションを提案し、フォルダをに追加するのと/usr
似ていることを好みますが、PATH
実際にファイルを移動せずに別の場所で検索するだけです。
私もoverlayfsを調べましたが、起動時に実行されているようです。より高速ですが、ログイン時にファイルをマージすることをお勧めします。
答え1
一度だけ作ってください:
cd
mkdir -p usr/bin usr/man
あなた~/.profile
または他のシェル初期化ファイルに追加します。
PATH="$PATH:~/usr/bin"
MANPATH="$MANPATH:~/usr/man"
...その後、そのディレクトリに内容を置きます。
メモ:
PATH は左から右に検索されます。というプログラムを開発すれば、
robot
順序は重要ではないでしょう。というプログラムを開発しcat
て代わりに実行するには、たとえば次のように/bin/cat
入力する必要があります。~/usr/bin
/bin
$PATH
PATH="~/usr/bin:$PATH"
セキュリティ上危険な場合がありますのでご注意ください。これにより、攻撃者がホームディレクトリへの書き込みアクセス権を取得したら、ディレクトリにトロイの木馬を残して
~/usr/bin
アカウントを奪取することができます。- もっとクールにしたい場合は、現在の値を見て中どこかに
$PATH
配置できます。~/usr/bin
これはメンテナンスが難しい場合があります。 - 上記には深刻な問題はありませんが、
~/bin
代わりに使用する方が良いかもしれません~/usr/bin
。実際には、システムによっては~/bin
(別名$HOME/bin
)が$PATH
基本的にすでに存在することがわかります。
答え2
これが構造全体/usr/local
の目的です。システム管理者がカスタムコンテンツを追加できる場合を除き、/usr
システムパッケージ管理者が管理するようになっています。/usr/local
/usr/local/bin
すでに存在する可能性がありますPATH
。