すべてのインタラクティブ端末(私のユーザーアカウントやsudoなど)にエイリアスを適用するのがなぜ難しいのかわかりません。ほとんどのWeb検索結果はBASHに関するものですが、私のシェルはマンジャロLinux(ZSH)なので、/etc/bash.bashrcは機能しません。
この回答/etc/zshrcに入れる必要がありますが、手動で実行しないとログイン時にファイルが適用されないようですsource /etc/zshrc
。ログイン時に(ユーザーsshまたはそのユーザーのsudo)適用されないのはなぜですか?
PS:私は/etc/zshrc、/etc/zshenv、/etc/zprofileも試しました。このページは言う。ログイン時には適用されません。
答え1
システムファイルの場所はオペレーティングシステムによって異なります。/etc/zshrc
そして友達(リストに記載されています)オンライン文書)がデフォルトの場所ですが、一部のディストリビューションでは、またはなど/etc/zsh/z*
の他の場所を使用します/usr/local/etc/z*
。man zsh
「スタート/終了ファイル」または「ファイル」でシステムを確認してください。
通常、システム構成ファイルはzshと共にインストールされますが、コメントのみが含まれています。見つからない場合は、間違った場所を探しています。
Arch Linuxではzsh 起動ファイルすべてそこにあります/etc/zsh
。
システム起動ファイルにエイリアスを追加することは一般的ではありません。エイリアスは個人の好みに応じて決定されることがよくあります。ルートシェルを実行するときに好みのエイリアスを取得するには、HOME
環境変数がホームディレクトリを指していることを確認してください。 sudoの使用:
- 実行してリストに
sudo zsh
あることを確認してくださいHOME
。env_keep
/etc/sudoers
- または実行し、追加のオプションが設定されていないことを確認
sudo -s
してください。/etc/sudoers
set_home
always_set_home
- または実行してください
sudo HOME=~ zsh
。
答え2
間違った文書を読んでいます。まったくzsh
使用されていません。/etc/zshrc
公式文書は次のとおりです。https://zsh.sourceforge.io/Intro/intro_3.html
いくつかの良いチュートリアルもあります:https://www.zerotohero.dev/zshell-startup-files/