1. 概要

Linuxを必要に応じて微調整できるため、Linuxを強力に使用できます。 ほとんどのディストリビューションは、システムを構成するための高度なインターフェイスを提供しますが、これらのUIは、システム全体に分散しているプレーンテキストの構成ファイルを変更するだけです。 したがって、これらの構成ファイルを理解することで、これらのUIへの依存がなくなり、Linuxに習熟することができます。

このチュートリアルでは、これらのファイルがどこにあり、何をするのかを見ていきます。 Filesystem Hierarchy Standard のおかげで、このチュートリアルで説明するディレクトリとファイルは、ディストリビューション間で一貫している必要があります。

2. グローバル構成ファイル

グローバル構成ファイルは、システム全体の動作を定義します

これらのファイルは通常、ルート( / )パーティションにあり、スーパーユーザーアクセスが必要です。

2.1. / etc /

ほとんどのグローバル設定ファイルは、 /etcディレクトリにあります。

/ etc / ディレクトリは、ファイルシステムのように感じられ、多くのサブディレクトリがあり、それぞれに関連する構成ファイルがあります。

以下は、これらのサブディレクトリの中で最も有用なもののリストです。

  • / etc / X11 / xorg固有の構成ファイル
  • / etc / cups / 一般的なUNIX印刷システムの構成を含むサブディレクトリ
  • / etc / xdg / –freedesktop.org仕様に従ったアプリケーションのグローバル構成
  • / etc / ssh / –システム全体のOpenSSHサーバーの動作を構成するために使用されます
  • /etc/apparmor.d/ AppArmorシステムの構成ファイルが含まれています
  • / etc / udev / udev関連の構成

2.2. / etc / opt /

/ etc / opt / ディレクトリには、 / opt/内にインストールされたアプリケーションのグローバル構成が含まれているはずです。 しかし、Linuxはこれを強制しません。 その結果、 / etc / opt / が空のままであるのに、ユーザーがインストールしたソフトウェアでいっぱいの / opt/ディレクトリが表示されることがよくあります。

2.3. / etc / default /

/ etc / default / の下の構成ファイルには、upstartなどの初期化システムで使用するサービス/デーモンの設定が含まれていました。 しかし、 systemd の出現により、このディレクトリには主にユーザーランドアプリケーションの設定が含まれるようになりました。

システムは/etc/ default/内のファイルを上書きしません。 これは、ここでアプリケーションの動作を定義すると、システムのアップグレードを通じて一貫性が保たれることを意味します。

2.4. 重要なグローバル構成ファイル

最も有用なグローバル構成ファイルのいくつかは次のとおりです。

  • /etc/resolv.conf –使用するDNSサーバーを定義するために使用されます
  • /etc/bash.bashrc –ユーザーがbashシェルを起動したときに実行するコマンドを定義するために使用されます
  • / etc / profile –ログインシェルは起動時に.profileスクリプトのコマンドを実行します
  • /etc/dhcp/dhclient.conf DHCPクライアントに必要なネットワーク関連情報を格納します
  • / etc / fstab –システムで使用可能なすべてのパーティションをマウントする場所を決定します
  • / etc / hostname –マシンのホスト名を設定します
  • / etc / hosts –IPアドレスをホスト名にマップするファイル
  • /etc/hosts.deny –ここにリストされているリモートホストはマシンへのアクセスを拒否されます
  • /etc/mime.types MIME-TYPESとそれに関連するファイル名拡張子を一覧表示します
  • / etc / motd –ユーザーがホストにログインしたときに表示されるテキストを構成します
  • / etc / timezone –ローカルタイムゾーンを設定します
  • / etc / sudoers – sudoersファイルは、ユーザーのsudo関連の権限を制御します
  • /etc/httpd/confおよび/etc/httpd.conf.d –ApacheWebサーバーの構成
  • /etc/default/grub update-grub/boot/grub/grub.cfgを生成するために使用する構成が含まれています
  • /boot/grub/grub.cfg update-grub コマンドは、 / etc / default /grubで定義された設定を使用してこのファイルを自動生成します

3. ユーザー固有の構成

ユーザー固有の構成ファイルは、それを定義したユーザーのシステム動作のみを変更します

これらのファイルは通常、ユーザーのホームディレクトリ内にあり、変更のためにスーパーユーザーのアクセス許可を必要としません。

注意すべき点の1つは、ユーザー固有の構成は常にグローバル構成よりも優先されるということです。 したがって、アプリケーションは、が存在する限り、常にユーザー固有の構成を優先します。

ユーザー固有の構成に関しては、2つの標準に従ったアプリケーションがあります。

3.1. 従来の構成

従来、アプリケーションに単一の構成ファイルがある場合、それは次の場所に保存されていました。 /家/ /。ただし、複数のファイルがある場合、構成はディレクトリ内に保存されます /家/ /。

この動作の代表的な例は、vimエディターです。

3.2. XDG標準に従った構成ファイル

freedesktop.orgは、古いシステムが乱雑であると判断し、XDGベースディレクトリ仕様を開発しました。

XDG標準に従って、 すべてのユーザー固有の構成ファイルは、$XDG_CONFIG_HOMEディレクトリ内に保存されます (いつもの /家/ /.config )。

$ XDG_CONFIG_HOME 内で、各アプリケーションは構成を格納するための独自のサブディレクトリを作成します。

NeoVimエディターと多くの活発に開発されたアプリケーションは、XDGベースディレクトリ仕様に準拠しています。 これは、単一の $ XDG_CONFIG_HOME ディレクトリをバックアップするとすべての構成が保存されるため、ユーザーにとっても非常に便利です。

3.3. 重要なユーザー固有の構成ファイル

最も一般的に使用されるユーザー固有の構成ファイルのいくつかは次のとおりです。

  • $ HOME / .xinitrc –これにより、startxコマンドを使用するときにウィンドウマネージャーを起動するためのディレクティブを設定できます。
  • $ HOME / .vimrc –vim構成
  • $ HOME / .bashrc –ユーザーが非ログインシェルを開始したときにbashによって実行されるスクリプト
  • $ XDG_CONFIG_HOME / nvim / init.vim –neovim構成
  • $ HOME / .editor –ユーザーのデフォルトエディターを設定します
  • $ HOME / .gitconfig –gitコミットに使用するデフォルトの名前と電子メールアドレスを設定します
  • $ HOME / .profile –ログインシェルは起動時に.profileスクリプトのコマンドを実行します
  • $ HOME / .ssh / config –特定のユーザー向けのssh構成

4. 結論

この記事では、Linuxで利用可能な2種類の構成ファイルと、それらを見つけることができる場所について学びました。

また、構成を格納するために一般的に使用されるディレクトリと、新旧のアプリケーションがユーザー固有の構成を処理する方法についても説明しました。

Linuxはこれらの構成ファイルに特定の形式を強制しないため、構文は大きく異なる可能性があります。 ただし、少しの時間と労力を費やすことをいとわない場合は、構成ファイルを使用すると、初心者ユーザーを対象としたUIの制限から解放されます。