レンタルサーバー・自宅サーバー設定・構築のヒント
レンタルサーバー・自宅サーバー設定・構築のヒント - レンタルサーバー・自宅サーバーの設定・構築情報を公開しています。

F8

FreeBSDでは、パーミッションで許可されていても消せないファイルがある

2012年2月4日 2014年1月17日
how to freebsd

この記事は、FreeBSD初心者向けです。

BSD系 ( FreeBSD を含む ) OS では、パーミッションがすべて書き込み可(許可)となってしても消せないファイルがあります。

通常、UNIX系 ( Linux系も含む ) のOSでは、chmodでファイル、ディレクトリのパーミッション ( アクセス権 ) の設定を行うことで、 ファイル、ディレクトリのアクセス制御を行う、管理・運営することができます。
BSD系 のOSでは、さらに、ファイルフラグ の設定を行うことができます。

chflags ここでは、SSHでログインするまでを簡単に解説します。

パーミッションが許可されていても消せないファイルの対処

まず、タイトルの対処について簡単に解説しておきます。
スーパーユーザなのにパーミッションが許可されていても消せないファイルがあるというのは、以下のような状態です。

$ ls -l
total 2
-rw-rw-rw-  1 root  wheel  5  2月  3 11:38 sample.txt
$ rm -f sample.txt
rm: sample.txt: Operation not permitted

このオペレーションを行っているのは、もちろんスーパーユーザであるrootです。
lsコマンドで見る限り、パーミッションの設定は、すべてのユーザに対して読み書き可になっています。
それでも Operation not permitted つまり、許可されていない操作 なので消せない状態です。

これは、以下の手順で簡単に消せます。

  1. ファイルフラグの設定を確認する。

    ファイルフラグの設定内容はは、ls コマンドの -ol オプションを指定することで表示することができます。

    $ ls -ol
    total 2
    -rw-rw-rw-  1 root  wheel  schg 5  2月  3 11:38 sample.txt

    ここでは、schg というファイルフラグが設定されています。
    もし、ファイルフラグが設定されてない場合、上記のエリアは、 (ハイホン) が出力されます。


  2. ファイルフラグの解除を行う。

    上記の例では、schg というファイルフラグが設定されていました。
    このファイルフラグを解除するには、設定されているファイルフラグ名の前に no を付加 ( ここの例では、noschg となる ) したパラメータを指定し、 chflagsコマンドで解除することができます。

    $ chflags noschg sample.txt
    $ ls -ol
    total 2
    -rw-rw-rw-  1 root  wheel  - 5  2月  3 11:38 sample.txt

  3. ファイルを削除する。

    ファイルフラグが上記のように解除されたら、削除できるはずなので、rm コマンドで削除しましょう。

    $ rm -f sample.txt
    $ ls -ol
    total 0

いちいちファイルフラグを調べるのは億劫かもしれません。そんなときは、chflagsコマンドの パラメータ に0 を指定することで、無条件にファイルフラグを解除することができます。
$ ls -ol
total 2
-rw-rw-rw-  1 root  wheel  schg 5  2月  3 11:56 sample.txt
$ chflags 0 sample.txt
$ ls -ol
total 2
-rw-rw-rw-  1 root  wheel  - 5  2月  3 11:56 sample.txt

chflagsで設定・解除できるファイルフラグ

