覚えるべき60のLinuxコマンド

coldplay.xixi
リリース: 2020-08-01 15:14:19
オリジナル
16447 人が閲覧しました

Linux で学習する必要がある 60 のコマンド: 1. ログインの機能はシステムにログインすることであり、その権限はすべてのユーザーに与えられます; 2. shutdown コマンドの機能はコンピュータをシャットダウンすることです、その権限はスーパー ユーザーです; 3. halt コマンドの機能はシステムをシャットダウンすることであり、その権限はスーパー ユーザーです。

覚えるべき60のLinuxコマンド

Linux には、ディスク操作、ファイル アクセス、ディレクトリ操作、プロセス管理、ファイル権限設定など。したがって、Linux システムでの作業は、システムが提供するコマンドの使用と切り離せません。 Linux システムを本当に理解したい場合は、

まずは Linux コマンドを学習することから始めなければなりません。基本的なコマンドを学習することで、Linux システムをさらに理解することができます。

コマンドの数は Linux ディストリビューションによって異なりますが、Linux ディストリビューションのコマンドの最小数は 200 を超えます。ここでは、システム内での役割に応じて、より重要で使用頻度の高いコマンドを次の 6 つに分けて紹介します。

◆ インストールおよびログイン コマンド:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last;

◆ ファイル処理コマンド: file、mkdir、grep、dd 、find、mv、ls、diff、cat、ln;

◆ システム管理関連コマンド: df、top、free、quota、at、lp、adduser、groupadd、kill、crontab;

◆ ネットワーク操作コマンド: ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、nslookup;

◆ システム セキュリティ関連コマンド: passwd、su、umask、chgrp、 chmod、chown、chattr、sudo ps、who;

◆ その他のコマンド: tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。

この記事では、Mandrake Linux 9.1 (Kenrel 2.4.21) を例として、Linux でのインストールおよびログイン コマンドを紹介します。

immortality Press: このページの特定の部分のコンテンツまたは特定のコマンドの使用法を検索するには、ctrl f を使用してください。

関連学習の推奨事項: linux ビデオ チュートリアル

Linux で学習する必要がある 60 のコマンド (1) - インストールおよびログイン コマンド

login

1. 機能

ログインの機能はシステムにログインすることであり、その使用権限はすべてのユーザーに与えられます。

2.形式

login [名前][-p][-h ホスト名]

3.主なパラメータ

-p: ログイン通知現在の環境パラメータを保持します。

-h: ユーザー名をリモート ログインに転送するために使用されます。

コマンド ライン モードを使用して Linux にログインすることを選択した場合、最初に表示される Linux コマンドは login: です。

一般的なインターフェイスは次のとおりです:

Manddrake Linux release 9.1 (Bamboo) for i586

renrel 2.4.21-0.13mdk on i686 / tty1

localhost login:root

password:

上記のコードでは、最初の行は Linux リリースのバージョン番号、2 行目はカーネルのバージョン番号とログイン仮想コンソールです。 3行目 ログイン名を入力し、「Enter」キーを押し、「パスワード」の後にアカウントのパスワードを入力してシス​​テムにログインします。セキュリティ上の理由から、アカウントのパスワードを入力するときに文字が画面にエコー表示されたり、カーソルが移動したりすることはありません。

ログイン後、次のインターフェイスが表示されます (スーパー ユーザーを例にします):

[root@localhost root]

#last login:Tue , Nov 18 10: 00:55 on vc/1

上記は、ログイン日、月、日、時刻、および使用された仮想コンソールを示しています。

4. アプリケーション スキル

Linux

は、同時に複数のユーザーのログインを受け入れ、1 人のユーザーのログインも許可する真のマルチユーザー オペレーティング システムです。複数回。これは、多くのバージョンの Unix と同様に、Linux が仮想コンソールへのアクセスを提供しており、ユーザーがコンソールから同時に仮想コンソールにアクセスできるためです (システムのコンソールは、システムに直接接続されているモニターとキーボードです)。複数のログインを行うことができます。各仮想コンソールは独立したワークステーションと見なすことができ、ワークステーションは

間で切り替えることができます。仮想コンソール間の切り替えは、Alt キーとファンクション キー (通常は F1 ~ F6) を押すことで実現できます。

たとえば、ユーザーがログインした後、「Alt

F2」キーを押すと、上に表示される「login:」プロンプトが表示され、ユーザーが2番目の仮想管制塔。次に、「Alt

F1」キーを押すだけで、最初の仮想コンソールに戻ります。新しくインストールされた Linux システムでは、ユーザーは「Alt F1」キーから「Alt F6」キーを使用して最初の 6 つの仮想コンソールにアクセスできます。仮想コンソール

# の最も便利な点は、プログラム エラーによりシステムがデッドロックになった場合に、他の仮想コンソールに切り替えて動作させ、プログラムを終了できることです。

shutdown

1. 機能

shutdown コマンドの機能はコンピュータをシャットダウンすることであり、その使用権限はスーパー ユーザーです。

2.形式

shutdown [-h][-i][-k][-m][-t]

3.重要なパラメータ

-t: 他の実行レベルに変更する前にシャットダウンする時間を init プログラムに指示します。

-k: 実際にはシャットダウンせず、各ログインに警告信号を送信するだけです。

-h: シャットダウン後、電源を切ります。

-c: 現在のプロセスをキャンセル 現在実行中のシャットダウンプログラムをキャンセルします。もちろん、このオプションには時間パラメータはありませんが、それを説明するメッセージを入力することができ、このメッセージは各ユーザーに送信されます。

-F: コンピューターの再起動時に fsck を強制します。

-time: シャットダウンするまでの時間を設定します。

-m: システムをシングルユーザー モードに変更します。

-i: シャットダウン時にシステム情報を表示します。

4. コマンドの説明

shutdown

コマンドを使用すると、システムを安全にシャットダウンできます。ユーザーの中には、電源を直接遮断して Linux システムをシャットダウンする人もいますが、これは非常に危険です。 Linux は Windows とは異なり、バックグラウンドで多くのプロセスが実行されているため、強制的にシャットダウンするとプロセスのデータが失われ、システムが不安定な状態になり、システムによってはハードウェア デバイス (ハードディスク) が損傷する可能性があります。)システムをシャットダウンする前に

shutdown コマンドを使用すると、システム管理者はログインしているすべてのユーザーにシステムがシャットダウンされ、ログイン コマンドがフリーズされることを通知します。つまり、新しいユーザーはログインできなくなりました。

halt

1. 機能

halt コマンドの機能はシステムをシャットダウンすることであり、その使用権限はスーパーユーザーです。

2.形式

halt [-n] [-w] [-d] [-f] [-i] [-p]

3. 主なパラメータ説明

-n: 同期システム コールを防止します。これは、fsck でルート パーティションにパッチを適用した後に、カーネルがパッチが適用されたスーパー ブロックを古いバージョンのスーパー ブロックで上書きするのを防ぐために使用されます。

-w: これは実際の再起動やシャットダウンではなく、単に wtmp (/var/log/wtmp) レコードを書き込むだけです。

-f: シャットダウンは呼び出されませんが、強制的にシャットダウンまたは再起動されます。

-i: シャットダウン (または再起動) する前に、すべてのネットワーク インターフェイスをオフにします。

-f: 強制的にシャットダウンします。シャットダウン コマンドを呼び出しません。

-p: シャットダウンする場合は、電源を切る動作を行ってください。

-d: システムをシャットダウンしますが、記録は残しません。

4. コマンドの説明

halt

は shutdown

-h を呼び出します。 haltを実行すると、アプリケーションのプロセスが強制終了され、sync(バッファに格納されているデータをハードディスクに強制的に書き込む)システムコールが実行され、ファイルシステムへの書き込みが完了した後、カーネルが停止します。システムの

実行レベルが 0 または 6 の場合は、システムをシャットダウンします。それ以外の場合は、代わりに shutdown コマンド (および -h パラメータ) を使用します。

reboot

1. 機能

reboot コマンドの機能はコンピュータを再起動することであり、その権限はシステム管理者にあります。

2. 形式

reboot [-n] [-w] [-d] [-f] [-i]

3. 主なパラメータ

-n: 再起動する前にメモリ データをハードディスクに書き戻さないでください。

-w: 実際にコンピュータを再起動するのではなく、レコードを /var/log/wtmp ファイルに書き込むだけです。

-d: /var/log/wtmp ファイルにレコードを書き込みません (-n パラメーターには -d が含まれます)。

-i: 再起動する前に、すべてのネットワーク関連デバイスを停止します。

install

1. 機能

install コマンドは、ソフトウェアのインストールまたはアップグレード、またはデータのバックアップに使用され、その使用権限はすべてのユーザーに与えられます。

2. 形式

(1)インストール [オプション]...ソース先

(2)インストール [オプション]...ソース...ディレクトリ

(3)install -d [オプション]... ディレクトリ...

最初の 2 つの形式では、複数のファイルが既存のファイルにコピーされ、アクセス許可モードと所有者/を設定します。同時にグループ化します。 3 番目の形式では、指定されたすべてのディレクトリとそのホーム ディレクトリが作成されます。長いオプションに必要なパラメータは、短いオプションを使用する場合にも必要です。

3. 主なパラメータ

——backup[=CONTROL]: 既存の各宛先ファイルをバックアップします。

-b: --backup と似ていますが、パラメータを受け入れません。

-c: (このオプションは処理されません)。

-d,--directory: すべてのパラメータはディレクトリとして扱われ、指定されたディレクトリのすべてのメイン ディレクトリが作成されます。

-D: 作成前のすべてのホーム ディレクトリを にコピーします。最初の使用形式で役立ちます。

-g,--group=group: プロセスが現在属しているグループではなく、プロセスが属しているグループを設定します。

-m,--mode=mode: rwxr-xr-x ではなく、自分で許可モードを設定します (chmod など)。

-o,--owner=owner: 所有者を自分で設定します (スーパー ユーザーのみに適用)。

-p,--preserve-timestamps: ファイルのアクセス/変更時刻を、対応する宛先ファイルの時刻属性として使用します。

-s,--strip: シンボル テーブルを削除するには、strip コマンドを使用します。これは、1 番目と 2 番目の使用形式にのみ適用されます。

-S,--suffix=suffix: バックアップファイルを自分で指定します。

-v,--verbose: 処理時に各ファイル/ディレクトリの名前を出力します。

--help: このヘルプメッセージを表示して終了します。

--version: バージョン情報を表示して終了します。

mount

1. 機能

mount コマンドの機能はファイル システムをマウントすることであり、その権限はスーパー ユーザーまたは /etc/ で許可されたユーザーです。 fstab。

2. フォーマット

mount -a [-fv] [-t vfstype] [-n] [-rw] [-F] device dir

3. Mainパラメータ

-h: 補助情報を表示します。

-v: 情報を表示します。通常はデバッグのために -f とともに使用されます。

-a: /etc/fstab に定義されているすべてのファイル システムをマウントします。

-F: このコマンドは通常 -a と一緒に使用され、実行されるマウント アクションごとにトリップが生成されます。システムが多数の NFS ファイル システムをマウントする必要がある場合、ロードを高速化できます。

-f: 通常はデバッグに使用されます。これにより、マウントは実際のマウント操作を実行するのではなく、マウント プロセス全体をシミュレートします。通常は -v とともに使用されます。

-t vfstype: ロードされているファイル システムのタイプを表示します。

-n: 一般に、マウントがマウントされた後、データの一部が /etc/mtab に書き込まれます。システム内に書き込み可能なファイル システムがない場合は、このオプションを使用してこのアクションをキャンセルできます。

4. アプリケーションのヒント

Linux

および Unix システムでは、すべてのファイルは大きなツリー (/ をルートとする) の一部としてアクセスされます。 CD-ROM 上のファイルにアクセスするには、CD-ROM デバイスをファイル ツリー内の特定のマウント ポイントにマウントする必要があります。ディストリビューションに自動マウント パッケージがインストールされている場合、この手順は自動的に実行できます。 Linux では、ハードディスクや光学ドライブなどのストレージ デバイスを使用する場合は、まずそれをロードする必要があります。ストレージ デバイスがマウントされると、

ディレクトリとしてアクセスできるようになります。 mount コマンドを使用してデバイスをマウントします。 mount コマンドを使用する場合は、まず少なくとも次の 3 種類の情報を知っておく必要があります。ロードするオブジェクトのファイル システム タイプ、ロードするオブジェクトのデバイス名、デバイスの保存先ディレクトリです。ロードされています。

(1) Linux が認識するファイルシステム

◆ Windows 95/98 でよく使われる FAT 32 ファイルシステム: vfat;

◆ Win NT/2000 ファイルシステム: ntfs ;

◆ OS/2 のファイル システム: hpfs;

◆ Linux のファイル システム: ext2、ext3;

◆ CD-ROM ディスク システムのファイル: iso9660。

vfat は FAT 32 システムを指しますが、実際には FAT 16 ファイル システム タイプとも互換性があります。

(2) デバイス名の決定

Linux

では、通常、デバイス名は /dev に存在します。これらのデバイス名の命名には規則があり、「推測」によってデバイス名を知ることができます。たとえば、/dev/hda1 は

IDE デバイス、hd はハードディスク (ハードディスク)、sd は SCSI デバイス、fd はフロッピー デバイス (またはフロッピー

ディスク?) です。 a は最初のデバイスを表します。通常、IDE インターフェイスは 4 台の IDE デバイス (4 台のハード ドライブなど) に接続できます。したがって、IDE ハードドライブを識別する方法は hda、hdb、hdc、

hdd です。 hda1 の「1」は hda の最初のハードディスク パーティション

(パーティション) を表し、hda2 は hda の 2 番目のプライマリ パーティションを表し、最初の論理パーティションは hda5 から始まります。また、

/var/log/messages ファイルを直接確認することもでき、このファイルには、コンピュータの電源を入れた後にシステムが認識したデバイス コードが記載されています。

(3) マウントポイントを探す

デバイスをマウントする前に、コンピュータに/mntという空のディレクトリがあるかどうかを確認してください。このディレクトリはマウント専用のディレクトリです。ポイント (マウント

ポイント)。ディレクトリの特別なマウント ポイントとして、/mnt 内に複数の /mnt/cdrom、/mnt/floppy、/mnt/mo、およびその他のディレクトリを作成することをお勧めします。たとえば、

が次の 5 つのデバイスをマウントしたい場合、実行手順は次のようになります (すべて Linux ext2 システムであると仮定します。Windows XX の場合は、ext2 を vfat に変更してください)。

フロッピー ディスク ===>mount -t ext2 /dev/fd0 /mnt/floppy

cdrom ===>mount -t iso9660 /dev/hdc /mnt/cdrom

SCSI cdr ===>mount -t iso9660 /dev/sdb /mnt/scdrom

SCSI cdr ===>mount -t iso9660 /dev/sdc /mnt/scdr

ただし、現在、Red Hat Linux を除き、ほとんどの新しい Linux ディストリビューション (Red Flag Linux、ChinaSoft Linux、Mandrake Linux など) はファイル システムを自動的にマウントできます。

umount

1. 機能

umount コマンドはファイルシステムをアンマウントするために使用され、その使用権限はスーパーユーザーまたは /etc/fstab で許可されたユーザーです。

2.形式

unmount -a [-fFnrsvw] [-t vfstype] [-n] [-rw] [-F] device dir

3. 使用します。注:

umount

コマンドは、mount コマンドの逆の操作であり、パラメーターと使用法は mount コマンドと同じです。 Linux が CD-ROM をマウントすると、CD-ROM がロックされ、CD-

パネルの [取り出し] ボタンを使用して取り出すことができなくなります。ただし、ディスクが不要になった場合、シンボリック リンクとして /cdrom がある場合は、umount /cdrom を使用してアンマウントします。このコマンドは、ユーザー

がディスクを使用していない場合にのみ成功します。このコマンドでは、現在の作業ディレクトリをディスク上のディレクトリとして使用してターミナル ウィンドウを開きます。

chsh

1. 機能

chsh コマンドはユーザーのシェル設定を変更するために使用され、その使用権限はすべてのユーザーに与えられます。

2.形式

chsh [-s] [-list] [--help] [-v] [ユーザー名]

3.主なパラメータ

-l: システム内のすべてのシェル タイプを表示します。

-v: シェルのバージョン番号を表示します。

4. アプリケーションスキル

前述のように、Linux ではさまざまな種類のシェルが存在します。通常、デフォルトは Bash です。シェルの種類を変更したい場合は、chsh を使用できます。指示。最初にアカウントのパスワードを入力し、次に新しいシェルの種類を入力すると、操作が正しければ「シェルの変更」と表示されます。インターフェイスは通常次のとおりです。

Changing fihanging Shell for cao

Password:

New shell [/bin/bash]: /bin/tcsh

above コード中の [ ] は、現在使用されているシェルを示します。一般のユーザーは自分のシェルのみを変更できますが、スーパー ユーザーはすべてのユーザーのシェルを変更できます。システムによって提供されているシェルを照会するには、図 1 に示すように chsh -l コマンドを使用できます。

図 1 システムで使用できるシェルの種類

図 1 からわかるように、作成者のシステムで使用できるシェルは 4 種類あります。 bash (デフォルト) 、csh、sh、tcsh。

exit

1. 機能

exit コマンドの機能はシステムを終了することであり、その使用権限はすべてのユーザーにあります。

2.形式

終了

3.パラメータ

exit コマンドにはパラメータがありません。実行後、システムを終了し、ログイン インターフェイスに入ります。

last

1. 機能

最後のコマンドの機能は、ユーザーまたは端末の最近のログイン状態を表示することであり、その使用権限はすべてのユーザーに与えられます。管理者は、最後のコマンドを通じてプログラムのログを表示することで、誰がシステムに接続したか、または誰がシステムに接続しようとしたのかを知ることができます。

2. 形式

1ast[—n][-f ファイル][-ttty] [-h ノード][-I —IP][—1][-y][ 1D]

3. 主なパラメータ

-n: 出力レコード数を指定します。

-f file: クエリのログファイルとしてファイル file を指定します。

-t tty: 指定された仮想コンソールのログイン ステータスのみを表示します。

-h ノード: 指定したノードのログイン ステータスのみを表示します。

-i IP: 指定した IP でのログイン状態のみを表示します。

