CentOS6の練習(sudoers fileの編集)。

 LINUX Serverを建てなくてはいけないのだが,その前にちょっと,CentOS6の使い方の練習をやってみようと思う。

  • Ubuntuでお馴染みのsudoだが,CentOSのデフォルトでは使えない。
    $ sudo yum update
    [sudo] password for centos:
    とやって気づいた。以下のエラーが戻ってくる。centosというのは,使用中の一般ユーザ名。
    centos is not in the sudoers file. This incident will be reported.
    どうやら自分でsudoers fileにユーザを追加しなければいけないらしい。ところで,CentOS6デフォのインストールではSELinuxは有効だ。これは
    # getenforce
    で確認できるが,現時点でこれを打つと,Enforcingが戻ってくる。SELinuxが有効で,なおかつ,他の人が使うわけでもないので,サーバ上でsudoが使えなくても別にいいのだが,練習のためにsudoers fileとやらをいじってみることにした。

    /etc/sudoersというのがあるようなので,rootになって,
    gedit /etc/sudoers
    とやってみたら,何かすごく怒られたけど,sudoersが開くことは開いた。
    ## Allow root to run any commands anywhere
    のエリアに,
    centos ALL=(ALL) ALL
    を追加して上書き保存しようとしたら,「読み込み専用のディスクにファイルを保存しようとしています。」とまた怒られた。「読み込み専用のディスク」と言うことなので,sudoers fileだけの問題ではないらしい。

    よく見てみると,sudoers fileの8行目に
    This file must be edited with the ‘visudo’ command.
    というのがあった。visudoでググってみた。Man page of VISUDOというのがあった。しかし,いいページを見つけたな。JM Projectって,「JM Project は日本語オンラインマニュアルパッケージの作成、 配布を行なっているプロジェクトです。」ってことらしい。日本語Manの大元じゃん。

    # visudo
    とやったら今度はなんのお叱りもなく,sudoers fileが開いた。ただし,苦手なviで(泣)。ひとまず「↓」で該当場所まで移動する。「i」で挿入モードに切り替え,
    centos ALL=(ALL) ALL
    をさっきいれたいと思ったところに追加し,「←」で行頭まで移動。「Esc」で編集モードを抜ける。「o」で空白行を1行,挿入した次の行に追加する。挿入モードになっているので,再度「Esc」で編集モードを抜ける。普通のviは,「:wq」で上書き保存終了だが,visudoの場合は,「Q」と書いているので,恐る恐る押してみる。すぐに終わらずに下記のメッセージが出た。

    Entering Ex mode. Type “visual” to go to Normal mode.
    :
    「Ex mode.」と言うことなので,「w[Enter]」を打って上書き。

    “/etc/sudoers.tmp” 116L, 3819C written
    :
    と表示されたので,「q[Enter]」を打って終了。フーッ,終わった(苦笑)。
    他のページで,viの使い方説明ページじゃないのに,ここまでviの使い方を細かく書いてるとこないよな。いつも,昔知り合いに教わったノートを引っ張り出してきて,見ながらやってるんだ。「習うより慣れろ」で,常時使っていると慣れるんだろうけど……LINUX Serverに移行するんなら,本当に慣れなくては!!

    gedit /etc/sudoers で中を確認してみたら,ちゃんと行が付け加えられていた。
    $ sudo yum updateをやってみる。出来た。