[Ubuntu] LVMフォーマットで間違って移動したディレクトリを復旧 | Subaru's Husband

Subaru's Husband

python、linux、バイクなんかのネタを書きます。
一応security業界でご飯を食べてます。
備忘録がメインだと思うので、未来の自分が助かれば最高。

root権限で.を打ち忘れて/下すべてを/etc/apache2/ssl/に移動してしまいました。
うわーやっちまった。
ちゃんと復旧できたのでその手順をのせときます。
まず、Ubuntu10.04のCDからLiveCDとして立ち上げます。
UbuntuはデフォルトでインストールするとファイルシステムがLVMなので簡単にマウントできません。
そこで下記の端末立ち上げてコマンドをうちます。

$ sudo apt-get install lvm2  ※LiveCDにはLVMを操作するモジュールがないのでインストール
$ sudo lvm vgscan
$ sudo lvm vgchange -a y

そうするとLiveCDのファイルマネージャーからHDDがマウント出来るようになります。
そして、間違って移動したファイルを
cp -Rap 移動したディテクトり 元に戻したいディレクト
でコピーします。
ここで大事なのが元のオーナー、属性、権限を可能なかぎり保持する-apオプションです。
-aだけでもいいかもしれないけどpもつけました。
(mvでもいいですが、取り敢えずコピーで行きます。問題なければ元のディレクトリを削除して下さい。)

後はLiveCDを取り出して再起動で無事起動しました。
無駄な作業で半日潰れちゃった。