名 前
chattr − Linux 第 2 拡 張 フ ァ イ ル シ ス テ ム (ext2fs) 上 に あ る フ ァ イ ル の 属 性 (attribute) を 変 更 す る
書 式
chattr [ −RV ] [ −v version ] [ mode ] files...
説 明
chattr は Linux 第 2 拡 張 フ ァ イ ル シ ス テ ム (ext2fs) 上 に あ る フ ァ イ ル の 属 性 (attribute) を 変 更 す る 。
mode の 記 法 フ ォ ー マ ッ ト は +-=[ASacDdIijsTtu] で あ る 。
+ オ ペ レ ー タ を 使 用 す る と 、 選 択 し た 属 性 が フ ァ イ ル に 付 加 さ れ る 。 - オ ペ レ ー タ を 使 用 す る と 解 除 さ れ る 。 = オ ペ レ ー タ を 使 用 す る と 、 フ ァ イ ル は 指 定 し た 属 性 だ け を 持 つ こ と に な る 。 「 acdijsuADST」 は 指 定 で き る 属 性 で あ る 。 (a) 追 加 の み 許 可 (append only)、 (c) 圧 縮 (compressed)、 (d) ダ ン プ し な い (no dump)、 (i) 変 更 不 可 (immutable)、 (j) デ ー タ の ジ ャ ー ナ リ ン グ (data journalling)、 (s) 安 全 な 削 除 (secure deletion)、 (t) 末 尾 マ ー ジ を し な い (no tail-merging)、 (u) 復 活 可 能 (undeletable)、 (A) atime を 更 新 し な い 、 (D) デ ィ レ ク ト リ の 同 期 更 新 (synchronous directory updates)、 (S) 同 期 更 新 (synchronous updates)、 (T) デ ィ レ ク ト リ 階 層 の ト ッ プ 。
オ プ シ ョ ン
−R 再 帰 的 に デ ィ レ ク ト リ や そ の 中 身 の 属 性 を 変 更 す る 。 デ ィ レ ク ト リ を 順 番 に 訪 れ て い る 途 中 で シ ン ボ リ ッ ク リ ン ク に 出 会 っ た 場 合 は 、 こ れ を 無 視 す る 。 | |
−V 属 性 の 変 更 を 詳 細 に 表 示 す る 。 |
-v version フ ァ イ ル シ ス テ ム の バ ー ジ ョ ン /世 代 を 設 定 す る 。
属 性
’A’ 属 性 が 設 定 さ れ て い る フ ァ イ ル は 、 ア ク セ ス さ れ て も atime レ コ ー ド が 変 更 さ れ な い 。 こ れ は ラ ッ プ ト ッ プ シ ス テ ム の デ ィ ス ク I/O を あ る 程 度 軽 減 す る 。
’a’ 属 性 が 設 定 さ れ て い る フ ァ イ ル は 、 書 き 込 み の 際 に 追 加 モ ー ド で し か オ ー プ ン で き な い 。 ス ー パ ー ユ ー ザ ー ま た は CAP_LINUX_IMMUTABLE ケ ー パ ビ リ テ ィ (capability) を 持 つ プ ロ セ ス だ け が 、 こ の 属 性 を 設 定 ・ 解 除 で き る 。
’c’ 属 性 が 設 定 さ れ て い る フ ァ イ ル は 、 デ ィ ス ク 上 に 置 か れ る と き カ ー ネ ル に よ っ て 自 動 的 に 圧 縮 さ れ る 。 こ の フ ァ イ ル を 読 み 出 す と 、 伸 長 さ れ た デ ー タ が 返 っ て く る 。 こ の フ ァ イ ル に 書 き 込 む と 、 デ ィ ス ク 上 に 保 存 す る 前 に デ ー タ が 圧 縮 さ れ る 。 注 意 : こ の ド キ ュ メ ン ト の 最 後 に あ る 「 バ グ と 制 限 」 の セ ク シ ョ ン を 読 ん で 確 か め て ほ し い 。
’D’ 属 性 が 設 定 さ れ て い る デ ィ レ ク ト リ は 、 変 更 さ れ る と 同 時 に デ ィ ス ク に も そ の 内 容 が 書 き 込 ま れ る 。 こ れ は ’dirsync’ マ ウ ン ト オ プ シ ョ ン を 、 そ れ ら の フ ァ イ ル だ け に 適 用 す る の と 同 じ こ と で あ る 。
’d’ 属 性 が 設 定 さ れ て い る フ ァ イ ル は 、 dump(8) プ ロ グ ラ ム を 起 動 し た 際 に バ ッ ク ア ッ プ さ れ な い 。
’E’ 属 性 は 実 験 的 な 圧 縮 パ ッ チ が 用 い る も の で 、 圧 縮 フ ァ イ ル に 圧 縮 エ ラ ー が あ る こ と を 示 す 。 こ の 属 性 は chattr(1) に よ っ て 設 定 し た り 解 除 し た り す る こ と は で き な い が 、 lsattr(1) を 用 い て 表 示 さ せ る こ と は で き る 。
’I’ 属 性 は htree コ ー ド に よ っ て 用 い ら れ 、 デ ィ レ ク ト リ が ハ ッ シ ュ ツ リ ー を 使 っ て 索 引 を 付 け ら れ る こ と を 示 す 。 こ の 属 性 は chattr(1) に よ っ て 設 定 し た り 解 除 し た り す る こ と は で き な い が 、 lsattr(1) を 用 い て 表 示 さ せ る こ と は で き る 。
’i’ 属 性 が 設 定 さ れ て い る フ ァ イ ル は 、 変 更 す る こ と が で き な い 。 す な わ ち 、 削 除 、 名 前 の 変 更 、 こ の フ ァ イ ル を 指 す リ ン ク の 作 成 、 こ の フ ァ イ ル に 対 す る デ ー タ の 書 き 込 み が 禁 止 さ れ る 。 ス ー パ ー ユ ー ザ ー ま た は CAP_LINUX_IMMUTABLE ケ ー パ ビ リ テ ィ を 持 つ プ ロ セ ス だ け が 、 こ の 属 性 を 設 定 ・ 解 除 で き る 。
’j’ 属 性 が 設 定 さ れ て い る フ ァ イ ル は 、 フ ァ イ ル シ ス テ ム が "data=ordered" ま た は "data=writeback" オ プ シ ョ ン で マ ウ ン ト さ れ て い る 場 合 、 フ ァ イ ル そ の も の に 書 き 出 さ れ る 前 に 、 ext3 の ジ ャ ー ナ ル に デ ー タ が 書 き 出 さ れ る 。 フ ァ イ ル シ ス テ ム が "data=journal" オ プ シ ョ ン で マ ウ ン ト さ れ て い る 場 合 、 全 て の フ ァ イ ル デ ー タ は 既 に ジ ャ ー ナ ル に 記 録 さ れ て い る の で 、 こ の 属 性 は 何 も 影 響 し な い 。 ス ー パ ー ユ ー ザ ー ま た は CAP_SYS_RESOURCE ケ ー パ ビ リ テ ィ を 持 つ プ ロ セ ス だ け が 、 こ の 属 性 を 設 定 ・ 解 除 で き る 。
’s’ 属 性 が 設 定 さ れ て い る フ ァ イ ル が 削 除 さ れ る と 、 割 り 当 て ら れ て い た ブ ロ ッ ク の 中 身 が 0 に さ れ 、 デ ィ ス ク に 書 き 戻 さ れ る 。 注 意 : こ の ド キ ュ メ ン ト の 最 後 に あ る 「 バ グ と 制 限 」 の セ ク シ ョ ン を 読 ん で 確 か め て ほ し い 。
’S’ 属 性 が 設 定 さ れ て い る フ ァ イ ル が 変 更 さ れ る と 、 変 更 は 同 期 的 に デ ィ ス ク に 書 き 込 ま れ る (す な わ ち 変 更 が 直 ち に デ ィ ス ク 上 に 反 映 さ れ る )。 こ れ は mount オ プ シ ョ ン の ’sync’ を そ れ ら の フ ァ イ ル だ け に 適 用 す る の と 同 じ こ と で あ る 。
’T’ 属 性 が 設 定 さ れ て い る デ ィ レ ク ト リ は 、 (Linux 2.5.46 以 降 の シ ス テ ム で 使 わ れ る ) Orlov ブ ロ ッ ク ア ロ ケ ー タ の た め の デ ィ レ ク ト リ 階 層 の ト ッ プ と し て 扱 わ れ る 。
’t’ 属 性 が 設 定 さ れ て い る フ ァ イ ル は 、 そ の フ ァ イ ル が 他 の フ ァ イ ル と マ ー ジ さ れ た と き に 部 分 的 ブ ロ ッ ク の フ ラ グ メ ン ト を 末 尾 に 作 ら な い (末 尾 マ ー ジ (tail-merging) を サ ポ ー ト し て い る フ ァ イ ル シ ス テ ム の 場 合 )。 こ れ は LILO の よ う な 、 フ ァ イ ル シ ス テ ム を 直 接 読 み に い き 、 か つ 末 尾 マ ー ジ さ れ た フ ァ イ ル の こ と を 理 解 し な い よ う な ア プ リ ケ ー シ ョ ン に 対 し て 必 要 と な る 。 注 : こ の man ペ ー ジ を 書 い て い る 時 点 で 、 ext2 と ext3 フ ァ イ ル シ ス テ ム は (ま だ 非 常 に 実 験 的 な パ ッ チ 以 外 で は ) 末 尾 マ ー ジ を サ ポ ー ト し て い な い 。
’u’ 属 性 が 設 定 さ れ て い る フ ァ イ ル を 削 除 す る と 、 そ の 内 容 は 保 護 さ れ る 。 こ れ に よ り 、 ユ ー ザ が フ ァ イ ル を 復 活 さ せ る こ と が 可 能 に な る 。 注 意 : こ の ド キ ュ メ ン ト の 最 後 に あ る 「 バ グ と 制 限 」 の セ ク シ ョ ン を 読 ん で 確 か め て ほ し い 。
’X’ 属 性 は 実 験 的 な 圧 縮 パ ッ チ に よ っ て 用 い ら れ 、 圧 縮 フ ァ イ ル の 内 容 が 圧 縮 状 態 の ま ま 直 接 ア ク セ ス 可 能 で あ る こ と を 示 す 。 こ の 属 性 は 現 在 の と こ ろ chattr(1) に よ っ て 設 定 し た り 解 除 し た り す る こ と は で き な い が 、 lsattr(1) を 用 い て 表 示 さ せ る こ と は で き る 。
’Z’ 属 性 は 実 験 的 な 圧 縮 パ ッ チ に よ っ て 用 い ら れ 、 圧 縮 フ ァ イ ル が 汚 染 さ れ て い る (dirty) こ と を 示 す 。 こ の 属 性 は chattr(1) に よ っ て 設 定 し た り 解 除 し た り す る こ と は で き な い が 、 lsattr(1) を 用 い て 表 示 さ せ る こ と は で き る 。
著 者
chattr は 、 Remy Card <Remy.Card [AT] linux.org> に よ っ て 作 成 さ れ た 。 現 在 は Theodore Ts’o <tytso [AT] alum.edu> に よ っ て メ ン テ ナ ン ス さ れ て い る 。
バ グ と 制 限
’c’, ’s’, ’u’ 属 性 へ の 対 応 は 、 現 在 主 流 に な っ て い る Linux カ ー ネ ル で 実 装 さ れ て い る ext2 と ext3 フ ァ イ ル シ ス テ ム に 含 ま れ て い な い 。 こ れ ら の 属 性 は 将 来 の ext2 と ext3 に 実 装 さ れ る か も し れ な い 。
’j’ オ プ シ ョ ン は 、 ext3 で マ ウ ン ト さ れ た フ ァ イ ル シ ス テ ム に つ い て の み 有 効 で あ る 。
’D’ オ プ シ ョ ン は Linux カ ー ネ ル 2.5.19 以 降 で の み 利 用 で き る 。
入 手 方 法
chattr は e2fsprogs パ ッ ケ ー ジ の 一 部 で あ り 、 http://e2fsprogs.sourceforge.net か ら 入 手 で き る 。