鈴木うどんの横須賀おもしろ生活

撮った写真や思ったことや技術ネタなど。出来るだけ大きなディスプレイで見ると良いと思う。ここでの発言は個人の見解であり、所属する組織の公式見解ではありません。

Linux の ext4 ファイルシステムで間違って上書きしたファイルを復旧させた

結論


ext4magic 

% ext4magic “デバイス名に” -r -a “このunixtimeから” -b “このunixtimeまで存在していた” -f “このファイル名のファイルを復旧する”


/dev/md0 20:0020:30 udonchan/backup.tar 
% ext4magic /dev/md0 -r -a $(date -d "-1day 20:00 +%s") -b $(date -d “-1day 20:30 +%s) -f "udonchan/backup.tar"


 OSX  ~ 


~ 
% tar cf -C /Users - $USER_NAME | ssh $SERVER_IPADDR "cat > backup.tar"

OSXsshnetatalk
tar cf /$MOUNT_POINT/backup.tar .ssh
   ^^^

cztypo
% ls -la backup.tar
-rw-r--r-- 1 udonchan udonchan 0 1227 20:42 backup.tar
                              ^^^
            //_
              ,", ‐=、:7,=ニー-- ,,_
   マジで!?   /〃 o l,〃o. l.l: : : : : :`ヽ、
               /::,.-l.゙-゙ムl゙ー゙-"'''ー、: : : : ::ヽ
           l>ゞ、,,ヽ〈;;;;;ノ==二二  ` 、: : : :
,,-"|   ∧  〈 ̄ 二二 ` ./ 二-二"、   ヽ: : :
.  ! ./  ヽ、ヽ、__,,__  /__ , ―'─  `ヽ、  !: :
   レ'       ∨   `y'"  , -、 r― 、  !  l: :
                |  /   l l   ヽ l  l: :
              ,.l、,,!,   り,,,,,,, ノ ./ /: :
          rー 、_l_  `ー' ̄   `l_/ /: : :
            \   ̄ ` ー----‐‐'  /: : : :

/homereadonly
% sudo mount -o remount,readonly /home


それからどうなった

  1. 慌ててfsをreadonlyにしたが途方にくれる
  2. google先生ext4 restore delete files などのキーワードで検索すると最近ではext4magicがイケてるとわかる
  3. apt-get install ext4magic する
  4. man ext4magicするが酔っぱらってるし英語だしでよくわからない
  5. ext4magic /dev/md0 -f "udonchan/backup.tar" するといくらか inode 拾えることがわかるが酔っぱらってて(ry
  6. ext4magic /dev/md0 -r -f "udonchan/backup.tar" すると0バイトのbackup.tarできたよー\(^o^)/
  7. あきらめて寝る(これがよかった)
  8. 起きたら頭回ってなんとかなった

教訓

  • /home を分離しておいて本当によかった
  • お酒飲みながら大事な作業するのはやめた方がよい