/etc

Linux の /etc ディレクトリには、様々な設定ファイルが格納されています。

目次

  1. /etc/adduser.conf
  2. /etc/group
  3. /etc/gshadow
  4. /etc/hostname
  5. /etc/hosts
  6. /etc/issue
  7. /etc/lsb-release
  8. /etc/os-release
  9. /etc/profile
  10. /etc/rsyslog.conf
  11. /etc/sysctl.conf

/etc/adduser.conf

adduser 及び addgroup コマンドのデフォルト設定ファイル

/etc/group

/etc/group は、グループのアカウント情報が格納されているファイルである。ユーザ・アカウントやグループを追加したり、削除するには、このファイルを直接編集するのではなく、adduser、addgroup コマンドを使用する。

$ cat /etc/group
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:syslog,tsuka
tty:x:5:
disk:x:6:
lp:x:7:
mail:x:8:
news:x:9:
uucp:x:10:
man:x:12:

/etc/gshadow

セキュアなグループアカウント情報

/etc/hostname

/etc/hostname はホスト名を設定するファイルである。

$ cat /etc/hostname
sakura

/etc/hosts

/etc/hosts は各ホスト名のIPアドレスを設定するファイルである。

$ cat /etc/hosts
127.0.0.1	localhost
127.0.1.1	sakura

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

/etc/issue

/etc/issue はLinuxディストリビューションに関する情報が格納されているファイルである。

$ cat /etc/issue
Linux Mint 21.2 Victoria \n \l

/etc/lsb-release

$ cat /etc/lsb-release 
DISTRIB_ID=LinuxMint
DISTRIB_RELEASE=21.2
DISTRIB_CODENAME=victoria
DISTRIB_DESCRIPTION="Linux Mint 21.2 Victoria"
lsb-release
項目 説明
DISTRIB_ID Linuxディストリビューションの識別子
DISTRIB_RELEASE Linuxディストリビューションのリリース番号(バージョン)
DISTRIB_CODENAME Linuxディストリビューションのコードネーム
DISTRIB_DESCRIPTION Linuxディストリビューションの説明

/etc/os-release

/etc/os-release はLinuxディストリビューションに関する詳細な情報が格納されているファイルである。

$ cat /etc/os-release
NAME="Linux Mint"
VERSION="20 (Ulyana)"
ID=linuxmint
ID_LIKE=ubuntu
PRETTY_NAME="Linux Mint 20"
VERSION_ID="20"
HOME_URL="https://www.linuxmint.com/"
SUPPORT_URL="https://forums.linuxmint.com/"
BUG_REPORT_URL="http://linuxmint-troubleshooting-guide.readthedocs.io/en/latest/"
PRIVACY_POLICY_URL="https://www.linuxmint.com/"
VERSION_CODENAME=ulyana
UBUNTU_CODENAME=focal

/etc/profile

/etc/profile とは、どのログインユーザでも共通の処理を記述したスクリプトシェルである。ログインシェルがshまたはbashの場合、ユーザがログインしたとき自動的に実行される。

/etc/rsyslog.conf

システムログとは、システムの動作状態の記録である。ログの多くは /var/log ディレクトリに保存される。システムログにはfacilityとpriorityの2つの分類がある。

facility
facility 説明
auth、security セキュリティ、認証
authpriv セキュリティ、認証(プライベート)
cron cron
daemon デーモン
kern カーネル
lpr プリンタ
mail メール
news NetNews
syslog syslog自身のメッセージ
user ユーザアプリケーション
uucp UUCP
local0 独自に利用できるfacility
local1
local2
local3
local4
local5
local6
local7
priority
priority 説明
debug デバッグ
info 情報
notice 重要
warning 警告
err、error エラー
crit 重大なエラー
alert すぐに対処が必要
emerg、panic システムが不安定な状態

8 /etc/sysctl.conf

Linux カーネル・パラメータを変更するには、/etc/sysctl.conf ファイルを編集する。

Linux カーネルパラメータ一覧
Parameter Desctiption
kernel.sem セマフォに関するパラメータ
kernel.shmmax 共有メモリセグメントの最大サイズ
net.ipv4.tcp_rmem TCPソケット受信バッファのサイズ
net.ipv4.tcp_wmem TCPソケット送信バッファのサイズ
net.ipv4.tcp_windows_scaling TCPウィンドウスケーリングの有効/無効
net.core.rmem_default TCPソケット受信バッファのデフォルトサイズ
net.core.wmem_default TCPソケット送信バッファのデフォルトサイズ
net.core.rmem_max TCPソケット受信バッファの最大サイズ
net.core.wmem_max TCPソケット送信バッファの最大サイズ

/etc/sysctl.conf ファイルを編集した後、再起動するか、次のコマンドを実行する。

# /sbin/sysctl -p

8.1 kernel.sem

セマフォに関する4つのパラメータを以下の形式で指定する。

kernel.sem = SEMMSL SEMMNS SEMOPS SEMMNI
kernel.sem のパラメータ
Parameter Description
SEMMSL セマフォ集合ごとのセマフォ数の最大値
SEMMNS システム全体でのすべてのセマフォ集合におけるセマフォ数の制限
SEMOPS semop(2)コールに指定されるオペレーション数の最大値
SEMMNI システム全体でのセマフォ識別子の最大値

8.2 net.ipv4.tcp_rmem

TCPソケット受信バッファのサイズを以下の形式で指定する。

net.ipv4.tcp_rmem = min default max
min

TCPソケット受信バッファの最小サイズを指定する。

default

TCPソケット受信バッファのデフォルトサイズを指定する。net.core.rmem_defaultが設定されている場合でも、こちらの方が優先される。

max

TCPソケット受信バッファの最大サイズを指定する。net.core.rmem_maxが設定されている場合、net.core.rmem_maxの方が優先される。

8.3 net.ipv4.tcp_wmem

TCPソケット送信バッファのサイズを以下の形式で指定する。

net.ipv4.tcp_wmem = min default max
min

TCPソケット送信バッファの最小サイズを指定する。

default

TCPソケット送信バッファのデフォルトサイズを指定する。net.core.wmem_defaultが設定されている場合でも、こちらの方が優先される。

max

TCPソケット送信バッファの最大サイズを指定する。net.core.wmem_maxが設定されている場合、net.core.wmem_maxの方が優先される。