Manpages

名 前

raw − Linux raw キ ャ ラ ク タ デ バ イ ス を バ イ ン ド す る

書 式

raw /dev/raw/raw<N> <major> <minor>

raw /dev/raw/raw<N> /dev/<blockdev>

raw −q /dev/raw/raw<N>

raw −qa

説 明

raw は Linux raw キ ャ ラ ク タ デ バ イ ス を ブ ロ ッ ク デ バ イ ス に バ イ ン ド す る た め に 用 い ら れ る 。 ど ん な ブ ロ ッ ク デ バ イ ス で も 利 用 で き る 。 ま た バ イ ン ド す る 時 に デ バ イ ス ド ラ イ バ が ア ク セ ス 可 能 で な く て も か ま わ な い (つ ま り オ ン デ マ ン ド で ロ ー ド さ れ る カ ー ネ ル モ ジ ュ ー ル で あ っ て も か ま わ な い )。

raw の 利 用 法 に は 2 つ の モ ー ド が あ る 。 一 つ は raw デ バ イ ス の バ イ ン ド を 設 定 す る 動 作 で あ り 、 も う 一 つ は 存 在 し て い る バ イ ン ド に 対 す る 問 合 わ せ を す る 動 作 で あ る 。 raw デ バ イ ス の 設 定 を す る と き は 、 /dev/raw/raw<N> は フ ァ イ ル シ ス テ ム 中 に 存 在 し て い る raw デ バ イ ス の ノ ー ド の デ バ イ ス 名 で あ る 。 バ イ ン ド 先 の ブ ロ ッ ク デ バ イ ス は 、 majorminor 番 号 で 示 し て も 良 い し 、 存 在 し て い る ブ ロ ッ ク デ バ イ ス フ ァ イ ル の パ ス 名 /dev/<blockdev> で 示 し て も 良 い 。 既 に 存 在 し て い る バ イ ン ド に 対 し て 、 −q オ プ シ ョ ン に よ っ て 問 合 わ せ を 行 う こ と が で き る 。 こ の 際 に は 、 問 合 わ せ る raw デ バ イ ス の フ ァ イ ル 名 を 指 定 し て も 良 い し 、 −a オ プ シ ョ ン を 用 い れ ば バ イ ン ド 済 み の 全 て の raw デ バ イ ス が 対 象 と な る 。

major と minor を 0 に 指 定 す る こ と に よ り 、 ア ン バ イ ン ド す る こ と が で き る 。 い っ た ん raw デ バ イ ス を ブ ロ ッ ク デ バ イ ス に バ イ ン ド す る と 、 そ の raw デ バ イ ス は バ イ ン ド 先 の ブ ロ ッ ク デ バ イ ス と 同 じ よ う に オ ー プ ン し た り read/write で き る 。 し か し raw デ バ イ ス の 動 作 は ブ ロ ッ ク デ バ イ ス と 全 く 同 じ で は な い 。 特 に 違 う 点 と し て は 、 raw デ バ イ ス へ の ア ク セ ス は 、 カ ー ネ ル の ブ ロ ッ ク バ ッ フ ァ キ ャ ッ シ ュ を 全 く 用 い な い 。 全 て の I/O は 、 そ の I/O を 行 っ た プ ロ セ ス の ア ド レ ス 空 間 に 対 し て 直 に 行 わ れ る 。 も し 下 層 に あ る ブ ロ ッ ク デ バ イ ス ド ラ イ バ が DMA を サ ポ ー ト し て い る と 、 デ ー タ コ ピ ー を 全 く 行 わ な く て も I/O を 完 了 す る こ と が で き る 。

raw I/O で は 、 プ ロ セ ス の ア ド レ ス 空 間 が 割 り 付 け ら れ た 物 理 メ モ リ に 直 接 的 な ハ ー ド ウ ェ ア ア ク セ ス を 行 う の で 、 例 外 的 な 制 限 が い く つ か 存 在 す る 。 全 て の I/O は メ モ リ や デ ィ ス ク 上 で 正 し く ア ラ イ ン さ れ て い な け れ ば な ら な い 。 す な わ ち デ ィ ス ク 上 の セ ク タ 先 頭 か ら 始 ま り 、 セ ク タ 長 の 整 数 倍 で 、 か つ 仮 想 メ モ リ 上 の デ ー タ バ ッ フ ァ も セ ク タ 長 の 整 数 倍 で な け れ ば な ら な い 。 ほ と ん ど の デ バ イ ス で は 、 セ ク タ の サ イ ズ は 512 バ イ ト で あ る 。

オ プ シ ョ ン

-q 問 合 わ せ モ ー ド 。

raw は 新 た な バ イ ン ド を 設 定 す る 代 わ り に 、 既 存 の

バ イ ン ド に 対 す る 問 合 わ せ を 行 う 。

-a

−q オ プ シ ョ ン と と も に 用 い 、 既 存 の バ イ ン ド 済 み raw デ バ イ ス す べ て に 対 し て 問 合 わ せ を 行 う 。

-h

使 用 方 法 の 要 約 を 表 示 す る 。

バ グ

Linux の dd(1) コ マ ン ド は 、 現 在 の と こ ろ バ ッ フ ァ を 正 し く ア ラ イ ン し な い 。 し た が っ て raw デ バ イ ス に は 用 い る こ と が で き な い 。

raw I/O デ バ イ ス は 、 Linux ブ ロ ッ ク デ バ イ ス の バ ッ フ ァ キ ャ ッ シ ュ と の キ ャ ッ シ ュ の 整 合 性 を 管 理 し な い 。 バ ッ フ ァ キ ャ ッ シ ュ に 既 に 存 在 す る デ ー タ を raw I/O を 用 い て 上 書 き す る と 、 そ の バ ッ フ ァ キ ャ ッ シ ュ の 指 す 記 憶 装 置 の デ バ イ ス の 実 際 の 内 容 と の 不 整 合 が 発 生 す る 。 こ れ は 恣 意 的 な も の で あ る が 、 質 問 し た 人 に よ っ て 、 回 答 は バ グ で あ っ た り 仕 様 で あ っ た り す る だ ろ う !

著 者

Stephen Tweedie (sct [AT] redhat.com)