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

iPod nano (PRODUCT) RED
分かる人にしか分からないタイトルですが、最近 iPod nano (第 7 世代) を購入しました。今まで音楽を聴く手段が PC で iTunes しかありませんでしたが、出張時の新幹線や飛行機内で、
開拓味噌ラーメン "天神"
沖縄本島 (No. 14 – キングタコス 長田店) の続きです。さて、少し時間を空けてふたたび天神矢を訪れました。投稿は 沖縄出張 (No. 25 – 天神矢) 以来約 1
ごぼう天うどん
靖国通りを小川町方面によく行き来しますが、スターバックス (神田小川町 2 丁目店) のそばに見掛ける立て看板が気になっていました。豊前うどん 武膳 といううどん店の様ですが、何度か見掛けて気になって
Drive Network Core (WS-C3750E-48TD-E)
Cisco Catalyst 3750X HSRP Active/Active で経路広報を切り替える前に、切替先で一時的に作成した Interface Vlan があり、切替完了後に削除する予定でし
野菜豆カレー (辛さ 20 倍)
カリーライス専門店 エチオピア 本店 (No. 7 – 辛さ 65 – 70 倍) の続きです。辛さ 70 倍を極めた後は、04/01 欧風カレー ボンディ (野菜カレー)04
生姜焼き定食 (2015/04/22)
日本一美味しい豚の生姜焼き でご紹介した とちぎや は、通い始めて 23 年になりました。20 歳頃、とちぎやのそばにあるマクドナルドで 2 年近くバイトしていた時は、それこそ自宅のキッチン代わりに足
FreeBSD Logo
sendmail 送信元 IP アドレス自動切替え (Part 1) の続きです。プログラム概要は以下の通りです。現在の送信元 IP アドレスと IP アドレスプールを取得。ブラックリストデータベース
銀座わしたショップ 2014/06/13 (3)
カミングアウトバラエティ 秘密のケンミン SHOW の沖縄特集で初めて "コンビーフハッシュ" を知りました。facebook 沖縄ユーザーグループ では、番組放映後に沖縄県内の至
エビだけ天丼 (4 日目)
2012/05/28 から沖縄支店に出張に来ています。沖縄出張と言えば、My Select 日本一美味しいエビだけ天丼 を外す訳には行きません。が、なぜか 4 日連続で通っています。。1 週間に 28
古瀬戸ブレンド
沖縄から東京に訪れた友達を カリーライス専門店 エチオピア に連れて行った後、まだ時間に余裕がある様でしたので、3 件程となりの 古瀬戸珈琲店 (コセトコーヒーテン) を訪れました。このお店はかねてか
Valid HTML5 Valid CSS3 Another HTML Lint