我使用一台vps作为演示

挂载

  1. 查看磁盘情况
    使用fdisk -l命令查看本机的所有磁盘(包括未挂载的)

    Disk /dev/vda: 10.7 GB, 10737418240 bytes, 20971520 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk label type: dos
    Disk identifier: 0x00095367
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/vda1   *        2048    19920511     9959232   83  Linux
    /dev/vda2        19920512    20969087      524288   82  Linux swap /      Solaris
    
    Disk /dev/sda: 549.8 GB, 549755813888 bytes, 1073741824 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes   

    现在我有两个磁盘,注意看 Disk /dev/vda:Disk /dev/sda:这两个. vda那个是我的os盘,里面是有分区的一些信息的, sda这个盘是我要挂载的磁盘,还没有进行分区,现在我就对这个磁盘进行挂载.

    /dev/sda这个是磁盘路径, sda代表的是我的磁盘 Linux的一个哲学就是一切皆文件, 所以这个看起来就像是一个文件一样.
    其中, 不同的vps厂商后者不同的Linux系统版本的磁盘的名字(sda)都可能不一样的, 下面的命令请不要盲目抄作业, 注意修改 (我的是sda,如果是第二块可能是sdb).
  2. 对磁盘分区(全盘)(已经分区了的可以跳过这个步骤)
    输入命令(注意替换)

    fdisk /dev/sda

    一大串信息后提示:

    Command (m for help):

    输入 n 表示新建一个分区

    然后提示要建立什么类型的分区

    Partition type:
    p   primary (0 primary, 0 extended, 4 free)
    e   extended
    Select (default p):

    p 代表建立主分区, e代表建立额外分区
    我们一般选择p建立主分区即可
    输入 p建立主分区

    然后提示输入分区号

    Partition number (1-4, default 1):

    我们直接输入1即可

    接下来提示输入起始柱面

    First sector (2048-1073741823, default 2048):

    直接回车默认(2048即可)

    接下来是输入截至柱面

    Last sector, +sectors or +size{K,M,G} (2048-1073741823, default 1073741823):

    同样回车默认即可

    最后又回到了

    Command (m for help): 

    我们输入 w 保存即可

    如果你想一个磁盘多个分区的话, 在上面输入分区号(1-4),然后在下面设置分区大小(截至柱面那输入+大小,如+50G)

    这时我们再输入fdisk -l, 发现sda已经多了一个sda1分区了

    Disk /dev/vda: 10.7 GB, 10737418240 bytes, 20971520 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk label type: dos
    Disk identifier: 0x00095367
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/vda1   *        2048    19920511     9959232   83  Linux
    /dev/vda2        19920512    20969087      524288   82  Linux swap / Solaris
    
    Disk /dev/sda: 549.8 GB, 549755813888 bytes, 1073741824 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk label type: dos
    Disk identifier: 0xbb9d9eff
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sda1            2048  1073741823   536869888   83  Linux
    

    分区完成

  3. 格式化分区
    通过上面的fdisk -l命令, 我们看到在我们的sda磁盘里有了 sda1这个分区, 输入

    mkfs.ext4 /dev/sda1

    将磁盘格式化为ext4

    输入 mkfs. ,然后再按Tab键, 即可查看支持的文件格式.
  4. 挂载磁盘
    我们把/dev/sda1挂载在/disk目录, 命令如下:

    mount -t ext4 /dev/sda1 /disk
    命令解释:
    mount -t (文件格式) /dev/(磁盘)(分区号) (挂载目录)

    挂载完成后, 使用df -h即可查看挂载情况

    Filesystem      Size  Used Avail Use% Mounted on
    /dev/sda1       504G   73M  479G   1% /disk

    看到你的磁盘代表挂载成功啦!

    输入 umount 挂载目录(或磁盘路径) 解除挂载; 加上参数 -l 可强制解除挂载

开机自动挂载

通过上面的方法挂载的磁盘在我们重启后是不会自动生效的, 需要我们将挂载的信息写入到启动文件(fstab)当中.

最好不要采用在 /etc/fstab直接指定分区(如/dev/sda1)的方法,因为设备的顺序编码在关闭或者开启服务器过程中可能发生改变,例如/dev/sda1可能会变成/dev/sda2。推荐使用UUID来配置自动挂载数据盘。

磁盘的UUID(universally unique identifier)是Linux系统为存储设备提供的唯一的标识字符串。

同样,我以要挂载/dev/sda1分区为例, 下面的命令请根据实际情况决定

  1. 查询uuid
    使用blkid查询uuid

    blkid /dev/sda1

    结果如下:

    /dev/sda1: UUID="3e6fb020-90ee-4170-b5cf-e37e1sdu2a3f" TYPE="ext4"

    意思是分区/dev/sda1的uuid是3e6fb020-90ee-4170-b5cf-e37e1sdu2a3f, 分区类型为ext4.

  2. 修改fstab文件
    首先备份启动文件,以免被我们刷坏了启动不了系统

    cp /etc/fstab /etc/fstab_bak

    然后编辑/etc/fstab文件

    vi /etc/fstab

    在末尾添加一行:

    UUID=3e6fb020-90ee-4170-b5cf-e37e1sdu2a3f /disk ext4 defaults 0 2

    请根据下面参数解释自行修改:

    UUID=3e6fb020-90ee-4170-b5cf-e37e1sdu2a3f 要挂载的磁盘分区的UUID
    /disk 挂载目录
    ext4 分区格式为ext4
    defaults 挂载时所要设定的参数(只读,读写,启用quota等),输入defaults包括的参数有(rw、dev、exec、auto、nouser、async)
    0:使用dump是否要记录,0为不需要,1为需要
    2:2是开机时检查的顺序,boot系统文件为1,其他文件系统都为2,如不要检查就为0

    修改完成后输入reboot重启,然后输入df-h测试一下吧

最后修改:2021 年 01 月 03 日 09 : 27 PM
如果觉得我的文章对你有用,请随意赞赏