問題タブ [fuser]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - 「fuser -k」に相当するWindowsバッチは何ですか"?
フォルダーにアクセスしているプロセスを強制終了する Unix シェル スクリプトがあります。
これに相当する Windows バッチ スクリプトはありますか? TASKKILL のことは知っていますが、必要なことができるかどうかはわかりません。これが Windows シェルで可能かどうかは誰にもわかりませんか?
bash - fuser bash スクリプトが予期しない出力を返す
エコー $? フューザー プロセスがマウントにアクセスしているため、「1」が返されます。「マウントは使用中です」とエコーするのではなく、「マウントにアクセスしているプロセスはありません」とエコーします。構文以外にこの逆の動作を引き起こしている原因はわかりませんが、完全に間違って構築している可能性があります。
linux - 特定の TCP ポートを開いているプロセスを特定するにはどうすればよいですか?
私は通常、次のように特定のtcpポートを開くpidを確認するためにfuserコマンドを使用します
組み込み Linux を実行するリファレンス ボードがあります。ssh 接続用に 22 の tcp ポートを既に開いています。ただし、定着器は 22 ポートに関する出力を何も表示しません。そこで、別の ssh デーモンで 322 ポートを開いてから、fuser を使用して pid をチェックしようとしましたが、問題なく動作しました。
どのプロセスが tcp 22 ポートを開いているかを調べるにはどうすればよいですか。(ボードでは、lsof コマンドは使用できず、.. netstat には -p オプションがありません。)
linux - SSHFS を使用した Atom パッケージ... fusermount: マウントに失敗しました: 操作は許可されていません
SSHFS 経由でリモート ファイルシステムをマウントし、ツリー ビューで表示しようとする Atom パッケージを作成しています。マウントを成功させるのに問題があります。具体的には、ターミナルで次のように入力すると、ユーザー「wagoodman」として次のように入力します。
これはうまくいきます!つまり、ssh 経由でローカルホストから /tmp ディレクトリを /home/wagoodman/.atom/mounts/localhost/tmp に問題なくマウントできます。
ただし、Atom パッケージ (コーヒー スクリプト) 内で同じタスクを実行しようとすると、エラーが発生して失敗しfusermount: mount failed: Operation not permitted
ます。アトムが同じユーザー (wagoodman) で実行されていることを確認しました。これは、システム上の sshfs バイナリに対して child_process.exec を呼び出すことによって行われます (必要なパラメーターを使用)。
興味深いことに注意してください。同じことを行うコマンドライン経由で呼び出される小さな coffescript を作成すると (child_process.exec を sshfs に呼び出します)、スクリプトは正常に動作します。これはかなり当惑します。
ここに表示されている問題を再現するために、小さな Atom パッケージでレポを作成しました: https://github.com/wagoodman/fusermount-issue
Dev モードでパッケージを atom に追加し、Ctrl+Alt+O を押して問題を確認します。実行coffee test.coffee
して動作を確認します。
test.coffee
注:環境内およびlib/fusermount-issue.coffee
環境(ユーザー、マウントポイントなど)のパラメーターを微調整する必要があります。
linux - Linux シンボリックリンクが使用されているかどうかを確認する方法は? (未使用のシンボリックリンクを削除)
fuser は、元のファイルが使用中の場合にのみ表示できます。
元のファイルを呼び出す SYMLINK が使用されている場合、フューザーは表示されません。それが問題です。シンボリックリンクが使用されておらず、削除できるかどうかはわかりません。
私は2つのプロセスを開始しました(24261は元のファイルを開き、24262はシンボリックリンクを開きました):
どちらの場合も、fuser はシンボリック リンクと元のファイルが使用中であることを通知します (コマンドごとに 2 つのプロセスがあります)。
しかし、最初のプロセスでシンボリックリンクが使用されていないことがわかっています。削除することもでき、最初のプロセスには影響しません。
パッケージが使用されていない場合、「gcc」パッケージを削除したいとしましょう。
元のファイルは「libgcc」パッケージから取得されます。
シンボリックリンクは「gcc」パッケージからのものです:
symlink だけを含む 'gcc' パッケージを削除すると、2 番目のプロセスに影響します。シンボリックリンクが使用されていないかどうかを確認するにはどうすればよいですか?
私の場合、「ps -ef」は、コマンドを使用したことを示しています。
したがって、ps はシンボリックリンクが使用されたことを伝えることさえできません。
Linuxの達人はいますか?
EDITED:cwdをチェックする部分的な解決策があります-現在の作業ディレクトリ:
したがって、ここからパス「/usr/lib/gcc/x86_64-redhat-linux/4.4.4」が表示され、ps からファイル名を取得できます。
次の場合、これは機能しません。
/rootのcwdを示していますが、シンボリックリンクはスクリプト/プログラム内にあります。そのため、/usr/lib/gcc/x86_64-redhat-linux/4.4.4/libgcc_s.so の ps chill プロセスを確認する必要があります。
パッケージの削除を自動化したい場合 (パッケージが使用されていない場合)、これは非常に混乱を招きます。
誰かがこれのより簡単な方法を見ることができれば素晴らしいでしょう。また、使用中のシンボリックリンクの検出に cwd および ps 子プロセスを使用することの正確性を誰かが確認できる場合。
script.sh がバイナリ ファイルの場合はどうなりますか? 「ps」または cwd で完全なシンボリック リンク パスを表示することはできますか?
powershell - Powershellで同等のフューザー?
ディレクトリを削除したいのですが、プロセスがそれを使用しています。
エクスプローラーは、ディレクトリが使用中であると述べています。に相当する Windows Powershell はありfuser
ますか?
これはpowershellの質問であることに注意してください。GUI アプリを起動したくありません。