知っておくべき最も一般的に使用される Linux コマンド
Linux は、プログラマーや一般ユーザーの間で非常に人気のあるオペレーティング システム (OS) です。人気の主な理由の 1 つは、優れたコマンド ライン サポートです。 Linux オペレーティング システム全体は、コマンド ライン インターフェイス (CLI) 経由でのみ管理できます。これにより、複雑なタスクをわずか数個のコマンドで実行できるようになります。
このガイドでは、経験豊富なシステム管理者や初心者にとって役立つ、一般的に使用されるコマンドについて説明します。このガイドに従えば、ユーザーは自信を持って Linux システムを操作できるようになります。
わかりやすく整理するために、これらのコマンドは、ファイル システム、ネットワーク、およびシステム情報の 3 つのセクションにグループ化されています。
Linux ファイル システム コマンド
このセクションでは、Linux のファイルとディレクトリに関連するいくつかの便利なコマンドについて説明します。
1.catコマンド
cat コマンドは主にファイルの内容を表示するために使用されます。ファイルの内容を読み取り、標準出力 (stdout) に表示します。
cat コマンドの一般的な構文は次のとおりです。
cat [OPTIONS] [FILE1] [FILE2] ...
cat コマンドを使用して、/etc/os-release ファイルの内容を表示してみましょう。
cat /etc/os-release
さらに、コマンドの -n
オプションを使用して、内容を行番号とともに表示することもできます。
cat -n /etc/os-release
2.cpコマンド
cp コマンドは、ファイル、ファイルのグループ、およびディレクトリをコピーする場合に便利です。
cp コマンドの一般的な構文は次のとおりです。
cp [OPTIONS]
ここで、角括弧 ([])
はオプションの引数を表し、山括弧 (<>)
は必須の引数を表します。
/etc/os-release ファイルを /tmp ディレクトリにコピーしましょう。
cp /etc/os-release /tmp/new-file.txt
次に、ファイルの内容を表示して、ファイルがコピーされたことを確認してみましょう。
cat /tmp/new-file.txt
同様に、cp コマンドを使用してディレクトリをコピーできます。 /etc/cron.d ディレクトリを /tmp ディレクトリ内にコピーしましょう。
cp -r /etc/cron.d /tmp
cp コマンドで -r
オプションを使用しました。これは再帰操作を表します。ファイルとサブディレクトリを含むディレクトリを再帰的にコピーします。
次の例では、ディレクトリが正常にコピーされたことを確認する方法を説明します。
ls /tmp/cron.d
ls -l /tmp/cron.d
3.lsコマンド
ls コマンドは、ディレクトリの内容を一覧表示し、ファイルをサイズと最終変更時刻で降順に並べ替えるのに使用されます。
ls コマンドの一般的な構文は次のとおりです。
ls [OPTIONS] [FILE1] [FILE2] ...
ls コマンドに引数を指定しない場合、現在のディレクトリの内容が一覧表示されます。
ls
前の例では、/etc/cron.d ディレクトリを /tmp ディレクトリにコピーしました。がそこに存在し、必要なファイルが含まれていることを確認してみましょう。
ls /tmp/cron.d
ls コマンドで -l
オプションを使用すると、ファイルのアクセス許可、所有者、タイムスタンプ、サイズなどの詳細情報を表示できます。
/tmp/cron.d ディレクトリにあるファイルについて詳しく見てみましょう。
ls -l /tmp/cron.d
4.mkdirコマンド
コンテンツを整理するためにディレクトリ構造を作成することがよくあります。 Linux では、mkdir コマンドを使用して 1 つまたは複数のディレクトリを作成し、ディレクトリに適切な権限を設定できます。
mkdir コマンドの一般的な構文は次のとおりです。
mkdir [OPTIONS] <DIRECTORY1> <DIRECTORY2> ...
/tmp ディレクトリに dir-1 という名前のディレクトリを作成しましょう。
mkdir /tmp/dir-1
次に、ディレクトリが作成されたことを確認してみましょう。
ls /tmp/dir-1
ここでは、ls コマンドがエラーを報告していないことがわかります。これは、ディレクトリがそこに存在していることを意味します。
場合によっては、データをより適切に構成するために、ネストされたディレクトリ構造を作成する必要があります。このような場合、コマンドの -p
オプションを使用して、/tmp/dir-1 ディレクトリの下にいくつかのネストされたディレクトリを作成できます。
mkdir -p /tmp/dir-1/dir-2/dir-3/dir-4/dir-5
上の例では、4 レベルのネストされたディレクトリを作成しました。 ls コマンドを使用して確認してみましょう。
ls -R /tmp/dir-1
ここでは、コマンドで -R
オプションを使用して、ディレクトリの内容を再帰的に表示しています。
5.historyコマンド
最後に実行されたコマンドを監査するには、history コマンドを使用します。このコマンドは、ターミナル セッションで最後に実行されたコマンドのリストを表示します。
history
コマンド履歴をタイムスタンプ付きで表示するには、bash 履歴にタイムスタンプを設定する必要があります。次のコマンドを実行します。
HISTTIMEFORMAT="%d/%m/%y %T " #Temporarily set the history timestamp
export HISTTIMEFORMAT="%d/%m/%y %T " #Permanently set the history timestamp
history
6.duコマンド
ディスク容量を消費している上位 10 個のファイルをどのように確認しますか? du コマンドから作成された単純なワンライナー スクリプト。主にファイル スペースの使用に使用されます。
du -hsx * | sort -rh | head -10
上記の du コマンドのオプションとスイッチの説明。
- du – ファイル容量の使用量を見積もります。
- -hsx –
(-h)
人間が読める形式、(-s)
概要出力、(-x)
あるファイル形式では、他のファイル形式のディレクトリをスキップします。 - 並べ替え – テキスト ファイルの行を並べ替えます。
- -rh –
(-r)
比較の結果を反転し、(-h)
として人間が読める形式で比較します。 - head – ファイルの最初の n 行を出力します。
7.statコマンド
statコマンドは、ファイルのファイルサイズ、アクセス権限、アクセス時刻、ユーザーID、グループIDなどの情報を取得するために使用します。
stat anaconda-ks.cfg
Linux ネットワーク コマンド
このセクションでは、初心者がネットワーク関連の問題のトラブルシューティングに使用できるネットワーク コマンドのいくつかについて説明します。
8.pingコマンド
あらゆるネットワークで実行される非常に一般的な操作の 1 つは、特定のホストが到達可能かどうかを確認することです。 ping コマンドを使用して、他のホストとの接続を確認できます。
ping コマンドの一般的な構文は次のとおりです。
ping [OPTIONS] <destination>
ここで、宛先は IP アドレスまたは完全修飾ドメイン名 (FQDN) (google.com など) にすることができます。現在のシステムが Google と通信できることを確認してみましょう。
ping -c 4 google.com
上記の例では、コマンドはネットワーク通信に関する統計を表示します。これは、4 つのネットワーク要求 (パケット) すべてに対して応答が受信されたことを示しています。特定のホストに送信されるリクエストの数を制限するために、コマンドで -c
オプションを使用していることに注意することが重要です。
2 つのホスト間の通信が切断された場合の例を見てみましょう。
このシナリオをシミュレートするために、到達不可能な IP アドレスへの到達を試みます。この場合、192.168.10.100 です。
ping -c 4 192.168.10.100
ここでは、ネットワーク リクエストに対する応答を受信していないことがわかります。したがって、コマンドはエラー「宛先ホストに到達できません」を報告します。
9. ホストコマンド
場合によっては、特定のドメインの IP アドレスを見つける必要があります。これを実現するには、DNS ルックアップを実行し、FQDN を IP アドレスに、またはその逆に変換するhost コマンドを使用します。
host コマンドの一般的な構文は次のとおりです。
host [OPTIONS] <destination>
ここで、宛先は IP アドレスまたは FQDN になります。
host コマンドを使用して、google.com の IP アドレスを調べてみましょう。
host google.com
10.whoisコマンド
登録されたドメインに関するすべての詳細は集中データベースに保存され、whois コマンドを使用してクエリすると、特定のドメインに関する詳細が表示されます。
whois コマンドの一般的な構文は次のとおりです。
whois [OPTIONS] <FQDN>
google.com の詳細を見てみましょう。
whois google.com
ここでは、ドメインの登録/更新/有効期限、ドメインプロバイダーなどの詳細情報を確認できます。
whois コマンドは、デフォルトではすべてのシステムで使用できるわけではないことに注意することが重要です。ただし、パッケージマネージャーを使用してインストールできます。たとえば、Debian ベースのディストリビューションでは、apt パッケージ マネージャーを使用してインストールできます。
sudo apt install whois
RHEL ベースおよびその他のディストリビューションでは、次のようにインストールできます。
sudo yum install whois [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]
sudo emerge -a net-misc/whois [On Gentoo Linux]
sudo apk add whois [On Alpine Linux]
sudo pacman -S whois [On Arch Linux]
sudo zypper install whois [On OpenSUSE]
Linux システム情報コマンド
このセクションでは、現在のシステムに関する詳細を提供できるいくつかのコマンドについて説明します。
11. uptime コマンド
uptime コマンドを使用して、システムが最後に再起動されたのがいつだったかを確認することは、非常に一般的な要件です。これにより、システムの稼働時間がわかります。
現在のシステムの稼働時間を調べてみましょう。
uptime -p
12:10:57 up 2:00, 1 user, load average: 0.48, 0.60, 0.45
この例では、-p
オプションを使用して、出力をきれいな形式で表示しています。
12.フリーコマンド
ユーザーは多くの場合、取り付けられているメモリ、利用可能なメモリ、および使用されているメモリの詳細を確認する必要があります。この情報は、パフォーマンスの問題のトラブルシューティングを行う際に重要な役割を果たします。 free コマンドを使用してメモリに関する詳細を確認できます。
free -m
ここでは、出力をメビバイト単位で表示するコマンドで -m
オプションを使用しています。
同様の方法で、-g
、-t
、および -p
オプションを使用して、出力をギビバイト、テビバイト、およびバイト単位で表示できます。それぞれペビバイト。
13.lsblkコマンド
コンピュータ システムはデータをブロック デバイスに保存します。ブロック デバイスの例には、ハードディスク ドライブ (HDD)、ソリッド ステート ドライブ (SSD) などがあります。 lsblk コマンドを使用すると、ブロック デバイスに関する詳細情報を表示できます。
lsblk
この例では、ブロック デバイスが 1 つだけあり、その名前が /dev/sda であることがわかります。そのブロックデバイス上には 3 つのパーティションが作成されています。
この記事では、Linux 初心者に役立つコマンドのいくつかについて説明しました。まず、ファイル システム コマンドについて説明しました。次に、ネットワーク コマンドについて説明しました。最後に、現在のシステムの詳細を提供するいくつかのコマンドについて説明しました。