资讯详情

资讯详情

Ubuntu linux ssd 硬盘分区对齐配置和 xfs 文件系统 docker 限额

1、分区对齐配置好的 我给你整理一个完整流程假设你要用整个盘/dev/nvme0n1并挂载到/var/lib/docker⚠️注意以下操作会清空磁盘上所有数据请确认/dev/nvme0n1没有需要保留的数据1. 创建分区并 1MiB 对齐disknvme0n1sudoparted/dev/$disk--scriptmklabel gptsudoparted/dev/$disk--scriptmkpart primary xfs 1MiB100%这样会创建一个 GPT 分区表并新建一个对齐到 1MiB 的分区/dev/nvme0n1p1。你可以用lsblk查看结果。2. 格式化为 XFSdiskpnvme0n1p1sudomkfs.xfs-f/dev/$diskp需要启用 bigtime1 自行如下命令参考 xfs 格式化启用 bigtime1 或者已经格式化后修改sudomkfs.xfs-mbigtime1-f/dev/$diskp3. 创建挂载点sudomkdir-p/var/lib/docker4. 获取分区的 UUIDdiskpnvme0n1p1sudoblkid /dev/$diskp输出类似/dev/nvme0n1p1: UUIDabcd-1234-efgh-5678 TYPExfs5. 配置/etc/fstab自动挂载编辑/etc/fstabsudonano/etc/fstab在最后加一行UUIDabcd-1234-efgh-5678 /var/lib/docker xfs defaults00如果想对 docker 盘做容量限制加如下参数UUIDabcd-1234-efgh-5678 /var/lib/docker xfs defaults,uquota,pquota016. 挂载生效sudomount-a确认挂载df-hT|grepdocker这样/dev/nvme0n1就会对齐分区、格式化成 XFS并挂载到/var/lib/docker重启后也会自动挂载。要不要我帮你写成一段Ansible playbook task这样你在多台服务器上也能自动完成2、如何查看是否分区对齐分区对齐主要是看分区起始位置是否是 1MiB 的整数倍常见标准对齐方式。你可以用下面几种方法确认1.lsblk -o NAME,START,SIZElsblk-oNAME,START,SIZE /dev/nvme0n1示例输出NAME START SIZE nvme0n1 3.5T └─nvme0n1p1 2048 3.5TSTART2048表示分区起始扇区号是 2048一般磁盘扇区大小是 512B所以 2048 * 512B 1MiB→ 对齐正确。2. 使用parted的 align-checksudoparted/dev/nvme0n1 align-check optimal11代表检查第一个分区如果输出1 aligned说明分区对齐良好如果输出not aligned就需要重新分区3. 查看详细分区表sudofdisk-l/dev/nvme0n1输出里会显示分区起始扇区例如Device Start End Sectors Size Type /dev/nvme0n1p1 2048 732566646 732564599 3.5T Linux filesystem这里 Start2048 → 正好是 1MiB 对齐。总结看起始扇区号是否是 2048或 4096、8192 这种 2^n 倍数就说明对齐到 1MiB。最稳妥的命令是parted/dev/nvme0n1 align-check optimal1要不要我帮你写一个一键检测脚本能自动检查所有分区是否对齐3、如果 lsblk 查看分区是否对齐报错解决lsblk -o NAME,START,SIZE /dev/nvme0n1lsblk: unknown column: START,SIZE啊明白了 你的系统里lsblk版本比较旧不支持START,SIZE这些列。没关系可以换其他办法方法 1:lsblk -t试试lsblk-t/dev/nvme0n1在某些版本会显示分区的扇区信息但不同发行版差异大。方法 2:fdisk最通用的办法sudofdisk-l/dev/nvme0n1示例输出Device Boot Start End Sectors Size Id Type /dev/nvme0n1p1 2048 732566646 732564599 3.5T 83 Linux这里Start2048扇区大小默认是 512 字节所以起点 2048 × 512 1MiB说明分区对齐。方法 3:partedsudoparted/dev/nvme0n1 unit s print输出类似Number Start End Size Type 1 2048s 732566645s 732564598s primary起始扇区号是2048s同样代表 1MiB 对齐。方法 4: 自动检查对齐sudoparted/dev/nvme0n1 align-check optimal1如果返回1 aligned说明分区对齐良好。 建议你先跑一遍sudofdisk-l/dev/nvme0n1我可以帮你解读输出看看/dev/nvme0n1p1是否真的 1MiB 对齐。要不要你把fdisk -l /dev/nvme0n1的输出贴给我我帮你判断
觉得有用,分享给同行:

为您的企业打造数字门面

稳重轻奢商务风格,端正雅致视觉,长效耐看不易过时。

立即咨询 →