サーバー管理
サーバー管理:記事リスト
サーバー管理のカテゴリーには以下の記事がリストされています。
Dovecotのバージョンを確認するコマンド|設定確認やログの見方も
「メール受信サーバーが正常に動いているか確認したい」
メールサーバーの運用では、使用しているソフトウェアのバージョンを把握しておくことが重要です。セキュリティパッチの適用判断にも直結します。
この記事では、Dovecotのバージョンを確認する方法を解説します。
dovecot --versionコマンド、RPMパッケージでの確認、設定内容の確認(doveconf)、動作状態の確認まで、メールサーバー管理に必要な知識をまとめました。
・
dovecot --version または doveadm version でバージョンを確認できる・
systemctl status dovecot でDovecotの稼働状態を確認できる・設定ファイルは
/etc/dovecot/dovecot.conf、ログは /var/log/maillog を確認するSWAP領域を拡張する(システム再起動・サービス停止なし)
下記の様に、メモリ不足によりエラーになった場合などに有効です。
実行環境は、CentOS7.6。
5月 14 10:02:02 MAIL-SV-001 clamd[4758]: daemonize() failed: Cannot allocate memory
5月 14 10:02:03 MAIL-SV-001 systemd[1]: Failed to start clamd scanner (amavisd) daemon.
・SWAP領域はサービス停止・再起動なしで拡張できる
・
dd でSWAPファイルを作成し、mkswap・swapon で有効化する・
free -m でSWAP容量の変化を確認できるCentOS7 Hostname(ホスト名)を変更する
変更方法にはいくつか種類があります。
・
hostname 新ホスト名 で一時的に変更できる(再起動で元に戻る)・
hostnamectl set-hostname 新ホスト名 で恒久的に変更できる(推奨)・
/etc/hostname ファイルを直接編集してもホスト名を変更できるCentOS7でrootのSSHログインを無効化する
「rootでのSSH接続を許可したままサーバーを公開しているのが不安」
インターネットに公開するLinuxサーバーでは、rootアカウントへのSSH直接ログインを無効にするのはセキュリティの基本です。
rootパスワードが漏洩した場合や、ブルートフォース攻撃に対して脆弱になります。
この記事では、CentOS7 / RHEL7でrootのSSHログインを無効化する手順を解説します。
・
PermitRootLogin no を /etc/ssh/sshd_config に設定するだけで無効化できる・設定後は
systemctl restart sshd で反映が必要・無効化前に必ず一般ユーザー+sudo環境を整えてからロックアウトを防ぐ
CentOS7でfirewalldの確認と停止(ファイアウォール)
そんな疑問を持つ方は多いです。
CentOS7からファイアウォールの推奨ツールがiptablesからfirewalldに変わりました。
開発環境や内部ネットワーク専用サーバーでは、ファイアウォールを一時的に停止したい場面もあります。
この記事では、CentOS7のfirewalldの状態確認と停止方法を解説します。
・
firewall-cmd --list-services で許可されているサービスを確認できる・
systemctl stop firewalld で即時停止、systemctl disable firewalld で恒久停止・本番サーバーでは停止せず、必要なポートだけ開放するのが正しい対処
CentOS 7のバージョンアップ手順|yum updateの実行方法と注意点
「yum updateを実行しても大丈夫? サーバーが起動しなくなったりしない?」
OSのバージョンアップは、セキュリティパッチの適用やバグ修正のために定期的に行う必要があります。しかし、手順を誤るとシステムが起動しなくなるリスクもあります。
この記事では、CentOS 7のバージョンアップ手順と注意点を解説します。
yum updateの実行方法、カーネルをアップデート対象から除外する方法、事前のバックアップとテスト環境での確認手順まで、安全にバージョンアップするために必要な知識をまとめました。
※ CentOS 7は2024年6月30日にEOL(サポート終了)となりました。新規構築ではAlmaLinuxやRocky Linuxへの移行を推奨します。本記事はCentOS 7環境の保守・運用を行っている方向けの手順です。RHEL 9系(AlmaLinux 9/Rocky Linux 9)では
dnf update コマンドを使用してください。・
yum update でCentOS 7のパッケージを一括アップデートできる・本番環境の実行前はテスト環境で事前確認とバックアップが必須
・カーネルは除外してアップデートするのが安全
・CentOS 7はEOL済み。新規構築はAlmaLinux/Rocky Linuxを推奨
journalctlコマンドでCentOS7のsystemdログを確認する方法|フィルタリング・リアルタイム監視の実践ガイド
「journaldとrsyslogの違いや関係性を理解したい」
この記事では、CentOS 7以降のsystemd環境で使用するjournalctlコマンドの基本的な使い方から、実務でよく使うフィルタリングの方法まで解説します。
・journalctlはsystemdのログ管理システム(journald)のログを表示するコマンド
・-b でブートログ、-u でサービス別ログ、--since/--until で日時フィルタリングができる
・-f でtailと同様のリアルタイム監視、-e で末尾からジャンプして最新ログを確認できる
続きを読む "journalctlコマンドでCentOS7のsystemdログを確認する方法|フィルタリング・リアルタイム監視の実践ガイド"
Postfixのメールログを確認する
Postfixのログは
/var/log/maillog ファイルに出力されます。この記事では、Postfixのメールログの確認方法と、ログに記録されるエラーメッセージの読み方を解説します。
【この記事でわかること】
・Postfixのログは /var/log/maillog に出力される
・ログは1週間単位で自動ローテーションされ maillog.1 ~ maillog.4 の4週間分保持される
・tail /var/log/maillog でリアルタイムにログを確認できる
・SASL認証失敗・キュー・遅延メールなどの状況がログから読み取れる
MTAをSendmailからPostfixに変更する
RHEL/CentOS系Linuxでは、
alternatives コマンドを使ってMTAをSendmailからPostfixに変更できます。この記事では、
alternatives --config mta コマンドを使ったMTA変更手順を解説します。
【この記事でわかること】
・MTAの変更は alternatives --config mta コマンドで実行する
・RHEL/CentOS系Linuxでは複数のMTAをパッケージで共存させることができる
・変更後は alternatives --config mta で再確認して設定が反映されているか確認する
・Postfixのインストールは事前に dnf install postfix で行う
Postfixのバーチャルドメイン設定方法|virtual_mailbox_domainsとvirtual_alias_mapsの書き方
こういった悩みを持つLinuxエンジニアは多いです。virtual_mailbox_domainsとvirtual_alias_mapsの違いが曖昧なまま設定しても、メールが届かなかったりエラーになったりと、原因の特定に時間がかかります。
この記事では、Postfixのバーチャルドメイン設定について、virtual_mailbox_domains(独立したメールボックス管理)とvirtual_alias_maps(エイリアス転送)の2方式を実サーバーの設定例と出力例を交えながら解説します。Rocky Linux 9 / RHEL 9系で動作確認済みです。
【この記事でわかること】
・virtual_mailbox_domainsは独立したメールボックスを持つドメイン用
・virtual_alias_mapsは既存アカウントへの転送(エイリアス)に使う
・設定後はpostmap・postfixreloadで反映、postfix checkで構文確認
・2つを組み合わせるとドメイン別の柔軟なメール管理が実現できる
続きを読む "Postfixのバーチャルドメイン設定方法|virtual_mailbox_domainsとvirtual_alias_mapsの書き方"
logresolveコマンドでApacheログのIPアドレスをホスト名に変換する方法
\n「HostnameLookupsをOnにするとパフォーマンスが落ちると聞いたが、後からまとめて変換できないか」
\n
\nこの記事では、logresolveコマンドを使ってApacheのアクセスログに含まれるIPアドレスを一括でホスト名に変換する方法を解説します。
\n\n
\n・logresolveコマンドはApacheのアクセスログ内のIPアドレスを一括でホスト名に変換する
\n・HostnameLookupsをOnにするパフォーマンス低下を防ぎながらログ解析ができる
\n・-sオプションで名前解決の統計情報を別ファイルに出力できる
\n
Apacheのアクセスログで接続クライアントのホスト名を記録する
デフォルトのApacheアクセスログはIPアドレスで記録されます。
この記事では、
HostnameLookups ディレクティブを使ってアクセスログにホスト名を記録する設定方法を解説します。
【この記事でわかること】
・デフォルトの HostnameLookups Off はIPアドレスで記録する設定
・HostnameLookups On に変更するとIPアドレスから逆引きしてホスト名を記録する
・HostnameLookups Onはリバースルックアップ(逆引き)が必要なためパフォーマンスに影響する
・後からIPアドレスをホスト名に変換するには logresolve コマンドも使える
Apacheのカスタムログを設定する
Apacheのカスタムログ設定は、
httpd.conf の LogFormat と CustomLog ディレクティブを使います。この記事では、Apacheのカスタムログ(LogFormat)の設定方法とフォーマット文字列の一覧を解説します。
【この記事でわかること】
・ログ形式は LogFormat ディレクティブで定義し、CustomLog で適用する
・デフォルトは common 形式(IPアドレス・日時・リクエスト・ステータス)
・combined 形式はcommonにReferer・User-Agentを加えた業界標準フォーマット
・%{クッキー名}C や %{ヘッダー名}i など柔軟なカスタマイズが可能
Apacheで接続クライアント数を設定する
Apacheの同時接続クライアント数は
MaxClients(Apache 2.4以降は MaxRequestWorkers)で制御します。この記事では、Apacheの接続クライアント数の設定方法を解説します。使用しているMPM(Prefork/Worker)によって設定箇所が変わるため、確認方法も合わせて解説します。
【この記事でわかること】
・Apache 2.3以前は MaxClients、2.4以降は MaxRequestWorkers で設定する
・mpm_prefork_module と mpm_worker_module で設定箇所が異なる
・CentOS/RHEL環境ではデフォルトでPrefork MPMが使用される
・設定値が小さすぎると処理待ちが発生し、大きすぎるとメモリ不足になる
Apacheのポート番号を変更する
Apacheのポート番号は
httpd.conf の Listen ディレクティブで設定します。この記事では、Apacheのポート番号を変更する手順を解説します。
【この記事でわかること】
・Apacheのポート番号は httpd.conf の Listen ディレクティブで設定する
・デフォルトは80番(HTTP)と443番(HTTPS)
・ポート変更後はファイアウォール設定も忘れずに変更する
・Apacheを再起動して設定を反映させる
KeepAliveを利用してApacheのパフォーマンスを向上させる
KeepAliveは、クライアントとのTCP接続を維持して複数のHTTPリクエストを1つのコネクションで処理する機能です。
この記事では、ApacheのKeepAlive設定(有効化・タイムアウト・最大リクエスト数)の方法を解説します。
【この記事でわかること】
・KeepAliveは httpd.conf または httpd-default.conf で設定する
・KeepAlive On で有効化、Off で無効化する
・MaxKeepAliveRequests でコネクションあたりの最大リクエスト数を設定する
・KeepAliveTimeout の値は短すぎても長すぎてもパフォーマンスに悪影響がある
接続中のプロセスが終了するのを待ってApacheを停止する
通常の
httpd stop コマンドは、接続中のプロセスを強制終了します。この記事では、接続中のプロセスが終了するのを待ってからApacheを停止する
graceful-stop の使い方を解説します。
【この記事でわかること】
・apachectl graceful-stop で接続中のクライアント通信を待ってから停止できる
・通常の httpd stop は接続中プロセスを強制終了するため本番環境では注意が必要
・graceful-stop は apachectl コマンドで実行する(initスクリプト経由では不可)
・systemd環境(CentOS 7以降)では systemctl stop httpd で同様の動作をする
Apacheのアクセスログを設定する方法|CustomLogとLogFormatの書き方とcombined形式の読み方
「CustomLogとLogFormatの設定が多くて、何をどう書けばいいのか整理できていない」
Webサーバーの運用では、アクセスログを正しく設定・読み解く能力が欠かせません。
この記事では、ApacheのCustomLogディレクティブとLogFormatディレクティブの設定方法、combined形式のログフォーマットの読み方を解説します。
ログローテーション連携、条件付きロギング、実サーバーのログ出力例まで、現場で必要な知識をまとめました。
【この記事でわかること】
・CustomLog でログファイルの保存先とフォーマット名を指定する
・LogFormat でフィールド構成(combined形式が業界標準)を定義する
・combined形式はIPアドレス・日時・リクエスト・ステータス・リファラー・UAの7フィールド
・本番環境ではパスを絶対パスで指定し、logrotate と組み合わせて管理する
続きを読む "Apacheのアクセスログを設定する方法|CustomLogとLogFormatの書き方とcombined形式の読み方"
proFTPDでアクセス制限設定を行う
サーバー上の重要なファイルへのアクセスを許してしまうリスクがあります。
この記事では、proFTPDのアクセス制限設定(chroot)を
proftpd.conf への設定追加で行う方法を解説します。ユーザーをホームディレクトリに限定する方法から、特定グループのみアクセスを許可する方法まで解説します。
【この記事でわかること】
・proFTPDのアクセス制限は DefaultRoot ディレクティブで設定する
・DefaultRoot ~ でユーザーを自分のホームディレクトリに閉じ込めることができる
・特定ディレクトリへの制限は DefaultRoot /パス で設定する
・特定グループのみの制限は DefaultRoot /パス グループ名 で設定する
Sambaのバージョンを確認するコマンド|現場で使う3つの手順
脆弱性の対応や、Windows Update後の接続トラブルなど、ファイルサーバー(Samba)のバージョン確認は現場で頻繁に発生するタスクです。
この記事では、Linux(Samba)のバージョンを確認する3つの方法を解説します。環境や目的に合わせて、一番やりやすい方法を選んでみてください。
【この記事でわかること】
・Sambaのバージョン確認は smbd -V が最も手軽でおすすめ
・Red Hat系では rpm -q samba でパッケージのリリース番号まで確認できる
・Debian/Ubuntu系では dpkg -l | grep samba を使用する
・バージョン確認後は公式サイトやJVNで脆弱性(CVE)の有無を確認する習慣をつける
CentOS7・RHEL7系のネットワーク設定方法|nmcli・NetworkManagerの実践ガイド
「nmcliの使い方が多すぎて、どれを覚えればいいか分からない」
CentOS7/RHEL7以降のLinuxでは、ネットワーク管理の仕組みがNetworkManager中心に切り替わりました。
この記事では、CentOS7/RHEL7系でのネットワーク設定方法について、NetworkManagerと
nmcliコマンドを中心に、固定IPアドレス設定・DNS設定・デフォルトゲートウェイ・接続状態の確認・トラブル対処までを解説します。現場でそのまま使える実践コマンドを中心にまとめています。・CentOS7/RHEL7以降はNetworkManagerが標準。設定は
nmcliコマンドで行うのが現場流・接続プロファイル単位で管理され、
connectionとdeviceの2階層を理解すれば全体像が掴める・固定IP・DNS・ゲートウェイ・DHCP切り替えまで、
nmcliだけで完結できる続きを読む "CentOS7・RHEL7系のネットワーク設定方法|nmcli・NetworkManagerの実践ガイド"
Apacheのエラーログを設定する|ErrorLogとLogLevelの使い方・バーチャルホスト別設定
\n「エラーログに情報が出過ぎて、本当の問題が埋もれてしまう」
\n
\nApacheのエラーログは、サーバートラブルの原因特定に欠かせないファイルです。ログの出力先とログレベルを適切に設定することで、必要な情報を効率的に収集できます。
\n
\nこの記事では、ApacheのエラーログをhttpDConfで設定する方法を、
ErrorLog ディレクティブの基本から LogLevel の各段階の意味、バーチャルホスト別のログ設定まで実践的に解説します。\n
\n
\n\n・
ErrorLog ディレクティブでエラーログの出力先ファイルを指定する\n・
LogLevel で出力する重要度レベルを debug/info/notice/warn/error/crit/alert/emerg から選ぶ\n・デフォルトは
LogLevel warn(warn以上のメッセージを記録)\n・バーチャルホスト設定内に
ErrorLog を書けばサイト別にログを分けられる\n・
tail -f /var/log/httpd/error_log でリアルタイムにエラーを監視できる\n
Apacheの設定にインデックスファイルを追加する|DirectoryIndexでindex.phpを最優先にする方法
\n「index.htmlではなくindex.phpをデフォルトページにしたい」
\n
\nApacheの
DirectoryIndex ディレクティブを設定することで、ディレクトリアクセス時に表示するデフォルトファイルを指定できます。優先順位も制御できるため、WordPressなどのPHPサイト構築でも必須の設定です。\n
\nこの記事では、Apacheの設定ファイル(httpd.conf)で
DirectoryIndex を設定する方法を、基本の追加・変更から複数ファイルの優先順位指定まで実践的に解説します。\n
\n
\n\n・
DirectoryIndex でディレクトリアクセス時のデフォルトファイルを指定できる\n・複数ファイルを指定すると左から順に優先して検索される
\n・設定ファイルは
/etc/httpd/conf/httpd.conf の <IfModule dir_module> 内\n・設定変更後は
systemctl reload httpd で再読み込みが必要\n・PHPサイトでは
index.php を最優先に設定するのが一般的\n
続きを読む "Apacheの設定にインデックスファイルを追加する|DirectoryIndexでindex.phpを最優先にする方法"
Apacheで採用しているモジュールを確認する方法|httpd -Mとmpm・mod_rewriteの有効確認
\n「mod_rewriteが有効かどうか調べる方法がわからない」
\n
\nApacheのモジュールはサーバーの機能を決定します。認証・URL書き換え・圧縮・SSL対応など、各機能はモジュールで提供されているため、モジュール一覧の確認はトラブルシュートや設定変更の基本操作です。
\n
\nこの記事では、
httpd -M と apachectl -M コマンドを使ってApacheのモジュール一覧を確認する方法を解説します。静的モジュールと動的モジュールの違い、特定モジュールの有効確認方法まで実践的に解説します。\n
\n
\n\n・
httpd -M または apachectl -M でロード済みモジュール一覧を表示できる\n・
(static) は起動時に固定で組み込まれた静的モジュール\n・
(shared) は実行時に動的にロードされるモジュール\n・
httpd -l で静的モジュール(コンパイル組み込み)のみを表示できる\n・grepと組み合わせて特定モジュールの有効確認ができる
\n
続きを読む "Apacheで採用しているモジュールを確認する方法|httpd -Mとmpm・mod_rewriteの有効確認"
Apacheの設定ファイルを構文チェックする方法|httpd -tとapachectl configtestで文法エラーを検出
\n「設定ファイルを変更するたびにドキドキしながら再起動している」
\n設定ミスは1文字でもApacheが起動不能になる深刻な問題です。本番環境なら即サービス停止です。
\n
\nこの記事では、Apacheの設定ファイルを本番投入前にチェックする
httpd -tコマンドとapachectl configtestコマンドの使い方を解説します。\nエラーメッセージの読み方、設定変更のベストプラクティス、本番環境での安全な反映手順まで、現場で実践できる内容をまとめました。
\n\n
\n\n・
httpd -t または apachectl configtest で設定ファイルの構文を事前チェックできる\n・「Syntax OK」と表示されれば文法エラーなし、エラー時は行番号が表示される
\n・本番環境では configtest → graceful の手順で無停止で設定を反映する
\n・
Include で読み込まれた全設定ファイル(conf.d/*.conf)もまとめてチェックされる\n
続きを読む "Apacheの設定ファイルを構文チェックする方法|httpd -tとapachectl configtestで文法エラーを検出"
使用中のプロセスが終了するのを待ってhttpdサービスを停止する|graceful-stopの使い方
\n
\n本番運用中のWebサーバーで
systemctl stop httpd を実行すると、処理中のリクエストが途中で切断されてしまいます。ダウンロード中のユーザーや決済処理中の顧客に影響を与えないためには、接続が終わるのを待ってから停止する仕組みが必要です。\n
\nこの記事では、Apache HTTP Serverの
graceful-stop を使って、通信中のクライアントに影響を与えずhttpdサービスを停止する方法を解説します。\n
\n
\n\n・
graceful-stop は通信中のリクエストが完了するのを待ってから停止する\n・
apachectl graceful-stop または httpd -k graceful-stop で実行できる\n・
systemctl stop httpd は即時停止で既存接続を切断する\n・RHEL9系は
apachectl、Ubuntu LTSは apache2ctl とコマンド名が異なる\n・待ち時間の上限は
GracefulShutdownTimeout ディレクティブで設定できる\n
httpdサービスを起動・停止・再起動する方法|systemctlとinit.dの両対応
\n「CentOS 6系のinit.dコマンドしか知らないが、CentOS 7以降ではsystemctlが必要と聞いた」
\n
\nこの記事では、ApacheのhttpdサービスをLinuxで起動・停止・再起動する方法を、CentOS 7以降のsystemctlから旧来のinit.dまで実践的に解説します。
\n
\n
\n\n・CentOS 7以降は
systemctl start httpd でサービスを起動する\n・
systemctl stop / restart / reload / status で停止・再起動・再読込・確認ができる\n・
systemctl enable httpd でOS起動時に自動起動するよう設定できる\n・CentOS 6以前は
/etc/init.d/httpd start または service httpd start を使う\n・
systemctl status httpd でエラーログも含めた詳細な状態を確認できる\n
Linuxで一時的に管理者(root)にスイッチする
su コマンドでは管理者パスワードが必要ですが、sudo コマンドを使えば一般ユーザーのパスワードで一時的に管理者権限を行使できます。rootパスワードを共有せずに安全な権限管理が実現します。
この記事では、sudo の設定方法(visudo)と実際の使い方、セキュリティ上の注意点を解説します。
【この記事でわかること】
・sudo はrootパスワードを共有せずに管理者権限のコマンドを実行できる仕組み
・/etc/sudoers の編集には必ず visudo を使う(vi の直接編集は危険)
・パスワードキャッシュはデフォルト5分間有効
・NOPASSWD 設定は利便性が上がる反面、セキュリティリスクも高まるため慎重に
特定のローダブルモジュールを表示する
modprobe -l コマンドに引数を指定すると、ワイルドカードで特定のモジュールだけを絞り込んで表示できます。grep とのパイプでも同じ結果を得られます。
この記事では、特定のローダブルモジュールを絞り込んで表示する方法を解説します。
【この記事でわかること】
・modprobe -l に引数を指定するとワイルドカードでモジュールを絞り込める
・grep とのパイプでも同等の結果が得られる(どちらを使っても可)
・ワイルドカードは必ずクォート(引用符)で囲む必要がある
・モジュール名の一部から関連モジュールを一覧する場合に便利
ローダブルモジュールを表示する
ローダブルモジュールとは、カーネルに組み込まれてはいないが、必要に応じてロードできるモジュールのことです。modprobe -l コマンドで一覧を確認できます。
この記事では、modprobe -l コマンドによるローダブルモジュール一覧の表示方法を解説します。
【この記事でわかること】
・modprobe -l でシステムにインストール済みのローダブルモジュール一覧を表示できる
・出力量が多いため more/less コマンドとのパイプ併用が実務での基本
・grep との組み合わせで特定のモジュールを素早く絞り込める
・表示されるモジュールは /lib/modules/カーネルバージョン/ 配下の .ko ファイル
カーネルモジュールの詳細情報を表示する
modinfo コマンドを使うと、指定したカーネルモジュールのファイルパス・ライセンス・依存モジュール・パラメータなど、詳細な情報を確認できます。
この記事では、modinfo コマンドの使い方と出力内容の読み方を解説します。
【この記事でわかること】
・modinfo コマンドで指定モジュールの詳細情報(パス・ライセンス・依存関係等)を表示できる
・-d オプションで概要説明のみを簡潔に表示できる
・-F オプションで特定フィールドのみを取り出すことが可能
・トラブル時のモジュールバージョン確認や依存関係の調査に活用できる
dstatコマンドでシステムリソースをモニタリングする(リアルタイム)
vmstat, iostat, ifstatなどのstat系コマンドを
これ1つで表示することができます。
例えば、
CPUやメモリ情報、ディスクI/OやネットワークI/Oを
リアルタイムでモニタリングできます。
表示を停止する場合は、「Ctrl+c」を実行します。
dstatコマンドがインストールされていない場合は、
下記コマンドでインストールしてください。
【この記事でわかること】
・dstatはvmstat・iostat・ifstatを1コマンドで代替できるシステムモニタリングツール
・CPU使用率・メモリ・ディスクI/O・ネットワークI/Oをリアルタイムで確認できる
・-Tclmでタイムスタンプ付きCPU+ロードアベレージ+メモリ表示が最頻出パターン
・CentOS/RHEL系はyum install dstatでインストール可能
dnf/yumコマンドの使い方|パッケージのインストール・更新・削除とリポジトリ管理
こういった疑問を持つ方は多いです。CentOS7までyumを使っていた方が、Rocky Linux9やRHEL9に移行した際によく混乱するポイントです。
この記事では、dnf/yumコマンドの対応関係と実践的な使い方を解説します。パッケージのインストール・更新・削除・検索、リポジトリ管理、dnf historyまで体系的にカバーします。
・RHEL8以降はdnfがメイン。yumコマンドはdnfへのシンボリックリンクで互換動作する
・dnf install / dnf update / dnf remove の3コマンドが基本操作
・dnf history で過去の操作を確認し、dnf history undo で元に戻せる
・リポジトリ追加は dnf config-manager --add-repo で行う(RHEL9/Rocky9対応)
MySQLのrootパスワードを忘れた場合の対処について
・MySQL を --skip-grant-tables オプションで起動することで認証をバイパスできる
・ALTER USER または UPDATE mysql.user でパスワードを変更し、flush privileges を実行する
・5.7 以降は authentication_plugin が caching_sha2_password に変わった点に注意が必要
・パスワード変更後は必ず通常モードで再起動して接続確認を行う
