「/ usr / share」フォルダーを誤って削除した


16

システムは起動しません。rm - R誤って使用してしました。システムを回復するにはどうすればよいですか?


/usr/shareフォルダーを削除しましたか..試してみてください..ライブセッションでログオンします.. /usr/shareライブセッションからルートパーティションにフォルダーをコピーして貼り付けます/usr/share
PRATAP

1
@PRATAPが提案したものを使用すると、ログインし直すことができますが、多くのユーザープログラムはそこにアプリケーションデータを保存するため、「ライブ」(インストールメディア)システムで使用されるプログラムのみを修正します。その後、install --reinstall他のプログラムが必要になります。または、「他の何か」を使用して再インストールするだけで、フォーマットはありません。インストールされたアプリをメモし、システムディレクトリを消去してインストールし、追加プログラムを再インストールします(Ubuntuリポジトリの場合)。とにかく、このオプションはフォールバックになる可能性があります。おそらく、最初に自分で修正しようとするとさらに学習するでしょう。バックアップは常に復元されます。
guiverc

-> / usr / shareのrm -RだけでNOTHINGが削除されます。通常のユーザがそれを削除することはできませんので、内容は、ルートによって所有されている
Rinzwind

@Rinzwindもしそうなら、なぜシステムが読み込まれていないのですか?ルートを取得して修正するにはどうすればよいですか?
ムーヴル

おそらくしましたsudo rm -Rか?n0rbertが投稿した回答は私には良さそうです。それが道です
Rinzwind

回答:


48

にファイルがあるすべてのアプリケーションを再インストールする必要があります/usr/share

  1. 以下からのブートシステムリカバリモードrootプロンプト

  2. でrootfsを読み書きモードに再マウントしますmount -o rw,remount /

  3. イーサネットインターフェースを起動し、DHCPサーバーからIPアドレスを取得しますdhclient enp0s3ip aまたはの正しいインターフェース名を確認しますifconfig -a)。

  4. DNSサーバーを指定する

    rm /etc/resolv.conf
    echo "nameserver 192.168.1.1" > /etc/resolv.conf
    

    192.168.1.1あなたのゲートウェイ/ルーターに変更)

  5. ファイルdpkgが見つからないため、パッケージを修正する必要があり/usr/share/dpkg/cputableます(そうしないと"E: error reading the cpu table"、apt / apt-getコマンドで直面することになります)

    wget http://mirrors.kernel.org/ubuntu/pool/main/d/dpkg/dpkg_1.19.0.5ubuntu2.1_amd64.deb
    dpkg -i dpkg_1.19.0.5ubuntu2.1_amd64.deb
    

    またはキャッシュからインストールする:

    dpkg -i /var/cache/apt/archives/dpkg_*.deb
    
  6. パッケージキャッシュの更新:

    apt-get update
    
  7. 不可欠なコンポーネントを再インストールする

    apt-get install --reinstall debconf linux-base
    mkdir /usr/share/python
    apt-get install --reinstall python2.7-minimal python3-minimal
    
  8. 次に、以下のワンライナーを使用します。

    apt-get install --reinstall $(dpkg -S /usr/share/ | sed 's/,//g' | sed 's/: \/usr\/share//g')
    

    上記:

    • dpkg -S /usr/share/ コンマ区切りのパッケージのリストを表示します
    • sed 's/,//g' -コンマを削除します
    • sed 's/: \/usr\/share//g'- : /usr/share最後に削除します

    この部分は、一部のパッケージに関するメッセージで失敗する場合があります。たとえば、VMで問題が発生したbsdmainutilsため、次のように再インストールしました。

    dpkg -i /var/cache/apt/archives/bsdmainutils_*.deb
    

    そして、上記のワンライナーを再実行しました。

  9. 壊れたパッケージを修正

    dpkg --configure -a
    apt-get install -f
    
  10. 最後に/etc/resolv.confリンクを修正

    rm /etc/resolv.conf
    ln -s /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf
    
  11. リブート。

注:結果の固定システムには、実行中sudo apt-get checkまたはの間に問題は表示されませんsudo debsums --all --changed


このコマンドはライブセッションから使用されますか?
PRATAP

リカバリモードからの@PRATAPで十分です。
N0rbert

OK、それは良いことですが。削除した後でも/usr/share、grubは正常に動作し、grubメニューを表示しますか?私はそれを削除し、私の実用的なPCで見る必要があると思います..素敵な答え..ありがとう..
PRATAP

1
これをVMでテストしました。ほとんど機能するソリューションです。
N0rbert

1
@ N0rbert助けてくれてありがとう、本当にうまくいく!
ムーヴル

2

簡単な回答:前の回答で示唆されたように、アプリを再インストールすることはできません。

ただし、その前に、ドライブを別のコンピューターにマウントし、ext3 / ext4で使用可能な削除取り消しユーティリティをテストしました。Googleでのクイック検索は、次のものを指します。

extundelete:http ://extundelete.sourceforge.net/

easeus:https ://www.easeus.com/resource/drive/ext3.htm

TestDisk:https : //www.cgsecurity.org/wiki/TestDisk

ガイド方法:http : //translatedby.com/you/howto-recover-deleted-files-on-an-ext3-file-system/original/


私が提案しtestdeleteたp:私は一度経験しているので
αғsнιη
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.