/usr
誤ってディレクトリ名を/usr_bak
。
私はそれを再度変更したかったので、システムがコマンドを見つけることができるように/usr_bak/bin
パスを追加しました。$PATH
sudo
しかし、今ではsudo mv /usr_bak /usr
エラーが発生します。
sudo: error while loading shared libraries: libsudo_util.so.0: cannot open shared object file: No such file or directory
システムを再インストールする以外に名前を変更する方法はありますか/usr_bak
?/usr
ベストアンサー1
すでにルートパスワードを設定しているので、Ubuntuにデフォルトでインストールされているとsu
を使用してください。必要なbusybox
すべてのsu
ライブラリがあります/lib
。 Busyboxは静的にリンクされたユーティリティのコレクションなので、ライブラリがなくても問題はありません。する:
su -c '/bin/busybox mv /usr_bak /usr'
(Busybox自体にはsu
小さなプログラムがあります/bin/busybox
が、バイナリはsetuidではないため、rootとして実行しないと機能しません。)
ルートパスワードがなければ、おそらくGillesのソリューションを使用することがここで使用されます。(Gillesはこれがsudoなどのsetuidバイナリでは機能しないと言います)、再起動してGRUBメニューを編集してLD_LIBRARY_PATH
またはinit=/bin/busybox
カーネルパラメータで起動し、フォルダを再度移動します。