chflagsで設定・解除できるファイルフラグ名と設定・解除に指定するパラメータ、および簡単な解説を以下に一覧でまとめてみました。

  • chflagsフォーマット
    chflags [-fhv] [-R [-H | -L | -P]] flags file ...

  • オプション
    オプション概要
    -f chflags が file のためのフラグを変更できないか、またはそのような 失敗を反映するように終了ステータスは変更できないなら、診断メッ セージを表示しません。
    -H -R オプションが指定されていれば、引数で指定されたシンボリックリン クをたどります (木構造の検索中にみつかったシンボリックリンクはた どりません)。
    -h file がシンボリックリンクであるなら、それが指すファイルでなく、リ ンク自体のファイルフラグを変更します。
    -L -R オプションが指定されていれば、全てのシンボリックリンクをたどり ます。
    -P -R オプションが指定されていれば、どのシンボリックリンクもたどりま せん。これがデフォルトです。
    -R 指定されたファイル自身ではなく、そのファイル以下のディレクトリ階 層すべてのフラグを変更します。
    -v chflags は、冗長にされ、フラグが変更されているようにファイル名を 表示します。また、-v オプションが二度以上指定されるなら、ファイル の古いフラグと新しいフラグも 8 進数で印刷されます。

  • ファイルフラグ
    ファイルフラグ名 パラメータ 設定可能なユーザ 概要
    設定 解除
    archived arch
    archived
    noarch noarchived root そのファイルはアーカイブ可能です。
    opaque opaque noopaque 所有者またはroot ユニオンファイルシステムのスタックを通じて見るとき、このディレクトリは不透明です。
    nodump nodump nonodump 所有者またはroot そのファイルを dump の対象外とします。
    system append-only sappnd
    sappend
    nosappnd
    nosappend
    root そのファイルは末尾への追加だけが可能です。
    system immutable schg
    schange
    simmutable
    noschg
    noschange
    nosimmutable
    root そのファイルは変更禁止です。
    system undeletable sunlnk
    sunlink
    nosunlnk
    nosunlink
    root そのファイルは削除禁止です。
    user append-only uappnd
    uappend
    nouappnd
    nouappend
    所有者またはroot そのファイルは末尾への追加だけが可能です。
    user immutable uchg
    uchange
    uimmutable
    nouchg
    nouchange
    nouimmutable
    所有者またはroot そのファイルは変更禁止です。
    user undeletable uunlnk
    uunlink
    nouunlnk
    nouunlink
    所有者またはroot そのファイルは削除禁止です。
    解除パラメータは、設定パラメータの前にnoをつけるだけです。
    また、各フラグ名に
    system とある場合、システムレベル
    user とある場合、ユーザレベル
    の意味になります。
    上記の文字列でなく8進数の数値で指定することもできます。
    数値概要
    0すべてのファイルフラグをクリアします。
    1nodump キーワードに変換します。
    2uchg キーワードに変換します。
    3uchg, nodump キーワードに変換します。
    4uappnd キーワードに変換します。
    10opaque キーワードに変換します。
    20uunlnk キーワードに変換します。
    BSD系OSの流れをくむ Mac OS X では、hiddenというフラグもあります。
    その名のとおり隠すという意味で、hiddenを設定するとデスクトップなどGUI画面で見せなくする(隠す)ことができます。

今回は、簡単ながらファイルフラグについて書いてみました。
最近は、Linuxばかり扱うことが多くて、この種のBSD独特の機能を忘れてしまっています。しばらく扱いだすとまた思い出してはきますが、今回は、忘れないように備忘録としても記事にしておきました。

さくらのVPSでは、FreeBSDをカスタムOSとして提供しています。(コントロールパネルからインストールして利用することができます)
さくらインターネットのVPS ( さくらのVPS )を試してみたい方は、さくらのVPS ページさくらのVPS ページからどうぞ。無料お試し期間は14日です。
※お試し期間中は、OP25B設定、データ転送帯域に制約がありますから注意してください。
ご利用のブラウザは、広告ブロック(AdBlockなど) が適用となっていませんか?
このサイトでは、コンテンツの一部が非表示、あるいは、コメント、お問い合わせの投稿ができない検索ができないことがあります。


関連記事 :

FreeBSD 8 をインストールしてみた

CentOSは、単純にインストーラの指示に従えば、何も問題なくインストールできました。 CentOSのインストールについては、「CentOSを ...

FreeBSDのセキュリティアップデート

さて、今回は、FreeBSDのシステムアップデート手順です。 FreeBSDでは、セキュリティ対応のため自動アップデートできるような仕組みがあ ...

FreeBSD 9.0 をインストールしてみた

以前にFreeBSD 8 をインストールしてみた で FreeBSDの8.x をインストールしました。 今回は、最新バージョンの FreeBS ...

FreeBSDでSSHを使えるようにする

FreeBSD 8 をインストールしてみた でFreeBSDのインストールまで終わりました。 さて、ここから、サーバーの設定を始めて行くわ ...

