Home » FreeBSD » FreeBSD で削除出来ないファイルを削除する

現在、基本環境ではやや古めの ports スケルトンを用いていますが、以下の様なエラーで削除が完了しない場合があります。

# rm -r ports/
override r-xr-xr-x  root/wheel schg for ports/misc/compat4x/work/var/empty?
rm: ports/misc/compat4x/work/var: Directory not empty
rm: ports/misc/compat4x/work: Directory not empty
rm: ports/misc/compat4x: Directory not empty
rm: ports/misc: Directory not empty
rm: ports/: Directory not empty

rm -rf に変更しても、プロンプトが返らなくなるだけで変わりません。

# rm -rf ports/
rm: ports/misc/compat4x/work/var/empty: Operation not permitted
rm: ports/misc/compat4x/work/var: Directory not empty
rm: ports/misc/compat4x/work: Directory not empty
rm: ports/misc/compat4x: Directory not empty
rm: ports/misc: Directory not empty
rm: ports/: Directory not empty

パーミッションが許可されていても削除出来ない場合、chflags により削除出来ないフラグが設定されていることを想い出し、

ls -lo ports/misc/compat4x/work/var/
total 4
dr-xr-xr-x  2 root  wheel  schg 512 Oct  3  2004 empty

ls -lo で確認するとやはり schg フラグが付加されていました。

# chflags noschg ports/misc/compat4x/work/var/empty
# rm -r ports/

該当のディレクトリ・ファイルのフラグを no で打ち消すことで削除は可能ですが、

# chflags 0 ports/misc/compat4x/work/var/empty
# rm -r ports/

0 を指定することで、強制的にすべてのフラグをクリアすることも可能です。

compat4x/ 以外にも同様のケースがあった記憶がありますが、その様な場合は

# chflags -R 0 ports/misc/compat*
# rm -r ports/

と chown 同様 -R で対象のディレクトリ配下すべてを一括変更出来ます。chflags (FreeBSD 日本語マニュアル) も参考になりました。

Random Select

白神山地の四季 (1)
沖縄本島 (No. 5 – 名護の涌水) の続きです。名護を後にし、前日お泊りしたメンバー宅に移動しました。沖縄市に着く頃にはすっかり晩御飯時でした。普段は運転もあって飲めない方も今日は気
超クリーミー泡サーバー (4)
新開発 ! 超クリーミー泡サーバー (Part 4) の続きです。プレミアム急冷器 (Part 1) 単体の応募は 2 週間程で到着しましたが、フルセットはさらに約 1 週間後に到着しました。うすづく
eco かまど (22)
長谷園 eco かまど (三合炊き – 玄米二合) の続きです。前回は説明書き通りの分量で炊きましたが、火が弱かったのか、"上ふたの穴から蒸気が勢いよく噴き出し始めて 1 ? 2
濃厚豚崩しつけ麺 + 大盛り (1)
去年の 8 月以来久しぶりに、いつも行列の出来る めん徳二代目つじ田 を訪れました。事前にホームページを見て、メニューが変わっていることに気がついたためです。以前は、つけめん (880 円), 二代目
トロピカルビーチ (4)
沖縄本島 (No. 27 – 絆道 〜 ペンギンバー フェアリー) の続きです。初対面の翌日 09/20 (土) は、当初ビーチパーリー (ビーチパーティー) を予定していました。私自身は
ピザ (中)
沖縄出張 (No. 29 – 伊江島 -> NG) で瀬底島から伊江島を眺めた後、少し早いかと思いつつ ピザ喫茶 花人逢 に移動しました。11:00 オープンと勘違いしていて 10:
Logicool Ultrathin Touch Mouse T630 (2)
VAIO Fit 13A + Pioneer BDR-XS05J (Part 1) の続きです。ここ数年マウスは USB ポートに 1cm 程レシーバーが顔を出すだけの省スペースぶりの Logicoo
伊江島 (11)
伊江島 (No. 4 – 湧出 〜 島の駅) の続きです。島の駅から戻って伊江港ターミナルにつくと、もう車を搬入するにはちょうど良い時間でした。乗船まではまだ少し時間がありそうでしたので、
Drive Network Philosophy
6 回に分けて説明した "Drive Network のこだわり" シリーズは、2 年程前に浜松・沖縄の Drive Network に直接関わっていないスタッフに向けたサービス説
きつねうどん (温, 中盛)
うどん 丸香 (改修工事) で久しぶりに訪れた日は、まだ試したことのない温かいきつねうどん (かけ) を試してみました。このどーんと大きなお揚げはうどんの量に関わらず豪快ですが、つゆ同様あっさりして優
Valid HTML5 Valid CSS3 Another HTML Lint