プロジェクト

全般

プロフィール

CentOS 6での特権作業

sudo

rootでログインして作業するのは管理上リスクが高まるので、一般ユーザーでログインし、必要な操作に限ってroot権限で実行するのが推奨されます。
その場合、sudoを使うのが一般的です。

sudo の設定

wheelグループを使う場合

  • visudo コマンドで、sudo設定ファイルを編集します。設定ファイルでコメントアウトされている次の行を有効にします。
# %wheel        ALL=(ALL)       ALL
  • sudoで特権操作を許すユーザーをwheelグループに加えます。
# groupmems -g wheel -a foo

エイリアスの設定

visudoで編集

  • ユーザーエイリアスの設定例
    User_Alias NEPHEWS = huey, dewey, louie
    

    %をつけるとグループ名を指定できます。
  • コマンドエイリアスの設定例
    Cmd_Alias HALT_OR_REBOOT = /sbin/halt
    

    複数のコマンドを設定可能です。ユーザーエイリアスの例と同様、カンマで区切って列挙します。

sudo で実行するシェル環境の設定

sudo で実行するシェル環境は、/etc/sudoers の設定で定義された環境変数のみ引き継ぎます。
デフォルトの設定は次です。

Defaults    always_set_home

Defaults    env_reset
Defaults    env_keep =  "COLORS DISPLAY HOSTNAME HISTSIZE INPUTRC KDEDIR LS_COLORS" 
Defaults    env_keep += "MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE" 
Defaults    env_keep += "LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES" 
Defaults    env_keep += "LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE" 
Defaults    env_keep += "LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY" 

sudoを実行するユーザーの環境変数を引き継ぎたいときは、sudoに-Eオプションを指定します。

 ~$ sudo -E ls 

/etc/sudoers(visudo)を編集したら再起動が必要なことも

ユーザーをグループwheelに追加し、sudoersを変更後には反映されないことがあります。再起動すると反映されます。


約10年前に更新