磁盘管理第一章
对于非系统所在硬盘,内核自动更新分区表,而对于系统所在硬盘,不能直接列新,要使用以下命令
通知内核读取分区表
cenots5\centos7: partprobe (centos6不可用)
centos6:partx -a /dev/sda 添加
partx -d --nr /dev/sda7 删除
查看系统分区:fdisk -l 或者 lsblk
新加硬盘到服务器后,首先需要设置硬盘类型,可用命令:
parted /dev/sdb mklabel msdos/gpt
msdos分区只可以四个主分区或者三个主分区和一个扩展分区(可以分为多个逻辑分区)
gpt 分区可以创建128个分区,不分主分区和扩展分区
parted设置分区分交互式和非交互式,下面简单描述非交互式分区
①首先设置分区 parted /dev/sdb mkpart primary 1 2G........../dev/sdb1
parted /dev/sdb mkpart primary 2G 4G......../dev/sdb2
parted /dev/sdb mkpart primary 4G 8G......../dev/sdb3
parted /dev/sdb mkpart extended 8G 21.5G..../dev/sdb4
parted /dev/sdb mkpart logical 8G10G........./dev/sdb5
parted /dev/sdb mkpart logical 10G 14G....../dev/sdb6
②接着我们要格式化硬盘,可用mkfs(make file system)命令
mkfs.xfs /dev/sdb1
mkfs.ext4 /dev/sdb2
3.选择挂载点,也可以新建目录
mkdir /home/haha
mount /dev/sdb1 /home/haha
卸载用 umount /dev/sdb1
若新硬盘挂载在已存在的挂载点上会将原先的磁盘数据隐藏,因为挂载点只会指向新的device。若不想隐藏可以跳板的方式复制原先的数据到其他分区下。比如:
mkdir /new ###跳板目录
mount /dev/sdb1 /new ###首先挂载跳板目录
cp -R /home/ /new ###复制/home目录所有数据到/new先
rm -rf /home/ ####可选,主要为了腾出空间给原来的硬盘
mount /dev/sdb1 /home ###挂载/home 到新硬盘,此时你会神奇的发现之前的/home目录文件已经全部转移过来了,也许你会有点疑问,我并没有复制或移动/new文件到新挂载的/home目录啊,其实此时的/home目录相当于/new目录的硬链接,可以测试下mkdir /new/test 你会发现/home目录也存在test
umount /new ###解除挂载
rm -rf /new ###删除跳板目录
echo "/dev/sdb1 /home ext3 defaults 0 0" >> /etc/fstab ###开机启动挂载目录
原文地址:http://blog.51cto.com/13767700/2128406