本日も乙

ただの自己満足な備忘録。

パスを通す(一般ユーザ、rootユーザ)

コマンドを実行するためのパスを変更する。

大抵のコマンドは、/usr/binや/binにあるが、使いたいコマンドによっては、/usr/sbinなどに置かれているため、そのままではコマンドを実行できない。 フルパスで入力すればコマンドを実行できるが、毎回入力するのは大変面倒。 例)/usr/sbin/usermod よって、そのような場合パスを通す必要がある。

  1. 現在のパスを確認する
  2. [~]$ echo $PATH
    /usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/ohsawa/bin:
    
    hogeは現在のユーザ名。 「:」で区切っている。
  3. パスを追加
  4. 現在のユーザのホームディレクトリ(/home/hoge)の.bash_profileを編集する。
    [~]$ cd ~
    [~]$ vi .bash_profile
    「PATH=$PATH:$HOME/bin」の下に以下の設定を追加する。
    PATH=$PATH:/sbin
    PATH=$PATH:usr/sbin
    PATH=$PATH:usr/local/sbin
    
  5. 設定を反映させる
  6. ファイルを編集しただけでは設定が反映されない。 一度ログアウトして再ログインするか、以下のコマンドを実行することで設定が反映される。
    [~]$ source .bash_profile
    
    sourceコマンドはファイル内のコマンドを実行するコマンド。 参考URL:UNIXの部屋 コマンド検索: source 設定が反映されたか確認する。
    [~]$ echo $PATH
    /usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/ohsawa/bin:/sbin:usr/sbin:usr/local/sbin:
    
    後ろに「/sbin:usr/sbin:usr/local/sbin:」が追加されていればOK。

以上が、パスの通し方だが、この方法はhogeというユーザだけが反映される。 rootユーザのパスを通すには、visudoを実行して編集する必要がある。

  1. パスの確認
  2. [~]$ sudo sh -c 'echo $PATH'
    [sudo] password for hoge:
    /sbin:/bin:/usr/sbin:/usr/bin:
    
  3. パスの追加
  4. [~]$ sudo visudo
    
    Default secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
    
    ↑後ろに「:/usr/local/sbin:/usr/local/bin」を追加する
    
    [~]$ sudo sh -c 'echo $PATH'
    [sudo] password for hoge:
    /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin