Liunxディスク・ストレージとファイルシステム

のLiunx--要約
ディスク・ストレージとファイル・システム

磁気ディスクストレージ
機械ハードディスク:ディスク、ヘッド、ディスクスピンドルモータ、ヘッド制御部、データ・コンバータ、インターフェース、コンポーネント、およびいくつかのキャッシュの制御
SSD:制御製固体電子記憶ハードディスクアレイチップユニット記憶部(フラッシュチップ、DRAMチップ)組成

まず、ハードディスク記憶用語の
ヘッド:ヘッドの
トラック:トラック
シリンダー:シリンダー-列と呼ばれる同じトラック
部門:部門、512バイト

FDISK -lの/ dev / SD# - 観察ハードディスクインジケータ

24ビットアドレッシングCHSビット
6つのセクタがセクタ表す前後シリンダ10は、円筒状中間体8を表しは、頭部を表す
最大アドレス可能空間2 ^ 62 ^ 8 * 8ギガバイト512アドレッシングによって初期CHS方式を 2 ^ 10

LBA(論理ブロックアドレッシング)
LBAが完了するまでCHS形式の特定のアドレスにディスクを変換して、整数である
28ビット・アドレッシング・モードATA-1仕様、グループ当たりのセクタ512が算出される、ATA-1周防の定義LBA 28が128ジブ定義された上限に達します。2002年にATA-6 48仕様では、セクタあたりの最大容量は最大512 128ペタバイトの同じグループで計算され、LBAを使用し

ディスクパーティションの第二に、二種類:MBR、GPT

MBR最大4つのプライマリパーティションにパーティションハードドライブ、メインパーティション3は、+ 1(N論理パーティション)を拡張することができる
MBRパーティション構造
MBRザMBRのは、4つの部分(セクタ0トラック0 512バイト)で構成されて
1.メインアクティブパーティションをロードする責任があると、システムのブートプログラム実行-ブートプログラム(0088Hアドレス0000Hオフセット)
エラー情報データ領域、オフセットアドレス0089H -エラーメッセージとして00E1H、00E2H - 01BDHバイトが全て0であります
2.パーティションテーブル(テーブルDPT、ディスク| |パーティション ) 01FDH、各パーティションエントリは16バイト長であり、64バイトの総区画エントリ1、パーティションエントリ2 - 4つの区画エントリは、オフセットアドレス01BEHを有しますパーティション項目3、項目4パーティション
3.終了フラグワードオフセットアドレス01FE - 01FF 2バイト終了フラグ55AAであります

GPTパーティション:GPT:GUID(グローバル一意識別子)パーティション|テーブル(パーティションテーブル)パーティション128、64ビット、8Z(512バイト/ブロック)64Z(4096Byte /ブロック)をサポート

128 UUIDを使用する(汎用一意識別子)は、ディスクとパーティション、自動バックアップ2つのヘッドとテールにGPTパーティションテーブル、およびCRCチェックビットを表します。

hexdumpに対して-C -n 512の/ dev / SD # - フロントハードディスクを表示する512バイト
の場合=は/ dev / sdaにddを DD - = /データ/ MBR BS = 1つのカウント= 64 バックアップパーティションテーブル(パーティションテーブルその上をオフィス)

パーティショニングツールの
操作は即効でコマンドを分けている、と注意する
の使用:partedの[オプション] ... [機器[コマンド[引数] ...] ...]
別れは/ dev / sdbとmklabel GPT | msdos--戦いその後、パーティションGPTマーク| MSDOSは
-lビューのパーティションテーブルを分けた:パーティション情報が記載されているGPT
別れは/ dev / sdbの印刷印刷をパーティション情報
別れは/ dev / sdbとのmkpartをプライマリ1 200( デフォルトM) -パーティションの連続したパーティションがジャンプしていないポイント
/ dev / sdbのrmを1パーティションを削除別れ