最初にやっておきたいこと(FreeBSD編)

先のFreeBSD 9.0 をインストールしてみたからの続きの記事になります。 FreeBSDのインストールを終えたら、最初になに ...



コメントを投稿 :

お名前 *

メールアドレス *
( メールアドレスが公開されることはありません。)

サイトアドレス

コメント *

* 印の項目は、入力が必要な項目です。




最近投稿の記事

[ 画像提供元 : Amazon ] 先日、1TBのディスクの入れ替え時にバックアップをとろうとディスクコピーを行いました。 その際 ...

Windows で Linux ファイルシステム Ext4 のディスクをマウントするには? Ext3Fsd が、おそらく、最も簡単なツール ...

今回は、Windows で Compass を使ってみました。 Compass とは、 Sass(サス、Syntactica ...

今回は、Anti Adblock を使ってみました。 Anti Adblock とは、 そもそも Adblock という ウェブ ...

デスクトップ環境でない サーバーで、Webページのキャプチャー画像をコマンドで撮る には、wkhtmltoimage, CutyCapt ...


さくらのVPS 全プラン リニューアルです。(石狩(北海道)も選択可)


root権限ありで ¥685 / 月 ~ と非常にリーズナブルな CPU 1(core)の 512 プランから、 最高 CPU 10(core), メモリ 32(GB), SSD容量 800(GB) までとプランが充実。
ディスクは、SSDとHDDの選択が可能になった他、データセンターは人気の東京、石狩(北海道)となりました。

また、どのプランでも好きなOSが選べます
( CentOS, Fedora, Scientific Linux, FreeBSD, Ubutu, Debian )

管理人もおすすめのVPSです。
試用期間がありますから、一度、お試しを!!

詳しくは、http://vps.sakura.ad.jp/さくらのVPSのサイトへ へどうぞ!!

カテゴリ


Serverman@VPS 完全1ヶ月無料 キャンペーン実施中です。


Serverman@VPS 完全1ヶ月無料 キャンペーン実施中です。
最近、スワップにも対応した Serverman@VPS は、かなりリーズナブルかもです。

  • メモリ1GB~2GBのEntryプラン :月額:490円
  • メモリ2MB~4GBのStandardプラン :月額:980円
  • メモリ4GB~8GBのProプラン :月額:1,980円

新規申し込みで1ヶ月間完全無料となるキャンペーンを実施中です。
Serverman@VPSの特徴は、安さとIPv6対応です。また、初期設定費0円もポイントです。

IPv6でちょっと遊んでみたい方には、おすすめかもしれませんね。最低利用期間もありませんから、気に入らないときは即解約もできます。

Serverman@VPSの詳細については、 http://dream.jp/vps/ Serverman@VPSのサイトへへどうぞ。



KVM採用 ConoHa VPSは、時間単位で借りれる便利なVPSです。


ConoHa VPS は、初期設定費0円最低利用期間無し時間単位で清算可能、 さらに、Web APIを使って自動化を図ることもできる便利なVPSです。

海外サーバー設置も可能で、ローカル接続にも対応と、かなり、機能豊富なサーバーです。

新規ユーザ登録で、クーポンもらえますから、まずは、お試しですね。

ConoHa VPSの詳細については、
http://www.conoha.jp/ へどうぞ。

KVM採用 お名前.com VPS(KVM) 2G プラン 初期設定費無料 キャンペーン 実施です。


メモリ2GBプラン CPU:3core、Disk:200GB
月額:1,153円から (初期設定:1,680円0円)

さくらのVPSがリニューアルされてもなんのその。
1GBメモリ / 2Core を ¥834 – の格安価格で提供中です!
間違いなくスペックからすると割安感ありです。
年間割引時の途中解約で返金がないのは、 ちょっと残念ですが、それでもこの割安感は魅力です。

まずは、お試しですね。

お名前.com VPS(KVM)の詳細については、
http://www.onamae-server.com/vps/ へどうぞ。(お試し期間が15日あります。)



  • ソーシャルブックマーク

  • はてなブックマークへ追加するはてな登録数
ページトップへ
Time : 0.2320 [s]