■掲示板に戻る■ 1- 最新50

ディレクトリ消しちゃった!

1 :名無しさん@お腹いっぱい。 :2001/07/23(月) 12:01
FreeBSD 使っています。
大事なデータの入っているディレクトリを消してしまった
( rm -r /hoge)んですが、復活する方法ありますか?

http://www.jp.FreeBSD.org/search.html

から、

FreeBSD-users-jp や FreeBSD-tech-jp のメーリングリスト
を検索してみたけど、disklabel の復旧はできても、
ファイルやディレクトリの復旧は無理みたいです。

とりあえず、shutdown now でシングルユーザに落ちたんだけど、
なにかいい方法はない?

これからはバックアップきちんと取るよ。

2 :名無しさん@お腹いっぱい。 :2001/07/23(月) 12:28
平和な月曜日だねぇ。

3 :名無しさん@お腹いっぱい。 :2001/07/23(月) 12:31
ぽかぽか陽気。
つか暑いな。

4 :名無しさん@お腹いっぱい。 :2001/07/23(月) 12:32
今日も暑いねぇ。

5 :4 :2001/07/23(月) 12:32
>>3
かぶっちゃったねぇ。

6 :名無しさん@お腹いっぱい。 :2001/07/23(月) 12:34
ぽかぽかどころじゃねーだろ! 氏ぬよ。。。

7 :名無しさん@お腹いっぱい。 :2001/07/23(月) 12:34
それにしても1はアホだねえ

8 :名無しさん@お腹いっぱい。 :2001/07/23(月) 12:34
>>7
わざわざageるオマエモナー

9 :名無しさん@お腹いっぱい。 :2001/07/23(月) 12:35
>>1
dd でディスクの中身吸い出してゆっくり眺めてみたら
どうだろうかねぇ。

10 :名無しさん@お腹いっぱい。 :2001/07/23(月) 12:36
御愁傷様。バックアップはちゃんととろうね。

11 :名無しさん@お腹いっぱい。 :2001/07/23(月) 12:37
あきらめるしかないんじゃないかねぇ。

12 :名無しさん@お腹いっぱい。 :2001/07/23(月) 12:40
アイス食べたいなぁ

13 :名無しさん@お腹いっぱい。 :2001/07/23(月) 12:41
マターリスレになっちゃったねぇ。

14 :名無しさん@お腹いっぱい。 :2001/07/23(月) 12:43
マターリでいいんじゃないんだろうかねぇ

15 :1 :2001/07/23(月) 12:49
umount /data

ってやって、/hoge を含むパーティションを
とりあえず、アンマウントした。
softupdate かけて使っていたので、ちょっと心配。

なんとかなるまで、お昼ご飯たべられない。
お腹減った。

>9
dd if=/dev/ad1s1a of=/usr/tmp/diskimage

でいい?
メールデータと Windows の exe ファイルが少し。

16 :名無しさん@お腹いっぱい。 :2001/07/23(月) 12:53
とりあえずそれでやってみればいいんじゃないだろうかねぇ。

17 :>>15 :2001/07/23(月) 12:54
ちゃんと umount できたなら softupdate は関係ないんじゃないかねぇ。

18 :名無しさん@お腹いっぱい。 :2001/07/23(月) 12:58
Windows の exe 復旧するのは難しいんじゃないかねぇ。

19 :名無しさん@お腹いっぱい。 :2001/07/23(月) 12:58
ファイルシステムの構造がわかって勉強になるかもーよ。
ちなみにオレはわからない。

20 :名無しさん@お腹いっぱい。 :2001/07/23(月) 12:59
ま、失敗を教訓にすればよし。

21 :1 :2001/07/23(月) 13:01
>>9 >>16
ありがとう。
今、試してみてる。でも、3GB ぐらいある。

はやくマターリしたいなぁ。
俺もあほだなぁ。
みんなも気をつけてね。

22 :名無しさん@Emacs :2001/07/23(月) 13:07
>みんなも気をつけてね。
しねーよ

23 :名無しさん@お腹いっぱい。 :2001/07/23(月) 13:31
まぁまぁ、マターリしようよ。
でも上げないで欲しいなぁ。

24 :名無しさん@お腹いっぱい。 :2001/07/23(月) 13:35
定期的にこの手のスレが立つよね

25 :1 :2001/07/23(月) 13:40
ファイルを不用意に削除しないために、

1. rm -i hoge ( rm -i -r /hoge) とする。
2. パーミッションの設定をきつくする。
3. root は必要な時だけ。

削除してしまった時のために、

1. バックアップをとる。

ほかに何かありますか?
別の人に管理してもらえっていうのはなしで。

暑ーい外から戻ってきて、ぼーっとしてやっちゃったよ。
空調のきいた部屋で仕事できる人いいなあ。

