練功房推薦書單

  • Google!Android 3手機應用程式設計入門(第四版)
  • 賈伯斯傳(軟皮精裝版)
  • 猛虎出閘制霸版:最新OCP Java SE 6 Programmer專業認證(附原始程式碼及範例檔)
  • SCWCD 5 猛虎出閘:Java Web 應用程式專業認證
[Linux]如何修改/etc/fstab中LABEL=/1, LABEL=/boot1等為LABEL=/, LABEL=/boot  XML
Forum Index » Linux
Author Message
andowson

六段學員
[Avatar]

Joined: 2007-01-02 22:20:40
Messages: 652
Location: 台北
Offline

如果我們在同一部Linux主機上,重複安裝作業系統兩次以上,就會遇到這個「現象」(可能有些人不認為是個問題)
[root@www ~]# cat /etc/fstab
LABEL=/1                /                       ext3    defaults        1 1
LABEL=/home1            /home                   ext3    defaults        1 2
LABEL=/usr1             /usr                    ext3    defaults        1 2
LABEL=/var1             /var                    ext3    defaults        1 2
LABEL=/boot1            /boot                   ext3    defaults        1 2
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
LABEL=SWAP-hda6         swap                    swap    defaults        0 0

每個標籤(LABEL)後面都多了一個1,有些人比較隨便可能可以接受,有些人像我比較追求完美就會覺得有點瑕疵,想要將這個多餘的1去除掉。
可是難道要重新再安裝一次嗎?重新安裝一次就可以解決嗎?答案是不用跟不一定。
以下是我試出來的方法:
首先先找出每個掛載點的硬碟分割名稱
[root@www ~]# df -h
檔案系統              容量  已用 可用 已用% 掛載點
/dev/hda5             3.9G  713M  3.0G  19% /
/dev/hda7              24G  173M   23G   1% /home
/dev/hda3             3.9G  1.2G  2.5G  33% /usr
/dev/hda2             3.9G  239M  3.5G   7% /var
/dev/hda1              99M   17M   78M  18% /boot
tmpfs                 189M     0  189M   0% /dev/shm

我們可以發現 / 對應到/dev/hda5分割區,而 / 在/etc/fstab中的LABEL是/1
利用修改硬碟標籤的指令e2label,我們可以將它們依序修改成我們想要的標籤名稱
e2label /dev/hda5 /
e2label /dev/hda7 /home
e2label /dev/hda3 /usr
e2label /dev/hda2 /var
e2label /dev/hda1 /boot

smilie 在重新開機前,記得修改/etc/grub.conf
[root@www ~]# vi /etc/grub.conf
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd0,0)
#          kernel /vmlinuz-version ro root=/dev/hda5
#          initrd /initrd-version.img
#boot=/dev/hda
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.18-128.el5)
        root (hd0,0)
        kernel /vmlinuz-2.6.18-128.el5 ro root=LABEL=/1
        initrd /initrd-2.6.18-128.el5.img

將LABEL=/1改為LABEL=/
存檔後,再執行
sync;sync;sync
reboot
這樣子就可以正常開機了

[障礙排除]
如果您忘了修改這個/etc/grub.conf而造成無法正常開機時,可以拿出安裝光碟片的第一片
用光碟開機後,輸入linux rescue
在開機完成後,系統會將目前的root partition掛載到/mnt/sysimage
所以我們可以
cd /mnt/sysimage/etc
vi grub.conf
將LABEL=/1修正為LABEL=/
存檔後再重新開機即可。

分享經驗 累積智慧
[WWW] [MSN]
 
Forum Index » Linux
Go to: