Linuxで設定ファイルを編集するときの基本

Linuxではアプリケーションの設定を変える際には設定ファイルを直接編集することが多いです。

ここでは設定ファイルの編集の方法を記載します。

今回はCentOS8のSSH設定で触れられている「rootへの直接アクセス禁止」の設定で /etc/ssh/sshd_config を編集する場合の例を取ります。

この記事で行うこと

  1. 編集したいファイルのバックアップ
  2. viでファイルを編集する

1. 編集したいファイルのバックアップ

ファイルのバックアップといっても大層なことではありません。

編集したいファイルを別の名前でコピーしておくだけです。

大体の場合はファイルの拡張子を変えます。(拡張子が無い場合は拡張子を付け加えます)

また、ファイルのコピー先は元のファイルと同じ場所で大丈夫です。

今回の例の場合以下のようになります。

# cp /etc/ssh/sshd_config /etc/ssh/sshd_config.backup

cpコマンドについては当サイトの「Linuxの基本コマンド – ファイル操作」内に解説がありますので、参考にしてください。

私は「.backup」という拡張子にしましたがこれは何でも構いません。ただし、実際によく使われる拡張子は避けた方が良いでしょう。

2. viでファイルを編集する

viというのはLinuxであればほぼ必ずと言って良いほど入っているテキストエディタです。(実際は最近のOSだと上位互換のvimが入っていますが)

viでファイルを編集するときは以下です。

vi [開きたいファイル]

今回は以下のようになります。

# vi /etc/ssh/sshd_config

するとファイルの中身が表示されるはずです。

viは取っつきづらいことで有名ですが、vimはカーソルキーが使えるのでなんとかなります。

キーボードの「i」キーを押すと編集モードなります。

編集モードでないと、入力できないので注意してください。

「Esc」キーを押すとコマンドモードになります。

このモードではコピー&ペーストや文字列の検索・置換などができます。この辺りは興味がある方は「vim 使い方」などで調べてみてください。(コピー&ペーストはSSHクライアント側の機能で割となんとかなります)

ここで覚えておきたいのは編集モードでないときに入力しようとすると、コマンドモードであらぬコマンドが実行されてしまい大変なことになるということです。

編集モードの時は下の方に「–INSERT–」と表示されるので、必ず入力前に確認してください。

また、ファイルの保存やファイルを閉じるのはコマンドモードで行います。

「:」キーを押すとコマンドを入力できますので、ここで以下のコマンドを入力することで操作可能です

:w保存
:qファイルを閉じる
:wq保存してファイルを閉じる
:q!保存せずにファイルを閉じる(ファイルを編集した場合「:q」では閉じれません)

まとめ

今回は設定ファイルの編集方法を扱いました。

Linuxを触る際には様々な設定ファイルを編集することになりますが、必ずバックアップは取るようにしましょう。

あとから「なぜか動かない。変えたはずの所を直しても戻らない」ということになった私との約束です。