openSUSE Leap 15格式化挂载新分区

前言

安装系统的时候,因为有两块盘,一块机械盘sda,一块固态盘sdb。所以为了速度快,把系统安装在了固态盘中。安装的时候选择挂载了机械盘

系统安装完成后,发现,sdb正常使用,sda只使用了boot和swap两个分区,剩下的空间都没有使用。现在想的是在home目录下创建一个code目录,用来保存代码,把sda剩下的空间挂载到code下。

修改之前的状态

$ sudo fdisk -l
[sudo] password for root: 
Disk /dev/sda: 465.8 GiB, 500107862016 bytes, 976773168 sectors
Disk model: TOSHIBA DT01ACA0
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: EBE70B6B-5802-43FD-BD47-30042084360C

Device       Start       End   Sectors   Size Type
/dev/sda1     2048     18431     16384     8M BIOS boot
/dev/sda2    18432   4212735   4194304     2G Linux swap


Disk /dev/sdb: 223.6 GiB, 240057409536 bytes, 468862128 sectors
Disk model: KINGSTON SA400S3
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 8B141E9A-1AA5-46AB-916C-BA6EB2A67712

Device     Start       End   Sectors   Size Type
/dev/sdb1   2048 468862094 468860047 223.6G Linux filesystem
$ df -lh
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        3.9G     0  3.9G   0% /dev
tmpfs           3.9G     0  3.9G   0% /dev/shm
tmpfs           3.9G   18M  3.9G   1% /run
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/sdb1       224G   14G  210G   7% /
/dev/sdb1       224G   14G  210G   7% /boot/grub2/i386-pc
/dev/sdb1       224G   14G  210G   7% /srv
/dev/sdb1       224G   14G  210G   7% /opt
/dev/sdb1       224G   14G  210G   7% /var
/dev/sdb1       224G   14G  210G   7% /home
/dev/sdb1       224G   14G  210G   7% /.snapshots
/dev/sdb1       224G   14G  210G   7% /boot/grub2/x86_64-efi
/dev/sdb1       224G   14G  210G   7% /tmp
/dev/sdb1       224G   14G  210G   7% /usr/local
/dev/sdb1       224G   14G  210G   7% /root
tmpfs           791M     0  791M   0% /run/user/465
tmpfs           791M   12K  791M   1% /run/user/1000

我们可以看到sda只使用了2G多一点的空间,其余的并没有使用,df并不会显示swap和boot挂载的信息。整个系统,根目录,都挂在了sdb下。

现在我们想把sda剩下的空间挂载到/home/xxx/code下

创建分区

fdisk /dev/sda

运行fdisk,输入m,可以看到命令提示,输入n(add a new partition),然后看着提示默认就可以了,把sda剩下的空间分区到sda3,操作完成后,按照提示,输入w写入退出结束

格式化分区

分区创建完成后,需要格式化一下,如果不格式化,直接mount,会提示

mount: wrong fs type, bad option, bad superblock on /dev/sda3

通过mkfs格式化分区

mkfs -t btrfs /dev/sda3

因为opensuse默认的文件系统是btrfs,其他的分区都是btrfs,所以这里就按照默认操作

这样分区就好了,可以通过mount挂载到其他的目录,但是如果想系统启动的时候自动挂载需要修改/dev/fstab

fstab

fstab是一个描述文件系统挂载信息的文件。格式如下

$ cat /etc/fstab 
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /                       btrfs  defaults                      0  0
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /var                    btrfs  subvol=/@/var                 0  0
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /usr/local              btrfs  subvol=/@/usr/local           0  0
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /tmp                    btrfs  subvol=/@/tmp                 0  0
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /srv                    btrfs  subvol=/@/srv                 0  0
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /root                   btrfs  subvol=/@/root                0  0
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /opt                    btrfs  subvol=/@/opt                 0  0
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /home                   btrfs  subvol=/@/home                0  0
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /boot/grub2/x86_64-efi  btrfs  subvol=/@/boot/grub2/x86_64-efi  0  0
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /boot/grub2/i386-pc     btrfs  subvol=/@/boot/grub2/i386-pc  0  0
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /.snapshots             btrfs  subvol=/@/.snapshots          0  0
UUID=22b6f5df-043f-4ecf-b9dc-cff2519112a3  swap                    swap   defaults                      0  0

第一列是表示哪块分区,第二列表示挂载到哪里,第三列是文件系统,第四列是额外的配置,第五烈表示是否需要dump,第六列表示是否需要开机检查。

