银河麒麟v10 sp1更改data目录挂载
新增一台国产计算机,用的D3000处理器,8G内存,256G固态+1T机械硬盘。打开后发现1T硬盘没有分区,看来供货商用了克隆方式初始化安装了系统,方便安装提供的软件。但是母盘应该没有1T所以,出现了这个问题。
这个问题可以通过给1T硬盘分区后,复制原分区内容到新分区,修改mount挂载配置文件fstab来改变原挂在到新分区。
1. 用fdisk -l 命令查看,可以看到/data目录挂载到了固态分区上。对于银河麒麟系统,/data包含所有用户目录,把传统的/root、/home 目录挂载到了这个目录下。
2. 先利用fdisk /dev/sda 命令对1T硬盘分区。进入fdisk对话后,按g建立gpt分区表;按n新建分区,这里只见一个分区即sda1;按w写入信息,并退出。
3. 用mkfs.ext4 /dev/sda1 命令,格式化之前的分区。
4. 这里要复制原分区文件,可以用dd和partclone,都是文件块复制,可以完整复制原分区内容,partclone应该更快会自动判断文件块状态再复制。这里用dd if=/dev/nvxx out=/dev/sda1 bs=4M status=progress 命令把之前/data挂载点分区复制到1T硬盘新建的分区上。这里有个缺点,dd会把原分区信息完整复制到新分区,包括分区大小和uuid,增加了一些处理麻烦。还需要用tune2fs 命令修改uuid、用resize2fs命令扩充新分区,比较麻烦不是很理想。
5. 可以建一个目录,如/mnt/test,然后用mount /dev/sda1 /mnt/test 挂载目录,在test中可看到已经复制成功。(dd会导致新分区和旧分区uuid、分区大小一致,不是想要的,不是最好的结果。还需要修改uuid,重新resize2fs新分区)
6. 用blkid查看新增分区的uuid,用vi /etc/fstab 命令修改fstab,把里面/data挂载点的uuid修改成新分区,重启后。