PC はもちろん、涼しいところにあるよ。

26 :名無しさん@お腹いっぱい。 :2001/07/23(月) 13:55
あげるなよぉ
rm -i なんて打つのは面倒だから、aliasをふっておけばいいんじゃないかなぁ

27 :9 :2001/07/23(月) 14:02
で、結局 3GB のイメージからデータサルベージできたのかねぇ。

28 :うひひ :2001/07/23(月) 14:09
>>25
aliasの-i はなぁだいたい\rmに慣れるから無意味になってるby(うひひ
削除ではなくごみ箱ポイのコマンドを別に作るのが吉じゃない
最近はHDD安いからごみ箱用にマウントかけてもいいby

同じ理由でバックアップは別パーテーションを利用して
高速にあんちょこにとっておくと安心by

29 :1 :2001/07/23(月) 14:42
>>27
できました。

cat /usr/tmp/diskimage | jless

で見てみたら、テキストデータとバイナリらしきデータが見えた。
テキストの部分は、普通に読めた。

予備の HDD があるので、今から増設してそこに書き込もうと思います。
新 HDD に3GB のパーティション(/hogehoge)作って、
取りあえず、

cp  /usr/tmp/diskimage  /hogehoge/

でいいのでしょうか。


次は、データの切り分けかな。

>>うひひ さん。
ありがとう。
参考にします。
ごみ箱ポイのコマンドって、

gomi hoge



mv -f hoge /gomibako/

みたいな動作して、rm の代わりに gomi を手に覚えさせるってことですか。
本当に消していいか確認してから

rm -r /gomibako/*

とか。

30 :名無しさん@お腹いっぱい。 :2001/07/23(月) 14:44
>>1
moveするディレクトリは日付から命名するようにしておいて、
古いディレクトリは削除可能なようにしておくともっとよい。

31 :名無しさん@お腹いっぱい。 :2001/07/23(月) 14:55
sage てくれってば。

俺は何も考えずに何でも cvs に突っ込むようにしてる。
いつの時点でも取り出せるから便利。
バイナリの扱いだけちょっと注意がいるが。

32 :1 :2001/07/23(月) 14:57
>>29
ごめん。長すぎた。

33 :名無しさん@お腹いっぱい。 :2001/07/23(月) 14:58
あげるなってのがわからんちん?
やれやれ夏ですなぁ

34 :名無しさん@お腹いっぱい。 :2001/07/23(月) 15:10
>>31
システム丸ごとCVSに突っ込まないだろ。。。
いくら差分しか格納しないといったって、膨大な領域が
必要になるぞ。。。非現実的。

35 :31 :2001/07/23(月) 15:42
>>34
システム丸ごとなんて言ってない。
自分で作ったテキストファイルとか、ソースコードとか、
実験用データとか、個人のメールスプールとか。

36 :名無しさん@お腹いっぱい。 :2001/07/23(月) 15:58
>>35
そんじゃ、CVSに入ってないディレクトリで、別のディレクトリ
にいるともりで rm -rf * してしまうのには無力。

37 :名無しさん@お腹いっぱい。 :2001/07/23(月) 17:26
自前バックアップなら rsync のほうがよくねーかい

38 :名無しさん@お腹いっぱい。 :2001/07/23(月) 21:06
unlink(2) が呼ばれた時に、残りのリンク数が 1 だったらファイルシステムの
特別なディレクトリに link(2) する、ってな改造をしてみたらどうだろう。

39 :名無しさん@お腹いっぱい。 :2001/07/23(月) 21:50
>>38
面白いかもね。

40 :名無しさん@お腹いっぱい。 :2001/07/23(月) 23:04
下手な小細工はするな。
自分を甘やかしちゃいかん。
何度か痛い目にあううちに、自分の打ち込んでいるコマンドの危険性を
無意識に肌で感じとれるようになる。
かもしれないのでがんばれ。

41 :40 :2001/07/23(月) 23:04
ごめん、ageちゃった。

42 :名無しさん@お腹いっぱい。 :2001/07/23(月) 23:45
>>40
何度か sage 損ねているうちに不用意な書き込みの危険性を肌で感じ
取れるようになる・・・精進しろよ。

43 :名無しさん@お腹いっぱい。 :2001/07/24(火) 00:16
>>42
カコイイ!!

44 :1 :2001/07/24(火) 00:22
>>40
ありがとう。がんばるよ。

>>42
気をつけるよ。
今度はちゃんと、sage になってる?

45 :1 :2001/07/24(火) 00:33
ごめん。書き間違えた。
40は自分ではないけど、昼間 sage 損ねたから、
気をつけるという意味。

46 :名無しさん@お腹いっぱい。 :2001/07/24(火) 01:34
freebsdださい。undeleteもできないなんて。Windows以下。
ださいのを精神論でカバーするユーザーはもっとダサい。Windowsユーザー以下。
否定できるか?

47 :名無しさん@お腹いっぱい。 :2001/07/24(火) 01:37
ゴミ箱の中がグチャグチャになるWinだって結構ダサイのだが。
まあどうでもいいや。

48 :名無しさん@お腹いっぱい。 :2001/07/24(火) 01:38
>>46
いや、その通りだと思うよ。全ての UNIX にファイル
復活機能 or ごみ箱機能がつくといいな。

49 :名無しさん@お腹いっぱい。 :2001/07/24(火) 01:40
>>47
ごみばこ?あんなのシェルの機能だろよ。
FreeBSDはファイル削除をファイルシステムレベルでロールバックできるんかよ?

50 :名無しさん@お腹いっぱい。 :2001/07/24(火) 01:43
アンデリートとロールバックは意味が違うと思われ。

51 :名無しさん@お腹いっぱい。 :2001/07/24(火) 01:44
>>50
master file tableに対するtransactionをcancelするのはrollbackである
see inside NTFS.

52 :50 :2001/07/24(火) 01:47
>>51
その記述は正しいが。何か?

53 :名無しさん@お腹いっぱい。 :2001/07/24(火) 01:49
transactionがfile deleteでそれをrollbackすることだろ?>undelete。$LOGが十分大きければ上書き消去も取り消せるぞ。

54 :名無しさん@お腹いっぱい。 :2001/07/24(火) 01:50
でよ、FreeBSDはWindowsに劣っている。結論はこれでよいか?

55 :#6411 :2001/07/24(火) 02:00
FreeBSDからはLFSが削除されているのでヘタレsage
とはいってもLFSが履歴をサポートしてるわけでもないんだが。

56 :名無しさん@お腹いっぱい。 :2001/07/24(火) 02:03
その_部分_についてはOKです。
さようなら。また明日。

57 :名無しさん@お腹いっぱい。 :2001/07/24(火) 02:24
Me やら XP やらでは、ファイルのロールバックが
できるんだっけ? よくわからんのだが、どういう仕組み?

複数のアプリが編集するようなファイルがあったとして、
hoge ver6 を ver5 にロールバックしたら、
その共用ファイルはどうなるの?

58 :名無しさん@お腹いっぱい。 :2001/07/24(火) 02:45
>>57
君はファイルの排他制御ってものをしらないのか...
UNIXなんか使うのやめたほうがいいよ。排他制御を知らない人が書いたコードはいかなる場合においても迷惑だから。

59 :名無しさん@お腹いっぱい。 :2001/07/24(火) 02:52
>>58
ずっと排他してたら他のアプリがファイルを編集できませんがな。

まともな説明ができる Win 使いを募集。

60 :名無しさん@お腹いっぱい。 :2001/07/24(火) 02:57
>>59
あのさー。inconsistentが発生して困る間はlockして、share read/write状態に戻したら、次回からはファイルキャッシュをパージして読み直すか、テンポラリファイルモードでオープンしなおすか、ファイルフォークを切り替えるか、普通するだろう?UNIXみたいにflockしかない訳じゃないんだよ。わかる?

61 :名無しさん@お腹いっぱい。 :2001/07/24(火) 02:58
さっきからFreeBSD原理主義者が必死に抵抗してるよなぁ。
きみさ、他人に視野狭窄って言われた事ないかい?

62 :名無しさん@お腹いっぱい。 :2001/07/24(火) 02:59
>>59ってのはWin32SDKを一度も読んだ事ないんじゃ?

63 :名無しさん@お腹いっぱい。 :2001/07/24(火) 03:00
>>59さんよ。君の知識水準でスクリプトやソース書くのは禁止。世に汚らしい物を解き放つ事になってUNIXのイメージが悪くなる。

64 :名無しさん@お腹いっぱい。 :2001/07/24(火) 03:00
>>60
さっぱりわからん。flock しかない UNIX しか知らんから。

>>61
んなこと言っても知らんもんは知らんがね。教えてちょ。

65 :名無しさん@お腹いっぱい。 :2001/07/24(火) 03:01
>>62
だから知らんってばさー。Windows で開発したことないよ。
Windows の素晴らしさを語ってみて。

66 :名無しさん@お腹いっぱい。 :2001/07/24(火) 03:03
いちいちひとにきくなよ。www.microsoft.comみりゃ、英文MSDNがタダで読めるだろが...

67 :名無しさん@お腹いっぱい。 :2001/07/24(火) 03:04
sysinternals.comだったかなー。undeleteのソースがおいてあるぜ。

68 :名無しさん@お腹いっぱい。 :2001/07/24(火) 03:05
>>66
ん〜、そこまでして調べるほどのことではないなぁ。
Windows で開発してないから必要なわけじゃないし。

じゃね。

69 :名無しさん@お腹いっぱい。 :2001/07/24(火) 03:08
>>68
ただの煽り厨房かい。うざい奴。しかも不勉強で、言い訳ばっかりのヴァカとはな。いつまでも進歩しないんだろう。

70 :名無しさん@お腹いっぱい。 :2001/07/24(火) 03:09
http://cocoa.2ch.net/test/read.cgi?bbs=unix&key=995637081 でいう無能者にあたるな。>>68

71 :名無しさん@Emacs :2001/07/24(火) 05:50
ごみ箱機能を作る方法発見!
まずはホームディレクトリにgomibakoディレクトリ作成。
/binに移動してvi gm。

#!/bin/bash
mv ~/gomibako

たった二行のコードを記述するだけ!
これで、これからなにかを削除する時には
gm sutetaimonoってやろう。
~/gomibakoに移動されるはず>>1

72 :1 :2001/07/24(火) 06:47
dd if=/dev/ad1s1a of=/usr/tmp/diskimage
して
cp /usr/tmp/diskimage /hogehoge/ (/hogehoge/ は別ディスク)
umount /hogehoge/
としてあります。
次どうするか、今日1日考えてみます。
今日はずっと外だから、上で教えてもらった方法ためすのは
夜になります。

>>71
ありがとう。やってみます。

73 :名無しさん@お腹いっぱい。 :2001/07/24(火) 06:48
削除する時に「gm」って「rm」と違うコマンドになってるのが
いやん。「rm」とコマンドライン引数とかがまったく同じな
やつで、/tmp/trash いかに日付ごとにディレクトリ掘って
古いディレクトリは削除するようなコマンド作って。

74 :名無しさん@お腹いっぱい。 :2001/07/24(火) 09:12
ごみ箱機能・・・このスレの事か?
なんか Linux 板よりレベルの低い連中が大集合って感じだね。
ってゆーか、Windows 板のレヴェルに近くないか?(藁

75 :名無しさん@お腹いっぱい。 :2001/07/24(火) 09:24
>>74
理由を説明せよ。俺もこれまで、2度ほど間違った削除を
やっちまったことあるので、rmをゴミ箱に移すコマンドに
置き換えるのは興味ある。

76 :名無しさん@お腹いっぱい。 :2001/07/24(火) 09:27
>>74 その程度のことをわざわざ書きこんでる時点で (以下略)

77 :名有りさん@お腹へった :2001/07/24(火) 09:36
Windows使ってても ファイル削除を行った場合に「ゴミ箱」へ
行くのはエクスプローラとか使ってる場合であって DOS窓から
delコマンド使って削除した場合はそのまま消えてしまうのでわ?

Unixの場合だって 例えばCDEなら「ゴミ箱」ってあったと思うし
他のデスクトップ環境でもあるかも知れないし

その意味では大差ない......というか Windowsの場合はGUI経由で
ファイル操作をすることが多いのに対し(まぁ人によるだろうが)
Unixの場合はターミナルorコンソールからコマンド直打ちする
ことが多いので その差が出てるちゅうことでわ?

78 :名無しさん@お腹いっぱい。 :2001/07/24(火) 09:41
  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  | KDEでマウスポチポチしてる馬鹿は死ね
  \____ _______________
        ∨
   ∬  _,,,,,,,,,,_
   ∬ (=゚Д゚=)
    ━O(∇)O)
     ○-ω-◯

79 :9 :2001/07/24(火) 13:24
>>72
UFS の書き込み処理をちょっと調べてみたが、恐らく inode の中身が
もう完全に消えちゃってるので、自動的にファイルを再構成するのは
無理だろう。
イメージデータをブロック単位で読んでいって、なんかデータありそう
な所を抜き出すしかないね。
組み合わせの数を勘定してみたらわかるだろうが、バイナリデータを
正しく復活させるのはまず無理なので、テキストファイル以外は
諦めたほうがいいと思われ

80 :ぶっちゃけた話 :2001/07/24(火) 13:26
間違えるな

81 :名無しさん@お腹いっぱい。 :2001/07/24(火) 15:40
だれも書かないからいうけど、
71 のじゃ動かないよ。

82 :名有りさん@お腹へった :2001/07/25(水) 05:24
>>81
つうか あの程度ならaliasでもいいとおもうけどねぇ
それに 自分のホームディレクトリにgomibakoってディレクトリ作っとかないと
gomibakoっつうファイルにどんどん上書きされるだけだし(w

83 :名無しさん@お腹いっぱい。 :2001/07/25(水) 15:18
rm を alias で mv で十分だろ。(w
71みたいなクソみたいなシェルスクリプトを
書くアホは逝ってよし!
しかも、動かないしよ。(w


次100 最新50
名前: E-mail (省略可) :

read.cgi ver5.26+ (01/10/21-)