Fedora 9の発表では、最初の行の1つが
ext4ファイルシステムの実験的サポートに言及しています。
この記事では、
ext3ファイルを
ext4に置き換えることがどのように役立つか、このステップを決定した場合にどのような追加リスクがあるかについて説明します。
より良いext4
- ext4は 、特に大きなファイルで作業する場合は高速です(削除する場合は非常に顕著です)。
- ファイルサイズ-最大16T 、ファイルシステム-最大1024
- SELinux、beagle、sambaに「inodeの拡張属性」が登場しました。 特定の状況では、 mkfsおよびfsckを高速化できます。
- 既存のext3パーティションをext4として単純にマウントできます。
- XFSで利用可能なデフラグツールと同様のデフラグツールが開発されています 。 彼は、連続領域でファイルを収集し、1つのディレクトリから一緒にファイルを収集し、連続領域で空のスペースを収集することができます。 生産性が向上するはずです
技術的な詳細はこちらをご覧ください:
ロシア語ext4 、
新しいext4機能 。
ext3からext4に切り替える方法
プロダクションバージョンでは、
ext3を
ext4としてマウントできます。 ここで、手順はもう少し複雑です。
ext3を
/ dev / sdc1にインストールします。
blkidを使用して、カーネルがファイルシステムを識別する方法を確認します。
[root @ ad mnt]#blkid / dev / sdc1
/ dev / sdc1:LABEL = "/ var / www / img" UUID = "77d69541-cd2e-47d5-91fc-bdb5606aa8fb" SEC_TYPE = "ext2" TYPE = "ext3"
TYPE = "ext3"である限り、ext4でドライブをマウントすることはできません。 この問題を修正
[root @ ad mnt]#debugfs -w / dev / sdc1
debugfs 1.40.8(2008年3月13日)
debugfs:set_super_value s_flags 4
debugfs:終了
チェック:
[root @ ad mnt]#blkid / dev / sdc1
/ dev / sdc1:LABEL = "/ var / www / img" UUID = "77d69541-cd2e-47d5-91fc-bdb5606aa8fb" SEC_TYPE = "ext2" TYPE = "ext4dev"
エラーはありません。ファイルシステムの
名前は
ext4devです。
マウントできます:
[root @ ad mnt]#mount -t ext4dev -o extents / dev / sdc1 ./test
ext4でパーティションをフォーマットする方法
#mke2fs -E test_fs / dev / sdc1
#tune2fs -j / dev / sdc1
ext4を使用するのが賢明な場合
/ var / lib / mysqlディレクトリにないことは確かです。
すべての写真コンテンツと同様に、
nginxキャッシュが追加されるセクションで既に
ext4devを使用しています
(静的をnginxに送信する場合、ファイルシステムの速度が重要です) 。
それを危険にさらさないために、コンテンツをフォーマットして空のディスクにアップロードすることにより、ファイルシステムを変更しました。 この手順の間に、ちょっとおかしいことが起こりました。 ext3では、すべてのファイルが
97Gを占めてい
ましたが、新しい
ext4dev形式のパーティションにリロードした後、
90Gでした 。 私は半日と比較して、mcでフォルダ比較をカットしました-すべてがOKです:)。 保存が行われた理由は言えません。おそらくext3のデータは非常に断片化されていました(小さなファイルのディレクトリがたくさんありました)。
リスクは何ですか?
リスクは明らかです、これは実験的なサポートです-すべてが可能です!
ext2から
ext3にいつでも切り替えるとき、
ext3を拒否し、
ext3を
ext2としてマウントできます。すでに
ext4に切り替えている
場合は、後戻りできません!
-o noextentsオプションを使用してマウントすると、すべてを
ext3にロールバックできますが、このオプションはほとんどすべての
ext4チャームを切断します。
ファイルシステムの「収集」の場合、
tune2fsを使用する準備ができている必要があります。
/ tmpディレクトリをext4に変換することをすでに決めているかもしれません:)?
UPD1:
fsckが機能するには、
fsck.ext3を
fsck.ext4にコピーし
ます 。 さあ、実行しましょう
#fsck.ext4 / dev / sdc1