第一列可以写成/dev/sda3,也可以写成上面的格式。用/dev/sda3有个问题就是如果磁盘中间动过,导致/dev下的设备描述符变了,那么挂载就会出错,所以可以使用分区的UUID来标识,这样就不会担心设备描述符变化的问题。UUID从哪里可以获得呢?

$ ls -l /dev/disk/by-uuid
total 0
lrwxrwxrwx 1 root root 10 May 25 16:01 22b6f5df-043f-4ecf-b9dc-cff2519112a3 -> ../../sda2
lrwxrwxrwx 1 root root 10 May 25 15:26 b682ce97-78fe-4879-a2da-f21fbb4c116f -> ../../sdb1

在/dev/disk/by-uuid目录下,记载了对应的UUID。

最后配置

上面格式化完成分区后,通过查询对应的uuid,找到sda3的uuid,然后按照fstab的格式添加一条记录,重启,我们发现sda3分区已经挂载到code目录下了

$ ls -l /dev/disk/by-uuid
total 0
lrwxrwxrwx 1 root root 10 May 25 16:01 22b6f5df-043f-4ecf-b9dc-cff2519112a3 -> ../../sda2
lrwxrwxrwx 1 root root 10 May 25 15:26 b682ce97-78fe-4879-a2da-f21fbb4c116f -> ../../sdb1
lrwxrwxrwx 1 root root 10 May 25 16:01 e5f117b8-7464-48d3-8122-102b3e15e27a -> ../../sda3
$ cat /etc/fstab 
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /                       btrfs  defaults                      0  0
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /var                    btrfs  subvol=/@/var                 0  0
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /usr/local              btrfs  subvol=/@/usr/local           0  0
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /tmp                    btrfs  subvol=/@/tmp                 0  0
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /srv                    btrfs  subvol=/@/srv                 0  0
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /root                   btrfs  subvol=/@/root                0  0
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /opt                    btrfs  subvol=/@/opt                 0  0
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /home                   btrfs  subvol=/@/home                0  0
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /boot/grub2/x86_64-efi  btrfs  subvol=/@/boot/grub2/x86_64-efi  0  0
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /boot/grub2/i386-pc     btrfs  subvol=/@/boot/grub2/i386-pc  0  0
UUID=b682ce97-78fe-4879-a2da-f21fbb4c116f  /.snapshots             btrfs  subvol=/@/.snapshots          0  0
UUID=22b6f5df-043f-4ecf-b9dc-cff2519112a3  swap                    swap   defaults                      0  0
UUID=e5f117b8-7464-48d3-8122-102b3e15e27a  /home/arthas/code       btrfs  defaults                      0  0
$ df -lh
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        3.9G     0  3.9G   0% /dev
tmpfs           3.9G     0  3.9G   0% /dev/shm
tmpfs           3.9G   18M  3.9G   1% /run
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/sdb1       224G   14G  210G   7% /
/dev/sdb1       224G   14G  210G   7% /boot/grub2/i386-pc
/dev/sdb1       224G   14G  210G   7% /srv
/dev/sdb1       224G   14G  210G   7% /opt
/dev/sdb1       224G   14G  210G   7% /var
/dev/sdb1       224G   14G  210G   7% /home
/dev/sdb1       224G   14G  210G   7% /.snapshots
/dev/sdb1       224G   14G  210G   7% /boot/grub2/x86_64-efi
/dev/sdb1       224G   14G  210G   7% /tmp
/dev/sdb1       224G   14G  210G   7% /usr/local
/dev/sdb1       224G   14G  210G   7% /root
/dev/sda3       464G  3.8M  462G   1% /home/xxx/code
tmpfs           791M     0  791M   0% /run/user/465
tmpfs           791M   12K  791M   1% /run/user/1000
$ sudo fdisk -l
[sudo] password for root: 
Disk /dev/sda: 465.8 GiB, 500107862016 bytes, 976773168 sectors
Disk model: TOSHIBA DT01ACA0
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: EBE70B6B-5802-43FD-BD47-30042084360C

Device       Start       End   Sectors   Size Type
/dev/sda1     2048     18431     16384     8M BIOS boot
/dev/sda2    18432   4212735   4194304     2G Linux swap
/dev/sda3  4212736 976773134 972560399 463.8G Linux filesystem


Disk /dev/sdb: 223.6 GiB, 240057409536 bytes, 468862128 sectors
Disk model: KINGSTON SA400S3
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 8B141E9A-1AA5-46AB-916C-BA6EB2A67712

Device     Start       End   Sectors   Size Type
/dev/sdb1   2048 468862094 468860047 223.6G Linux filesystem

猜你喜欢

转载自www.cnblogs.com/studywithallofyou/p/12957540.html