■掲示板に戻る■ 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 でシングルユーザに落ちたんだけど、
なにかいい方法はない?

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

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

84 :名無しさん@お腹いっぱい。 :2001/07/25(水) 17:34
みんな、間違えてファイルやディレクトリ消したことどれくらいある?
頻度とか、ファイルの大きさとか。
俺は前に一度、700MBぐらいのmp3データのディレクトリを消したことある。


新着レスの表示

名前: E-mail (省略可) :

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