inode table 增加

來源:互聯網
上載者:User

Linux ext3等分區是具有inode table的,用於隱藏檔的位置等資訊。一般來講,一個檔案將佔用1~2個inode值。在WEB系統中,如果採用生稱html方式,會產生大量的小檔案,這樣會暫用大量的inode值。所以,常常出現檔案空間還剩餘很多,但是由於inode滿了,LINUX也會警示說沒有空間了,不允許增加檔案。
根據這一狀況,你可能需要對磁碟的inode大小進行調整。
如果磁碟中主要為小檔案,你可以適當的增加inode值。
如果大檔案居多,可以適量減少inode空間,當然這並不是很必要,inode也暫用的空間並不是很大,節省不了很多。
可以使用 mkfs來調整inode數值。
具體方法&案例:
0. 預熱,準備一些資料和資料
我目前需要將我的分區 /dev/sda9 (mount at /var/www)的inode值增加到2500000(原值為2000640)。
我的系統: ubuntu 8.04 Desktop
view source
print?
1df #獲得目前磁碟載入情況己使用方式
2df -i #獲得目前磁碟inode使用方式,便於估計目標inode將要調整為多少
3cat /etc/fstab #輸出當前fstab,修改inode之後,uuid會被修改。因此,該檔案也需要作相應調整。需要記錄一下,最好的,cp備份一下
4cp -aR /var/www /home/bak/ #備份所有資料到另一個分區/home,調整inode會格式化整個分區,分區將被刪除

1. umount
view source
print?
1sudo umount /var/www #www是我準備調整inode的磁碟。當然,umount之前你需要關閉一些使用它的進程。比如apache,或者其他service

2. mkfs.ext2,調整inode
注意!!!!!!!!!!該操作將刪除整個分區資料,在進行此操作之前,請再次確認你已經對該分區的資訊做好了備份。
請再次確認你的資料已經全部備份完畢。
view source
print?
1sudo mkfs.ext2 -N 2500000 /dev/sda9 # 2500000 是我需要的inode值 /dev/sda9是我 /var/www的磁碟。
會有類似於這樣的一些輸出,具體含義不表:

mke2fs 1.40.8 (13-Mar-2008)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
2503680 inodes, 3905795 blocks
195289 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4001366016
120 block groups
32768 blocks per group, 32768 fragments per group
20864 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208
Writing inode tables: done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 24 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.

3. 更新分區
view source
print?
1sudo tune2fs -j /dev/sda9

4. 更新系統uuid。
view source
print?
1sudo udevtrigger
5. 擷取新的uuid,記錄它
view source
print?
1sudo vol_id -u /dev/sda9
6. 修改fstab,將新的uuid替換進去
view source
print?
1sudo vi /etc/fstab
有可能,你也需要相應調整 /dev/sda1的uuid值或其他,你可以通過下列語句來檢查並更新uuid,直到mount -a 不報錯。
view source
print?
1sudo umount -a
2sudo mount -a
7. 最終,在mount -a通過之後,使用預熱階段的命令查看一下新的設定。

rollenc@rollenc-Kubuntu:~$ df -i
檔案系統 Inode (I)已用 (I)可用 (I)已用% 掛載點
/dev/sda9 2503680 11 2503669 1% /var/www

inode值已經增加了。當然,有一些偏差,這是正常的可以接受的。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.