给FreeBSD分区/var添加新硬盘

刚开始接触FreeBSD的时候,常常由于对分区大小拿捏不定,划分太小,致使服务器上/var空间不够。在生产服务器上有时候遇到这个问题,又不肯意划/usr空间给/var的话,直接加一块硬盘实际上是最简便的方式。具体操做在VMware环境中演示。
1. 测试环境:
HostOS  : WinXP
GuestOS: FreeBSD v7.2
VMware : Workstation v6.5.2-build156735
给原FreeBSD添加一块5G的IDE硬盘,VM->Settings->Add->Hard Disk。进入系统后,查看当前硬盘分区状况以下
01.# df -h
02.Filesystem     Size    Used   Avail Capacity  Mounted on
03./dev/ad0s1a    989M    126M    784M    14%    /
04.devfs          1.0K    1.0K      0B   100%    /dev
05./dev/ad0s1e    989M     12K    910M     0%    /tmp
06./dev/ad0s1f     14G    1.5G     12G    11%    /usr
07./dev/ad0s1d    500M    490M     10M    98%    /var
2. 若是安装时FreeBSD只有1块硬盘,那么在VM下新添加的硬盘设备就是是/dev/ad1。考虑将这个5G硬盘所有划分给/var,能够用sysinstall->configure->Fdisk和Label工具来操做,这里咱们选择用命令行方式操做。
01.# fidsk -BIq /dev/ad1
02.# bsdlabel -w -B /dev/ad1s1 auto
03.# newfs /dev/ad1s1a
3. 重启进入单用户模式,挂载文件系统和新添加的硬盘
01.# reboot
02.# boot -s
03.# fsck
04.# mount -a -t ufs
05.# mount /dev/ad1s1a /mnt
4. 将/var转移到新硬盘上
01.# cd /mnt
02.# dump -0af - /var | restore rf -
03.# umount /mnt
5. 编辑/etc/fstab,假设/var是划在ad0s1d,将ad0s1d改成ad1s1a。若是你的/var是别的分区请根据实际状况变更。
01.# sed -I .bak 's/ad0s1d/ad1s1a/' /etc/fstab
6. 重启并肯定一切正常后,删除备份文件
01.# reboot
02.# tail -f /var/log/messeges
03.# rm /etc/fstab.bak
04.# rm /var/restoresymtable
05.# df -h
06.Filesystem     Size    Used   Avail Capacity  Mounted on
07./dev/ad0s1a    989M    126M    784M    14%    /
08.devfs          1.0K    1.0K      0B   100%    /dev
09./dev/ad0s1e    989M     16K    910M     0%    /tmp
10./dev/ad0s1f     14G    1.5G     12G    11%    /usr
11./dev/ad1s1     4.8G    490M    4.1G    10%    /var
写在最后: 01.# 若是是旧硬盘,最好先清除原有分区表 02.# dd if=/dev/zero of=/dev/ad1 bs=1k count=1  03.# bsdlabel简单用法 04.# bsdlabel -A ad0s1          //输出ad0 slice1的分区信息 05.# bsdlabel -e ad0s1          //用vi手工ad0 silce1编辑分区信息 06.# bsdlabel -R labelfile      //能够先bsdlabel -A ad0s1 > syslabel保存当前分需信息,若是出错,再用-R导入
相关文章
相关标签/搜索