unix - 誤ってルートの下のすべての項目を/ oldに移動しました。 - Solaris 10

unix - 誤ってルートの下のすべての項目を/ oldに移動しました。 - Solaris 10

タイトルが示すように、Solaris 10システムでは、ルート(/)の下の重要なすべてまたはほぼすべてが/oldに移動しました。これで、コマンドを実行しようとしたときに発生する一般的なエラーは次のとおりです(Cannot find /usr/lib/ld.so.1変更$PATHおよび変更を試みてエクスポートしますが、実際のライブラリパスは変更されないようです)。昨日は役に立つものをほとんど見つけましたが、おそらくSolaris 10で実際にライブラリパスを変更できるものが見つかりませんでしたが、それ以降は実行できませんでした。$LD_LIBRARY_PATH$LD_LIBRARY_PATH_64$LD_RUN_PATHcrleCannot find /usr/lib/ld.so.1

Linuxのルートや/usr/binのリカバリのヒントなどがたくさん見つかりましたが、Solaris 10/Unixに関する情報は豊富ではなく、非常に希薄です。

cp実行できません。また、別のセッションを使用してコンピュータにログインすることもできません。まだ実行中で利用可能なセッションがありますが、ウィンドウがブロックされました。すでに Solaris ブート CD と USB ドライブの Linux ディストリビューションを使用するソリューションについて議論しています。我々は、ハードドライブディスクを別のラックに切り替えるソリューションについてすでに議論しています。lnmkdirmvCannot find /usr/lib/ld.so.1while true; do date; echo hej 1234567; done

この/.../static/.../mvソリューションは正常にテストされていません。

まだ利用可能なコマンドは次のとおりです(利用可能なコマンドがさらにあります):echo、、、、、、、、、。<>>>|pwdcd

ディレクトリやフォルダなしで作成する方法はありますかmkdirechoand>またはechoandを使用して>>回復する方法はありますか/usr/lib/ld.so.1/usr/lib/ld.so.1コマンドが機能するために何を復元する必要があるかを知っています。

読んでくれてありがとう、良い一日を過ごしてください=)

ベストアンサー1

ルートとしてシェルを実行しなくなった場合は、リカバリメディアで再起動する必要があります。ルートファイルシステムが読み取り/書き込みでマウントできる限り、どのような方法でも可能です。

それでもrootでコマンドを実行できる場合は、すべて正常です。LD_LIBRARY_PATH基本システムツールで使用されるライブラリを含むディレクトリを指すように環境変数を設定します。少なくとも/usr/lib32ビットSolarisでは、/usr/lib/6464ビットSolarisにも別のディレクトリがある可能性があります(今はSolaris 10にアクセスして確認できません)。実行可能ファイルを実行するには、前に次を付けます。ランタイムリンカー:(/usr/lib/ld.so.132ビット実行可能ファイルの場合)または/usr/lib/64/ld.so.1(64ビット実行可能ファイルの場合) - これで、次の方法/oldで回復できます。

LD_LIBRARY_PATH=/old/usr/lib
export LD_LIBRARY_PATH
/old/usr/lib/ld.so.1 /old/usr/bin/mv /old/* /

おすすめ記事