fdisk MBRとのGDiskは、実質的に同一のコマンドフォーマットは繰り返さないgpt--
のfdiskの/ dev / SD#インタラクティブパーティション管理
p仕切りリスト
パーティションタイプの変更IDを変更するTは
N-作成マスタ(1-4)-p新しいパーティションをE 1つの開始デフォルトを拡張します自2M + \ G \ K
-パーティションは、連続的なパーティションを留意すべきである、ジャンプポイントが行う
パーティションのパーティション番号がゾーニング変更が容易番号に対応削除dは
パーティションベリファイVを
U変換部を
保存してすぐに実行を終了するにはwは変わり
Qを保存しませんして終了

メモリ領域に分割すると、新しいパーティション情報をロードしていないように見えます
lsblk
LLは/ dev / sdbと*
そのすべてのハードディスク情報メモリ見にCAT / procの/ partitions--を
見る-のfdisk -l / devの/ SD#すべてのハードディスクパーティションの状態
partprobe 5,7同期ディスク情報entOS

centos6 partx -aは/ dev / DEVICEは、同期の作成
partxを、-NR 6-7の/ dev / DEVICEが同期を削除すると-d

ファイルシステム
、すなわち、ストレージデバイス上のファイルを編成するための方法であって、ファイルシステムは、記憶デバイスまたはパーティション上の特定のファイルシステムを動作させるための方法、およびデータ構造です。管理とソフトウェアのファイル構造情報を格納するための責任を負うオペレーティングシステムは、ファイルシステムと呼ばれ、ファイル管理システムと呼ばれ、

Viewシステムサポートされているファイル・システム:/ libに/モジュール/のuname -r /カーネル/ FS
さまざまなファイル・システム:
https://en.wikipedia.org/wiki/Comparison_of_file_systems

ext4の:extはファイルシステムの最新バージョンです。ナノ秒のタイムスタンプ、(16TB)を作成し、巨大なファイルを使用して、最大の1EBファイルシステムなど、多くの新機能を提供しています、などのスピード強化するために
サポートアップ8EBファイルシステムにSGI、:XFS
、のbtrfs(オラクル)、reiserfsのをJFS(AIX)、スワップ
CD:ISO9660
のWindows:FAT32、exFATは、NTFS
のUnix:FFS(FAST)、UFS(UNIX)、JFS2
ネットワークファイルシステム:NFS、CIFSの
クラスタファイルシステム:GFS2、OCFS2(Oracleの)
分散ファイルシステム:FastDFS、セファロ、MooseFS、MogileFS、GlusterFS、光沢
RAW:未処理またはフォーマットされていない生成されたファイル・システム

