サーバー設定に必要な初期設定を行います。
AlmaLinux9.2 環境で検証しております。
yumとdnfが混在していますが予めご了承ください。
必要なパッケージをインストール
ja言語パックのインストール
dnf -y install langpacks-ja
開発ツールパッケージのインストール
dnf -y groupinstall 'Development tools'
make test を実行する時に必要なパッケージ
dnf -y install perl-core
デバック時に使用するレガシーツールをインストール
dnf -y install telnet ftp
EPELリポジトリ導入(EPEL)
※すでに導入済みかもしれません
dnf -y install epel-release
Remi’s RPM repository リポジトリ導入
dnf -y install https://rpms.remirepo.net/enterprise/remi-release-9.rpm
ユーザーの追加
useradd
コマンドは、Linuxシステムで新しいユーザーアカウントを作成するためのコマンドです。以下に一般的な使い方とオプションを示します。
基本的なコマンド形式:
sudo useradd [options] username
[options]
には様々なオプションが指定可能で、username
は新しく作成したいユーザー名です。
よく使われるオプション
-u
オプション: ユーザーID (UID) を指定します(例:sudo useradd -u 1005 newuser
)。-g
オプション: プライマリグループを指定します(例:sudo useradd -g users newuser
)。-G
オプション: セカンダリグループに追加します(例:sudo useradd -G sudo newuser
)。-d
オプション: ホームディレクトリを指定します(例:sudo useradd -d /custom/home/newuser newuser
)。-m
オプション: ホームディレクトリを作成します(例:sudo useradd -m newuser
)。-s
オプション: デフォルトのシェルを指定します(例:sudo useradd -s /bin/bash newuser
)。-c
オプション: ユーザーに関するコメントを追加します(例:sudo useradd -c "New User Account" newuser
)。-e
オプション: アカウントの有効期限を設定します。日付は YYYY-MM-DD 形式で指定します(例:sudo useradd -e 2023-12-31 newuser
)。-p
オプション: パスワードを設定します。ただし、パスワードは平文で渡すのではなく、暗号化されたパスワードを使用して設定する方が安全です。openssl passwd -1
コマンドで暗号化できます(例:sudo useradd -p 'encrypted_password' newuser
)。
オプションを組み合わせてユーザーアカウントを作成することができます。例えば、以下のコマンドは、新しいユーザー名 newuser
のアカウントを作成し、UID、ホームディレクトリ、デフォルトのシェルを指定して、ホームディレクトリを作成します。
sudo useradd -u 1005 -d /custom/home/newuser -m -s /bin/bash newuser
作成した後、次のコマンドで新しいユーザーのパスワードを設定できます。
sudo passwd newuser
グループの追加
groupadd
コマンドは、Linuxシステムで新しいグループを作成するためのコマンドです。以下に一般的な使い方とオプションを示します。
基本的なコマンド形式
sudo groupadd [options] groupname
[options]
には様々なオプションが指定可能で、groupname
は新しく作成したいグループ名です。
よく使われるオプション
-g
オプション: グループID (GID) を指定します(例:sudo groupadd -g 1006 newgroup
)。-r
オプション: システムグループを作成します。システムグループは通常、システム用途のグループであり、通常のユーザー向けではありません(例:sudo groupadd -r newgroup
)。-p
オプション: グループパスワードを設定します。ただし、これはあまり一般的な使用法ではありません。パスワードは平文で渡すのではなく、暗号化されたパスワードを使用して設定する方が安全です。openssl passwd -1
コマンドで暗号化できます(例:sudo groupadd -p 'encrypted_password' newgroup
)。
新しいグループ名 newgroup
を作成します。
sudo groupadd newgroup
GID を指定してシステムグループを作成します。
sudo groupadd -g 2001 -r systemgroup
グループを作成した後、usermod
コマンドを使用してユーザーをそのグループに追加できます。以下は、既存のユーザー username
を新しいグループ newgroup
に追加する方法です。
sudo usermod -a -G newgroup username
ここで、-a
オプションは追加の意味で、-G
オプションはセカンダリグループを意味します。これにより、ユーザーがすでに所属している他のグループから削除されることなく、新しいグループに追加できます。
ユーザーをグループに追加
新しいユーザーを既存のグループに追加するには、usermod
コマンドを使用します。この例では、先ほど作成したユーザー「newuser」をグループ「newgroup」に追加します。
sudo usermod -aG newgroup newuser
-aG
オプションは、「追加(-a)」および「グループ(-G)」を意味します。
これで、新しいユーザーとグループが作成され、指定したユーザーがグループに追加されました。この手順を繰り返すことで、さらに多くのユーザーやグループを作成および管理できます。
bash環境の調整 (オプション)
bashのエイリアスや、ヒストリー形式を好みで変更します。
vi ~/.bashrc
以下を追加します。
alias ll='ls -alF'
export HISTTIMEFORMAT='%F %T '
以下に、指定されたbashのオプションを解説します。
alias ll=’ls -alF’
alias
コマンドは、他のコマンドに別名を割り当てるために使用されます。この例では、ll
という別名が ls -alF
コマンドに割り当てられています。
ls
: ファイルとディレクトリを一覧表示するコマンドです。-a
: 隠しファイル(ドットで始まるファイル)も表示します。-l
: 詳細なフォーマットで情報を表示します(ファイルサイズ、所有者、グループ、パーミッション、作成日時など)。-F
: 各エントリの後に、それぞれの種類を示す文字を表示します(ディレクトリは/
、実行可能ファイルは*
など)。
この設定を適用すると、ターミナルで ll
と入力するだけで、ls -alF
の結果が表示されるようになります。
export HISTTIMEFORMAT=’%F %T ‘
export
コマンドは、環境変数を設定するために使用されます。この例では、HISTTIMEFORMAT
環境変数に特定のフォーマットを設定しています。
HISTTIMEFORMAT
: コマンド履歴にタイムスタンプを追加するために使用される環境変数です。%F %T
: 日付と時刻のフォーマットを指定します。%F
は日付(YYYY-MM-DD)、%T
は時刻(HH:MM:SS)です。
この設定を適用すると、コマンド履歴が表示される際に、それぞれのコマンドが実行された日付と時刻が表示されるようになります。コマンド履歴は history
コマンドで表示できます。
変更の反映
source ~/.bashrc
locale の設定
Linuxのlocale
は、システム上での言語、通貨、時間形式などの地域固有の情報を管理するための機能です。これによってアプリケーションがローカライズされている場合、それらの情報が自動的に適用されます。
localeの種類
主なlocale設定は以下の6つがあります。
LC_CTYPE
: 文字分類や大文字小文字変換を制御します。LC_NUMERIC
: 数値表示を制御します。LC_TIME
: 日付と時刻の表示を制御します。LC_COLLATE
: 文字列の比較や並べ替えを制御します。LC_MONETARY
: 通貨表示を制御します。LC_MESSAGES
: システムメッセージやエラーメッセージの言語を制御します。
さらに、これらの設定全体を一括で管理するためのLANG
環境変数もあります。
localeの確認方法
現在のlocale設定を確認するには、コマンドライン上でlocale
コマンドを実行します。
locale -a
C
C.utf8
POSIX
ja_JP.eucjp
ja_JP.utf8
localectl
System Locale: LANG=C.UTF-8
VC Keymap: jp
X11 Layout: jp
localeの設定方法
ja_JP.utf8 のインストール
sudo dnf install glibc-langpack-ja
sudo localectl set-locale LANG=ja_JP.utf8
localectl
System Locale: LANG=ja_JP.utf8
VC Keymap: jp
X11 Layout: jp
hostname の設定
システムのホスト名を表示、設定、変更するために hostnamectl
コマンドを使用します。元々の hostname
コマンドは古いもので、現代の Linux ディストリビューションでは非推奨となります。
以下は、 hostnamectl
コマンドを使用する方法の簡単な説明です。
ホスト名の表示
hostnamectl
これにより、ホスト名や OS、カーネルバージョンなど、システムに関する情報が表示されます。
ホスト名の変更
システムのホスト名を変更するには、以下のコマンドを実行し、<new-hostname>
部分に新しいホスト名を指定します。
sudo hostnamectl set-hostname <new-hostname>
例として、ホスト名を my-new-hostname
に変更する場合、次のように実行します。
sudo hostnamectl set-hostname my-new-hostname
このコマンドは root 権限が必要なため、sudo
を使用して実行してください。