-1: IP を使用してリモート アドレスを表示します。

-y: レコードの年月日を表示します。

-ID: クエリのユーザー名がわかります。

-x: システムのシャットダウン、ユーザーのログインおよび終了の履歴を表示します。

実践的な練習

Linux のインストール コマンドとログイン コマンドは上で紹介しましたが、ここで説明したコマンドを練習するための例をいくつか示します。

1. 複数のコマンドを一度に実行する

1 つのコマンド ラインで複数のコマンドを実行でき、各コマンドをセミコロンで区切るだけです (例:

# last -) x; halt

上記のコードは、システムのシャットダウン、ユーザーのログイン、終了の履歴を表示した後、コンピューターをシャットダウンすることを意味します。

2. Windows システムにアクセスするには、マウントを使用してファイル システムをマウントします。

多くの Linux ディストリビューションでは、Windows システムにアクセスするために Vfat パーティションを自動的にロードできるようになりましたが、Red Hat のすべてのバージョンではロードできません。 Vfat パーティションは自動的にロードされるため、依然として手動操作が必要です。

マウント

Windows パーティションを Linux の「ファイル」として Linux の空のフォルダーにマウントすることで、Windows パーティションを /mnt ディレクトリにリンクできます。したがって、このフォルダーにアクセスするだけで、パーティションにアクセスすることと同じになります。まず、/mnt の下に winc フォルダーを作成し、コマンド プロンプトで次のコマンドを入力します。

#mount -t vfat /dev/hda1 /mnt/winc

つまり、

は、Windows の C パーティションを Liunx の /mnt/winc ディレクトリにマウントすることを意味します。この時点で、Windows の C ドライブの内容が /mnt/winc ディレクトリで確認できます。同様の方法を使用して、Windows システムの D ドライブと E ドライブにアクセスします。 Linux システム上で表示される Windows パーティションの一般的な順序は次のとおりです。hda1 は C ドライブ、hda5 は D ドライブ、

hda6 は E ドライブ...というようになります。上記の方法を使用して Windows システムを確認すると、大きな問題があります。つまり、Windows の中国語のファイル名またはフォルダー名はすべて疑問符

"?" として表示されますが、英語は正常に表示されます。 。いくつかのパラメータを追加することで中国語を表示させることができます。上記の操作を例に、この時点で次のコマンドを入力します。

#mount -t vfat -o iocharset=cp936 /dev/hda1 /mnt/winc

これで中国語が表示されるようになります。通常は 。

3. マウントを使用してファイル システムをフラッシュ ディスクにマウントします

Linux でフラッシュ ディスクを使用するのは非常に簡単です。 Linux は USB デバイスを適切にサポートしています。フラッシュ ディスクが挿入されると、フラッシュ ディスクは SCSI ディスクとして認識されます。通常、次のコマンドが入力されます:

# mount /dev/sda1 /usb

フラッシュ ドライブにファイル システムを追加できます。

豆知識

Linux コマンドとシェル

いわゆるシェル

はコマンド インタープリタであり、プログラミング インターフェイスを提供し、プログラムからプログラミングへ。 Linux 初心者にとって、シェルを学習することは、Linux システムを理解するために非常に重要です。

Linux システムのシェルは、オペレーティング システムのシェルとして機能し、オペレーティング システムを使用するためのインターフェイスをユーザーに提供します。シェルとはコマンド言語、コマンドインタプリタ、プログラミング言語の総称であり、ユーザーと

Linuxカーネルとの間のインターフェースプログラムです。 Linux カーネルを球の中心として想像すると、シェルはカーネルを取り囲む外側の層になります。コマンドがシェルまたは他のプログラムから Linux に渡されると、カーネルはそれに応じて応答します。 Linux システムにおけるシェルの役割は、MS DOS の COMMAND.COM や Windows 95/98 の

explorer.exe に似ています。シェルはシステム コアの一部ではなく、システム コアの単なる拡張ですが、システム カーネルのほとんどの機能を呼び出すことができます。したがって、

Shell は Unux/Linux で最も重要なユーティリティであると言えます。

Linux には多くの種類のシェルがあり、最も一般的に使用されるのは、Bourne

Shell (sh)、C Shell (csh)、Korn Shell (ksh) です。ほとんどの Linux ディストリビューションのデフォルトのシェルは Bourne

Again Shell です。これは Bourne Shell の拡張機能であり、bash と呼ばれます。Bourne Shell と完全に下位互換性があり、Bourne

に基づいています。シェル: 多くの機能が追加されました。 Bash は /bin/bash に配置され、コマンド補完、コマンド編集、コマンド履歴テーブルなどの機能を提供できます。また、C

Shell と Korn

Shell の多くの利点も含まれており、柔軟で強力なプログラミング インターフェイスと非常に使いやすいユーザー インターフェイスを備えています。 Linux システムの 200 以上のコマンドのうち 40 は bash 内部コマンドで、主に

exit、less、lp、kill、cd、pwd、fc、fg などが含まれます。

Linuxで覚えるべき60のコマンド(2) - ファイル処理コマンド

Linux

システム情報は、通常の公式ファイルと同様にファイルに保存されます。各ファイルには、独自の名前、内容、保存アドレス、およびファイルのユーザー、ファイルのサイズなどのその他の管理情報があります。ファイルは

です

手紙、アドレス帳、プログラムのソース ステートメント、プログラムのデータ、さらには実行可能プログラムやその他の非テキスト コンテンツ。

Linux ファイル システムは優れた構造を持ち、多くのファイル処理プログラムを提供します。ここではよく使われるファイル処理コマンドを中心に紹介します。

file

1. 機能 ファイルの内容に基づいてファイルの種類を決定し、使用権限はすべてのユーザーに与えられます。

#2.Format

file は検出ファイルを渡します

file [オプション] ファイル名

3.[オプション]メインパラメータ

-v: 標準出力後にバージョン情報を表示して終了します。

-z: 圧縮ファイルの種類を検出します。

-L: 準拠した接続を許可します。

-f name: ファイル名fileから解析対象ファイル名のリストを読み込みます。

4. 簡単な説明

file コマンドを使用して、ファイルがバイナリ (ELF 形式) 実行可能ファイル、シェル スクリプト ファイル、またはその他の形式であるかどうかを確認します。 file が認識できるファイルの種類には、ディレクトリ、シェル スクリプト、英語テキスト、バイナリ実行可能ファイル、C 言語ソース ファイル、テキスト ファイル、および DOS 実行可能ファイルが含まれます。

5. アプリケーション例

サフィックスのないファイル grap が表示された場合は、次のコマンドを使用できます:

$ file grap

grap:英語のテキスト

現時点では、システムはこれが英語のテキスト ファイルであると表示します。 file コマンドは、グラフィックス、オーディオ、ビデオなどを含むマルチメディア ファイル タイプを検出できないことに注意してください。

mkdir

1. 機能

mkdir コマンドの機能は、dirname という名前のサブディレクトリを作成することであり、MS DOS の md コマンドに似ています。全員がユーザーです。

2.形式

mkdir [オプション] ディレクトリ名

3.[オプション]主なパラメータ

-m,--mode=mode: set chmod と同様に権限を設定します。

-p, --parents: 必要に応じて上位ディレクトリを作成します; ディレクトリがすでに存在する場合はエラーとして扱われません。

-v, --verbose: 新しいディレクトリが作成されるたびに情報を表示します。

--version: バージョン情報を表示して終了します。

4. 応用例

ディレクトリ作成時にディレクトリの権限を設定できますが、このときのパラメータは「-m」です。作成するディレクトリ名が「tsk」であると仮定すると、すべてのユーザーが rwx (つまり、読み取り、書き込み、実行の権限) を持っているため、次のコマンドを使用できます:

$ mkdir -m 777 tsk

grep

1. 機能

grep コマンドは、指定されたファイル内の特定の内容を検索し、その内容を含む行を標準出力に出力します。 grep の正式名称は Global Regular Expression Print、つまりグローバル正規表現版であり、使用権限はすべてのユーザーに与えられます。

2. 形式

grep [オプション]

3. 主要パラメータ

[オプション]主要パラメータ:

-c:一致する行の数のみが出力されます。

-I: 大文字と小文字は区別されません (単一文字にのみ適用されます)。

-h: 複数のファイルをクエリする場合、ファイル名を表示しません。

-l: 複数のファイルをクエリする場合、一致する文字を含むファイル名のみが出力されます。

-n: 一致する行と行番号を表示します。

-s: 存在しない、または一致するテキストがないエラー メッセージを表示しません。

-v: 一致するテキストを含まないすべての行を表示します。

pattern 正規表現の主なパラメータ:

\: 正規表現内の特殊文字の元の意味を無視します。

#^: 正規表現の開始行と一致します。

$: 正規表現の終了行と一致します。

\: 正規表現に一致する行の末尾まで。

[ ]: [A] などの 1 文字、つまり A が要件を満たします。

[-]: [A-Z] などの範囲、つまり A、B、C ~ Z はすべて要件を満たしています。

。 : すべて単一の文字。

##: 文字があり、長さは 0 にすることができます。

式は、Linux/Unix システムにおいて非常に重要な概念です。正規表現 (「正規表現」または「正規表現」とも呼ばれます) は、文字列

(パターン) のタイプを記述することができるパターンです。文字列が正規表現で記述できる場合、その文字は正規表現に一致するといいます。これは、DOS のユーザーがワイルドカード文字

"*" を使用して任意の文字を表す方法と似ています。 Linux システムでは、正規表現はテキスト内のパターンを検索したり、テキストに対して「検索置換」操作やその他の機能を実行したりするためによく使用されます。

4. アプリケーション例

クエリ

DNS サービスへのクエリは日常的なタスクの 1 つであり、これはさまざまなネットワークをカバーする多数の IP アドレスを維持することを意味します。場合によっては、2,000 を超える IP アドレスが存在することがあります。 nnn.nnn ネットワーク アドレスを表示したいが、

の 2 番目の部分の残りは忘れた場合、nnn nn... のように 2 つのピリオドがあることだけがわかります。すべての nnn.nnn IP アドレスを抽出するには、[0-9]\{3

\}\.[0-0\{3\}\ を使用します。意味は、任意の数字が 3 回出現し、その後にピリオドが続き、その後に任意の数字が 3 回出現し、その後にピリオドが続くことを意味します。

$grep '[0-9 ]\{3 \}\.[0-0\{3\}\' ipfile

追加の説明、grep ファミリーには fgrep と egrep も含まれています。 fgrep は、パターンの代わりに文字列の検索を可能にする grep の修正です。egrep は、基本正規表現と拡張正規表現をサポートする grep の拡張機能ですが、\q パターン範囲の適用や、対応するいくつかのより標準化されたパターンはサポートしません。

dd

1. 機能

dd コマンドは、ファイルをコピーし、パラメータに従ってデータを変換およびフォーマットするために使用されます。

2.形式

dd [オプション]

3.[オプション]主要パラメータ

bs=bytes: ibs= と obs= を強制します。

cbs=bytes: 変換ごとに指定します。

conv=Keyword: カンマ区切りのキーワード表現に従ってファイルを変換します。

count=ブロック数: 指定された入力データのみをコピーします。

ibs=Bytes: 指定された数を毎回読み取ります。

if=ファイル: 標準入力データの代わりにコンテンツを読み取ります。

obs=bytes: 書き込まれるたびに指定されます。

of=ファイル: データを標準出力に表示する代わりに書き込みます。

seek=ブロック数: obs 内の指定された出力データを最初にスキップします。

skip=ブロック数: ibs 内の指定された入力データを最初にスキップします。

4. アプリケーション例

dd コマンドは、Linux ブート ディスクの作成によく使用されます。まずブート可能なカーネルを見つけ、そのルート デバイスが正しいルート パーティションを指すようにしてから、dd コマンドを使用してフロッピー ディスクに書き込みます:

$ rdev vmlinuz /dev/hda

$dd if =vmlinuz of=/dev/fd0

上記のコードは、rdev コマンドを使用して、ブート可能カーネル vmlinuz のルート デバイスを /dev/hda にポイントすることを説明しています。「hda」を独自の文字に置き換えてください。次に、dd コマンドを使用してカーネルをフロッピー ディスクに書き込みます。

find

1. 機能

find コマンドの機能はディレクトリ内のファイルを検索することであり、その使用権限はすべてのユーザーに与えられます。

2. 形式

find [パス][オプション][式]

パスは、システムがディレクトリに沿って下方向にファイルの検索を開始するディレクトリ パスを指定します。木。これはスペースで区切られたパスのリストです。パスが記述されていない場合は、デフォルトで現在のディレクトリが使用されます。

3. 主なパラメータ

[options] パラメータ:

- Depth: 深さレベルの検索処理メソッドを使用して、指定されたディレクトリ内のファイル コンテンツの検索を優先します。一定のレベル。

-max Depth レベル: 開始ディレクトリの最大で level-th のサブディレクトリが見つかることを示します。レベルは負ではない数値です。レベルが 0 の場合は、現在のディレクトリのみを検索することを意味します。

-min Depth レベル: 少なくとも開始ディレクトリのレベルレベルのサブディレクトリが見つかったことを示します。

-mount: 他のファイル システム (Msdos、Vfat など) のディレクトリやファイルを検索しないでください。

-バージョン: 印刷版。

[式] は一致する式であり、find コマンドで受け入れられる式です。find コマンドのすべての操作は式に基づいています。多くのパラメーターがありますが、ここではよく使用されるパラメーターのみを紹介します。

#—name: ワイルドカード文字 * および ? をサポートします。

-atime n: 過去 n 日間に読み取られたファイルを検索します。

-ctime n: 過去 n 日間に変更されたファイルを検索します。

-group grpoupname: グループが grpoupname であるすべてのファイルを検索します。

-user ユーザー名: 所有者がユーザー名 (ID または名前) であるすべてのファイルを検索します。

-size n: サイズが n ブロックのファイルを検索します。

-print: 検索結果を出力し、印刷します。

4. アプリケーション スキル

find コマンドを使用してファイルを検索するいくつかの方法:

(1) ファイル名に基づいて検索します

例:ファイル名が lilo.conf であるファイルの場合、次のコマンドを使用できます。

find / -name lilo.conf

find コマンドの後の「/」は、次のコマンドを意味します。ハードディスク全体を検索します。

(2) ファイルの迅速な検索

ファイル名に基づいてファイルを検索すると、実際的な問題が発生します。つまり、特に大規模な Linux の場合、ファイル システムと大きなハードディスク ファイルは深いサブディレクトリに配置されます。ファイル

が特定のディレクトリに保存されていることがわかっている場合は、このディレクトリ内を検索するだけで時間を大幅に節約できます。たとえば、smb.conf ファイルは、ファイル拡張子「.conf」から設定ファイルであると判断でき、/etc ディレクトリにあるはずです。この場合、次のコマンドを使用できます。 #find /etc -name smb.conf

このように、「ファイルをすぐに見つける」方法を使用すると、時間を短縮できます。

(3) ファイル名の一部に基づく検索方法

特定のファイルにのみ 4 文字の abvd が含まれていることがわかっている場合、システム内のすべてのファイルを検索する必要がある場合があります。これらの 4 つの文字を含む 次のコマンドを入力できます:

find / -name '*abvd*'

このコマンドを入力すると、Linux システムは、abvd の 4 文字を含むすべてのファイルを検索します。 abvdrmyz などのファイル (* はワイルドカード文字) やその他の修飾されたファイルを表示できます。

(4) 混合検索方法を使用してファイルを検索する

find コマンドでは混合検索方法を使用できます。たとえば、/etc ディレクトリ内で 500000 バイトを超えるファイルを検索したいとします。 24 時間。特定のファイルを変更する場合、-and (and) を使用して 2 つの検索パラメーターをリンクし、混合検索方法を形成できます。

find /etc -size 500000c -and -mtime 1

mv

1. 機能

mv コマンドは、ファイルまたはディレクトリの名前を変更するために使用されます。または ファイルをあるディレクトリから別のディレクトリに移動します。そのアクセス許可はすべてのユーザーに与えられます。このコマンドは、DOS コマンドの ren と move を組み合わせたものに似ています。

2. 形式

mv[オプション] ソース ファイルまたはディレクトリ ターゲット ファイルまたはディレクトリ

3.[オプション]主なパラメータ

-i: インタラクション操作方法。 mv 操作によって既存のターゲット ファイルが上書きされる場合、システムは書き換えるかどうかを尋ね、ファイルを誤って上書きしないようにユーザーに「y」または「n」で答えるよう要求します。

-f: 対話型操作を無効にします。 mv 操作では、既存のターゲット ファイルを上書きするときは何も指示されません。このパラメータを指定すると、i パラメータは無効になります。

4. 適用例

(1) /usr/cbu 内のすべてのファイルを現在のディレクトリ ("." で示される) に移動します:

$ mv /usr/cbu/ * .

(2) ファイル名を cjh.txt から wjz.txt に変更します。

$ mv cjh.txt wjz.txt

ls

1. Function

ls コマンドは、DOS の dir コマンドと同様に、ディレクトリの内容を表示するために使用され、その使用権限はすべてのユーザーに与えられます。

2.形式

ls [オプション][ファイル名]

3.options メインパラメータ

-a, --all: 何も隠さない「.」文字で始まる項目。

-A、--almost-all: 「.」と「..」を除くすべての項目をリストします。

--author: 各ファイルの作成者を出力します。

-b, --escape: 印刷できない文字を 8 進数のオーバーフロー シーケンスとして表します。

--block-size=サイズ: ブロックは指定されたバイト数です。

-B、--ignore-backups: ~ 文字で終わる項目はリストしないでください。

-f: 並べ替えは実​​行されず、-aU パラメーターが有効になり、-lst パラメーターは失敗します。

-F, --classify: ファイル タイプ インジケーター (*/=@| のいずれか) を追加します。

-g: -l と同様ですが、所有者をリストしません。

-G, --no-group: グループ情報の表示を禁止します。

-i, --inode: 各ファイルの i ノード番号をリストします。

-I, --ignore=Style: シェルのワイルドカードに一致する項目を印刷しません。

-k: つまり、--block-size=1K です。

-l: 情報をリストするには、より長い形式を使用します。

-L, --dereference: シンボリックリンクのファイル情報を表示する場合、シンボリックリンクそのものの情報ではなく、シンボリックリンクが示すオブジェクトを表示します。

-m: すべての項目はカンマで区切られ、行幅全体に入力されます。

-n、--numeric-uid-gid: -l と似ていますが、UID および GID 番号をリストします。

-N, --literal: 制御文字の特別な処理が行われていないなど、未処理のプロジェクト名をリストします。

-p, --file-type: ファイル タイプ インジケーター (/=@| の 1 つ) を追加します。

-Q, --quote-name: プロジェクト名を二重引用符で囲みます。

-r, --reverse: 逆順に並べます。

-R、--recursive: すべてのサブディレクトリ レベルを同時に一覧表示します。

-s, --size: ブロック サイズ順に並べられます。

4. 応用例

ls

コマンドは Linux システムで最も頻繁に使用されるコマンドであり、Linux コマンドの中で最も多くのパラメータを持っています。 ls コマンドを使用する場合は、いくつかの異なる色があります。青はディレクトリを表し、緑は実行可能ファイルを表し、赤は圧縮ファイルを表し、水色はリンク ファイルを表し、太字の黒はシンボリック リンクを表し、灰色は他の形式のファイルを表します。図 1 に示すように、最も一般的に使用される ls は ls-l です。

図 1 ls-l コマンドの使用

ファイル タイプは 10 文字の文字列で始まります。最初の文字はファイル タイプを示し、- (通常のファイル)、d (ディレクトリ)、l (シンボリック リンク)、b (ブロック デバイス ファイル)、c (キャラクタ デバイス ファイル) のいずれかのタイプになります。次の 9 文字はファイルのアクセス許可を表し、3 つのグループに分かれており、各グループは 3 桁の数字になります。最初のグループはファイル所有者の権限を表し、2 番目のグループは同じグループ内のユーザーの権限を表し、3 番目のグループは他のユーザーの権限を表します。 3 文字の各グループは、ファイルに対する読み取り (r)、書き込み (w)、および実行許可 (x) を表します。ディレクトリの場合、アクセス権限を示します。 s は、ファイルの実行時に、ファイルの UID

または GID が、実行プロセスの UID (ユーザー ID) または GID (グループ

ID) に割り当てられることを意味します。 t は、フラグ ビットを設定することを意味します (メモリ内に残り、スワップアウトされません)。ファイルがディレクトリの場合、ディレクトリ内のファイルを削除できるのは、スーパーユーザー、ディレクトリ所有者、またはファイル所有者だけです。実行可能ファイルの場合、ファイルの実行後もそのテキスト セグメントへのポインタがメモリ内に残ります。これにより、ファイルを再度実行するときにシステムがファイルをより速くロードできるようになります。次に表示されるのは、ファイル サイズ、生成時刻、ファイル名またはコマンド名

です。

diff

1. 機能

diff コマンドは 2 つのファイルを比較し、その違いを指摘するために使用され、使用権限はすべてのユーザーに与えられます。

2.Format

diff [オプション] ソースファイル ターゲットファイル

3.[オプション] 主なパラメータ

-a: すべてのファイルをファイルとして扱いますこのファイルを処理します。

-b: スペースによる違いを無視します。

-B: 空白行による違いを無視します。

-c: スキーマ出力形式を使用します。

-H: ヒューリスティックを使用して、大きなファイルの検索を高速化します。

-I: 大文字と小文字の変更を無視します。

-n --rcs: RCS 形式を出力します。

cmp

1. 機能

cmp (compare の略) コマンドは、2 つのファイルに違いがあるかどうかを簡単に示すために使用されます。すべてのユーザー。

2.フォーマット

cmp[オプション] ファイル名

3.[オプション]主なパラメータ

-l: バイトを10進数に変換して出力し、 2 つのファイルの差分を 8 進数モードで出力すると便利です。

cat

1. 機能

cat (concatenate の略) コマンドは、指定した 1 つ以上のファイルを接続して情報を表示するために使用されます。すべてのユーザー。

2. 形式

cat [オプション] ファイル 1 ファイル 2...

3.[オプション] 主要パラメータ

-n:最初の行の開始は、すべての出力の行に番号を付けます。

-b: -n と似ていますが、空白行に番号が付けられない点が異なります。

-s: 空行が 2 行以上連続する場合は、空行を 1 行に置き換えます。

4. 応用例

(1) cat コマンドの最も単純な使用法の 1 つは、テキスト ファイルの内容を表示することです。たとえば、コマンド ラインで README ファイルの内容を確認したい場合は、次のコマンドを使用できます。

$ cat README

(2)

場合によっては複数のファイルを処理してファイル化し、この処理の結果を別の出力ファイルに保存する必要があります。 cat コマンドは、入力で 1 つ以上のファイルを受け取り、それらを単一のファイル

として出力に出力します。たとえば、README と INSTALL のファイル内容に行番号を追加した後 (空白行は追加されません)、その内容を新しいテキスト ファイル File1 に追加します:

$ cat README INSTALL File1

(3 ) cat のもう 1 つの重要な機能は、図 2 に示すように、行に番号を付けることです。プログラム文書の作成や法律・科学文書の作成に便利な機能で、左側に行番号が印刷されているので文書の特定の部分を参照しやすく、プログラミングや科学研究に役立ちます。 、事業報告書、さらには立法作業も非常に重要です。

図 2 cat コマンド/etc/named.conf ファイルを使用して番号を付ける

行番号付け関数には、-b (空白以外の行のみに番号を付けることができます) および -n (番号を付けることができます) が含まれます。空白行以外) すべての行に番号が付けられます) 2 つのパラメータ:

$ cat -b /etc/named.conf

ln

1. Function

ln コマンドを使用 ファイル間のリンクを作成するには、その使用権限がすべてのユーザーに与えられます。

2. 形式

ln [オプション] ソースファイル [リンク名]

3. パラメータ

-f: リンクする場合は、まずソースをリンクします。ファイルの削除。

-d: システム管理者が自分のディレクトリをハードリンクできるようにします。

-s: ソフトリンク(シンボリックリンク)を行います。

-b: リンク中に上書きまたは削除されるファイルをバックアップします。

リンクには 2 種類あり、1 つはハード リンクと呼ばれ、もう 1 つはシンボリック リンクと呼ばれます。デフォルトでは、ln コマンドはハード リンクを生成します。

ハード

接続とは、インデックス ノードを介した接続を指します。 Linux ファイル システムでは、ディスク パーティションに格納されているファイルには、その種類に関係なく、インデックス ノード番号 (Inode

Index) と呼ばれる番号が割り当てられます。 Linux では、同じインデックス ノードを指す複数のファイル名が存在します。通常、この接続はハード接続です。ハード リンクの機能は、ファイルに複数の有効なパス名を持たせることにより、ユーザー

が重要なファイルへのハード リンクを確立して「誤って削除」を防ぐことができるようにすることです。その理由は、前述したように、ディレクトリのインデックス ノードへの接続が複数あるためです。 1 つの接続だけを削除しても、インデックス ノード自体や

他の接続には影響しません。最後の接続が削除された場合にのみ、ファイルのデータ ブロックとディレクトリ接続が解放されます。つまり、ファイルは実際に削除されます。

ハード接続に対応して、Lnux システムにはシンボリック リンク (Symbilc Link) と呼ばれる別の接続があり、ソフト リンクとも呼ばれます。ソフト リンク ファイルは Windows のショートカットに似ています。これは実際には特殊ファイルの一種です。シンボリック リンクでは、ファイルは実際には別のファイルの位置情報を含むテキスト ファイルです。

実践的な練習

上で Linux ファイル処理コマンドを紹介しましたが、ここで説明したコマンドを練習できるように、いくつかの例を示します。

1. シンボリック リンクを使用して主要なディレクトリにすばやくアクセスする

シンボリック リンクは非常に実用的な機能です。頻繁に使用する必要があるディレクトリまたはファイルがいくつかあるが、Linux のファイルおよびディレクトリ構造やその他の理由により、このファイルまたはディレクトリは深いサブディレクトリにあるとします。たとえば、

Apache

Web サーバーのドキュメントはシステムの /usr/local/httpd/htdocs にあり、ホーム ディレクトリからそのような長いパスを入力したくありません。毎回 (実際、このパスも

非常に覚えにくいです)。

この問題を解決するには、ホーム ディレクトリにシンボリック リンクを作成します。これにより、ディレクトリに入る必要があるときに、このリンクを入力するだけで済みます。

Web サーバー (/usr/local/httpd/htdocs) ドキュメントが配置されているディレクトリに簡単に入るには、ホーム ディレクトリで次のコマンドを使用します:

$ ln -s /usr/ local/httpd/htdocs gg

これにより、gg ディレクトリに入るたびに Web サーバーのドキュメントにアクセスできるようになります。Web サーバーのドキュメントにアクセスできなくなった場合は、 gg を削除するだけでは、実際の Web サーバーのドキュメントにはアクセスできなくなります。削除されません。

2. dd コマンドを使用して、root.ram コンテンツを init.rd 形式でメモリ

dd if=/dev/fd0 of=floppy.fd

# にインポートします。 ##dd if= root.ram of=/dev/ram0

#3.grep コマンド システム コール

grep は、Linux/Unix で最も広く使用されているコマンドの 1 つであり、多くの Linux システムでは内部的に呼び出されます。

(1) ディレクトリリスト内のディレクトリを問い合わせたい場合の方法は次のとおりです:

$ ls -l | grep '∧d'

( 2) ディレクトリ内にある場合 ディレクトリを含まないすべてのファイルをクエリします。方法は次のとおりです:

$ ls -l | grep '∧[∧d]'

(3) ) find コマンドを使用して、コード内のすべての C ソース「Chinput」などの grep を呼び出します。方法は次のとおりです:

$find /ZhXwin -name *.c -exec grep -q -s Chinput {} \;-print

Linux で覚えておくべき 60 コマンド (3) - システム管理コマンド

Linux で覚えておくべきシステム管理コマンド

Linux システムの場合、中央プロセッサ、メモリ、ディスク ドライブ、キーボード、マウス、ユーザーのいずれであっても、それらはすべてファイルであり、Linux システム管理のコマンドが通常の動作の中核となります。 Linux で一般的に使用されるファイル処理コマンドを理解した後、この講義ではシステムとユーザーを管理するためのコマンドを紹介します。

df

1. 機能

df コマンドは、ファイルシステムのディスク使用量を確認するために使用され、使用権限はすべてのユーザーに与えられます。

2. 形式

df [オプション]

3. 主要パラメータ

-s: 各 Names パラメータには、占有されているデータ ブロックのみが与えられます。合計。

-a: 指定したディレクトリ内の各ファイルとサブディレクトリ内の各ファイルが占めるデータ ブロックの数を再帰的に表示します。 -s も -a も指定されていない場合は、Names の各ディレクトリとその中の各サブディレクトリが占有するディスク ブロックの数のみが表示されます。

-k: ディスク容量の使用状況を 1024 バイト単位でリストします。

-x: 異なるファイル システム上のディレクトリはスキップし、カウントしません。

-l: すべてのファイルのサイズを計算し、ハード リンク ファイルについては複数回計算します。

-i: ブロック使用量の代わりに inode 情報を表示します。

-h: ファイルシステムのサイズを136KB、254MB、21GBなどわかりやすい形式で出力します。

-P: POSIX 出力形式を使用します。

-T: ファイルシステムの種類を表示します。

4. 説明

df コマンドは、ファイル システムの使用状況統計を生成するために広く使用されており、総容量や利用可能な空き領域など、システム内のすべてのファイル システムに関する情報を表示できます。取り付け箇所など。

スーパーレベルの権限を持つユーザーが df コマンドを使用すると、特定のパーティションの容量が 100% を超えるという状況が発生します。これは、Linux システムが、スーパーユーザーが自由に使えるスペースの 10% を予約しているためです。つまり、スーパー ユーザーにとって、彼が見るハードディスク容量は 110% になります。この構成はシステム管理に適しており、ハードディスクの容量が 100% に近い場合でも、システム管理者は通常どおり作業を行うことができます。

5. アプリケーション例

Linux は、JFS、ReiserFS、ext、ext2、ext3、ISO9660、XFS、Minx、vfat、MSDOS などを含む多くのファイル システムをサポートしています。 df -T コマンドを使用してディスク領域を表示するときに、ファイル システム情報を取得することもできます。

#df -T

ファイル システム タイプ 使用済み容量 使用可能 使用済み % マウント ポイント

/dev/hda7 reiserfs 5.2G 1.6G 3.7G 30% /

/dev/hda1 vfat 2.4G 1.6G 827M 66% /windows/C

/dev/hda5 vfat 3.0G 1.7 G 1.3G 57% /windows/D

/dev/hda9 vfat 3.0G 2.4G 566M 82% /windows/E

/dev/hda10 NTFS 3.2G 573M 2.6G 18% /windows / F

/dev/hda11 vfat 1.6G 1.5G 23M 99% /windows/G

ディスク領域の容量と使用状況に加えて、ファイル システムのタイプとマウントを確認できます。積載ポイントなどの情報も一目でわかります。

top

1. 機能

top コマンドは、実行中のプログラムのプロセスを表示するために使用され、使用権限はすべてのユーザーに与えられます。

2.フォーマット

top [-] [d late] [q] [c] [S] [s] [n]

3.主なパラメータ

d: 更新間隔を秒単位で指定します。

q: 遅延なく更新されます。ユーザーがスーパーユーザーの場合は、top コマンドが最優先で実行されます。

c: プロセスの完全なパスと名前を表示します。

S: 累積モードでは、完了または消滅したサブトリップの CPU 時間が累積されます。

s: セーフモード。

i: アイドルまたは無駄なトリップは表示しません。

n: 更新数を表示し、完了するとtopが終了します。

4. 説明

top コマンドは、Linux システム管理の主要なコマンドであり、多くの情報を取得できます。ここでは、図 1 を組み合わせて、そこから得られる情報を説明します。

図 1 先頭コマンドの表示

図 1 の 1 行目に示されている項目は、現在時刻、システム起動時刻、現在の稼働数です。システムにログインしているユーザー、負荷平均。 2 行目は、開始されたすべてのプロセス、現在実行中のプロセス、一時停止された

(スリープ) プロセス、および役に立たない (ゾンビ) プロセスを示します。 3 行目は、システム占有率、ユーザー使用率、アイドル (Idle) 率を含む現在の CPU 使用率を示します。

4 行目は、使用可能なメモリの合計、使用済みメモリ、空きメモリ、バッファが占有しているメモリなどの物理メモリの使用状況を示します。 5 行目は、スワップ パーティションの合計、使用済み、空き、キャッシュ サイズなどのスワップ パーティションの使用状況を示します。 6 行目に最も多くの項目が示されており、詳細な説明は以下にリストされています。

PID (プロセス ID): プロセスの識別番号。

USER: プロセス所有者のユーザー名。

PR: プロセスの優先度レベル。

NI: プロセスの優先度の値。

VIRT: プロセスが占有する仮想メモリの値。

RES: プロセスが占有する物理メモリ値。

SHR: プロセスによって使用される共有メモリの値。

S: プロセスのステータス。S はスリープ状態、R は実行中、Z はゾンビ状態、N はプロセスの優先順位の値が負の数であることを意味します。

%CPU: プロセスが占有している CPU 使用率。

%MEM: プロセスが占有している物理メモリと合計メモリの割合。

TIME+: プロセスの開始後にプロセスが占有した合計 CPU 時間。

Command: プロセス起動用の起動コマンドの名前。この行が表示できない場合、プロセスには完全なコマンド ラインが存在します。

top コマンドを使用する場合、いくつかの対話型コマンドを使用して他のパラメータの機能を完了することもできます。これらのコマンドはショートカット キーを使用して起動します。

: すぐに更新してください。

P: CPU 使用率に従って並べ替えます。

T: 時間と累積時間に従って並べ替えます。

q: トップのコマンドを終了します。

m: メモリ情報の表示を切り替えます。

t: プロセスと CPU のステータス情報の表示に切り替えます。

c: コマンド名の表示と完全なコマンド ラインの表示を切り替えます。

M: 使用メモリ サイズに応じて並べ替えます。

W: 現在の設定を ~/.toprc ファイルに書き込みます。これは、最上位の構成ファイルを作成する場合に推奨される方法です。

ご覧のとおり、top コマンドはシステムを監視するための非常に強力なツールであり、システム管理者にとって特に重要です。ただし、システム リソースを大量に消費するという欠点があります。

5. アプリケーション例

top コマンドを使用して、指定したユーザーを監視します (デフォルトでは、すべてのユーザーのプロセスを監視します)。指定したユーザーのステータスを確認したい場合は、ターミナルで「U」キーを押してユーザー名を入力すると、図 2 に示すように、システムは指定したユーザーのプロセス実行インターフェイスに切り替わります。

図 2 top コマンドを使用して、指定したユーザーを監視します

free

1. 機能

free コマンドは、メモリ使用量を表示するために使用されます。使用権限はすべてのユーザーです。

2.形式

フリー [-b|-k|-m] [-o] [-s 遅延] [-t] [-V]

3 .主なパラメータ

-b-k-m: メモリ使用量をバイト単位 (KB、MB) で表示します。

-s 遅延: メモリ使用量を表示する秒数を表示します。

-t: メモリ合計列を表示します。

-o:バッファ調整欄を表示しません。

4. 応用例

free コマンドは、メモリ使用量を確認するために使用される主なコマンドです。 top コマンドと比較して、このコマンドの利点は、使用が簡単で、使用するシステム リソースが非常に少ないことです。 -S パラメーターを使用すると、free コマンドを使用してメモリの使用量を継続的に監視できるため、便利なリアルタイム モニターとして使用できます。

#free -b -s5

このコマンドを使用すると、ターミナルはメモリ使用量 (バイト単位) を継続的に報告し、5 秒ごとに更新されます。

quota

1. 機能

quota コマンドは、スーパーユーザー権限を使用して、ディスクの使用量と制限を表示するために使用されます。

2.形式

quota [-g][-u][-v][-p] ユーザー名グループ名

3.パラメータ

-g: ユーザーグループのディスク使用量制限を表示します。

-u: ユーザーのディスク使用量制限を表示します。

-v: 領域が割り当てられていないファイル システムの割り当てを表示します。

-p: 簡略化された情報を表示します。

4. アプリケーション例