lsblkは、ファイルシステム表示-f
ファイルシステム作成コマンド(二二〇から一次のコマンドセットを、実質的に共通のオプションのそれぞれ)
mkfsコマンドを
(1)mkfs.FS_TYPEの/ dev /デバイス
ext4の-XFS-はBtrfs-VFAT
(2)のmkfsをfs_type -tは/ dev /デバイスの
ボリュームラベルを設定-L「ラベル」
すでに-f力はXFS重い存在する
ユニットに速いスピードで配置されたのmkfs -bサイズ
にmke2fs:EXTシリーズ専用ファイルシステム管理ツール
-t {EXT2を| EXT3 | ext4のは}ファイルシステムタイプを指定
4096}ブロックサイズ指定| 2048 | -b {1024
-L 'ラベル'を設定ボリュームラベル
-t EXT3を対応-j
のmkfs.ext3のmkfs -t EXT3 = = = mke2fsのmke2fsの-j -t ext3の
-i#各バイトのiノード番号のデータのためのスペースを作成し、それがブロックサイズより小さくすべきではない
#iノードを作成するためにどのように多くのパーティションを指定-N
、-I iノードにディスク容量の記録量を128 --- 4096
-m #デフォルトの幹部の割合の合計スペース予約された領域の5%、
-O機能[、...]は指定された特性が有効
^機能は、指定された特性を閉じ-O

EXTテキスト設定システムのtune2fsシリーズ調整可能パラメータの値を
指定されたファイルシステムのスーパーブロック情報を参照してください。-l;スーパーブロック
-L「LABEL」はラベル変更
管理者に予約されたスペースの-m#修理率が
EXT2をアップグレードすることが-j ext3の
-O ^ has_journal、ファイルシステムのプロパティを有効または無効-O
-o、マウントオプションをデフォルトのファイルシステムを調整-o ACL ^
-U UUIDは、UUID番号は変更
は、dumpe2fs:ディスクブロックのグループ管理
、閲覧スーパーブロック情報:-hをグループ情報は表示されません。

ファイルシステムのチェックと修復:通常クラッシュ後に非正規のシャットダウンで発生するか、
ファイルシステムが「ノークリーン」としてマークされているとしてマウント
注:取り付けられた状態で修理しないでください
fsckの:ファイルシステムチェック-のfsck / devの/ SDB3 -y (自動応答)、その後、任意のデータ損失修正
fsck.FS_TYPEの
fS_TYPE -t、fsckを
-p自動的にエラーを修正し
、エラーを修正するインタラクティブ-r
fS_TYPEは、パーティションタイプで同じファイルを持っている必要があります
にe2fsckを:文書のEXTシリーズ専用のチェックと修復ツールが
自動的に-y答えはイエスである
-f強制的に固定

centos6 etx4ハードディスクパーティションのその後の添加は一切のACLの権限はありません
fdiskのNE + 100M
mkfs.etx4は/ dev / SDA6
のtune2fs -l /デ/ SDA6
ディスクセットにマウントACLアクセス権
のtune2fs -o ACLは/ dev / sdb6 ACL権利の追加
のtune2fsを^ ACLを-o / dev / sdb6行きます

ファイルシステムのタグ:ポインティングデバイスのもう一つの方法-デバイスに依存しない
BLKID [OPTION] [DEVICE] -ブロックデバイス-U UUIDは、対応する装置指定UUIDに応じ見つけるために、属性情報を参照してください。
-LのLABEL LABELが見えるように指定し対応するデバイス
e2label:ファイルシステム管理のextシリーズe2labelデバイスラベル[ラベル]
findfs:パーティション見つける
findfsを[オプション]ラベルが= <ラベル > findfs [オプション] UUID = <UUID>

二、マウントマウント

追加のルートファイルシステムとファイルシステムの既存のディレクトリは、このように他のエントリのファイルアクセス動作として、このディレクトリを作り、関係を確立するために、
/ etc / mtabファイルのショーを見て、マウントし、現在実装されているすべての機器を

マウント[-fnrsvw] [ - Tのvfstype] [ - Oオプション]ディレクトリデバイス・
デバイス:指定されたデバイスがマウントされ、
(1)デバイスファイル:例えば/ DEV / SDA5
(2)ラベル:-L 'LABEL'、例えば-L 'MYDATA'
UUID、-U 'UUID'(3):例えば-U '0c50523c-43f1-45e7-85c0-a126711d406e'
(4)擬似ファイルシステム名:PROC、SYSFS、devtmpfsは、CONFIGFS
DIRを:マウントポイント
既存の、空のディレクトリが推奨され
、プロセスがデバイスを使用しているアンインストールすることはできません
一般的なコマンドオプションをマウント- Viewは、mountコマンドデバイスをマウントする
デバイスタイプに搭載するvsftype指定されたファイルシステム-t
-r読み取り専用、読み取り専用ハング負荷は
読み取りと書き込み、マウント読み-w
-nは、/ etc / mtabには更新しないでください、6mount目に見えないCATの/ etc / mtabの
すべてのデバイスを追跡するために、カーネルを閲覧CAT / procの/マウントはマウントされている
/ centos6の/ etc / mtabのをPROC /マウントは
自動的にサポートされているすべてのデバイス(/ etc / fstabファイルで定義され、マウントオプション機能は自動です)をマウント自動的にマウント-a
-Lデバイスのマウントのラベルを指定するには、「ラベル」
-U」をUUID、搭載するデバイスを指定するUUID」
-Bを、--bind別のディレクトリに移動し結合は(ディレクトリをマウント)
-二つのファイルのinodeはディレクトリがマウントされたときと同じであってもよい場合は
-mount -B /ブーツ/ GRUB2を/ mnt / GRUB2

コマンドのアンインストール
findmntのMOUNT_POINTを|ファイルは$をマウントするかどうかを確認しますかdevice--?価値判断の
ビューには、指定されたファイルシステムのプロセスにアクセスして
アクセスしているユーザーを確認するためにMOUNT_POINT-- lsofを
するアクセス権を持っている人を参照してください定着-v MOUNT_POINT--を
で指定したファイルシステムアクセスしているすべてのプロセスを殺す
定着-km MOUNT_POINT
umountのDEVICEのumount MOUNT_POINTをアンロードします

マウントは/ dev / sdaには/ mnt / sdaに - UUIDやラベルが台紙UUIDのユニークなウェルにリンクすることができます

ファイルシステムのスペース占有およびその他のツールは、情報を表示するには
、[OPTION] DFを... [FILE] ...
-Hファイルシステムタイプ人間可読-i、iノードは、ブロックの代わりに-h -T 10個の単位と
POSIX準拠に-P出力フォーマットは、
全体的な空間のディレクトリを表示する状態占有
デュ[オプション] ... DIR -h人間の読み取り可能な概要の和-s
--max-深さ=#最大ディレクトリ階層を指定します

空またはスパースファイル
DD IF = /データ/ BIGFILEの=は/ dev /ゼロカウント= 1023 BS = 1Mシーク= 2048
LS -H BIGFILE 3G -論理サイズ参照
デュ-SH大型ファイル1Gを-占めるのみ1GのDF /データの実際のサイズが分かる
ループデバイス関連ファイル
LLの/ dev /ループC6ループデバイスのデフォルト0から78ビュー
=は/ dev / = /データ/ BIGFILE 1Mのゼロカウント= 1023 BS = 2048 =求めるならDD
のmkfsを。 ext4の/データ/ BIGFILE
bigfile--関連losetupを/ DEV / LOOP6 /データ/デバイス
-a losetupを
losetupをする-d

mknodをは基本的に何でも作成することができる特別なファイルを作成します
mknod / DEV / loop100 7 8 B - ループデバイスを作成
RM -rf loop100
て/boot/grub/grub.conf以下再開することができるmax_loop = 100
LL / devloop

マウント-o ptions:複数のオプションを分離するために使用し、カンマ
非同期非同期モード同期同期モード、ディスク..への書き込みと同時に、メモリの変更、
atimeを/ noatimeオプションが1日以上格納されているディレクトリやファイルが(更新またはすることが含まれているファイルのmtime> atimeのタイム
diratime / nodiratimeディレクトリアクセスタイムスタンプの
自動/自動マウントサポートをサポートにnoauto -オプション
のファイルシステム上でアプリケーションを実行するためのexec / NOEXECサポート
ファイルシステム上のデバイスファイルの使用をサポートするかどうかNODEVは/ dev
SUID / nosuidをサポートSUIDそして、SGID許可が
再マウントの再マウント
ROは読み取りおよび書き込みRW読み取り専用
普通のユーザーは、このデバイスをマウントできるようにするかどうかNOUSER /ユーザーには、/ etc / fstabを使用して
、ACL、このファイルシステムのACL対応機能
ループデバイスを使用してループ

マウント・プロファイル・ファイル
の/ etc /マウントされたファイルシステムを定義するライン当たりfstabの
1を、装置を搭載または擬似ファイルシステムされる
デバイスファイルラベル:LABEL =「」UUID: UUID =「」
擬似ファイルシステム名:PROC 、SYSFS
2は、マウントポイント
3、ファイルシステムタイプ:ext4の、XFS、ISO9660、NFS、なし
4は、マウントオプション:デフォルト、ACLは、-oオプション結合
5を、ダンプ・周波数:0:1バックアップではありません。 2日目ダンプ:隔日転送
許容数1 2 0:ファイルシステムをチェックする6、fsckの順序
0:なしセルフテスト
1:まず、セルフテストを、rootfsのは、一般的にのみ使用される唯一の
2:非rootfsの使用

/ dev / sdr6を/ mnt / SDA6 ext4のデフォルト値0 3
fstabにファイル書き込みUUIDをマウントするために使用される正孔
バインド・ファイル構成にリンクを/ boot / mnt /ブートなし0 0ファイル

マウントは、自動的にサポートされているすべてのデバイスが自動的にマウントおよびマウントオプションは、オート機能を持っているマウント

三つは、スワップ
スワップサプリメントのシステムRAMは、スワップパーティションは仮想メモリをサポートしています。データはスワップパーティションに書き込まれているシステムに処理されたデータを保存するのに十分なRAMでない場合は
、システムがスワップ領域、RAMによるカーネルメモリの枯渇を欠いたときにプロセスを終了が。あまりにも多くのスワップ領域を設定すると、ストレージデバイスが割り当てられている原因となりますが、アイドル状態、無駄な、過度のスワップ領域は、メモリリークをカバーします

マウントスワップパーティション-基本的な設定が含まれます:•スワップパーティションまたはファイル作成
のswapon -aの/ etc•使用に適切なエントリを追加し、特別な署名•/ fstabファイルを書き込むmkswap•の使用をスワップスペースを有効
有効にする:swaponを
swaponを[OPTION ] ... [DEVICE]
-a:すべてのスワップを活性化
-p優先順位は:優先順位を指定
PRI =値:4列目には/ etc / fstabのを
無効化:するswapoff [OPTION] ... [DEVICE]
スワップの優先順位レベルは、
スワップ領域0〜32767の優先順位を指定することができ、より高い優先度の値が大きい
ユーザが指定されていない場合、カーネルは自動的に-1から優先順位、優先開始を指定するために交換し、新たなユーザの各添加ではありませんこれは優先順位から1を引いたものを与える、スワップの優先順位を指定して
、ユーザーが自分の指定した優先順位を持ち、ユーザー指定の優先順位は(正)常にデフォルト指定されたコアよりも高くなっている場合を除き、比較的高い優先度であるデフォルトのスワップを追加します優先順位(負)
分散ストレージ、高性能ディスク・ストレージ:性能を最適化します

サブスワップ領域フリー-hメモリ使用状況参照
修飾パーティションディスクID(GPT)Wのfdiskの/ dev / SDCのPMTのL 19を
mkswapスワップファイルシステムは= mkswapは/ dev / SDC1作成
見ていない書かれたフリー-hのfstabファイル
はswapon -aを-hとしてフリーでオープンスワップ
CAT / PROC /スワップ、スワップパーティションの特定の番号を表示するために、=はswapon -s
するswapoffは/ dev / sdc1から無効

補足
ddコマンド:ファイルのコピーを変換し、
DD = IF PATH / / FROM / SRCの= / PATH / TO / BS DEST =#=#COUNT
ファイルが指定されたファイルからではなく、標準入力から読み込むIF =
ファイル書き込み=の名前のファイルにではなく、標準出力に
IBS =サイズサイズバイトのリード
OBS =サイズサイズバイトの書き込み
BS =サイズのブロックサイズ、ブロックサイズを指定する(いずれもIBSもOBSある)
サイズバイトの変換におけるCBS =サイズ
スキップ=ブロックの開始ブロックのブロックから無視できるサイズIBSは
=無視できるサイズOBS開始ブロックブロックからブロックシーク
回数= NコピーN BS
CONV変換= [、...変換]変換パラメータが指定されたパラメータを使用してファイルを変換します。
UCASE = fstabのCONV =のDD IFは= /データ/ファイル
ASCIIは、ASCIIにEBCDIC変換
EBCDICに変換EBCDICのASCIIを
小文字に大文字にLCASE
大文字にUCASE変換小文字を
出力ファイルを作成しないnocreat
NOERRORエラー停止しない
NOTRUNCを出力ファイル切り捨てない
IBSバイトに各入力ブロックを埋めるために同期を、空気で満たされたギャップ(NUL)文字
fdatasyncは書き込み前に完了し、物理的な書き込み出力ファイル、読み取りと書き込みの速度が決定されます

バックアップMBRの
DD IFの=は/ dev / SDA = / TMP / mbr.bak BS = 512 1 COUNT =
MBRにブートローダ破壊
= = / devの/ = 64 COUNT = SDAのBSのは/ dev / ZERO = 446 1求めるならDDを
大きなバイナリファイルFILEAと2Kのがあります。今、64バイト目の位置から読みたい、サイズが読まれる必要がある128Bytsです。FILEBは、以下を達成するために、上記開始位置に書き込まれた128バイト、32バイト、128バイト置換を読み取ろうとしている
DDの場合= FILEB BSの= FILEA = 1つのカウント= 128スキップ= 63シーク= 31 CONV = NOTRUNC

1、バックアップ:
DD IF =は/ dev / SDX =は/ dev / SDYの
バックアップローカルの/ dev / SDXディスク全体への/ dev / SDYの
DD IF =は/ dev / SDX = /パス/に/画像の
と/ dev指定されたパスにバックアップ/ SDX全体の画像データファイル
DDの場合=は/ dev / SDX | gzipで> /path/to/image.gz
バックアップは/ dev / SDX全体のデータ、指定したパスに、gzip圧縮を使用して
、リカバリ:
DD IFの/画像に= /パス/ = / devの/ SDX
指定されたディスクへのバックアップファイルを復元するため
にgzip -dc /path/to/image.gz | = / DDの DEVのSDX /
指定されたトレイに圧縮バックアップファイル

図2は、ハードディスクメモリにデータをコピー
=の/ dev / MEMの場合、DD = /ルート/ mem.binのBS = 1024
ルートディレクトリmem.binのデータファイルのメモリにコピーされます

図3に示すように、CDのISOイメージからコピー
の=は/ dev / CDROM場合DD = /ルート/ cd.iso
ルートフォルダの下に、光ディスクにデータをコピーし、ファイルをcd.isoとして保存され

4、ディスクのデータ破壊
DD =は/ dev / urandomのの場合 =は/ dev / sda1に
ハードディスクを埋めるために、ランダムなデータを、いくつかの状況では必要である。この操作を実行した後に、データを破壊することができますは、/ dev / sda1をマウントしません作成し、コピー操作を行うことができません

図5は、最も適切なサイズのブロック得た
DDをIF = = /ルート/ 1Gb.fileがCOUNT = 1024 BS = 1000000のは/ dev / ZERO
DD =のは/ dev / ZERO = /ルート/ BS 1Gb.fileカウント= 2048 = 500000 IF
DD =のは/ dev /ゼロの場合 = /ルート/ 1Gb.fileのBS = 4096カウント= 250000
出力指令のDD命令実行時間を比較することにより、ブロックのサイズは、最適なサイズのシステムを決定します

図6に示すように、テストディスク書き込み速度
DDは、IF =のは/ dev /ゼロ = /ルート/ 1Gb.fileのBS = 1024カウント= 1000000コンバージョン=はfdatasync
テストディスク読み出し速度
もしDD = /ルート/ 1Gb.file BS = 64K |のDD = / dev / nullにCONV =はfdatasync

おすすめ

転載: blog.51cto.com/14421850/2415263