Linux トラブルシューティング

Linuxは堅牢で柔軟なオペレーティングシステムであり、トラブルシューティングは使用者にとって重要なスキルです。

本ガイドでは、Linuxで発生する一般的な問題に対処するための基本的なトラブルシューティング手法を初心者向けに解説します。また、学習リソースも紹介します。

1. 接続とネットワークの問題:インターネット接続のトラブルシューティング

1.ネットワークの状態確認

ifconfig

ネットワーク接続の状態を確認するためのコマンド。

https://eng-entrance.com/linux-command-ifconfig

2.ルーターの再起動

sudo reboot

ネットワークに接続できない場合、ルーターを再起動するためのコマンド。

10. 基本的なトラブルシューティングコマンドのリストとUbuntu Linux内での機能

次の表は、トラブルシューティングを目的としてLinux内で使用される、より基本的なコマンドの一覧です。

各関数と構文を提供します。


・sudo
機能:    ルートまたは管理者として実行するためにコマンドの前で使用します。
構文:sudo apt-get update

・ls
機能:dirと同じ。現在のディレクトリーをリストします。
構文:    ls-ll

・cp
機能:ファイルをコピーします。
構文:cp /dir/filename /dir/filename

・rm
機能:ファイルを削除します。
構文:rm /dir/filename /dir/filename

・mv
機能:ファイルを移動します。
構文:mv /dir/filename /dir/filename

・mkdir
機能:ディレクトリを作成します。
構文:mkdir /dirname

・df
機能:ファイル システムのディスク領域の使用状況をレポートします。
構文:df -h

・dmesg
機能:カーネル・リング・バッファを印刷または制御します。
構文:dmesg

・lspci
機能:すべてのPCIデバイスをリストします。
構文:lspci

・lsusb
機能:すべてのUSBデバイスをリストします。
構文:lsusb

・lsmod
機能:Linuxカーネルでのモジュールのステータスを表示します。   
構文:lsmod

・cat機能:ファイルを連結して標準出力で印刷します。
構文:cat /dir/logfile

・grep
機能:指定されたパターンに一致する入力の行を印刷します。
構文:grep intel

・apt-get   
機能:インストーラーをアップデートします。
構文:apt-get update, or apt-get upgrade

・sosreport
機能:コンピューターに関する設定および診断情報を収集するユーティリティー。
このユーティリティーは、次のコマンド ラインを使用して最初にインストールする必要があります:
「sudo apt-get install sosreport」インストール後、最初にユーティリティーを実行する前に、コンピューターを再起動することをお勧めします。

https://access.redhat.com/ja/solutions/78443


・cat と grep を一緒に使用
機能:特定の検索アイテムのすべてのインスタンスをリストするために使用します。
構文:cat /dir/logfile | grep intel (このコマンドの出力は、文字列「intel」のすべてのインスタンスでデフォルトの出力ソースに印刷されます)

2. 接続とネットワークの問題:SSH接続の問題

1.SSHが起動しているか確認

sudo service ssh status

SSH接続に問題がある場合、SSHが正しく起動しているか確認するためのコマンド。


https://www.cyberciti.biz/faq/howto-start-stop-ssh-server/


2.ファイアウォールの設定

sudo ufw status

ファイアウォールのステータスを確認し、必要に応じて設定を変更するためのコマンド。

3. パッケージとソフトウェアの管理:パッケージの依存関係の問題

1.dpkgコマンド

dpkg(Debian Package)は、DebianベースのLinuxディストリビューションで使用されるパッケージ管理ツールの一部です。

このコマンドは、システムにインストールされたパッケージの管理や操作を行います。


◆主な用途:

・パッケージのインストール:
sudo dpkg -i package.deb

Debianパッケージ(.deb)をインストールするためのコマンド。
-iオプションは「install」を意味します。


・パッケージの削除:
sudo dpkg -r package_name

インストールされたパッケージを削除するためのコマンド。
-rオプションは「remove」を意味します。


・パッケージの情報表示:
dpkg -l | grep package_name

インストールされたパッケージの詳細な情報を表示するためのコマンド。
-lオプションは「list」を意味します。

2.aptコマンド

apt(Advanced Package Tool)は、DebianベースのLinuxディストリビューションで使用される高度なパッケージ管理ツールです。

aptはdpkgの前に登場し、より高レベルでユーザーフレンドリーなインターフェースを提供します。


◆主な用途:

・パッケージの検索:
apt search package_name

パッケージを検索するためのコマンド。
指定した名前に一致するパッケージを表示します。


・パッケージのインストール:
sudo apt install package_name

パッケージをインストールするためのコマンド。
installコマンドの後にパッケージ名を指定します。


・パッケージの削除:
sudo apt remove package_name

インストールされたパッケージを削除するためのコマンド。
removeコマンドの後にパッケージ名を指定します。


・パッケージのアップデート:
sudo apt update
sudo apt upgrade

パッケージ情報の更新とシステムのアップグレードを行うためのコマンド。
updateはパッケージ情報の更新、「upgrade」はアップグレードを意味します。


これらのコマンドは、Linuxシステムでのソフトウェアの管理やトラブルシューティングにおいて頻繁に使用されます。

4. ファイルとディレクトリの操作:ファイルが見つからない場合

1.ファイルの存在確認

ls <ファイルパス>
ファイルが存在するかどうかを確認するためのコマンド。

2.ファイル検索

sudo find / -name <ファイル名>
ファイルがどのディレクトリにあるかわからない場合、findコマンドを使用して検索するためのコマンド。

5. ファイルとディレクトリの操作:権限の問題

1.ファイルの権限確認

ls -l <ファイルパス>

権限の問題がある場合、ファイルの権限を確認するためのコマンド。

2.権限の変更

sudo chmod <新しい権限> <ファイルパス>

必要に応じて、権限を変更するためのコマンド。



https://qiita.com/t-a-run/items/239ed690ece7a011804a


https://www.profuture.co.jp/mk/column/41710

6. プロセスとリソース管理:プロセスのトラブルシューティング

1.実行中のプロセスの確認

ps aux

システム上で実行中のプロセスを確認するためのコマンド。

2.プロセスの終了

kill <プロセスID>

不要なプロセスを終了するためのコマンド。

7. プロセスとリソース管理:リソースの枯渇

1.メモリ使用量の確認

free -m

メモリの使用状況を確認するためのコマンド。

2.リソースを解放する

メモリやCPUなどのリソースが枯渇している場合、不要なプロセスを終了してリソースを解放する。

8. プロセスとリソース管理:学習サイトとリソース

1.Linux Journey

Linux Journey - 対話型学習プラットフォーム。

2.Linux Documentation

Linux Documentation - Linuxの公式ドキュメント。

3.Stack Exchange

Unix & Linux Stack Exchange - ユーザー間で質問と回答を行うプラットフォーム。

9. まとめ

Linuxトラブルシューティングは、包括的な知識と経験の積み重ねによって成り立っています。

本ガイドでは、ネットワーク、パッケージ管理、ファイル操作、プロセス管理など、Linuxで発生する一般的なトラブルに対する基本的な対処法を解説しました。

これらの手法をマスターすることで、Linuxでの作業がよりスムーズになり、問題が発生した際にも迅速に対応できるようになります。


また、学習リソースを活用してスキルを向上させましょう。