web-dev-qa-db-ja.com

誤ってファイルシステムをmvで台無しにした-GrubRescue>

私は非常に経験の浅いそれほどパワーユーザーではないということから始めましょう。昨夜、ディレクトリ内のすべてのファイルを別の場所に移動しようとしましたが、誤ってこれを実行しました。

mv stuff/*/home/user /ダウンロード

SSH経由でリモートVMに接続し、そのコマンド以降、すべてがクラッシュして書き込みを開始しました。ターミナル上のコマンドは認識されず、ls、cd、nothing、およびコンソールの左側の部分。通常、次のように表示されます。

ディミトリス#> _

ただになっていた

#> _

マシンを再起動すると、起動します

グラブレスキュー> _

first pic

lsを試しましたが、hd()sが3つあります。

hd(0)、hd(0、msdos1)、fd(0)

  • 最初のものは認識されないファイルシステムを持っています(おそらく私がすべてを/ home/user/Downloadsに移動したので私が台無しにした通常のhd)
  • 2番目のものにはいくつかのディレクトリがあります: second pic
  • 3番目の最初のセクターは読み取ることができません。

最後の変更を元に戻すために私にできることはありますか?それとも致命的な混乱ですか?

VMを破棄して再作成するだけで問題ありませんが、/ var/www /ディレクトリを失いたくありません。

2

基本的に、起動に必要なすべてのファイル(たとえば、... /boot)を移動したため、現在のマシンは起動できる状態ではありません。しかし、他の人はそうです。

何が行われたかがわかっているので、マシンの以前の状態を復元できる場合があります。 Ubuntu Live ISOで起動するようにVM)を構成し、buntuを試すを選択して、「混乱した」パーティションを手動でマウントします。

# Create mount points (home only if necessary).
Sudo mkdir /mount/old /mount/old/home

# Mount the former / partition on /mount/old.
Sudo mount /mount/old /dev/sdaX # sdaX being your destroyed / partition.

# Mount the former /home partition (if you have one) on /mount/old/home.
Sudo mount /mount/old/home /dev/sdaY # sdaY being your former /home partition, if necessary.

パーティションに関する詳細情報を取得する場合は、Sudo fdisk -lと入力します。これにより、仮想ドライブのパーティションスキームが得られます。ファイルシステムとサイズに従ってパーティションを認識してみてください。ほとんどの場合通常の場合、/パーティションは大きなext4パーティションです。 /home/と同じパーティションを共有している場合は、以下のコマンドからそれを削除してください。

そこから、/mount/old/mount/old/homeの変更を元に戻し、次にumountして、仮想ドライブで再起動します。 umount- ingの前に、/mount/old/var/wwwまたは/mount/old/home/user/Downloads/var/wwwに移動してデータを取り戻すこともできます。

# Find all files owned by root in the former Downloads directory, and move them back to the root (mounted on /mount/old)
Sudo find /mount/old/home/user/Downloads -type d -maxdepth 1 -user root -exec mv {} /mount/old \;

# Un-mount everything.
Sudo umount /mount/old/home /mount/old

# Power off! Remove the ISO and power the machine back on.
Sudo poweroff

これは最も明らかな解決策のようですが、GRUBの構成が最近の変更を処理できるかどうかはわかりません。あなたはまだそれを試すことができます!

1
John WH Smith

VMのUbuntuは役に立たないと思います。また、Ubuntuを再インストールすることをお勧めします。ただし、その前に、VMのハードディスクを別の方法で読み取ることができます。

ここ リンク でその方法を確認し、ファイルを確認してください。

「または、まったく新しいウィンドウVMを作成し、それに2番目のディスクとしてvmdkを追加することもできます。」

あなたが探しているフォルダ:/ var/www /それは/ home/user/Downloadsにあったと思います

0
Tal

私はちょうど同じような問題を抱えていました!私はそれを修正することができました。私はUbuntu16.04LTSを使用しています。

私がしたことは:私が/ Downloadsdirにいる間Sudo mv / /optでした。しかし、ファイルがビジーであるなどの理由でいくつかの例外を除いて、すべてのルートフォルダを/ opt/*に移動するように機能しました。

その後すぐに、UIとcmdで、>ls'ls' comand is not definedなどの不具合が発生し始めました。

新しいUbuntuUSBスティックから起動し、try Ubuntu w/o isntallationを選択し、ターミナルに移動し、次に/media/<YOUR_HARD_DRIVE_ID>、次にsmth likeSudo mv /media/<YOUR_HARD_DRIVE_ID>/opt/* /media/<YOUR_HARD_DRIVE_ID>/の順に移動しました。

お役に立てば幸いです

0
shershen