ユーザーのcwdをrootに強制変更する

ユーザーのcwdをrootに強制変更する

cwdを設定できるようにユーザープロセスを変更したいと思います。

関連性があり、中学校この質問にはアンマウントしたいファイルシステムがありますが、ユーザーはbashプロセスを使用してその上に座っています。そのユーザーのプロセスを終了したくありませんが、ディスクがアンマウントされたときにプロセスを... / tmpにスムーズにリダイレクトしたいと思います。

私は明らかにルートです。

ベストアンサー1

ルートの有無にかかわらず、プロセスの外部で作業ディレクトリを変更する方法はありません。これは被害者プロセスに大きな干渉を引き起こし、対応するAPIはありません。

これで、汚いトリックを使用することができます。その1つは、デバッガをターゲットプロセスに接続して強制することですchdirスタックオーバーフローに関するこの質問。一部のオペレーティングシステムでは、これらのタスク(疑わしいプロセスへのシステムコールの挿入)を実行するための追加のAPIを提供する場合があります。

誰かからファイルシステムを再インストールするという目標は、技術的にハッキングしても基本的に絶望的です。プロセスが「古い」インストールでファイル記述子を開く可能性が高く、移植可能な方法はありません。正しく再インストールする方法 - そのファイルがまだ存在していても、「新しい」インストールのファイルに追加します。
理論的に可能なように見えるのは、メンテナンスを妨げないように、目的のプロセスを休止状態にすることです。しかし、特に一般的なファイルだけでなく、ネットワークソケットを考慮すると、多くの問題があります。 (望むよりこれは別の質問ですいくつかの興味深い点。 )

簡単に言えば、礼儀正しく(猶予期間がある)ことをお勧めし、任意のプロセスでゲームをプレイすることで意図しない結果が発生する可能性があるかどうかわかりkillません。cwd

おすすめ記事