Linux での fuser コマンドの使用法の詳細な説明

Linux での fuser コマンドの使用法の詳細な説明

説明する:

fuser は、現在ディスク上のファイル、マウント ポイント、さらにはネットワーク ポートを使用しているプログラムを表示し、プログラム プロセスに関する詳細な情報を提供します。

fuser は、指定されたファイルまたはファイル システムを使用しているプロセス ID を表示します。

デフォルトでは、各ファイル名の後にアクセス タイプを示す文字が続きます。

zkfc ログに、次の警告があります: PATH=$PATH:/sbin:/usr/sbin fuser -v -k -n tcp 8090 via ssh: bash: fuser: command not found

理由は、centosのインストールを最小化するとfuserコマンドがなくなるからです

yum インストール -y psmisc

文法:

fuser(オプション)(パラメータ)

アクセスタイプは次のとおりです。

c: 現在のディレクトリを表します
e: このファイルをプログラムの実行可能オブジェクトとして使用します
f: 開かれたファイル。デフォルトでは表示されません。
F: 書き込み用にファイルが開かれました。デフォルトでは表示されません。
r: ディレクトリがプロセスのルート ディレクトリであることを示します。
m: プロセスにメモリ マッピングにファイルを使用するように指示します。または、ファイルは共有ライブラリ ファイルであり、プロセスによってメモリにマップされます。
s: このファイルを共有ライブラリ(またはその他のロード可能なオブジェクト)として使用します

共通オプション

-a: コマンドラインで指定されたすべてのファイルを表示します。デフォルトでは、アクセスされたファイルのみが表示されます。
-c: POSIX 互換性のため、-m と同じです。
-k: ファイルにアクセスしているプロセスを終了します。 -signal が指定されていない場合は、SIGKILL シグナルが送信されます。
-i: プロセスを終了する前にユーザーに確認します。-k オプションがない場合、このオプションは無視されます。
-l: 既知のシグナル名をすべて一覧表示します。
-m:name は、マウントされたファイルシステムまたはマウントされたブロックデバイス (名前 name) 上のファイルを指定します。この方法では、このファイルまたはファイル システムにアクセスするすべてのプロセスがリストされます。ディレクトリが指定されている場合は、自動的に「name/」に変換され、そのディレクトリの下にマウントされているすべてのファイルシステムが使用されます。
-n:space は、異なる名前空間 (スペース) を指定します。ここでは、異なるスペース ファイル (ファイル名、ここではデフォルト)、tcp (ローカル TCP ポート)、および udp (ローカル UDP ポート) がサポートされています。ポートについては、ポート番号または名前を指定できます。あいまいさが生じない場合は、名前/スペース (つまり、80/tcp のような表現) などの単純な表現を使用できます。
-s: サイレントモード、-u および -v は無視されます。 -a は -s と一緒に使用できません。
-signal: プロセスを強制終了するために、SIGKILL の代わりに指定されたシグナルを使用します。シグナルは名前または番号で表すことができます (例: -HUP、-1)。このオプションは -k と一緒に使用する必要があります。そうでない場合は無視されます。
-u: 各 PID の後にプロセス所有者のユーザー名を追加します。
-v: 詳細モード。出力は ps コマンドの出力に似ており、PID、USER、COMMAND などの多くのフィールドが含まれます。カーネルによってアクセスされる場合、PID は kernel です。-V はバージョン番号を出力します。
-4: IPV4 ソケットを使用します。-6 と一緒に使用することはできません。-n の tcp および udp 名が存在する場合にのみ無視されます。
-6: IPV6 ソケットを使用します。-4 と一緒に使用することはできません。-n の tcp および udp 名が存在する場合にのみ無視されます。
- すべてのオプションをリセットし、シグナルを SIGKILL に設定します。

パラメータ

ファイル: ファイル名、または TCP または UDP ポート番号を指定できます。

使用例:

ファイルを使用しているプロセスに関する情報を表示する

このコマンドはアンマウント時に非常に便利で、このデバイスを他に何が使用しているかを調べるのに使用できます。

$ フューザー -um /dev/sda2 
/dev/sda2: 6378c(クワイエットハート) 6534c(クワイエットハート) 6628(クワイエットハート) 
6653c(静かな心) 7429c(静かな心) 7549c(静かな心) 7608c(静かな心)

Readmeファイルを開くプログラムを終了します

ここでは、殺害する前に確認を求められます。どのプロセスが終了されるかがわかるように、-v を追加するのが最適です。

