Linuxにおける設定ファイルの編集方法
せっかく「viエディタ」の使い方を学んだので、実際の設定ファイルを開いてみましょう。
合わせてLinuxでの作法といいますか、誰が決めたかわからない、でも多くの人が実践している、失敗しても元の状態に戻すことができる編集の方法を紹介します。
編集の前に、設定ファイルのバックアップ
設定を変更後、動作が不安定になったり、不具合が発生することは良くあることです。コマンド操作になれないうちは手間に思うかもしれませんが、慣れないうちだからこそ、編集前のバックアップを心がけてください。
バックアップの中でも、1番安全なバックアップの方法はバージョン管理(または世代管理)することです。
具体的には「hoge.cnf」という設定ファイルがあった場合、originalを表す「.org」という拡張子を追加して「hoge.cnf.org」という名前でコピーします。人によってはbackupを表す「.bak」を利用する場合もあります。
そして変更があるごとに「hoge.cnf.org1」「hoge.cnf.org2」…という具合に番号を増やしていきます。
こうしておけばバックアップだけでなく、過去にどのようなチューニング作業を行ったか、後で確認する事もできます。
今回は試しにMySQLの設定ファイル「my.cnf」を開きます
まずはTera Term等でターミナルにログインしてください。
続いてrootユーザーでログインしなおします。パスワードを求められるのでrootパスワードを入力します。
コマンドラインの見方
「コマンド」「引数、その他」「コメント」「#(rootユーザ)」「$(一般ユーザ)」
$ su パスワード: ←rootユーザーのパスワードを求められるので入力
「my.cnf」の保存してあるディレクトリ「/etc」へ移動します。
ディレクトリの移動は「cd」コマンドの後にディレクトリを入力します。
# cd /etc
「my.cnf」を開く前にコピーします。バックアップファイルの名前は「my.cnf.org」とします。
ファイルのコピーは「cp」コマンドの後に「コピーするファイル名+半角スペース+コピー後のファイル名」で指定します。
# cp my.cnf my.cnf.org
「viエディタ」で「my.cnf」を開きます。
# vi my.cnf
すると以下のように表示されると思います。
[mysqld] # Settings user and group are ignored when systemd is used (fedora >= 15). # If you need to run mysqld under different user or group, # customize your systemd unit file for mysqld according to the # instructions in http://fedoraproject.org/wiki/Systemd user=mysql datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 character-set-server = utf8 (省略)
Linuxでは各アプリケーションの設定が、このようなテキストファイルの形式で保存されています。
設定ファイルの書式
では上から見ていきます。まず1行目に[]で囲まれた[mysqld]という記述があります。この[]は「ブランケット」と呼ばれています。
この表記を「mysqldセクション(節)」といいます。
「mysqldセクション」より下の行に書かれた設定は、mysqldセクションに属します。新たなセクションが出てくるまでは「mysqld」に関する設定ということになります。
次に2行目の行頭にある「#」に注目してください。これは「コメントアウト」の記号です。「#」以降、改行までは設定ではなく、コメントとして扱われ、アプリケーションからは無視されます。
設定には直接関係はしない、設定の意味や注意書きを記載するときに利用します。行頭にある「#」を削除することを「コメントアウトを解除する」といいます。
「#」以外にも「;」やPHPであれば「//」や、範囲を表す「/*」から「*/」まで、という記述法もあります。Linuxとは直接関係ありませんがHTMLでいう「<!–」と「–>」と同じです。
慣れるまでは各設定の意味をコメントで記載してください。また変更の際は変更の理由なども追記しておくと、後で読み返した時に理解しやすくなります。
コメントアウトを利用した編集の良い例、悪い例
以上、設定ファイルの編集における作法でした。
「バージョン管理」と、「コメントの追加」。この2点を心がけましょう。
「もう何度も設定したから絶対に忘れないし、他に編集する人もみんな知ってるよ」となったらコメントは不要です。そうなるまでは、コメントを書くことも設定の1つと捉えて書いてください。
これでLinuxを編集する上での基礎知識は終了です。
次は「人気のVPSサービス、Saasesの「Osukiniサーバ」特有の初期設定と使い方」について解説します。
Osukiniサーバ以外の方は「IPアドレスとドメインを結びつける、DNSサーバの役割と名前解決の仕組み」へどうぞ。