- 积分
- 16840
在线时间 小时
最后登录1970-1-1
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?开始注册
x
一台文件存储服务器单目录下子目录已经突破31998数限制,造成无法继续创建子目录,服务器系统环境为CentOS5.4 内核版本为2.6.18。解决方案只能是升级到ext4文件系统,首先到https://ext4.wiki.kernel.org/index.php/Ext4_Howto查了一下资料,文中的第一句便是“Ext4 was released as a functionally complete and stable filesystem in Linux 2.6.28”。难道只能升级内核一条路了吗?当然不是:)呵呵,下面总结本人实施/www分区从ext3升级至ext4步骤供大家参考。% u# H& t) O3 W
9 G0 g( Z1 D }5 `3 P; a1 f: P一、升级前状态
& n& ?, u& D. t% O+ |* g" @; i引用8 T$ D2 Q( Q1 G" y" v# y4 l
0 s1 [+ B: n) P$ V a
[root@USER-SERVER ~]# df% p$ K5 A' s0 W$ J6 C3 X& i
Filesystem 1K-blocks Used Available Use% Mounted on& C) F$ p$ {! E! I: e/ y+ a- E
/dev/sda2 20315844 2342008 16925196 13% /
* V2 l' y: E' o+ n7 F/dev/sda5 129863460 192192 122968152 1% /www
. {6 }! P( M# a( T9 W) ?* L/dev/sda1 194442 17798 166605 10% /boot2 T! A- y% i# @" T9 y
tmpfs 1029680 0 1029680 0% /dev/shm
* j% T0 g! E1 S9 Y3 D' I# z6 o& J
1 c9 p( x9 d. E# w' F+ l
$ a5 p6 l! i6 v
7 U& X! x9 v( D# K% M% E4 N; B' O# o无任何信息返回,说明/dev/sda5的ext4特征没有激活
' A% W1 o; X1 ^: g引用
5 |! W ~' D7 k P( c ]0 D% }7 |& e0 U
[root@USER-SERVER ~]# tune2fs -l /dev/sda5 | grep extent
0 \6 X$ b y% Q- W! N[root@USER-SERVER ~]#
0 a: ?- G1 I" K+ k1 Z
) r- l2 E: \% C9 H: E( m f. v5 O7 C0 b
2 B& l4 r1 m+ p% A
安装所需包
3 ?! \- z7 H( P# E1 Z4 v源码安装:- H0 ^6 x9 z! k/ g3 V
引用. M1 R, b4 p% e0 }; k
5 j: Z- o" _0 ~! V: v1 l
wget http://ftp.kernel.org/pub/linux/ ... rogs-1.41.12.tar.gz
4 a& d: W% J9 A. `* ctar zxvf e2fsprogs-1.41.12.tar.gz; cd e2fsprogs-1.41.124 Z% S" ^, n) [3 F! f# ]& n
./configure
1 r5 P- t) M4 }* Z' q! F" ^make;make install& U+ {* T" F9 L/ l* }0 ?; A E
/ @. o: p, }* @3 Y- x
6 P* E! f# Z! y/ X- Z5 M' P
* S. q. ?* p: Q/ u9 ERPM安装:* y; g5 w% y$ w! j% n% g# ^
引用
# c a& y6 i) ^5 `" P
" }( |) P# n( m. nyum -y install e2fsprogs9 b. T' D8 `! G/ q
8 Y2 `; T9 u+ U% \ T& A; `
. `4 A! q1 A! G# n0 W
: @) m9 t C! @' p- _3 R: u# l, h2 a* r5 X% d, S2 X( p% v, j& {
二、制作引导镜像7 P& g% Z9 l: F* J- Z% r ~" o# x+ c7 N
查找并加载相应的模块,如只需ext4支持,可将--with=ext3去掉
% l, o% _+ w; t+ F& l2 _+ J% j2 g2 l引用9 L8 Y5 b/ ]) C3 ~
) Z, c3 \ E5 s. V" ^4 w' g& ~1 p[root@USER-SERVER boot]# mv /boot/initrd-`uname -r`.img /boot/initrd-`uname -r`.img.old8 a" I: q" F- q6 E6 I, B1 w
[root@USER-SERVER boot]# mkinitrd -v --with=ext4 --with=ext3 /boot/initrd-`uname -r`.img `uname -r`
2 n! {3 [- R0 H. x0 K; ICreating initramfs
- @; }# N% H' R0 k3 K! JLooking for deps of module ehci-hcd
6 c: y, c0 j$ p& KLooking for deps of module ohci-hcd
& ?0 c1 J# ~! K$ c6 kLooking for deps of module uhci-hcd
! c0 s2 C, C' U, YLooking for deps of module ext3: jbd
+ }- p0 }5 B; r5 A {Looking for deps of module jbd! ^7 z# Q& D' w$ ^' l/ v
Found root device sda2 for LABEL=/ k5 g! ?1 z! P# A
Looking for driver for device sda20 U: r0 Z: l$ O) C
Looking for deps of module pci:v00008086d00002680sv000017AAsd00006B7Cbc01sc01i8f: scsi_mod libata ata_piix " x. `& E6 O$ A. V- A% T" x
Looking for deps of module scsi_mod
$ H: v; x- y0 T" m9 |2 @6 S! sLooking for deps of module sd_mod: scsi_mod
4 M7 ?) m" |/ D9 p$ V1 O# H: @Looking for deps of module libata: scsi_mod
/ c$ I2 G( C t0 F' k( v5 }Looking for deps of module ata_piix: scsi_mod libata
3 h/ N, |2 \, Y3 p% r$ p+ NLooking for driver for device sda3& S9 d) J; a l% x8 f
Looking for deps of module pci:v00008086d00002680sv000017AAsd00006B7Cbc01sc01i8f: scsi_mod libata ata_piix
9 q& |: y* ]7 h1 XLooking for deps of module usb-storage: scsi_mod ) |$ v+ A/ f( a# r# T, X
Looking for deps of module ide-disk
, d+ z+ H j: M( E% t# iLooking for deps of module dm-mem-cache+ h! J* P, v3 l% t/ ?4 y! J
Looking for deps of module dm-region_hash: dm-mod dm-log
6 `% L- n0 I& z) Z4 ~& _" V; S6 w! HLooking for deps of module dm-mod
+ j% n, t! w! Z8 N( m0 HLooking for deps of module dm-log: dm-mod
/ n5 X) w8 P/ r1 _Looking for deps of module dm-message
' \# \6 v S5 z( ?Looking for deps of module dm-raid45: dm-message dm-mod dm-mem-cache dm-log dm-region_hash
; c1 ^6 Z& f: x6 L/ ALooking for deps of module ext4: crc16 jbd2 $ U5 [. P+ a' E
Looking for deps of module crc16
, J* @% s5 R `4 ^7 aLooking for deps of module jbd2' C; u& G2 }6 C& {' F# u& |
Using modules: /lib/modules/2.6.18-164.15.1.el5/kernel/drivers/usb/host/ehci-hcd.ko /lib/modules/2.6.18-164.15.1.el5/kernel/drivers/usb/host/ohci-hcd.ko /lib/modules/2.6.18-164.15.1.el5/kernel/drivers/usb/host/uhci-hcd.ko /lib/modules/2.6.18-164.15.1.el5/kernel/fs/jbd/jbd.ko /lib/modules/2.6.18-164.15.1.el5/kernel/fs/ext3/ext3.ko /lib/modules/2.6.18-164.15.1.el5/kernel/drivers/scsi/scsi_mod.ko /lib/modules/2.6.18-164.15.1.el5/kernel/drivers/scsi/sd_mod.ko /lib/modules/2.6.18-164.15.1.el5/kernel/drivers/ata/libata.ko /lib/modules/2.6.18-164.15.1.el5/kernel/drivers/ata/ata_piix.ko /lib/modules/2.6.18-164.15.1.el5/kernel/drivers/usb/storage/usb-storage.ko /lib/modules/2.6.18-164.15.1.el5/kernel/drivers/md/dm-mem-cache.ko /lib/modules/2.6.18-164.15.1.el5/kernel/drivers/md/dm-mod.ko /lib/modules/2.6.18-164.15.1.el5/kernel/drivers/md/dm-log.ko /lib/modules/2.6.18-164.15.1.el5/kernel/drivers/md/dm-region_hash.ko /lib/modules/2.6.18-164.15.1.el5/kernel/drivers/md/dm-message.ko /lib/modules/2.6.18-164.15.1.el5/kernel/drivers/md/dm-raid45.ko /lib/modules/2.6.18-164.15.1.el5/kernel/lib/crc16.ko /lib/modules/2.6.18-164.15.1.el5/kernel/fs/jbd2/jbd2.ko /lib/modules/2.6.18-164.15.1.el5/kernel/fs/ext4/ext4.ko3 v7 W" o* f9 M( n0 i
/sbin/nash -> /tmp/initrd.qO3680/bin/nash
' {0 N( T4 W* h( O# j# D/sbin/insmod.static -> /tmp/initrd.qO3680/bin/insmod" o, ~: `1 z1 i* c0 ` F. r
copy from `/lib/modules/2.6.18-164.15.1.el5/kernel/drivers/usb/host/ehci-hcd.ko' [elf64-x86-64] to `/tmp/initrd.qO3680/lib/ehci-hcd.ko' [elf64-x86-64]
& {6 ^# w; G$ kcopy from `/lib/modules/2.6.18-164.15.1.el5/kernel/drivers/usb/host/ohci-hcd.ko' [elf64-x86-64] to `/tmp/initrd.qO3680/lib/ohci-hcd.ko' [elf64-x86-64]3 z, Y- O6 D) [2 U2 T9 I9 P. q2 x
copy from `/lib/modules/2.6.18-164.15.1.el5/kernel/drivers/usb/host/uhci-hcd.ko' [elf64-x86-64] to `/tmp/initrd.qO3680/lib/uhci-hcd.ko' [elf64-x86-64]
$ p- d3 ~2 K7 x3 M( S2 Z- Qcopy from `/lib/modules/2.6.18-164.15.1.el5/kernel/fs/jbd/jbd.ko' [elf64-x86-64] to `/tmp/initrd.qO3680/lib/jbd.ko' [elf64-x86-64]( A) d7 B7 A" O2 \( _8 ^$ q! }9 }) Y
copy from `/lib/modules/2.6.18-164.15.1.el5/kernel/fs/ext3/ext3.ko' [elf64-x86-64] to `/tmp/initrd.qO3680/lib/ext3.ko' [elf64-x86-64]* U) i6 o- y5 X* w2 M8 y3 \
copy from `/lib/modules/2.6.18-164.15.1.el5/kernel/drivers/scsi/scsi_mod.ko' [elf64-x86-64] to `/tmp/initrd.qO3680/lib/scsi_mod.ko' [elf64-x86-64]
0 p/ a/ Y. `* x/ N5 i- dcopy from `/lib/modules/2.6.18-164.15.1.el5/kernel/drivers/scsi/sd_mod.ko' [elf64-x86-64] to `/tmp/initrd.qO3680/lib/sd_mod.ko' [elf64-x86-64]
: j. T. E* r7 C; T5 p$ P4 Xcopy from `/lib/modules/2.6.18-164.15.1.el5/kernel/drivers/ata/libata.ko' [elf64-x86-64] to `/tmp/initrd.qO3680/lib/libata.ko' [elf64-x86-64]
2 ]- G% w$ _1 Z1 p7 Hcopy from `/lib/modules/2.6.18-164.15.1.el5/kernel/drivers/ata/ata_piix.ko' [elf64-x86-64] to `/tmp/initrd.qO3680/lib/ata_piix.ko' [elf64-x86-64]9 b$ J4 q2 g6 T6 z
copy from `/lib/modules/2.6.18-164.15.1.el5/kernel/drivers/usb/storage/usb-storage.ko' [elf64-x86-64] to `/tmp/initrd.qO3680/lib/usb-storage.ko' [elf64-x86-64]) _! D. E0 p* J7 F$ |, \7 \
copy from `/lib/modules/2.6.18-164.15.1.el5/kernel/drivers/md/dm-mem-cache.ko' [elf64-x86-64] to `/tmp/initrd.qO3680/lib/dm-mem-cache.ko' [elf64-x86-64]0 z' m+ w P, O% U. ^' f, _
copy from `/lib/modules/2.6.18-164.15.1.el5/kernel/drivers/md/dm-mod.ko' [elf64-x86-64] to `/tmp/initrd.qO3680/lib/dm-mod.ko' [elf64-x86-64]
1 ?! V* }6 \$ Q0 c- M2 ]copy from `/lib/modules/2.6.18-164.15.1.el5/kernel/drivers/md/dm-log.ko' [elf64-x86-64] to `/tmp/initrd.qO3680/lib/dm-log.ko' [elf64-x86-64]
! M% e' ^0 h3 P% r+ d( |copy from `/lib/modules/2.6.18-164.15.1.el5/kernel/drivers/md/dm-region_hash.ko' [elf64-x86-64] to `/tmp/initrd.qO3680/lib/dm-region_hash.ko' [elf64-x86-64]
' V' r( j9 A: icopy from `/lib/modules/2.6.18-164.15.1.el5/kernel/drivers/md/dm-message.ko' [elf64-x86-64] to `/tmp/initrd.qO3680/lib/dm-message.ko' [elf64-x86-64]
8 Q' b) |; J, {6 bcopy from `/lib/modules/2.6.18-164.15.1.el5/kernel/drivers/md/dm-raid45.ko' [elf64-x86-64] to `/tmp/initrd.qO3680/lib/dm-raid45.ko' [elf64-x86-64]8 F( k7 S+ T. `. A( H- m
copy from `/lib/modules/2.6.18-164.15.1.el5/kernel/lib/crc16.ko' [elf64-x86-64] to `/tmp/initrd.qO3680/lib/crc16.ko' [elf64-x86-64]
' c) @: ?) _) T O( `copy from `/lib/modules/2.6.18-164.15.1.el5/kernel/fs/jbd2/jbd2.ko' [elf64-x86-64] to `/tmp/initrd.qO3680/lib/jbd2.ko' [elf64-x86-64]- A K F+ h& P1 w! a
copy from `/lib/modules/2.6.18-164.15.1.el5/kernel/fs/ext4/ext4.ko' [elf64-x86-64] to `/tmp/initrd.qO3680/lib/ext4.ko' [elf64-x86-64]
# Z2 m2 w7 @& w% w/sbin/dmraid.static -> /tmp/initrd.qO3680/bin/dmraid. _; [' N' [9 i
/sbin/kpartx.static -> /tmp/initrd.qO3680/bin/kpartx" Z7 f, z# j' d+ ^( o
Adding module ehci-hcd U7 ^3 y \0 G9 M
Adding module ohci-hcd( C3 V* X2 }/ q* b
Adding module uhci-hcd* T' i0 t0 T) ?0 {3 }
Adding module jbd/ c1 l7 t5 y/ x3 m" N
Adding module ext38 O8 {' ?, l6 \' e
Adding module scsi_mod& |) X" R' s6 L7 ?0 ^
Adding module sd_mod
. ~1 H$ }9 X3 X* f' i: BAdding module libata9 l' E' V4 u& `5 A8 ]0 b
Adding module ata_piix- j: E8 `# ~! v0 }& W
Adding module usb-storage6 I' c4 g+ t/ k6 O: h2 q' T0 E, f
Adding module dm-mem-cache
2 C' L! Z1 }4 gAdding module dm-mod
4 K F& R( n a0 T! c# UAdding module dm-log
9 A5 u! I' X) v/ w+ _1 {. ^Adding module dm-region_hash
, L) ]) D$ `; E! A* fAdding module dm-message
' j8 s- g9 G$ Z7 vAdding module dm-raid45
0 }, `9 h" r' hAdding module crc16
$ g- y2 S1 @. Q6 C( E% i- VAdding module jbd2+ z( p. b3 \. G) D
Adding module ext4
' L* e1 }- n& C: p [ \. Z8 s5 z4 E2 V
( U. w0 i2 w) P% d1 {
- _6 \3 W% H6 g2 f- G C8 A% I3 h3 m( B
重启' _" Y7 Y) b* f; p/ A" _( O2 p
[root@USER-SERVER ~]# reboot
- h5 T/ \" p. Z6 }+ q: y1 ^! s6 A9 Y# q
三、格式转换# i( Q6 U2 C1 Q$ M6 |
[root@USER-SERVER ~]# umount /dev/sda5# H( s+ E6 K+ u$ [
[root@USER-SERVER ~]# tune2fs -O has_journal,extents,huge_file,flex_bg,uninit_bg,dir_nlink,extra_isize /dev/sda5; x @5 Z& L* f0 N0 Y6 d
引用, U! Z, f3 S( P. ^3 t( P
( e) K* n* ?+ o( G! p- r6 G+ ^- [. w
tune2fs 1.41.12 (17-May-2010)
; c3 V0 X. P. V# q7 U5 bPlease run e2fsck on the filesystem.
' o2 ~' F7 I8 }5 h- `8 T X" ^# Z! E K" t" Q& |% R6 g
' {3 E6 w% e" \( t H
' {. `& h" O( C1 j
# N+ B7 G& d3 z, G3 M四、修改转换文件系统错误并挂载
" M4 O6 I( T5 y# e: s3 G[root@USER-SERVER ~]# e2fsck -fDC0 /dev/sda5 -y
$ z- O( G4 g: `1 a[root@USER-SERVER ~]# mount -t ext4 /dev/sda5 /www# `* u1 Y( I/ M0 X' W5 n* Q/ t
9 L6 e6 N3 u* J- w; I( k, [0 u9 r. c
五、修改文件系统信息(重要!否则重启后会还原为ext3)* g% w, P9 V% V
将
& O2 `( B( I$ e7 X- F2 L6 NLABEL=/www /www ext3 defaults 1 2
) {5 M s) X3 f4 N9 r# e- ^9 t修改为/ ~6 k, I& I6 U( ?
LABEL=/www /www ext4 defaults 1 2
/ B- S- X+ A% O# H _( D7 V4 ?[root@USER-SERVER ~]# vi /etc/fstab
" {# s7 L, Y/ ?/ P6 D引用5 t0 O! a, k/ x. k/ V I4 P
8 S. S# N0 |1 r( voot@USER-SERVER ~]# vi /etc/fstab) U6 }$ B' F4 z2 F7 b' Z4 b
LABEL=/ / ext3 defaults 1 1
- Y2 d1 }: O4 Y$ f) DLABEL=/www /www ext4 defaults 1 26 i! H' e @0 W5 U- R. A
LABEL=/boot /boot ext3 defaults 1 2% x. z5 x( X2 c" U& Q( f
tmpfs /dev/shm tmpfs defaults 0 08 M5 x5 j6 P$ j6 \8 c) Y
devpts /dev/pts devpts gid=5,mode=620 0 0; ^% {* {( n7 ^
sysfs /sys sysfs defaults 0 0
7 C6 l% K5 q8 [( q" `proc /proc proc defaults 0 0
0 C! N2 z5 X' m% xLABEL=SWAP-sda3 swap swap defaults 0 02 z; _) u% n& p: S
* Q% P; u/ B' a% W R: Z$ d, \% V& U: Y2 u' Y. I
3 F5 T0 h. z, B% H
: b% \9 L4 ]; S( V, H/ ]. {
六、升级后状态
0 G o6 Z) D# y% K! X/ jext4的特征全激活了:)7 i, f7 [9 O4 I; v' u$ b1 a2 ?5 A' V
#[root@USER-SERVER ~]# tune2fs -l /dev/sda5 | grep extent0 W2 U/ o Q% w$ ]' B" f o8 {9 x
引用
. C2 N2 s( z+ b7 z: h! L( F: x" e$ G% [
Filesystem features: has_journal resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize
5 b( `- ^7 T5 N0 \% s
( X, R9 ^9 L* g W! P5 Q3 X7 Q# e- g0 x, m" q2 Q
2 C2 I# k; u& P r+ L% I[root@USER-SERVER ~]# df -T
! P7 }" M! I% R J. C% }2 A引用
$ a4 Q, O2 V6 E, ]+ Z1 T6 Q0 |& d# {, g3 D+ j
Filesystem Type 1K-blocks Used Available Use% Mounted on, z: F% P/ W! M
/dev/sda2 ext3 20315844 2310764 16956440 12% /
8 h( m. m2 F& U3 R8 h3 u/dev/sda1 ext3 194442 20563 163840 12% /boot
9 k+ A# Q p+ wtmpfs tmpfs 1029672 0 1029672 0% /dev/shm
1 z0 n2 J5 O W6 \( g& N, [( q, V/dev/sda5 ext4 129863460 192192 122968152 1% /www
' ~' T" p1 H" ~; h' G
, ~0 L T: R* }4 H; X
1 Y3 L0 \4 c( p4 N8 n# V |
|