Linux 磁盘分区管理

查看磁盘信息

df

列出文件系统的整体磁盘使用量

1
df -h

du

评估文件系统的磁盘使用量(常用在估计目录所占磁盘容量)

1
2
du -sh
du -sh *

fdisk

输出设备的所有分区内容和操作分区(删除,新增)

1
fdisk -l

GPT 分区

  1. 进入 parted 分区
1
parted
  1. 选择你需要操作的分区
1
select /dev/sda
  1. 设定使用的分区类型
1
mklabel gpt
  • 说明:如果要用 MBR 分区,输入 msdos 即可
  1. 添加一个分区
1
mkpart

(1) 输入分区格式,默认 ext2,回车。(此处可以随意选,之后重新格式化写入文件系统)

(2) 输入分区的开始位置,输入 1,从第 1Mb 开始(最好不要从 0 开始,这里有一个所谓的 4k 对齐得问题,有兴趣的可以了解:xxx)

(3) 输入分区从第几Mb结束,输入2000,第 2000Mb 结束(如果想要把剩余的全部挂载,请输入 -1)

(4) 此时已经分区成功,输入print查看目前分区情况

  • 或者可以通过一句命令直接创建
1
mkpart webapp 4000 10000
  • 可以设置单位
1
unit GB
  1. 删除分区
1
rm [Number]

例子

1
2
3
mkpart docker 1 400000
mkpart webapp 400000 1000000
mkpart home 1000000 -1

格式化

1
mkfs.ext4 /dev/sda1

磁盘挂载

mount

将 /dev/hda1 挂在 /mnt 之下

1
mount /dev/hda1 /mnt

umount

下面两条命令分别通过设备名和挂载点卸载文件系统,同时输出详细信息:

1
2
3
4
5
6
7
# 通过设备名卸载
# umount -v /dev/sda1
/dev/sda1 umounted

# 通过挂载点卸载
# umount -v /mnt/mymount/
/tmp/diskboot.img umounted

分区永久挂载

修改分区文件 /etc/fstab,加一行

1
/dev/sdb1   /var/www   ext4   defaults 0 1

Docker 修改默认存储位置

  1. 关闭 Docker
1
service docker stop
  1. 先创建挂载点,然后将 docker 得文件移动到目标路径
1
mv /var/lib/docker /var/lib/docker_backup
  1. 拷贝 docker 文件到 dockerdata
1
cp -rf /var/lib/docker_backup/* /var/lib/dockerdata
  1. 创建软连接,此时确保 /var/lib/docker 文件夹不存在
1
ln -s /var/lib/dockerdata /var/lib/docker
  1. Docker 重启
1
service docker restart

删除软链接注意事项

软链接创建好了,我们来看看怎么删除它

正确的删除方式(删除软链接,但不删除实际数据)

1
rm -rf  ./dockerdata

错误的删除方式

1
rm -rf ./dockerdata/

(这样就会把原来test_chk下的内容删除)

现在看到区别了吧,所以说,以后大家在用rm -rf 删除软链接时,注意了!!!!

参考资料