エンタープライズ アプリケーションではディスク クォータは非常に重要であり、一般ユーザーは自分のディスク使用量を理解する必要があります。独自のディスク クォータをクエリするには、次のコマンドを使用できます (次の例では、ユーザー アカウントは caojh です):

#quota caojh

ユーザー caojh(uid 502) のディスク クォータ:

Filesystem ブロック クォータ制限、グレース ファイル クォータ制限、grace

/dev/hda3 58 200000 400000 41 500 1000

上記は、ID 番号 502 の caojh アカウントを示しています。ファイル数は 500 ~ 1000 に設定され、ハードディスク容量の制限は 200MB ~ 400MB に設定されます。ディスク クォータを使い果たしたら、いくつかのジャンク ファイルを削除するか、システム管理者に追加のクォータを要求する必要があります。

at

1. 機能

at コマンドは、指定された時刻に指定されたコマンド シーケンスを実行するために使用されます。

2. 形式

at [-V] [-q x] [-f file] [-m] time

3. 主なパラメータ

-V: 標準エラー出力を表示します。

-q: 多くのキュー出力。

-f: ファイルからジョブを読み取ります。

-m: ジョブの実行後にユーザーに電子メールを送信します。

time: ジョブの実行時間を設定します。時刻形式には厳密な要件があり、時間、分、日付と時刻オフセットで構成されます。日付形式は MM.DD.YY で、MM は分、DD は日付、YY は年を表します。オフセットの形式は時間 + オフセットで、単位は分、時間、日です。

4. 適用例

#at -f data 15:30 2 days

上記のコマンドは、ファイル data で指定されたファイルを 17 時にシステムに実行させることを意味します。 2日後:30時手術。

lp

1. 機能

lp はファイルを印刷するコマンドであり、使用権限はすべてのユーザーに与えられます。

2. 形式

lp [-c][-d][-m][-number][-title][-p]

3.主なパラメータ

-c: まずファイルをコピーしてから印刷します。

-d: 印刷キュー ファイル。

-m: 印刷後にユーザーに電子メールを送信します。

-number: 印刷する部数。

-title: タイトルを印刷します。

-p: 印刷の優先順位を 100 まで設定します。

4. アプリケーション例

(1) lp コマンドを使用して複数のファイルを印刷します

#lp 2 3 4

リクエスト ID は 11 (3) file(s))

ここで、2、3、および 4 はそれぞれファイル名です。「リクエスト ID は 11 (3 ファイル)」は、​​これが 11 番目の印刷コマンドであり、3 つのファイルが順番に印刷されます。

(2) 印刷優先度の設定

#lp lp -d LaserJet -p 90 /etc/aliases

「-p 90」を追加して印刷を指定します。優先度は90です。これは、優先度が設定されていないジョブを含む、優先度が 90 より低い印刷ジョブの前に印刷されます。デフォルトの優先度は 50

useradd

1 です。ユーザーアカウントの確立とユーザーのホームディレクトリの作成に使用され、ユーザー権限はスーパーユーザーです。

2.形式

useradd [-d ホーム] [-s シェル] [-c コメント] [-m [-k テンプレート]] [-f 非アクティブ] [-e 期限切れ] [-p パスワード] [-r] 名前

3. 主なパラメータ

-c: コメントテキストを追加し、passwd のコメント列に保存されます。

-d: ユーザーがログインするときの開始ディレクトリを指定します。

-D: デフォルト値を変更します。

-e: アカウントの有効期間を指定します。デフォルトは永久に有効であることを意味します。

-f: パスワードの有効期限が切れてからアカウントを閉鎖するまでの日数を指定します。

-g: ユーザーが所属するグループを指定します。

-G: ユーザーが属する追加のグループを指定します。

-m: ユーザーのログイン ディレクトリを自動的に作成します。

-M: ユーザーのログイン ディレクトリを自動的に作成しません。

-n: ユーザー名で指定されたグループの作成をキャンセルします。

-r: システムアカウントを作成します。

-s: ユーザーがログイン後に使用するシェルを指定します。

-u: ユーザーID番号を指定します。

4. 説明

useradd は、adduser コマンドと同じで、ユーザー アカウントを作成するために使用できます。アカウントの作成後、passwd を使用してアカウントのパスワードを設定します。 useradd コマンドを使用して作成されたアカウントは、実際には /etc/passwd テキスト ファイルに保存されます。

5. 適用例

新しいユーザー アカウントを作成し、ID を設定します:

#useradd caojh -u 544

なお、 set ID 値を設定するときは、競合を避けるために 500 より大きくなるようにしてください。 Linux のインストール後にいくつかの特別なユーザーが作成されるため、0 から 499 までの値は通常、bin や mail などのシステム アカウント用に予約されています。

groupadd

1. 機能

groupadd コマンドは、システムに新しいグループを追加するために使用されます。

2. 形式

groupadd [-g gid] [-o]] [-r] [-f] グループ名

3. 主要パラメータ

-g gid: グループID番号を指定します。

-o: グループ ID 番号を許可します。一意である必要はありません。

-r: 参加グループ ID 番号 (システム アカウント番号 499 より小さい)。

-f: 既存のグループに参加すると、開発プログラムは終了します。

4. アプリケーション例

新しいグループを作成し、システムに参加するグループ ID を設定します:

#groupadd -g 344 cjh

これでtime / グループ ID (GID) が 344 の項目が etc/passwd ファイルに生成されます。

kill

1. 機能

kill コマンドはプロセスを終了するために使用されます。

2. 形式

kill [-s signal | -p] [-a] pid...

kill -l [signal]

3. パラメータ

-s: 送信する信号を指定します。

-p: 信号の送信をシミュレートします。

-l: 指定された信号の名前リスト。

pid: 終了するプロセスのID番号。

Signal: 信号を示します。

4. 説明

プロセスは、Linux システムにおいて非常に重要な概念です。 Linux はマルチタスク オペレーティング システムであり、多くの場合、システム上で複数のプロセスが同時に実行されます。これらのプロセスがどのように割り当てられるか、またはカーネルが割り当てられたタイム スライスをどのように管理するかには関心がなく、ユーザーに適切なサービスを提供できるようにこれらのプロセスをどのように制御するかが重要です。

Linux

オペレーティング システムには 3 つの異なるタイプのプロセスが含まれており、それぞれに独自の特性と属性があります。対話型プロセスは、シェルによって開始されるプロセスです。対話型プロセスはフォアグラウンドまたはバックグラウンドで実行できます。

バッチ処理は端末とは関係がなく、一連の処理です。監視プロセス (システム デーモンとも呼ばれる) は、Linux システムの起動時に開始され、バックグラウンドで実行されるプロセスです。たとえば、httpd は、有名な

Apache サーバーの監視プロセスです。

kill コマンドの動作原理は、システム操作信号

と特定のプログラムのプロセス識別番号を Linux システムのカーネルに送信し、システム カーネルが kill できることです。プロセス識別番号で指定されたプロセスの操作を実行します。たとえば、先頭のコマンドでは、システムが多くのプロセスを実行していることがわかりますが、システム リソースを増やすために、kill で

を使用して特定のプロセスを停止する必要がある場合があります。インストールとログインのコマンドを説明する際、システム内の複数の仮想コンソールの機能は、プログラム エラーによってシステム デッドロックが発生した場合に、他の仮想コンソールに切り替えてプログラムを終了できることであると述べました。 kill はほとんどのシェル内部コマンドから直接呼び出すことができるため、この時点で使用されるコマンドは kill です。

5. 適用例

(1) プロセス識別番号 324 のプロセスを強制終了 (kill によく使用されます):

#kill -9 324

(2) Linux システムのデッドロックを解除する

Linux

ではプログラムがクラッシュしてデッドロック状態になる場合があります。現時点では通常、コンピュータを再起動する必要はなく、問題のあるプログラムを終了 (または閉じる) だけで済みます。

kill が X-Window インターフェイスにある場合、メイン プログラム (クラッシュしたプログラムを除く) は通常、正常に起動しています。次に、ターミナルを開き、そこで問題のあるプログラムを終了します。たとえば、

Mozilla ブラウザ プログラムがロックされている場合、kill コマンドを使用して、Mozilla ブラウザを含むすべてのプログラムを終了できます。まず、top コマンドを使用してプログラムの PID を確認し、次に

kill コマンドを使用してプログラムを停止します。

#kill -SIGKILL XXX

その中には、 XXX には Mozolla ブラウザが含まれます。 サーバーのプログラムのプロセス識別番号。

(3) コマンドを使用してメモリをリサイクルする

メモリはシステムにとって非常に重要であり、メモリをリサイクルすることでシステム リソースを改善できることはわかっています。 kill コマンドを使用すると、一部の「逸脱した」プログラムや、対応するプログラムが長期間存在しなかったプログラムを即座に終了できます。たとえば、top コマンドを使用して不要な (ゾンビ) プロセスを見つける場合、次のコマンドを使用できます:

#kill -9 XXX

ここで、XXX は不要なプロセスの識別番号です。 。

次に、次のコマンドを使用します。

#free

利用可能なメモリ容量が増加していることがわかります。

(4) killall コマンド

Linux には killall コマンドも用意されており、プロセス識別番号の代わりにプロセス名を直接使用できます。例:

# killall -HUP inetd

crontab

1.機能

crontab 設定ファイルは crontab コマンドを使用して変更でき、設定は cron ユーティリティによって実行されます。このコマンドの権限はすべてのユーザーです。

2. 形式

crontab [-u user] file

crontab [-u user] {-l |-r|-e}

3. 主なパラメータ

-e: スケジュールを設定するためのテキスト エディタを実行します (デフォルトのテキスト エディタは vi です)。

-r: 現在のスケジュールを削除します。

-l: 現在のスケジュールをリストします。

crontab

ファイルの形式は「M H D m d

cmd」です。このうち、Mは分(0~59)、Hは時(0~23)、Dは日(1~31)、mは月(1~12)、dは日を表します。週 (0 ~ 6、0 は

曜日)。 cmd は実行するプログラムを表し、実行のために sh に送信されます。このシェルには、USER、HOME、SHELL の 3 つの環境変数しかありません。

4. 説明

at コマンドと比較して、crontab コマンドは、固定サイクルのタスクを完了するのに適しています。

5. アプリケーション例

スケジュールされた定期的なシステム プロンプトを設定します:

[cao @www cao]#crontab -e

この時点で、システムはvi エディターが開きます。

次のように入力した場合: 35 17 * * 5 壁 「明日は土曜日、CS に行きます」 保存して終了します。この時点で、次の内容の cao ファイルが /var/spool/cron/ ディレクトリに生成されます:

# このファイルは編集しないでください - マスターを編集して再インストールしてください。

# (/ tmp/crontab.2707 は Thu Jan 1 22:01:51 2004 にインストールされました)

# (Cron バージョン --- $Id: crontab.c,v 2.13 1994/01/17 03:20 :37 vixie Exp $)

35 17 * * 5 壁 「明日は土曜日です。CS をプレイします」

したがって、毎週金曜日の 17:35 に、システムが端末をポップアップ表示して通知します土曜にCSができるなんて!表示された結果を図 3 に示します。

#図 3 スケジュールされた定期的なシステム プロンプト

実践演習

1. kill コマンドと top コマンドを一緒に使用して、システム パフォーマンスの変化を観察します

Start first 図 4 に示すように、1 つの端末で top コマンドを実行し、次に別の端末を起動して kill コマンドを使用します。

図 4 上部のターミナルで kill コマンドの影響を観察します

この時点で、上で紹介した kill コマンドを使用していくつかのプログラムを終了します。

#kill SIGKILL XXX

次に、メモリ容量、CPU 使用率、システム負荷などを含む、上部のコマンド ターミナルの変更を確認します。一部のプロセスは終了できないことに注意してください。ただし、Linux コマンドを学習するときに試して、システムがどのように反応するかを確認できます。

2. at および halt コマンドを使用してシャットダウンをスケジュールする

まずシャットダウン時刻を 17:35 に設定し、次のコードを入力します:

#at 17:35

警告: コマンドは (順番に) a) $SHELL b) ログイン シェル c) /bin/sh

