rm -rf / *を実行した後の修復


8

誤っrm -rf /*てUbuntu 10.10を実行して、コマンドをすばやくキャンセルしました。私はrootではなかったので使用しませんでしたsudoが、ファイルの多くが削除されました。システムの応答が遅くなり、修正方法がわかりません。たとえば、Firefoxを再インストールすると、Firefoxの多くの問題が解決しましたが、右クリックが非常に遅いです。DelugeはCPU使用率(1コア)を100%に引き上げ続けます。シャッターも反応性の点で少し変です。

すべてを修復するために私ができることはありますか?インストールされたすべてのパッケージとUbuntuファイルを再インストールしますか?


4
バックアップと新規インストールを行うことをお勧めします:S
shroff

3
このようなコマンドを誤って実行する方法はありますか?
Ward Muylaert、2011年

@shroffそれが私の最後の手段です!GBのデータがDropboxから再度ダウンロードされることを意味し、新規インストールの実行にかかる時間は言うまでもありません
Ashfame

@Ward私はパスを編集していて、誤ってそれを実行させました
Ashfame

1
@Alin Andrei rm -rf /*は10.10に私のためにうまく走りました
Ashfame

回答:


10

私はrootではなかったので使用しませんでしたsudoが、ファイルの多くが削除されました。

ほとんどの場合、個人設定のみを削除しました。新しいユーザーを作成し、そのユーザーとしてログインし、すべて問題ないかどうかを確認します。そのはず。

これがシナリオの場合、ファイルとnot-missing-config-filesを新しいユーザーフォルダーに移動できます。


同意する。コマンドは、/に/*展開すると、/ homeディレクトリ内のファイルを削除した可能性があります/bin /boot /dev /etc /file.img /home /initrd.img /initrd.img.old /lib ...
2011年

はい、すべての設定と構成が失われました。再インストールされたfirefoxと大洪水でさえ混乱する理由がわかりません。この事件以前のように、システム全体が迅速な応答性に欠けています。
Ashfame、2011年

自宅のいくつかのディレクトリの下にある@arrangeファイルを削除したn -rスイッチがあるかどうか
思い出せない

6

このスクリプトを使用してすべてのパッケージを再インストールできます。Pythonでハッキングせずにdpkg制御メカニズムを見つけることができなかったため、少しハックです。

#!/bin/bash

for PACKAGE in `dpkg --get-selections | grep install | awk '{ print $1; }'`; do
  sudo apt-get --reinstall install $PACKAGE
done

それをファイルに保存しreinstall.shbash reinstall.shから、コマンドラインから実行して実行します。これにはしばらく時間がかかりますが、すべてが再インストールされます。


新規インストールを行っている場合は、再度インストールできます。彼らは多すぎませんでした。私はあなたの考えを理解しています。
Ashfame、2011年

2

インストールされているすべてのパッケージのバックアップを作成してから、クリーンインストールを実行してから、復元プロセスを実行できます。

まず、すべてのアプリケーションがプリインストールされているコンピューターから、インストールされているパッケージのリストを取得し、packages.txtというファイルに出力をリダイレクトします。このパッケージリストをどこかに保存して、復元プロセスで使用できるようにします。

sudo dpkg --get-selections > packages.txt

リストからすべてのアプリケーションを復元するには、3つのステップのプロセスを慎重に実行する必要があります。

sudo dpkg --clear-selections 
sudo dpkg --set-selections < packages.txt 
sudo aptitude install

リスト内のすべての新しいアプリケーションをインストールするように求められます。このプロセスで実行できるもう1つの例は、Ubuntuのクリーンインストール後にすべてのアプリケーションのベースラインを作成することです。クリーンインストール以降にインストールされたアプリケーションを削除し、まったく同じプロセスを実行すると、そのリストで定義されていないパッケージは削除されます。

sudo dpkg --get-selections > clean-install-package-list.txt
sudo dpkg --clear-selections
sudo dpkg --set-selections < clean-install-package-list.txt 
sudo aptitude install

の最初のコマンドは--clear-selections、現在インストールされているすべてのパッケージを状態にマークしますdeinstall。を使用してアプリケーションのリストを復元すると、リスト--set-selectionsから省略されたパッケージのみがdeinstall状態に残ります。Aptitudeは削除状態を尊重し、余分なパッケージを削除して、リストからのパッケージのみを残します。


1
それはおそらく私が探していたものです。私がそれを正しく理解している場合、--clear-selectionsはパッケージが不要であり、削除する必要があることを示しますが、パッケージリストを削除します。そのため、リストをエクスポートしたときとほぼ同じ構成がインストール済みとしてマークされます。一部のパッケージはすでにそこにあり(以前に削除のマークが付けられていたが、現在はそれらを必要とするようにマークが付けられています)、sudo aptitude installが最終的に保留中の処理、つまり必要な新しいパッケージを実行します。正しい?
Ashfame、2011年

0

新規インストールを実行して問題を修正しました。

提案d4n13l @、私のシステムは、応答性のヒットを取っていたし、ちょうど私のファイルがなくなっていた以上。

@Martinのアプローチは、以前インストールしていた以前のパッケージをインストールするために、新規インストールを実行した後に行うべきものだと感じています。数が少なかったので、Ubuntu Software Centerから再度インストールしました。

これを調べてくださった皆さんに感謝します。:)


それがあなたがやったことなので、あなたの答えを受け入れられた答えとしてマークすることができます。しかし、マーティンの答えがあなたに役立つなら、投票してください!
ホルヘカストロ

了解しました。答えを承認済みとしてマークしました。しかし、Martinとhhlpの回答は、困っている人にとってより役立つでしょう。
Ashfame、2011年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.