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

Mixed Fruit
始めるにあたって、ドローイン vs ロングプレス あたりから昼食も意図的にボリュームダウンして 2kg は落していました。が、前々から気になっていた断食ダイエットとも言われるファスティングダイエットに
開拓味噌ラーメン "天神"
沖縄本島 (No. 14 – キングタコス 長田店) の続きです。さて、少し時間を空けてふたたび天神矢を訪れました。投稿は 沖縄出張 (No. 25 – 天神矢) 以来約 1
浜比嘉島 (2)
去年の 1 月になりますが、初めて浜比嘉島に降りて散策しました。出張時の恒例 "北部ドライブ" の前日です。沖縄出張 (No. 17 – きしもと食堂)沖縄出張 (No
FreeBSD Logo
Migrate 32bit to 64bit (FreeBSD, PostgreSQL) に続いて、単なるデータコピーで移行が完了しないケースに 1 つに GDBM (GNU dbm) があります。現
しゃぶしゃぶ温野菜 (6)
3 月に入り暖かく感じる日も出始めて来たため、寒いうちに訪れたいと思っていた しゃぶしゃぶ温野菜 に久しぶりに行く機会が持てました。土曜日の 19:00 頃から開始したかったので、事前に予約しておきま
きつねうどん (温, 中盛)
うどん 丸香 (改修工事) で久しぶりに訪れた日は、まだ試したことのない温かいきつねうどん (かけ) を試してみました。このどーんと大きなお揚げはうどんの量に関わらず豪快ですが、つゆ同様あっさりして優
沖縄食彩 てぃ?だかんかん (2)
沖縄食彩 てぃ?だかんかん (Part 1) の続きです。乾杯で喉を潤した後は、早速おつまみミーティング開始です。鮮度の良い状態で入荷していると聞いた海ぶどうに、1 人 2 皿は行こうねと半分本気で事
古瀬戸ブレンド
沖縄から東京に訪れた友達を カリーライス専門店 エチオピア に連れて行った後、まだ時間に余裕がある様でしたので、3 件程となりの 古瀬戸珈琲店 (コセトコーヒーテン) を訪れました。このお店はかねてか
川平湾 (23)
石垣島 (No. 8 ? 川平湾 Part 2) の続きです。日陰で波とたわむれてまったりした後は、スタート地点から左側 (方位は北) を目指してゆっくり散歩を始めました。着いた直後に川平公園入口で
hamburger with fries
サービス向上を勘違いしているマクドナルド (Part 1) の続きです。完成品の未完成さここ は半分パロディも含んでいるでしょうが、パロディとは思えない写真も含まれています。すでに "質を選
Valid HTML5 Valid CSS3 Another HTML Lint