$ フューザー -m -k -i リードミー

TCPポート80を使用するプログラムを確認する

$fuser -v -n tcp 80 または $fuser -v 80/tcp

異なるフューザー信号の適用

fuser に認識されているシグナルを一覧表示するには、-l パラメータを使用します。

[root@_mongodb_117 ~]# フューザー -l
HUP INT QUIT ILL TRAP ABRT IOT バス FPE KILL USR1 SEGV USR2 パイプ ALRM TERM
STKFLT CHLD CONT STOP TSTP TTIN TTOU URG XCPU XFSZ VTALRM PROF WINCH IO PWR SYS
未使用

fuser は、デフォルトで -k パラメータによって送信される SIGKILL の代わりに、指定されたファイルにアクセスしているプロセスに既知のシグナルを送信できます。たとえば、プロセスを一時停止したいだけの場合は、HUP シグナルを送信するだけで十分です。

[root@_mongodb_117 ~]# fuser -v /root/install.log

ユーザープロセスID権限コマンド

 /root/install.log: ルート 3347 f.... 末尾
[root@_mongodb_117 ~]# fuser -k -SIGHUP /root/install.log
 /root/インストール.log: 3347
[root@_mongodb_117 ~]# fuser -v /root/install.log

/etc/passwd ファイルを使用してローカル プロセスのプロセス番号を一覧表示するには、次のように入力します。

フューザー /etc/passwd

/etc/filesystems ファイルを使用するプロセスのプロセス番号とユーザー ログイン名を一覧表示するには、次のように入力します。

fuser -u /etc/ファイルシステム

要約する

Linux の fuser コマンドの詳細な使用法に関するこの記事はこれで終わりです。Linux fuser に関するその他の関連コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • LinuxシステムでFuserコマンドを使用する方法

<<:  MySQL 条件付きクエリと使用法および優先順位の例の分析

>>:  ランダム点呼 Web ページを実装するための JavaScript

推薦する

Docker は次の「Linux」になれるか?

Linux オペレーティング システムは過去 20 年間にわたってデータ センターに革命をもたらし...

Dockerコンテナがホストポートにアクセスできない場合の解決策

最近、仕事中に問題が発生しました。Docker コンテナがホストの redis にアクセスできず、t...

Mysql SQL ステートメントのコメント

MySQL SQL ステートメントにコメントを追加できます。MySQL SQL ステートメントのコメ...

HTMLとリソースがどのように読み込まれるかを理解します

このブログのすべてのコンテンツは、クリエイティブ コモンズ ライセンスの下でライセンスされています。...

Docker-compose ネットワークの詳細な例

今日は Docker でのネットワーク設定を試し、後で忘れないようにプロセスを記録しました。 (シス...

ゲームの Node.JS バージョンを作成する方法

目次概要ビルドプロセス関連APIリードライン基本的な使い方チョーククリア手順に関する追加情報完全なコ...

Linuxテキスト処理ツールの詳細な説明

1. /etc/passwdファイル内のデフォルトシェルが/sbin/nologinではないユーザー...

Linux で 1 つのファイルの内容を別のファイルの末尾にコピーする

問題の説明:たとえば、ファイル 11 の内容は次のとおりです。こんにちはファイル22の内容は次のとお...

Django2.* + Mysql5.7 開発環境統合チュートリアル図

環境: 10.12 の新機能Python 3.6 MySQL 5.7.25 の場合ジャンゴ 2.2....

MySql の 4 つのトランザクション分離レベルについて簡単に説明します。

分離レベル:隔離はあなたが考えるよりも複雑です。 SQL 標準では 4 つの分離レベルが定義されてお...

MySQLの外部結合と内部結合クエリの違い

外部結合の構文は次のとおりです。フィールド名を選択FROM テーブル名 1 LEFT|RIGHT|F...

Python Django アプリケーションを Docker 化する方法

Docker は、開発者やシステム管理者がアプリケーションを軽量コンテナとして構築およびパッケージ化...

MySQLはinit-connectを使用してアクセス監査機能の実装を増やします

まず init-connect を通じて mysql 接続を初期化し、次にインスタンスに接続する必要...

HTML コード例: ハイパーリンクの詳細な説明

ハイパーリンクは、Web サイト上のすべてのページがハイパーリンクで接続され、ページ間を移動できるた...

iframe の src を about:blank に設定した後の詳細

iframe の src を 'about:blank' に設定した後、"...