at>halt `-i -p

を使用して実行されます。 at>

job 6 at 2004-01-01 17:35

この時点で、実際に Linux システム シェルに入り、最も単純なプログラム halt -i

# を作成しました。 ##-p.上記のシェルのテキスト終了記号は、「Ctrl+D」キーの組み合わせを押してコマンドを閉じ、タスクを送信してシェルを終了することを意味します。 「ジョブ 6 at 2004-01-01

17:35」は、システムが 6 番目の at コマンドを受け入れ、「2004-01-01 17:35」にコマンドを実行することを意味します。まず、ネットワーク関連のすべてが実行されます。デバイスを停止し、システムをシャットダウンしてから電源を切ります。

3. crontab コマンドを使用して毎日スケジュールされたウイルス スキャンを実装する

単純な crontab コマンド操作は以前に紹介しましたが、ここではさらに重要な操作をいくつか紹介します。

(1) ファイルを作成し、caoproject としてファイル名を自分で設定します。

#crontab -e

(2) ファイルの内容は次のとおりです。

# #05 09 * * * antivir

vi を使用して編集し、保存して終了します。 Antivir は Linux ウイルスを検出して駆除するソフトウェアです。もちろん、必要に応じて最初にシステムにインストールする必要があります。

(3) crontab コマンドを使用してタスク リストに追加します。

#crontab caoproject

このようにして、システム内のすべてのユーザーが自動的にウイルス スキャンを行います。毎日9時5分に。

4. kill を使用して、変更した構成ファイルをすぐに有効にします

Windows ユーザーは一般に、重要な構成ファイルを変更した後、変更を有効にするためにコンピューターを再起動する必要があることを知っています。 Linux はモジュール設計を採用しているため、ニーズに応じてリアルタイムにサービスをセットアップできます。ここでは、ネットワーク サービス inetd を例として、いくつかの運用テクニックを紹介します。

inetd

は、インターネット サービス プロセス (rlogin、telnet、ftp、rsh など) を監視して接続要件を提供し、必要なサービス プロセスを拡張するリスニング デーモン プロセスです。デフォルトでは、

inetd によって監視されるデーモンは /etc

/inetd.conf ファイルにリストされます。 /etc/inetd.conf ファイルを編集して、サーバー デーモンを起動するための inetd のオプションを変更し、inetd を

に駆動します。

SIGHUP (シグナル 1) は、現在の inetd プロセスにシグナルを送信し、inetd にファイルを再読み込みさせます。この処理は、kill コマンドによって実装されます。

vi または他のエディタで inetd.conf を変更した後、最初に次のコマンドを使用します:

#ps -ef |grep inetd

上記のコードは inetd のクエリを示しています。 .conf プロセス ID (PID) が 1426 であると仮定して、次のコマンドを使用します。

# kill -1426 inetd

設定ファイルが有効になります。

この講義で紹介するシステム管理コマンドはすべて比較的重要ですが、特に crontab コマンドとquota コマンドは使用が難しく、より多くの練習が必要です。また、kill コマンドを使用する場合は「-9」パラメータに注意し、練習中は重要なプログラムを実行しないようにしてください。

Linux で覚えるべき 60 のコマンド (4) - ネットワーク操作コマンド Linux で覚えるべき 60 のコマンド: ネットワーク操作コマンド

Linux システムはインターネット上にあるため、インターネットは、本質的に強力なネットワーク機能と豊富なネットワーク アプリケーション ソフトウェアを備えており、特に TCP/IP ネットワーク プロトコルの実装が特に成熟しています。

Linux には多くのネットワーク コマンドがあり、ping、

ftp、telnet、route、netstat などの一部は他のオペレーティング システムでも使用できますが、Unix/ Linux システム ifconfig、

finger、mail などの固有のコマンド。 Linuxのネットワーク操作コマンドの特徴として、コマンドパラメータのオプションや機能が豊富であり、1つのコマンドで他のコマンドの機能を実現できる場合も多くあります。

ifconfig

1. 関数

ifconfig は、IP アドレス、ネットワーク マスク、ブロードキャスト アドレスなど、ネットワーク インターフェイスのアドレスとパラメーターを表示および変更するために使用されます。使用権限はスーパーユーザーです。

2. 形式

ifconfig -interface [オプション] address

3. 主なパラメータ

-interface: 指定されたネットワーク インターフェイス名 (eth0 など)そしてeth1。

up: 指定されたネットワーク インターフェイス カードをアクティブにします。

down: 指定されたネットワーク インターフェイスを閉じます。

ブロードキャスト アドレス: インターフェイスのブロードキャスト アドレスを設定します。

pointopoint: ポイントツーポイント モードを有効にします。

address: 指定したインターフェースデバイスの IP アドレスを設定します。

ネットマスクアドレス: インターフェースのサブネットマスクを設定します。

4. アプリケーションの説明

ifconfig は、ネットワーク カードのセットアップと構成に使用されるコマンド ライン ツールです。これは、ネットワークを手動で構成するために習得する必要があるコマンドです。このコマンドを使用する利点は、マシンを再起動する必要がないことです。 eth0 インターフェイスに IP アドレス 207.164.186.2 を割り当て、すぐにアクティブにするには、次のコマンドを使用します。

#fconfig eth0 210.34.6.89 netmask 255.255.255.128Broadcast 210.34.6.127

the

コマンドは、ネットワーク カード eth0 の IP アドレス、ネットワーク マスク、およびローカル ブロードキャスト アドレスを設定するために使用されます。パラメータを指定せずに ifconfig コマンドを実行すると、このコマンドはマシン上のすべてのアクティブ化されたインターフェイスに関する

情報を表示します。 「-a」パラメータを指定したコマンドは、非アクティブなインターフェイスを含むすべてのインターフェイスに関する情報を表示します。 ifconfig コマンドで設定したネットワークデバイスのパラメータは、マシンの再起動後に失われることに注意してください。

特定のネットワーク インターフェイスの動作を一時停止したい場合は、down パラメータを使用できます:

#ifconfig eth0 down

ip

1 . Function

ip は、iproute2 ソフトウェア パッケージに含まれる強力なネットワーク構成ツールです。ifconfig、route などのいくつかの従来のネットワーク管理ツールを置き換えることができ、その使用権限はスーパー ユーザーです。ほぼすべての Linux ディストリビューションがこのコマンドをサポートしています。

2. 形式

ip [OPTIONS] OBJECT [COMMAND [ARGUMENTS]]

3. メインパラメータ

OPTIONS は、ip の動作を変更するか、出力オプションを変更します。すべてのオプションは - 文字で始まり、長い形式と短い形式に分かれています。現在、IP は表 1 に示すオプションをサポートしています。

OBJECT は、マネージャーが情報を取得する必要があるオブジェクトです。現在 IP によって認識されているオブジェクトを表 2 に示します。

表 1 ip でサポートされるオプション

-V,-Version ip のバージョンを出力して終了します。

-s,-stats,-statistics は、より詳細な情報を出力します。このオプションが 2 回以上表示されると、出力はより詳細になります。

-f,-family このオプションの後には、inet、inet6、link などのプロトコル タイプが続き、使用されるプロトコル タイプを強調します。 IP に使用するプロトコルの種類を伝えるための十分な情報がない場合、IP はデフォルト値の inet または any を使用します。リンクは特別です。これは、ネットワーク プロトコルが関与しないことを意味します。

-4 は、-family inet の略称です。

-6 は、-family inet6 の略称です。

-0 は -family link の略です。

-o,-oneline レコードの各行に 1 行の出力を使用し、新しい行を文字に置き換えます。 IP の出力を処理するために wc や grep などのツールを使用する必要がある場合は、このオプションが使用されます。

-r,-resolve ドメイン名解決システムに問い合わせて、ホスト IP アドレスを取得したホスト名に置き換えます。

COMMAND

指定されたサーバーで実行される操作を設定します。オブジェクト。オブジェクトの Type 関連に関係します。一般に、IP はオブジェクトの追加 (add)、削除 (delete)、および表示 (show または list) をサポートします。一部の

オブジェクトはこれらの操作をサポートしていないか、他のコマンドを持っています。すべてのオブジェクトについて、ユーザーは help コマンドを使用してヘルプを取得できます。このコマンドは、このオブジェクトでサポートされているコマンドとパラメーター構文をリストします。指定されたオブジェクトに対する運用コマンドがない場合、ip はデフォルトのコマンドを使用します。通常、デフォルトのコマンドは list ですが、オブジェクトをリストできない場合は help コマンドが実行されます。

議論

はコマンドの一部のパラメーターであり、オブジェクトとコマンドに応じて異なります。 IP は、フラグとパラメータの 2 種類のパラメータをサポートします。フラグはキーワードで構成され、パラメータは

キーワードと数値で構成されます。便宜上、各コマンドには無視できるデフォルトのパラメータがあります。たとえば、パラメータ dev は ip link コマンドのデフォルトのパラメータであるため、ip link ls

eth0 は ip link ls dev eth0 と同じになります。各コマンドの使用方法については後ほど詳しく紹介します。コマンドのデフォルトのパラメータには「default」とマークが付けられます。

4. アプリケーション例

IP アドレス 192.168.2.2/24 を eth0 ネットワーク カードに追加します:

#ip addr add 192.168.1.1/24 dev eth0

送信元アドレスが 192.168.2.0/24 ネットワークに属するすべてのデータグラムを破棄します:

#ip rules add from 192.168.2.0/24 prio 32777 accept

ping

1 .機能

Ping はホストのネットワークインターフェースの状態を検出し、使用許可はすべてのユーザーに与えられます。

2. 形式

ping [-dfnqrR​​v][-c][-i][-I][-l][-p][-s][-t] IP アドレス

3. 主なパラメータ

-d: Socket の SO_DEBUG 関数を使用します。

-c: リクエストの応答を完了するまでの回数を設定します。

-f: リミット検出。

-i: 情報を送信してから受信するまでの秒数を指定します。

-I: ネットワーク インターフェイスは、指定されたネットワーク インターフェイスを使用してデータ パケットを送信します。

-l: プリロード。リクエスト情報を送信する前に送信するデータ パケットを設定します。

-n: 数値のみを出力します。

-p: パケットを埋めるためのテンプレート スタイルを設定します。

-q: 命令の実行過程を先頭と末尾の関連情報を除いて表示しません。

-r: 通常のルーティング テーブルを無視し、データ パケットをリモート ホストに直接送信します。

-R: ルーティング プロセスを記録します。

-s: パケットサイズを設定します。

-t: 生存値 TTL のサイズを設定します。

-v: 命令の実行過程を詳細に表示します。

ping

コマンドは、最も一般的に使用されるネットワーク コマンドです。通常、ネットワークが接続されているかどうかを検出するために使用されます。このコマンドは、ICMP プロトコルを使用します。ただし、一部の Web サイトではセキュリティ上の理由からファイアウォールがインストールされているため、ブラウザで Web ページを表示できても

ping ができない状況が発生することがあります。さらに、自分のコンピュータでも試して、次の方法を使用してシステムが ping に応答しないようにすることもできます:

# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all

netstat

1. 機能

Linux ネットワーク全体のステータスを確認します。

2.形式

netstat [-acCeFghillMnNoprstuvVwx][-A][--ip]

3.主なパラメータ

-a--all : 接続されているすべてのソケットを表示します。

-A: このネットワーク タイプの接続における IP 関連のアドレスとネットワーク タイプをリストします。

-c--continuous: ネットワークのステータスを継続的にリストします。

-C--cache: ルーター設定のキャッシュ情報を表示します。

-e--extend: 他のネットワーク関連情報を表示します。

-F--fib: FIB を表示します。

-g--groups: マルチキャスト機能グループのメンバーのリストを表示します。

-h--help: オンライン ヘルプ。

-i--interfaces: ネットワーク インターフェイス情報フォームを表示します。

-l--listening: 監視対象サーバーのソケットを表示します。

-M--masquerade: マスカレード ネットワーク接続を表示します。

-n--numeric: ドメイン ネーム サーバーを経由せずに、IP アドレスを直接使用します。

-N--netlink--symbolic: ネットワーク ハードウェア周辺機器のシンボリック リンク名を表示します。

-o--timers: タイマーを表示します。

-p--programs: Socket を使用しているプログラム識別コードとプログラム名を表示します。

-r--route: ルーティング テーブルを表示します。

-s--statistice: ネットワーク稼働情報統計テーブルを表示します。

-t--tcp: TCP 伝送プロトコルの接続状態を表示します。

-u--udp: UDP 伝送プロトコルの接続状態を表示します。

-v--verbose: 命令の実行プロセスを表示します。

-V--version: バージョン情報を表示します。

-w--raw: RAW伝送プロトコルの接続状況を表示します。

-x--unix: 「-A unix」パラメータを指定するのと同じです。

--ip--inet: 「-A inet」パラメーターを指定するのと同じです。

4. アプリケーション例

netstat

は主に Linux で、開いているポート、サービスを提供しているユーザー、およびネットワークのステータスなど、自身のネットワーク ステータスを確認するために使用されます。サービス。さらに、システム ルーティング テーブル、ネットワーク インターフェイスのステータスなどが表示されます。総合的なネットワーク状態閲覧ツールと言えます。デフォルトでは、netstat は接続が確立されているポートのみを表示します。リスニング状態のすべてのポートを表示したい場合は、-a パラメーターを使用します。

#netstat -a

アクティブなインターネット接続 (サーバーのみ)

Proto Recv-Q送信 -Q ローカル アドレス 外部アドレス 状態

tcp 0 0 *:32768 *:* LISTEN

tcp 0 0 *:32769 *:* LISTEN

tcp 0 0 * : nfs *:* リッスン

tcp 0 0 *:32770 *:* リッスン

tcp 0 0 *:868 *:* リッスン

tcp 0 0 *:617 * :* LISTEN

tcp 0 0 *:mysql *:* LISTEN

tcp 0 0 *:netbios-ssn *:* LISTEN

tcp 0 0 *:sunrpc * :* LISTEN

tcp 0 0 *:10000 *:* LISTEN

tcp 0 0 *:http *:* LISTEN

....

上記は、このホストが HTTP、FTP、NFS、MySQL、およびその他のサービスも提供していることを示しています。

telnet

1. 機能

telnet は、ターミナルフェーズの操作を開始し、リモートホストにログインすることを意味します。 Telnet は Linux のコマンドおよびプロトコル (リモート ログイン プロトコル) です。

2. 形式

telnet [-8acdEfFKLrx][-b][-e][-k][-l][-n][-S][-X][ホスト名前 IP アドレス]

3. 主なパラメータ

-8: 入出力を含む 8 ビット文字データの使用を許可します。

-a: リモート システムへの自動ログインを試みます。

-b: エイリアスを使用してリモート ホスト名を指定します。

-c: ユーザー固有のディレクトリにある .telnetrc ファイルを読み取らないでください。

-d: デバッグモードを開始します。

-e: エスケープ文字を設定します。

-E: エスケープ文字を除外します。

-f: このパラメータの効果は、「-F」パラメータを指定した場合と同じです。

-F: Kerberos V5 認証を使用する場合、このパラメーターを追加すると、ローカル ホストの認証データをリモート ホストにアップロードできます。

-k: Kerberos 認証を使用する場合、このパラメータを追加して、リモート ホストがホストのドメイン名の代わりに指定されたレルム名を使用できるようにします。

-K: リモート ホストに自動的にログインしません。

-l: リモートホストにログインするためのユーザー名を指定します。

-L: 8 ビット文字データの出力を許可します。

-n: 関連情報を記録するファイルを指定します。

-r: rlogin コマンドと同様のユーザー インターフェイスを使用します。

-S: サービスタイプ。Telnet接続に必要なIP TOS情報を設定します。

-x: ホストにデータ暗号化をサポートする機能がある場合は、それを使用してください。

-X: 指定された認証モードを閉じます。

4. アプリケーションの手順

ユーザー

は、telnet コマンドを使用してリモートでログインし、リモート コンピューター間で通信します。ユーザーは、ローカル マシンにログインしてコマンドを実行するのと同じように、ネットワーク経由でリモート コンピュータにログインします。

telnet 経由でリモート コンピュータにログインするには、リモート コンピュータの有効なユーザー名とパスワードを知っている必要があります。一部のシステムではリモート ユーザー向けのログイン機能が提供されていますが、セキュリティ上の理由から、ゲストの操作

権限を制限する必要があるため、この場合に使用できる機能は非常に限られています。

telnet は通常の端末の端末エミュレーションのみを提供し、X-

Window などのグラフィカル環境はサポートしません。リモート ユーザーのログインを許可する場合、システムは通常、悪意のあるユーザーや不注意なユーザーによるシステムの損傷を防ぐために、これらのユーザーを制限付きシェルに配置します。ユーザーは、

Telnet を使用してリモート サイトから自分のコンピュータにログインし、ローカルにログインしているかのように電子メールをチェックしたり、ファイルを編集したり、プログラムを実行したりすることもできます。

ftp

1.

ftp コマンドを使用して、リモート ファイル転送を実行します。 FTP は ARPANet の標準ファイル転送プロトコルです。このネットワークは今日のインターネットの前身であるため、ftp はプロトコルでもありコマンドでもあります。

2. 形式

ftp [-digv][ホスト名 IP アドレス]

3.主なパラメータ

-d: コマンド実行プロセスの表示これにより、プログラム実行のトラブルシューティングと分析が容易になります。

-i: 対話モードをオフにして、質問をしないでください。

-g: ローカル ホスト ファイル名の特殊文字をサポートする拡張機能をオフにします。

-n: 自動ログインを使用しません。

-v: 命令実行プロセスを表示します。

4. アプリケーションの説明

ftp

コマンドは、標準ファイル転送プロトコルのユーザー インターフェイスであり、コンピュータ間でファイルを転送するための簡単かつ効果的な方法です。 TCP/IP ネットワーク: ユーザーは ASCII ファイルとバイナリ ファイルを転送できます。 ftp

を使用してファイルを転送するには、ユーザーはリモート コンピューター上の有効なユーザー名とパスワードを知っている必要があります。このユーザー名とパスワードの組み合わせは、ftp セッションを認証し、転送されるファイルに対してユーザーがどのようなアクセス権を持っているかを決定するために使用されます。

さらに、ユーザーは FTP セッションのコンピューター名の IP アドレスを知っている必要があります。

ユーザーは、ftp クライアント プログラムを使用して別のコンピュータに接続できます。ディレクトリ内を上下に移動してディレクトリの内容を一覧表示できます。リモート コンピュータからローカル コンピュータにファイルをコピーできます。また、ファイルをコピー ローカル マシンからリモート システムに転送します。 ftp 内部コマンドは 72 個あり、主な内部コマンドは以下のとおりです:

ls: リモート マシンの現在のディレクトリを一覧表示します。

cd: リモート マシン上の作業ディレクトリを変更します。

lcd: ローカル マシン上の作業ディレクトリを変更します。

close: 現在の FTP セッションを終了します。

ハッシュ: データバッファ内のデータが送信されるたびに # 記号が表示されます。

get(mget): 指定されたファイルをリモート マシンからローカル マシンに転送します。

put (mput): 指定されたファイルをローカル マシンからリモート マシンに転送します。

quit: リモート マシンから切断し、ftp を終了します。

route

1. 機能

route は、ルーティング テーブルを手動で生成、変更、表示することを意味します。

2.形式

#route [-add][-net|-host] targetaddress [-netmask Nm][dev]If]

#route [-delete ][-net|-host] targetaddress [gw Gw] [-netmask Nm] [dev]If]

3. 主なパラメータ

-add: ルーティングを追加します。

-delete: ルートを削除します。

-net: ルートはホストではなくネットワークに到達します。

-host: ルートはホストに到達します。

-netmask Nm: 経路のサブネットマスクを指定します。

gw: ルートのゲートウェイを指定します。

[dev]If: ルーティング チェーンにインターフェイスを強制的に指定します。

4. 応用例

route コマンドは、Linux システムの他のネットワークとの通信を実現するための経路情報の表示と設定を行うために使用します。 2 つの異なるサブネット間の通信を実現するには、2 つのネットワークを接続するルーター、または両方のネットワークに同時に配置されるゲートウェイが必要です。

Linux システムでは、通常、次の問題を解決するためにルーティングが設定されます: Linux システムは LAN 内にあり、マシンがインターネットにアクセスできるようにする LAN 内にゲートウェイがあります。その後、IP を設定する必要があります。 Linux へのこのマシンのアドレス マシンのデフォルト ルート。次のコマンドを使用してデフォルト ルートを追加します:

route add 0.0.0.0 192.168.1.1

rlogin

1. Function

rlogin は次の目的で使用されます。リモートレジスタ。

2. 形式

rlogin [ -8EKLdx ] [ -e char ] [-k realm ] [ - l username ] host

3. 主なパラメータ

-8: このオプションでは常に 8 ビットの入力データ チャネルが許可されます。このオプションを使用すると、フォーマットされた ANSI 文字およびその他の特殊コードを送信できます。このオプションが使用されない場合、リモート文字がストップ キャラクタおよびスタート キャラクタでない限り、パリティ ビットは削除されます。

-E: 文字をエスケープ文字として扱うのをやめます。 -8 オプションと一緒に使用すると、完全に透過的な接続が提供されます。

-K: すべての Kerberos 確認をオフにします。このオプションは、Kerberos 確認プロトコルを使用してホストに接続する場合にのみ使用します。

-L: rlogin セッションが litout モードで実行できるようにします。詳細については、tty オンライン ヘルプを参照してください。

-d: リモート ホストと通信する TCP ソケットのソケット デバッグをオンにします。詳細については、setsockopt のオンライン ヘルプを参照してください。

-e: rlogin セッションのエスケープ文字を設定します。デフォルトのエスケープ文字は「~」です。

-k: krb_realmofhost(3) によって決定されたリモート ホスト ゾーンではなく、指定されたゾーン内のリモート ホストに対する Kerberos 権限を取得するように rlogin に要求します。

-x: rlogin セッションを通じて送信されるすべてのデータの DES 暗号化をオンにします。これは応答時間と CPU 使用率に影響しますが、セキュリティは向上します。

4. 使用手順

ネットワーク内の別のシステムにアカウントがある場合、または別のシステムにある他の人のアカウントにアクセスできる場合は、他のシステムのアカウントにアクセスする必要があります。 , まず、システムに登録し、次にネットワーク経由でアカウントが存在するシステムにリモート登録する必要があります。 rlogin は他のシステムにリモートで登録でき、そのパラメータはシステム名である必要があります。

rcp

1. 機能

rcp は、コンピュータ間でファイルをコピーするために使用されるリモート ファイル コピーを表し、使用権限はすべてのユーザーに与えられます。

2. 形式

rcp [-px] [-k realm] file1 file2 rcp [-px] [-r] [-k realm] file

3.主なパラメータ

-r: ソース ディレクトリのすべての内容を宛先ディレクトリに再帰的にコピーします。このオプションを使用するには、宛先がディレクトリである必要があります。

-p: umask を無視して、ソース ファイルの変更時刻とモードを保存しようとします。

-k: krb_relmofhost(3) によって決定されたリモート ホスト ゾーン内のリモート ホストに対する Kerberos 権限を取得するのではなく、指定されたゾーン内のリモート ホストに対する Kerberos 権限を取得するように rcp に要求します。

-x: 転送されるすべてのデータに対して DES 暗号化をオンにします。

finger

1. 関数

finger は、ホスト上のログイン アカウント情報をクエリするために使用されます。通常、ユーザー名、ホーム ディレクトリ、デッド タイム、ログイン情報が表示されます。時間、ログインシェル、その他の情報の使用権限はすべてのユーザーにあります。

2. 形式

finger [オプション] [ユーザー] [User@Host]

3. 主なパラメータ

-s: ユーザー登録名を表示、実際の名前、端末名、書き込みステータス、デッドタイム、ログイン時間などの情報。

-l: -s オプションで表示される情報に加えて、ユーザーのホーム ディレクトリ、ログイン シェル、メール ステータスなどの情報、および .plan、.project の内容も表示されます。ユーザーのホーム ディレクトリにある .forward ファイル。

-p: .plan ファイルと .project ファイルが表示されないことを除いて、-l オプションと同じです。

4. アプリケーション例

コンピューター上で Finger を使用します:

[root@localhost root]# Finger

ログイン名 Tty Idle ログイン時間 Office Office電話番号

root root tty1 2 Dec 15 11

root root pts/0 1 Dec 15 11

root root *pts/1 Dec 15 11

5. アプリケーションの手順

リモート マシン上のユーザー情報をクエリする場合は、ユーザー名の後に [username@hostname] の形式で「@hostname」を付ける必要がありますが、ネットワーク ホストは、クエリを実行するには、finger デーモンのサポートを実行する必要があります。

mail

1. 機能

メールの機能はメールを送信することであり、使用権限はすべてのユーザーに与えられます。また、mail は電子メール プログラムです。

2.形式

mail [-s 件名] [-c アドレス] [-b アドレス]

mail -f [メールボックス]メール [-u ユーザー]

3. 主なパラメータ

-b address: 出力情報の匿名受信者アドレスリストを示します。

-c address: 出力メッセージの CC () 受信者アドレスのリストを表します。

-f [メールボックス]: 受信者が指定したメールボックスから電子メールを読み取ります。

-s subject: 出力情報の件名を指定します。

[-u user]: ポートは、電子メールを読むために最適化された受信トレイを指定します。

nslookup

1. 機能

nslookup コマンドの機能は、マシンの IP アドレスとそれに対応するドメイン名を照会することです。すべてのユーザーに権限を使用します。通常、ドメイン ネーム サービスを提供するにはドメイン ネーム サーバーが必要です。ユーザーがドメイン ネーム サーバーを設定している場合は、このコマンドを使用して、さまざまなホストの IP アドレスに対応するドメイン名を表示できます。

2. 形式

nslookup [IP アドレス/ドメイン名]

3. 使用例

(1) ローカル コンピュータで nslookup コマンドを使用します。

$ nslookup

デフォルト サーバー: name.cao.com.cn

アドレス: 192.168.1.9

>

記号「>」の後に照会する IP アドレスのドメイン名を入力し、Enter キーを押します。このコマンドを終了する場合は、「exit」と入力して Enter キーを押します。

(2) nslookup コマンドを使用して、named をテストします。

次のコマンドを入力します。

nslookup

次に、切り替えられた nslookup 環境に入ります。 named が正常に起動すると、nslookup は現在の DNS サーバーのアドレスとドメイン名を表示しますが、それ以外の場合は、named は正常に起動できません。

次に、基本的な DNS 診断について簡単に説明します。

フォワード DNS 解決を確認し、nslookup プロンプトでドメイン名を含むホスト名 (hp712.my.com など) を入力します。nslookup は、に対応する IP アドレスを表示できるはずです。ホスト名。たとえば、

hp712 のみを入力すると、nslookup は /etc/resolv.conf の定義に従って my.com ドメイン名を自動的に追加し、対応する IP アドレスを返します。

◆逆引き DNS 解決を確認し、nslookup プロンプトに IP アドレス (192.22.33.20 など) を入力します。nslookup は、IP アドレスに対応するホスト名を応答できるはずです。

◆MX 電子メール アドレス レコードを確認するには、nslookup プロンプトで次のように入力します。

set q=mx

次に、ドメイン名を入力し、my.com と mail を入力します。 my.com、nslookup は、対応するメール サーバー アドレス、つまり support.my.com と support2.my.com に応答できる必要があります。

実践演習

1. 危険なネットワーク コマンド

インターネット

インターネットの発展により、セキュリティは無視できない問題になりました。 、ftp、rcp、および telnet は、ネットワーク上でパスワードとデータを平文で送信し、スニファーがこれらのパスワードとデータを簡単に傍受できるため、本質的に安全ではありません。さらに、これらのサービス プログラムのセキュリティ検証方法にも弱点があり、「中間サーバー」攻撃に対して脆弱です。ここで、著者は、表 3 に示すように、リスク レベルに応じていくつかの安全でないコマンドをリストします。

代わりに SSH コマンドによって FTP と Telnet をポート 22 にバインドできるようになりました。接続

はネゴシエーション モードを採用し、RSA 暗号化を使用します。 ID 認証が完了すると、後続のすべてのトラフィックは IDEA

を使用して暗号化されます。 SSH (Secure Shell) プログラムは、ネットワーク経由でリモート ホストにログインし、コマンドを実行できます。 rcp や rlogin などのリモート呼び出しコマンドは、徐々に VNC ソフトウェアに置き換えられています。

2. 複数の IP アドレスを 1 つのネットワーク カードにバインドする

Linux では、ifconfig を使用して複数の IP アドレスを 1 つのネットワーク カードに簡単にバインドできます。たとえば、eth0 インターフェイスの元の IP アドレスが 192.168.0 .254 の場合、次のコマンドを実行できます:

ifconfig eth0:0 192.168.0.253 netmask 255.255.255.0

ifconfig eth0:1 192.168. 0.252 ネットマスク 255.255.255.0

....

3. ネットワーク カードの MAC アドレスを変更します

最初にネットワーク カードの電源をオフにする必要がありますデバイスの場合、コマンドは次のとおりです:

/sbin/ifconfig eth0 down

MAC アドレスを変更します。コマンドは次のとおりです:

/sbin/ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE

再起動 ネットワーク カードを有効にします:

/sbin/ifconfig eht0 up

ネットワーク カードの MAC アドレスが変更されました。各ネットワーク カードの MAC アドレスは一意ですが、変更することはできません。ネットワーク内で MAC アドレスが一意であることを確認してください。

4. IPv6

IPv4

テクノロジーの初期導入はネットワークの開発に大きな役割を果たしましたが、時間が経つにつれて、プロビジョニングには影響しなくなりました。ネットワークアドレスやサービスの品質やセキュリティなどが不十分になりつつあり、IPv6の登場が目前に迫っています。 Linux

は、すべてのオペレーティング システムの中で IPv6 をサポートする最初のものです。一般に、2.4 カーネルに基づく Linux ディストリビューションは IPv6 を直接使用できます。ただし、主要なディストリビューションは IPv6 モジュール

をロードしません。コマンドを使用してロードするにはスーパーユーザー権限が必要です。

(1) IPv6 モジュールをロードします

コマンドを使用して検出します。この中で、inet6 addr: fe80::5054:abff:fe34:5b09/64 は eth0 ネットワークの IPv6 アドレスです。カード。

# modprobe IPv6

#ifconfig

eth0 リンクのカプセル化:イーサネット HWaddr 52:54:AB:34:5B:09

inet addr:192.168 .1.2 Bcast:192.168.1.255 Mask:255.255.255.0

inet6 addr: fe80::5054:abff:fe34:5b09/64 Scope:Link

UP ブロードキャスト実行中のマルチキャスト MTU:1500 メトリック:1

RX パケット:0 エラー:0 ドロップ:0 オーバーラン:0 フレーム:0

TX パケット:21 エラー:0 ドロップ:0 オーバーラン:0 キャリア:0

衝突:0 txqueuelen:100

RX バイト:0 (0.0 b) TX バイト:1360 (1.3 Kb)

割り込み:5 ベース アドレス:0xec00

( 2) ping コマンドを使用して、ネットワーク カードの IPv6 アドレスが有効かどうかを確認します

#ping6 -I eth0 -c 2 fe80::200:e8ff:fea0:2586

は異なりますIPv4 からの場合は、ping6 コマンドを使用します。ネットワーク カード インターフェイスを指定する必要があります。指定しないと、システムはどのネットワーク デバイスにパケットを送信するかを認識できません。 I はインターフェイス、eth0 は最初のネットワーク カード、-c はループ、2 は ping6 が 2 回実行されることを意味します。結果を図 1 に示します。

図 1 IPv6 ネットワークでの ping6 コマンド

(3) ip コマンドを使用して、IPv6

# の eth0 に IP アドレスを追加します。 ip -6 addr add 3ffe:ffff :0:f101::1/64 dev eth0

ifconfig コマンドを使用して、2 番目の IPv6 アドレスがネットワーク カードに表示されるかどうかを確認します。

Linux ネットワークの主な利点は、リソースと情報を共有でき、ユーザーがリモートから情報にアクセスできることです。 Linux には、ユーザーに役立つ一連の強力なネットワーク コマンドが用意されています。これらのツールは、ユーザーがネットワークをセットアップし、ネットワーク状態を確認し、リモート コンピュータにログインし、ファイルを転送し、リモート コマンドを実行するのに役立ちます。

上記では、Linux のより重要なネットワーク コマンドを紹介しましたが、実際には、Linux には学習する必要のあるコマンドがたくさんあります。 Linuxのネットワーク操作コマンドは、コマンドパラメータのオプションが多いのが特徴で、すべてを覚える必要はなく、コマンドの主な目的を理解し、ヘルプ情報を活用して使いこなすことが重要です。

Linux で覚えるべき 60 のコマンド (5) - ネットワーク セキュリティ コマンド Linux で覚えるべき 60 のコマンド: システム セキュリティ関連のコマンド

Linux と Windows NT/2000 システムは同じユーザーのシステムですが、システムは異なりますが、それらの間には多くの重要な違いがあります。 Windows システムに慣れている多くの管理者にとって、Linux オペレーティング システムのセキュリティと信頼性を確保する方法は、多くの新たな課題に直面することになります。この記事では、Linux システム セキュリティのコマンドに焦点を当てます。

passwd

1. 機能

passwd コマンドは本来、アカウントのログインパスワードを変更するものであり、使用権限はすべてのユーザーに対して与えられます。

2. 形式

passwd [オプション] アカウント名

3. 主なパラメータ

-l: 指定されたアカウント名を super Only でのみロックしますユーザー権限を持つユーザーが使用できます。

-u: アカウントのロックを解除すると、スーパー ユーザー権限を持つユーザーのみがそのアカウントを使用できるようになります。

-x, --maximum=DAYS: パスワードの最大使用時間 (日)。スーパー ユーザー権限を持つユーザーのみが使用できます。

-n, --minimum=DAYS: パスワードの最小使用時間 (日)。スーパー ユーザー権限を持つユーザーのみが使用できます。

-d: ユーザーのパスワードを削除します。スーパーユーザー権限を持つユーザーのみが使用できます。

-S: 指定したユーザーのパスワード認証方式を確認し、スーパーユーザー権限を持つユーザーのみが使用できるようにします。

4. アプリケーション例

$ passwd

ユーザー cao のパスワードの変更

cao のパスワードの変更

(現在) UNIXパスワード:

新しい UNIX パスワード:

新しい UNIX パスワードを再入力:

passwd: すべての認証トークンが正常に更新されました。

上記からわかるように、 passwd コマンドでは、古いパスワードを入力してから、新しいパスワードを 2 回入力する必要があります。

su

1. 機能

su の機能は、ユーザーのパスワードを入力する必要があるスーパー ユーザーを除く他のユーザーの ID を変更することです。

2. 形式

su [オプション]... [-] [USER [ARG]...]

3. 主なパラメータ

-f、--fast: スタートアップ ファイル (csh.cshrc など) を読み取る必要はありません。csh または tcsh シェルにのみ使用されます。

-l, --login: このパラメータを追加すると、ユーザーとして再度ログインするようになります。ほとんどの環境変数 (HOME、SHELL、USER など) は、ユーザー (USER) をメインにすると、作業ディレクトリも変更されます。 USER が指定されていない場合、デフォルトは root です。

-m、-p、--preserve-environment: su の実行時に環境変数を変更しないでください。

-c コマンド: アカウントを USER に変更し、コマンド (command) を実行してから、元のユーザーに戻します。

USER: 変更するユーザー アカウント。ARG は新しいシェル パラメーターを渡します。

4. 適用例

アカウントをスーパーユーザーに変更し、dfコマンド実行後にユーザーを復元します。 su -c df root

umask

1. Function

umask は、ユーザー ファイルとディレクトリのファイル作成に対するデフォルトのシールド値を設定します。このコマンドをプロファイルに入れると、ファイル、このユーザーが作成する後続のファイルのアクセス許可を制御できます。これは、ファイルの作成時に誰にアクセスを拒否するかをシステムに指示します。アクセス権はすべてのユーザーに与えられます。

2. 形式

umask [-p] [-S] [mode]

3. パラメータ

-S: 現在の umask 設定を決定します。 。

-p: umask 設定を変更します。

[モード]: 値を変更します。

4. 説明

従来の

#従来の Unix の umask 値は 022 で、同じグループに属する他のユーザーや他のグループのユーザーは変更できません。ユーザードキュメント。各ユーザーは独自のプライベート グループを所有し、所属しているため、この「グループ保護モード」は必要なくなりました。 Linux セキュリティの基礎となるのは厳密な権限設定であり、権限の間違いは致命的です。 umask コマンドは、プロセスによって作成されたファイルの読み取りおよび書き込み権限を設定するために使用されることに注意してください。最も安全な値は 0077 であり、ファイルを作成したプロセスを除くすべてのプロセスの読み取りおよび書き込み権限が閉じられていることを意味します。 、これは -rw------ を意味します。

~/.bash_profile にコマンド umask 0077 の行を追加すると、シェルが起動されるたびにプロセスの umask 権限を正しく設定できるようになります。

5. アプリケーション例

umask -S

u=rwx,g=rx,o=rx

umask -p 177

umask -S

u=rw,g=,o=

上記の 5 行のコマンドは、まず現在のステータスを表示し、次に umask 値を 177 に変更します。 、ファイルの所有者のみがファイルの読み取りと書き込みの権限を持ち、他のユーザーはファイルにアクセスできません。これは明らかに非常に安全な設定です。

chgrp

1. 機能

chgrp は、1 つ以上のファイルまたはディレクトリが属するグループを変更することを意味します。アクセス権はスーパーユーザーです。

2. 形式

chgrp [オプション]... グループ ファイル...

または

chgrp [オプション]... --reference =参照ファイル file...

それぞれが属するグループを設定します。

3. パラメータ

-c、--changes: --verbose と似ていますが、変更があった場合にのみ結果を表示します。

--dereference: シンボリック リンク自体ではなく、シンボリック リンクが指すオブジェクトに影響します。

-h, --no-dereference: シンボリック リンクによって示される宛先ではなく、シンボリック リンク自体に影響します (このオプションは、システムがシンボリック リンクの所有者の変更をサポートしている場合にのみ有効です)。

-f、--silent、--quit: ほとんどのエラー メッセージを削除します。

--reference=参照ファイル: 指定されたグループの代わりに所有グループを使用します。

-R、--recursive: すべてのファイルとサブディレクトリを再帰的に処理します。

-v、--verbose: ファイルの処理時に情報を表示します。

4. 適用手順

このコマンドは、指定されたファイルが属するユーザー グループを変更します。グループは、/etc/group ファイル内のユーザー グループ ID またはユーザー グループのグループ名です。ファイル名は、グループを変更するファイルのスペースで区切られたリストであり、ワイルドカードがサポートされています。ユーザーがファイルの所有者またはスーパーユーザーではない場合、ファイルのグループは変更できません。

5. アプリケーション例

/opt/local /book/ およびそのサブディレクトリ内のすべてのファイルの所有権グループを book に変更します。コマンドは次のとおりです:

$ chgrp - R book /opt/local /book

chmod

1. 機能

chmod コマンドは非常に重要で、ファイルやディレクトリのアクセス許可を変更するために使用されます。 . ユーザーはファイルまたはディレクトリへのアクセス権限を制御でき、使用権限はスーパーユーザーです。

2. 形式

chmod コマンドには 2 つの用途があります。 1つは文字と演算子表現を含む文字設定方法(相対権限設定)、もう1つは数字を含む数値設定方法(絶対権限設定)です。

(1) キャラクター設定方法

chmod [who] [ | - | =] [mode] ファイル名

◆操作対象者は以下のいずれかになります。文字 任意の 1 つまたはその組み合わせ

u: ユーザー、つまりファイルまたはディレクトリの所有者を示します。

g: 同じグループ内のユーザー、つまりファイル所有者と同じグループ ID を持つすべてのユーザーを示します。

o: 他のユーザーを示します。

a: すべてのユーザーを示します。これはシステムのデフォルト値です。

◆操作記号

: 特定の権限を追加します。

#-: 特定の権限を取り消します。

=: 指定されたアクセス許可を付与し、他のすべてのアクセス許可 (存在する場合) を削除します。

◆モードを設定する権限は、次の文字を任意に組み合わせて指定できます。

r: readable。

w: 書き込み可能。

#xx: 実行可能ファイル。

XX: ターゲット ファイルが一部のユーザーに対して実行可能である場合、またはターゲット ファイルがディレクトリである場合にのみ、x 属性を追加します。

s: ファイルが実行されると、プロセスの所有者またはグループ ID がファイルのファイル所有者に設定されます。モード「u+s」はファイルのユーザー ID ビットを設定し、「g+s」はグループ ID ビットを設定します。

t: プログラムのテキストを交換装置に保存します。

u: ファイル所有者と同じ権限を持ちます。

g: ファイル所有者と同じグループ内のユーザーと同じ権限を持ちます。

o: 他のユーザーと同じ権限を持ちます。

ファイル名: アクセス許可を変更するファイルのスペース区切りのリスト。ワイルドカードがサポートされています。

複数の権限メソッドを 1 つのコマンド ラインでカンマで区切って指定できます。

(2) 数値設定メソッド

数値設定メソッドの一般的な形式は次のとおりです。 chmod [mode] ファイル名

数値属性の形式は 3 0 です。 to 8 進数の 7、順序は (u) (g) (o) ファイル名です。アクセス許可を変更するファイルのスペース区切りのリストで、ワイルドカードがサポートされています。

数字で表される権限の意味は次のとおりです: 0001 は所有者の実行権限、0002 は所有者の書き込み権限、0004 は所有者の読み取り権限所有者; 0010 はグループの実行権限 権限; 0020 はグループの書き込み権限; 0040 はグループの読み取り権限; 0100 はその他の実行権限; 0200 はその他の書き込み権限; 0400 は読み取り他人の許可; 1000 は貼り付け場所ビット; 2000 は false を意味します

このファイルが実行可能ファイルの場合、グループ ID がその位置であり、それ以外の場合はファイル ロック ビットが設定されます; 4000 はファイルが実行可能ファイルの場合、ユーザー ID は位置 Bit です。

3. 例

システム管理者がすべてのユーザーが入力できるフォーム (tem) を作成する場合、そのユーザーにはファイルに対する読み取りおよび書き込み権限が付与されている必要があります。次のコマンドを使用します: #chmod 666 tem

上記のコード

では、数値 666 はどのように計算されますか? 0002 は所有者の書き込み権限、0004 は所有者の読み取り権限、0020 はグループの書き込み権限、0040 はグループの読み取り権限、

0200 はその他の書き込み権限、 0400 は他人の読み取り権限であり、これら 6 つの数字の合計は 666 (上記の数字はすべて 8 進数であることに注意してください)、結果を図 1 に示します。

図 1 chmod デジタル メソッドを使用してファイルのアクセス許可を設定する

図 1 からわかるように、tem ファイルのアクセス許可は -rw-rw-rw-、つまりユーザーには、このファイルに対する読み取りおよび書き込みアクセス権限があります。

キャラクター権限設定を使用する場合は、次のコマンドを使用します:

#chmod a =wx tem

chown

1. Function

1 つ以上のファイルまたはディレクトリの所有者とグループを変更します。アクセス権はスーパーユーザーです。

2. 形式

chown [オプション] ユーザーまたはグループ ファイル

3. 主要パラメータ

--dereference: 影響を受けるのはシンボリック リンクです。シンボリック リンク自体ではなく、それを指します。

-h, --no-dereference: シンボリック リンクによって示される宛先ではなく、シンボリック リンク自体に影響します (このオプションは、システムがシンボリック リンクの所有者の変更をサポートしている場合にのみ有効です)。

--from=現在の所有者:現在のグループ 所有者とグループは、各ファイルの所有者とグループがオプションで指定されたものと一致する場合にのみ変更されます。そのうちの 1 つは省略でき、省略された属性は元の属性と一致する必要はありません。

-f、--silent、--quit: ほとんどのエラー メッセージを削除します。

-R、--recursive: すべてのファイルとサブディレクトリを再帰的に処理します。

-v、--verbose: ファイルの処理時に情報を表示します。

4. 説明

chown 指定されたファイルの所有者を指定されたユーザーまたはグループに変更します。ユーザーはユーザー名またはユーザー ID、グループはグループ名またはグループ ID、ファイルはスペースで区切られたファイルのリストです。アクセス許可を変更する必要があるワイルドカードをサポートします。システム管理者は、多くの場合、chown コマンドを使用して、ファイルを別のユーザーのディレクトリにコピーした後、そのファイルを使用する許可をユーザーに与えます。

5. アプリケーション例

1. ファイル shiyan.c の所有者を wan

$ chown wan shiyan.c

2. ファイルの所有者を変更します。 directory /hi とその下のすべてのファイルとサブディレクトリの所有者が wan に変更され、グループ所有者が users に変更されます。

$ chown - R wan.users /hi

chattr

1. 機能

ext2 および ext3 ファイル システムの属性 (属性) を変更し、アクセス許可を使用します。根。

2. 形式

chattr [-RV] [- =AacDdijsSu] ​​[-v version] ファイルまたはディレクトリ

3. 主なパラメータ

- R: すべてのファイルとサブディレクトリを再帰的に処理します。

-V: 変更内容の詳細を表示し、出力を印刷します。

-:属性が不正です。

+: 属性をアクティブ化します。

=: 属性を指定します。

A: Atime は、このファイルの最終アクセス時刻を変更しないようにシステムに指示します。

S: 同期。アプリケーションがこのファイルに対して書き込み操作を実行すると、システムは変更された結果をすぐにディスクに書き込みます。

a: 追加のみ。システムはこのファイルの後にデータを追加することのみを許可し、プロセスがこのファイルを上書きしたり切り詰めたりすることを許可しません。ディレクトリにこの属性がある場合、システムはこのディレクトリ内でのファイルの作成と変更のみを許可しますが、ファイルの削除は許可しません。

i: 不変です。システムはこのファイルへの変更を許可しません。ディレクトリにこの属性がある場合、プロセスはディレクトリ内のファイルを変更することのみができ、ファイルの作成や削除は許可されません。

D: 圧縮ファイルにエラーがないか確認します。

d: ダンプはありません。ダンプ プログラムは、ファイル システムのバックアップを実行するときにこのファイルを無視します。

C: 圧縮します。システムはこのファイルを透過的に圧縮します。このファイルから読み取る場合は、圧縮解除されたデータが返されます。このファイルにデータを書き込む場合、データは最初に圧縮されてからディスクに書き込まれます。

s: 安全な削除。ファイルを削除するときに、システムがファイルが存在する領域を 0 で埋めることができます。

u: 削除を取り消します。アプリケーションがこのファイルの削除を要求すると、後でファイルを復元して削除できるように、システムはデータ ブロックを保持します。

4. 説明

chattr

コマンドは非常に便利です。一部の機能は Linux カーネル バージョンでサポートされています。Linux カーネル バージョンが 2.2 より前の場合は、多くの機能を実装できません。同様に、圧縮ファイル内のエラー

をチェックする -D の機能をサポートするには、カーネル 2.5.19 以降が必要です。さらに、chattr コマンドを使用して属性を変更するとシステムのセキュリティが向上しますが、すべてのディレクトリに適しているわけではありません。 chattr コマンドは、

/、/dev、/tmp、および /var ディレクトリを保護できません。

##5. アプリケーション例

##1. /root ディレクトリ、つまりサブディレクトリ内のすべてのファイルを復元します

# chattr -R u/root

2. chattr コマンドを使用して、システム内のキー ファイルが変更されるのを防ぎます。

Linux では、一部の設定ファイル (passwd、fatab) は誰にも変更できません。誤って削除または変更された場合は、ファイルの「不変ビット」を設定できます。コマンドは次のとおりです。

# chattr i /etc/fstab

sudo

1. 機能

sudo 設定ファイルでコマンドを制限し、限られた時間内でユーザーが使用し、ログに記録されるコマンドで、全ユーザーに権限が与えられます。

2. 形式

sudo [-bhHpV] [-s ] [-u ] [コマンド]

sudo [-klv]

3.主なパラメータ

-b: コマンドをバックグラウンドで実行します。

-h: ヘルプを表示します。

-H: HOME 環境変数を新しい ID の HOME 環境変数に設定します。

-k: パスワードの有効期間を終了します。つまり、次回からパスワードの入力が必要になります。

-l: 現在のユーザーが使用できるコマンドをリストします。

-p: パスワードを求めるプロンプト記号を変更します。

-s: 指定されたシェルを実行します。

-u: 指定されたユーザーを新しい ID として使用します。使用しない場合は、デフォルトで root になります。

-v: パスワードの有効期間を 5 分延長します。

4. 説明

sudo

コマンド設定は /etc/sudoers ファイルにあります。ユーザーが sudo を使用する場合、ユーザーの ID を認証するためにパスワードを入力する必要があります。定義したコマンドはその後も使用できますが、設定ファイル

ファイルに含まれていないコマンドを使用した場合、アラームが記録されます。 sudo は、特定のユーザーが一部またはすべてのシステム コマンドを root として実行できるようにするためにシステム管理者が使用するプログラムです。明らかな用途は、サイトのセキュリティを強化することです

。毎日スーパー ユーザーとして日常的な作業を行う必要があり、スーパー ユーザーとしてのみ実行できるいくつかの固定コマンドを頻繁に実行する場合は、 sudo の使用が非常に適しています。

ps

1. 機能

ps はインスタントプロセス (プロセス) のダイナミクスを表示するもので、使用権限はすべてのユーザーに与えられます。

2. 形式

ps [オプション] [--help]

3. メインパラメータ

ps には多くのパラメータがありますが、ここにのみ記載されています。よく使用されるパラメータ。

-A: すべてのプロセスをリストします。

-l: 長いリストを表示します。

-m: メモリ情報を表示します。

-w: 表示範囲を広げると、より多くの情報を表示できます。

-e: すべてのプロセスを表示します。

a: 他のユーザーのプロセスを含む、端末上のすべてのプロセスを表示します。

-au: より詳細な情報を表示します。

-aux: 他のユーザーを含むすべてのプロセスを表示します。

4. 説明

プロセスを監視および制御するには、まず現在のプロセスの状況を理解する必要があります。つまり、現在のプロセスを表示する必要があります。 ps コマンドは、最も基本的で非常に強力なプロセス表示コマンドです。このコマンドを使用して、実行中の

プロセス、その実行ステータス、プロセスが終了したかどうか、プロセス内にゾンビが存在するかどうか、どのプロセスが占有しているリソースが多すぎるかなどを確認します。図 2 は、ps-aux コマンドの詳細な説明を示しています。このコマンドを実行することでほとんどの情報を取得できます。最も一般的に使用される 3 つのパラメーターは、u、a、x です。以下は、これら 3 つのパラメータに基づく ps コマンドの役割の詳細な説明です。 ps aux

図 2 ps-aux コマンドの詳細な説明

次のコードの 2 行目図 2、USER はプロセス所有者を表します; PID はプロセス識別子を表します; %CPU は占有されている CPU 使用量を表します; %MEM は占有されている物理メモリ使用量を表します; VSZ は占有されている仮想メモリ サイズを表します; RSS はプロセスによって占有されている物理メモリの値を表します; TTY は端末のセカンダリデバイス番号です。

STAT

はプロセスのステータスを表し、D は中断不可能な静的 (I/O アクション)、R は実行中、S は静的状態、T は実行を一時停止、Z は存在しませんが、一時的に削除することはできません; W 割り当てるメモリ ページが不足しています

; 高優先度のプロセス; N 低優先度のプロセス; L メモリ本体に割り当てられ、ロックされているメモリ ページがあります (リアルタイム システムまたは

I/O)。 START はプロセスの開始時刻です。 TIME は実行時間です。 COMMAND は実行される命令です。

4. 応用例

システムのメンテナンスを行う際、メモリ使用量が膨大になり、どのプロセスが多くのプロセスを占有しているのかが分からない、ということがよくあります。メモリ使用量を表示するには、top コマンドを使用するほかに、コマンド

ps aux | sort 5n

who

1 を使用することもできます。

who は、システム内のどのユーザーがシステムにログインしたかを表示します。表示される情報には、ユーザー ID、使用したログイン端末、オンライン時間、アイドル時間、CPU 使用率、および実行内容が含まれます。アクセス権はすべてのユーザーに与えられます。

2. 形式

who - [husfV] [user]

3. 主なパラメータ

-h: タイトル列を表示しません。

-u: ユーザーのアクション/作業を表示しません。

-s: 表示には短い形式を使用します。

-f: ユーザーのオンライン位置を表示しません。

-V: プログラムのバージョンを表示します。

4. 説明

この

コマンドは主に、現在のオンライン ユーザーを表示するために使用されます。ユーザーが talk コマンドを使用するなど、他のユーザーと即時にコミュニケーションを確立したい場合、最初にユーザーが実際にオンラインであることを確認する必要があります。そうしないと、

talk プロセスを確立できません。別の例として、システム管理者が各ログイン ユーザーが現在何をしているかを監視したい場合は、who コマンドも使用する必要があります。 who コマンドは非常に簡単に適用でき、ユーザーの状況を正確に把握できるため、非常に広く使われています。

実践演習

1. Linux コマンドを使用してシステム侵入者を検出する

Mandrake Linux と Red Hat をインストールしていること

Linux すべてのユーザーは、Linux システムには 3 つの異なるレベルの組み込みファイアウォール (標準、高、およびそれ以上) があることを知っているでしょう。Linux サーバーをインストールし、いくつかの基本設定を行った後、サーバーは比較的安全であるはずです。また、システム管理者の過失を利用して、さまざまな方法でシステムに侵入するハッカーも存在するでしょう。ハッカーを素早く見つける方法は非常に重要です。一般に、コマンドを使用してハッカーが侵入したかどうかを確認できます。表

1 を参照してください。

表 1 ハッカーの侵入現象を照会するためのコマンド対応表

たとえば、ハッカーがネットワークを盗聴する場合、ネットワーク カード インターフェイスをプロミスキャス モードにする必要があります。照会するには、次のコマンドを使用します。 :

#ifconfig -a

#eth0 リンク encap:イーサネット HWaddr 00:00:E8:A0:25:86

inet addr:192.168.1.7 Bcast:192.168。 1.255 Mask:255.255. 255.0

UP BROADCAST RUNNING PROMISCUOUS MTU:1500 Metric:1

....

このコマンドの出力から、次のことがわかります。上記の概念に合わせて。最初の行の 00:00:E8:A0:25:86 は MAC アドレス、2 行目の 192.168.1.7 は IP アドレスです。

4 行目は受信データのステータスを示します。現時点ではハッカーによるスニッフィングが処理されています。一般に、ネットワーク カードには、ブロードキャスト、マルチキャスト、

プロミスキャスなど、データ フレームを受信するためのいくつかの状態があります。ブロードキャストはブロードキャスト メッセージであるすべてのタイプのデータ フレームを受信することを指します。マルチキャストは特定のマルチキャスト メッセージを受信することを指します。プロミスキャス

は一般にプロミスキャス モードと呼ばれ、メッセージ内の宛先ハードウェア アドレスを指します。何もチェックせずにすべてを受信する動作モード。

2. su コマンドの乱用を制限する

私たち

Linux ではスーパー ユーザーが最大の権限を持っており、ほぼすべてのハッカーがこの目標を達成したいと考えています。 Linux では、スーパーユーザーへの切り替えに対する制限が強化される可能性があります。 PAM

(Pluggable Authentication

Modules) を使用して、wheel グループ以外のユーザーが root にならないようにし、/etc/pam.d/su ファイルを変更して、シールド フラグ # を削除します。

/usr/sbin/usermod G10 bjecadm を使用して、bjecadm アカウントを gid 10 のグループ (wheel グループ) に追加します。コマンドは次のとおりです。

/etc/pam.d/su # パスワード認証を使用します

#auth 十分な /lib/security/pam_wheel.so debug

# 制限Wheel グループのみ ユーザーは root

#auth に切り替えることができます /lib/security/pam_wheel.so use_uid

chmod -G10 bjecadm

さらに、ユーザーが su コマンドを使用してシステム ユーザーに入ろうとするたびに、このコマンドは /usr/adm/sulog ファイルにメッセージを書き込みます。ファイルに大量の無効な操作情報が記録されている場合、 su を使用して root を入力すると、誰かが root パスワードを解読しようとしている可能性があることを意味します。

Linux コマンドには強力な機能があります。 Linux システム管理者の場合、多くの場合、さまざまなセキュリティ コマンド手法を組み合わせるだけでセキュリティ防御線を形成できます。コンピュータ セキュリティの観点から見ると、絶対に安全なコンピュータ システムは世界に存在せず、Linux システムも例外ではありません。

Linux で学ばなければならない 60 のコマンド (6) - その他のコマンド

Linux で学ばなければならない 60 のコマンド: その他のコマンド

これまでの講義では、Linux のコマンドはいくつかの部分に分かれており、システム内の機能に応じて個別に導入されます。ただし、分類するのが難しいコマンドがまだいくつかありますが、それらを学習することも重要です。

tar

1. 機能

tar コマンドは、Unix/Linux システムでファイルをバックアップするための信頼できる方法であり、ほぼすべての環境で機能します。全員がユーザーです。

2.形式

tar [メインオプションとセカンダリオプション] ファイルまたはディレクトリ

3.メインパラメータ

このコマンドを使用する場合、メインオプションはは必須です。はい、tar に何をすべきかを指示します。補助オプションは補助的なものであり、選択できます。

主なオプション:

-c 新しいアーカイブ ファイルを作成します。ユーザーがディレクトリまたはいくつかのファイルをバックアップしたい場合は、このオプションを選択する必要があります。

-r アーカイブするファイルをアーカイブ ファイルの末尾に追加します。たとえば、ユーザーがバックアップ ファイルを作成し、バックアップを忘れた別のディレクトリまたはファイルがあることに気付いた場合、このオプションを使用して、忘れたディレクトリまたはファイルをバックアップ ファイルに追加できます。

-t アーカイブ ファイルの内容を一覧表示し、どのファイルがバックアップされているかを確認します。

-u ファイルを更新します。つまり、元のバックアップ ファイルが新しいファイルに置き換えられ、バックアップ ファイル内に更新対象のファイルが見つからない場合は、バックアップ ファイルの末尾に追加されます。

-x ファイルをアーカイブから解放します。

補助オプション:

-b このオプションはテープ ドライブに設定され、その後にブロック サイズを示す数値が続きます。システムのデフォルト値は 20 (20×512 バイト) です。

-f アーカイブ ファイルまたはデバイスを使用する場合、通常、このオプションが必要です。

-k 既存のファイルを保存します。たとえば、特定のファイルを復元し、復元プロセス中に同じファイルが見つかった場合、そのファイルは上書きされません。

-m ファイルを復元する場合、すべてのファイルの変更時刻を現在に設定します。

-M 複数のディスクに保存するためのマルチボリューム アーカイブを作成します。

-v tar によって処理されたファイル情報の詳細なレポート。このオプションを指定しないと、tar はファイル情報を報告しません。

-w すべてのステップで確認を求めます。

-z gzip を使用してファイルを圧縮/解凍します。このオプションを追加すると、アーカイブ ファイルを圧縮できますが、復元時にこのオプションを使用して解凍する必要もあります。

4. アプリケーションの説明

tar は、Tape Archive (テープ アーカイブ) の略語で、元々はファイルをテープにパッケージ化するために設計されました。 Linux のソース コードをダウンロードした場合は、tar ファイルに遭遇した可能性があります。

Linux では大文字と小文字が区別されることに注意してください。たとえば、tar コマンドは常に小文字で実行する必要があります。コマンドライン スイッチには、大文字、小文字、または大文字と小文字の混合を使用できます。たとえば、-t と -T は異なる機能を実行します。ファイル名またはディレクトリ名には大文字と小文字を混在させることができ、コマンドやコマンド ライン スイッチと同様に大文字と小文字が区別されます。

5. アプリケーション例

tar は、グラフィカル インターフェイスのないコマンド ライン ツールです。 Konsole を使用してターミナル ウィンドウを開き、続いて簡単なバックアップ コマンドを実行します (/usr ディレクトリのすべての内容を含む back.tar ファイルを /temp ディレクトリに作成します)。

$tar cvf - /usr > /temp/back.tar

さらに、tar コマンドは、前の講義 3 で説明した crontab コマンドをサポートしており、crontab ツール「定期的に実行」を使用して時間ベースに設定できます。たとえば、毎晩 6 時に /usr ディレクトリを

hda (最初の IDE インターフェイスのメイン ドライブ (常に最初のハード ディスク上にある)) にバックアップするには、次のステートメントを追加するだけです。ルートの crontab 利用可能:

$00 06 * * * tar cvf /dev/hda1/usrfiles.tar - /usr

通常、次のディレクトリをバックアップする必要があります:

◆/etc には、ネットワーク構成、システム名、ファイアウォール ルール、ユーザー、グループ、その他のグローバル システム項目を含むすべてのコア構成ファイルが含まれています。

◆ /var には、DNS 設定、DHCP リース、メール バッファ ファイル、HTTP サーバー ファイル、dB2 インスタンス設定など、システム デーモン (サービス) によって使用される情報が含まれます。

◆/home すべてのデフォルト ユーザーのホーム ディレクトリが含まれます。これには、個人設定、ダウンロードされたファイル、ユーザーが失いたくないその他の情報が含まれます。

◆/root root ユーザーのホーム ディレクトリ。

◆/opt は、多くの非システム ファイルがインストールされる場所です。 IBM ソフトウェアはここにインストールされます。 OpenOffice、JDK、その他のソフトウェアもデフォルトでここにインストールされます。

一部のディレクトリはバックアップする必要がありません:

◆/proc このディレクトリは決してバックアップしないでください。これは実際のファイル システムではなく、実行中のカーネルと環境の仮想化されたビューであり、実行中のメモリ全体の仮想ビューである /proc/kcore などのファイルも含まれます。これらのファイルをバックアップすることは、単なるリソースの無駄です。

◆/dev ハードウェア デバイスのファイル表現が含まれます。空のシステムに復元する場合は、/dev をバックアップできます。ただし、インストールされている Linux システムに復元する場合は、/dev をバックアップする必要はありません。

unzip

1. 機能

unzip

コマンドは /usr/bin ディレクトリにあり、pkzip、pkunzip、および pkunzip と同じです。 MS DOS 上の MS

Windows の Winzip ソフトウェアにも同じ機能があります。ファイルを .zip ファイルに圧縮して、ハード ディスクのスペースを節約します。必要に応じて、unzip コマンドを使用して圧縮ファイルを解凍します。このコマンドの使用権限はすべてのユーザーに制限されています。

2.形式

unzip [-cflptuvz][-agCjLMnoqsVX][-P ][.zip ファイル][file][-d ][-x ]

3. 主なパラメータ

-c: 解凍結果を画面に表示し、適切な文字変換を行います。

-f: 既存のファイルを更新します。

-l: 圧縮ファイルに含まれるファイルを表示します。

-p: -c パラメーターと同様に、解凍結果が画面に表示されますが、変換は実行されません。

-t: 圧縮ファイルが正しいか確認してください。

-u: -f パラメーターと似ていますが、既存のファイルの更新に加えて、圧縮ファイル内の他のファイルもディレクトリに解凍されます。

-v: 実行時に詳細情報を表示します。

-z: 圧縮ファイルのコメントテキストのみを表示します。

-a: テキストファイルに対して必要な文字変換を行います。

-b: テキストファイルに対して文字変換を行いません。

-C: 圧縮ファイル内のファイル名は大文字と小文字が区別されます。

-j: 圧縮ファイル内の元のディレクトリ パスを処理しません。

-L: 圧縮ファイル内のすべてのファイル名を小文字に変更します。

-M: 出力結果を more プログラムに送信して処理します。

-n: 解凍時に元のファイルを上書きしないでください。

-o: 最初にユーザーに確認する必要はありません。解凍の実行後に元のファイルが上書きされます。

-P: zip のパスワード オプションを使用します。

-q: 実行中に情報が表示されません。

-s: ファイル名の空白文字をアンダースコア文字に変換します。

-V: VMS ファイルのバージョン情報を保持します。

-X: 解凍時にファイルの元の UID/GID も同時に保存します。

[.zip ファイル]: .zip 圧縮ファイルを指定します。

[ファイル]: .zip 圧縮ファイル内のどのファイルを処理するかを指定します。

-d: 解凍後のファイルを保存するディレクトリを指定します。

-x: .zip 圧縮ファイル内のどのファイルを処理しないかを指定します。

-Z unzip: -Z は、zipinfo コマンドの実行と同じです。 Linuxではzip圧縮ファイルの詳細情報を閲覧できるzipinfoというツールも提供されています。 unzip の最新バージョンは 5.50 です。

gunzip

1. 機能

gunzip コマンドはファイルの解凍に使用され、使用権限はすべてのユーザーに与えられます。

2.形式

gunzip [-acfhlLnNqrtvV][-s ][ファイル...]

または

gunzip [-acfhlLnNqrtvV][- ■ ][ディレクトリ]

3. 主要パラメータ

-a または --ascii: ASCII テキスト モードを使用します。

-c または --stdout または --to-stdout: 解凍されたファイルを標準出力デバイスに出力します。

-f または -force: ファイル名またはハード リンクが存在するかどうか、およびファイルがシンボリック リンクであるかどうかに関係なく、圧縮ファイルを強制的に解凍します。

-h または --help: オンライン ヘルプ。

-l または --list: 圧縮ファイルに関する情報を一覧表示します。

-L または --license: バージョンと著作権情報を表示します。

-n または --no-name: 解凍時に、圧縮ファイルに元のファイル名とタイムスタンプが含まれている場合、それは無視され、処理されません。

-N または --name: 解凍時に、圧縮ファイルに元のファイル名とタイムスタンプが含まれている場合は、解凍されたファイルに保存されます。

-q または --quin: 警告メッセージを表示しません。

-r または --recursive: 再帰処理。指定されたディレクトリ内のすべてのファイルとサブディレクトリをまとめて処理します。

-S または --suffix: 圧縮されたサフィックス文字列を変更します。

-t または --test: 圧縮ファイルが正しいかどうかをテストします。

-v または --verbose: 命令の実行プロセスを表示します。

-V または --version: バージョン情報を表示します。

4. 説明

gunzip は広く使用されている解凍プログラムです。gzip で圧縮されたファイルを解凍するために使用されます。これらの圧縮ファイルのデフォルトの拡張子は「.gz」です。実際、gunzip は gzip と緊密に接続されているため、圧縮でも解凍でも gzip コマンドのみで完了できます。 Gunzip の最新バージョンは 1.3.3 です。

unarj

1. 機能

unarj は .arj 形式のファイルを解凍し、使用権限はすべてのユーザーに与えられます。

2. 形式

unarj [eltx][.arj 圧縮ファイル]

3. 主なパラメータ

e: .arj ファイルを解凍します。

l: 圧縮ファイルに含まれるファイルを表示します。

t: 圧縮ファイルが正しいか確認してください。

#xx: 解凍するときに元のパスを保持します。

4. 説明

拡張子が .arj のファイルは、MS DOS および Windows 用の ARJ ユーティリティによって作成されます。 ARJ はソース コードが自由に入手できないシェアウェア プログラムであるため、

mtools

1. Function

mtools

は実際にはcommand set は DOS ファイルシステムのツールプログラムで、多くの DOS コマンドをシミュレートでき、非常に使いやすいです。アクセス権はすべてのユーザーに与えられます。 Linux システムには、

mtools と呼ばれるポータブル ツールのセットが用意されており、これを使用すると、ユーザーは標準 DOS フロッピー ディスクからファイルやディレクトリを簡単に読み書きできます。これらは、DOS 環境と Linux 環境の間でファイルを交換するのに非常に役立ちます。 mtools

使い方はとても簡単です。フロッピー ディスク内のすべてのファイルをハードディスクにコピーしたい場合は、次のコマンドを実行します:

mcopy a:*.*

言い換えると、対応する DOS コマンドの前に文字「m」を追加するだけで、対応する機能が完了します。このソフトウェアは Linux ディストリビューションで一般的に入手可能であり、次のコマンドを使用して確認できます。

rpm -qa|grep mtools

インストールされていなくても問題ありません。インターネット (http://mtools.linux.lu/) から最新バージョンをダウンロードできます。 ) をインストールします。現在ダウンロード可能な mtools の最新バージョンは

2 含まれるコマンド

mcd ディレクトリ名: MS DOS 下のディレクトリを変更します。

mcopy ソース ファイル ターゲット ファイル: MS DOS と Unix の間でファイルをコピーします。

mdel ファイル名: MS DOS 上のファイルを削除します。

mdir ディレクトリ名: MS DOS 下のディレクトリを表示します。

mformat ドライブ文字: 低レベルでフォーマットされたフロッピー ディスク上に MS DOS ファイル システムを作成します。

rnlabel ドライブ文字: MS DOS でボリューム ラベルを生成します。

mmd ディレクトリ名: MS DOS の下にディレクトリを作成します。

mrd ディレクトリ名: MS DOS 下のディレクトリを削除します。

mren ソース ファイル ターゲット ファイル: 既存の MS DOS ファイルの名前を変更します。

mtype ファイル名: MS DOS ファイルの内容を表示します。

これらのコマンドは、対応する MS DOS コマンドと非常に似ていることに注意してください。 mtoolsコマンドでは「/」と「\」を混在させることができます。ファイル リストは DOS システム上のドキュメントであり、大文字と小文字が区別されないため、ここでは「CDE」と「cde」は同じです。

3. アプリケーション例

(1) フロッピー ディスクをすばやくフォーマットしたい場合は、コマンド mformat:

mformat A:

## を使用できます。 #mtools

本来の開発目的は DOS ファイル システムを処理することであったため、FAT ファイル フォーマットのパーティションでのみ使用できます。 mount コマンドを使用して FAT16/32 パーティションをマウントする場合、mtools 命令を使用してこれらのパーティション上のファイルを処理することはできないことに注意してください。これは、FAT16/32 パーティションが Linux ファイル ディレクトリにマウントされると、Linux はそれをファイル システム

自体の一部として認識するためです。 Linux 自体に付属の説明書。

(2) DOS ディスク上のファイル htca.c を現在のディレクトリにコピーし、ls コマンドで確認します。

$ mcopy a:\htca.c

$ ls -l htca.c

-rw-r- -r- - 1 xxq xxq 27136 1 月 1 日 01:80 htca .c

man

1. Function

man コマンドはオンライン ヘルプを提供するために使用され、使用権限はすべてのユーザーに与えられます。オンライン マニュアルは Linux システムに保存されており、ユーザーは端末で検索できます。 man コマンドを使用してヘルプ情報にアクセスすると、非常に便利で実用的です。

2. 形式

man コマンド名

man [-acdfhkKtwW] [-m システム] [-p 文字列] [-C config_file] [-M パス] [ -P pager] [-S section_list] [section] name ...

3. パラメータ

-C config_file: 設定ファイル man.conf を指定します、デフォルト値は /etc/ man.conf。

-M path: オンライン マニュアルの検索パスを指定します。指定しない場合は環境変数 MANPATH の設定が使用され、MANPATH を使用しない場合は /usr/lib/man.conf の設定が使用されます。 ; MANPATH が空の文字列の場合は、デフォルト値を使用することを意味します。

-P pager: 使用するページャーを指定します。Man は最初にこのオプションを使用し、次に環境変数 MANPAGER、次に環境変数 PAGER に従って設定します。man はデフォルトで /usr/bin/less を使用します。 -は。

-S section_list man: 検索するセクションのリスト (コロンで区切られます) このオプションは、環境変数 MANSECT の設定をオーバーライドします。

-a man: デフォルトでは、最初に見つかったマニュアルを表示した後に検索を停止します。このオプションを使用すると、man は名前に一致するすべてのオンライン マニュアルを引き続き表示します。

-c: 最新の cat ページがある場合でも、オンライン マニュアルの再入力を続行します。このオプションは、画面上の行数と列数が変更された場合、またはタイプセットされたオンライン マニュアルが破損している場合に特に意味があります。

-d: 実際にはオンライン マニュアルを表示せず、デバッグ メッセージのみを表示します。

-D: オンラインマニュアルとデバッグメッセージを同時に表示します。

-h: ヘルプメッセージを表示してプログラムを終了します。

-K: 指定された文字列をすべてのオンライン マニュアルで検索します。この機能は応答速度が非常に遅くなる場合がありますので、セクション(領域)を指定すると速度が向上します。

-m system: 指定されたシステム名に基づいて、別のオンライン マニュアルのセットを指定します。

man:マニュアルの略称です。コマンドの入力が難しい場合は、このドキュメントをすぐに入手できます。たとえば、ps コマンドの使用で問題が発生した場合は、「man ps」と入力するとヘルプ情報が表示され、ps のマニュアル ページが表示されます。

マニュアルページはlessプログラムを使用して表示されるため(画面は簡単に上下に切り替えることができます)、マニュアルページではlessのすべてのオプションを使用できます。

less のより重要なファンクション キーは次のとおりです:

[q] で終了、

[Enter] で 1 行ずつ下にスクロール、

[スペース] 1 ページを下にめくります;

1 ページ上にめくります;

[/] に続いて文字列を入力し、[Enter] を押して文字列を検索します;

[n] が見つかりました前回 次の一致を検索します。

4.マニュアルページを読む

マニュアル ページは、小さなスペースに多くの情報を提供します。ここでは、ほとんどのマニュアル ページに含まれるコンテンツの一部を簡単に紹介します。 Linux のマニュアル ページは主に、ユーザー命令、システム コール、プログラム ライブラリ、デバイスの説明、ファイル形式、ゲーム、その他、システム命令、およびカーネルの 9 つの部分で構成されています。マニュアル ページのスナップショットを図 1 に示します。

図 1 ps コマンドのマニュアル ページのスナップショット

Linux のマニュアル ページのレイアウトを表 1 に示します。

5. アプリケーションの例

Linux

ps、find、cat、ls などの基本的で重要なコマンドがいくつかあります。包括的なアプリケーションの例を挙げてみましょう。このことから、Linux では人間の地位が非常に重要であることがわかります。しかし、man が表示する情報は通常のテキストではなく、これらの単語をテキスト ファイルに直接リダイレクトすると、man の強調表示されたテキストが 2 つになり、無数の

個のタブ文字が作成されることがわかります。印刷や編集が非常に不便です。ただし、次のステートメントを使用すると、ps コマンドの出力を取得できます。

# man ps |col -b | lpr

このコマンドは、出力リダイレクトとパイプ技術の両方を使用しており、ps コマンドのヘルプ情報を直接出力する機能があります。その他の Man ファイルについては、Linux Man

unencode

1 を参照してください。機能

unencode コマンドは、バイナリ ファイル テーブルをテキスト ファイルにエンコードでき、使用権限は次のとおりです。すべてのユーザーに。

2. フォーマット

uuencode [-hv] [ソースファイル] ターゲットファイル

3. 主なパラメータ

-h: 命令フォーマットを列挙(ヘルプ)。

-v: バージョン情報をリストします。

4. アプリケーションの説明

uuencode コマンドは、バイナリ ファイルを電子メールで送信できる ASCII エンコードに変換できます。 uuencode でエンコードされたデータは begin で始まり end で終わり、通常各行の先頭は "M" で、中間部分がエンコードされたファイルです。エンコードされたファイルはソース ファイルよりも大きくなります。

uudecode

1. 機能

uudecode コマンドは、uuencode でエンコードされたファイルを復元するために使用されます。uudecode は、開始タグと終了タグの間のエンコードされたデータのみを復元します。タグの外側のデータはスキップされます。その使用権はすべてのユーザーに与えられます。

2. フォーマット

uuencode [-hv] [file1 ...]

3. 主なパラメータ

-h: 命令フォーマットを列挙(ヘルプ)。

-v: バージョン情報をリストします。

4. アプリケーション例

一度に複数のファイルを復元するには、次のコマンドを使用します:

uuencode file1.uud file2.uud file3.uud

実践演習

1. Linux コマンド ラインでの電子メールの送信

##Linux デスクトップ アプリケーションは急速に開発されていますが、Linux ではコマンド ライン (シェル) が依然として強力な活力を持っています。電子メール サーバーが 8 ビット バイトをサポートしていることを確認できた場合は、次のコマンドを直接使用できます:

cat | mail

cat (cat はconcatenate ) コマンドは、複数のファイルを 1 つのファイルに処理し、この処理の結果を別の出力ファイルに保存するコマンドです。ここでは、電子メールの本文を結合するために使用します。

電子メール名 (例: cjkmail) を入力し、次のコマンドを使用します:

$uuencode >>cjkmail

この方法 vi エディターを使用して cjkmail ファイルを作成し、その前にレターのテキストを書いて送信できます。

レターを受け取った相手は、cjkmail に属するレターの内容をコピーし、themail.uue として保存します。相手が Windows の場合は、WinRAR または WinZip を使用して解凍すると、添付ファイルを確認できます。

相手も Linux を使用している場合は、undecode コマンドを使用して復元できます:

$ uudencode -o<添付ファイル名> themail.uue

2. tar パーティショニング

作成者は 378MB ファイルを複数の 63MB ファイルに圧縮したいと考えています (作成者の USB は 64MB)。次のコマンドを使用します:

$tar czvf - dir | split -d -b 63m

次に、コマンドをマージします:

$cat x* > dir.tgz

上記の例は、実際には 3 つのコマンドの組み合わせ、つまりパッケージ化によって完成します。 tar で分割し、 split で分割し、 cat でマージします。 「tar czvf - dir」は、dirディレクトリをパッケージ化して標準出力(argv)に出力し、パイプで分割して直接出力できるようにすることを意味します。

3. コマンドを連続実行する

コマンドを繰り返し実行するには、watch コマンドを使用します。 ls と組み合わせると、特定のファイルのサイズの変化を監視する効果が得られます。

$watch ls -l file.name

4. tar コマンドを使用してファイルをエクスポートします

tar 形式の DVD ファイル GLvPro6.4_linux.tar があります。このファイルは非常に大きい(4.7GB)ため、すべてを解凍するのが面倒な場合は、最初に次のコマンドを使用してreadme.txtをエクスポートできます。

tar xvf GLvPro6.4_linux.tar readme.txt

このようにして、readme.txtが別途エクスポートされます。

5. tar を使用してディレクトリをパッケージ化する場合は、いくつかのサブディレクトリのみをバックアップします

tar cf --exclude home/cjh home/cao

このように、ホームディレクトリの cjh と cao サブディレクトリのバックアップのみ。

以上が覚えるべき60のLinuxコマンドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:linux必学的60个命令
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート