最近在处理的服务器硬盘占用已经达到91了,为了防止磁盘因存储不足而挂掉,特此,打算将一些不常用而占内存多的东西挂载到别的地方去。为了与原来的路径保持一直,可能还要加个软连接或者硬连接,为了防止出问题,现在虚拟机上测试。

挂载硬盘

添加硬盘

虚拟机添加硬盘很简单,本来不想多说了,还是贴一张图,让不会的人看看怎么添加。如下:在设置中点击添加,选择硬盘,然后一直下一步,就能得到一个名字为磁盘2的硬盘。
在这里插入图片描述

初始化分区

查看硬盘分区情况,命令fdisk -l为了方便阅读,以下展示内容仅展示主要分区信息

[root@localhost ~]# fdisk -l

磁盘 /dev/sda:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000ccdc3

   设备 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200    41943039    19921920   8e  Linux LVM

磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x881d3f29

   设备 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048    41943039    20970496   83  Linux

...

磁盘 /dev/sda是原来的磁盘,存在两个分区,是/dev/sda1/dev/sda2.
磁盘 /dev/sdb是新增的磁盘,存在一个分区,是/dev/sdb1

删除分区

为了从头开始,我们这里先删除已有的分区/dev/sdb1,命令如下:

#进入新磁盘sdb的分区操作
[root@localhost ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

#此处输入m获取相关指令信息
命令(输入 m 获取帮助):m
命令操作
   a   toggle a bootable flag
   b   edit bsd disklabel
   c   toggle the dos compatibility flag
   d   delete a partition
   g   create a new empty GPT partition table
   G   create an IRIX (SGI) partition table
   l   list known partition types
   m   print this menu
   n   add a new partition
   o   create a new empty DOS partition table
   p   print the partition table
   q   quit without saving changes
   s   create a new empty Sun disklabel
   t   change a partition's system id
   u   change display/entry units
   v   verify the partition table
   w   write table to disk and exit
   x   extra functionality (experts only)

#删除分区
命令(输入 m 获取帮助):d
已选择分区 1
分区 1 已删除

#保存对分区的更改
命令(输入 m 获取帮助):w
The partition table has been altered!

在新增的硬盘操作新的分区只需要以上四个指令就可以,说明一下各个指令的含义:

   d   delete a partition(删除一个分区)
   n   add a new partition(新增一个分区)
   q   quit without saving changes(退出并对修改不做保存)
   w   write table to disk and exit(保存并退出)

新增分区

新增分区命令:

[root@localhost ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

# 创建一个新的分区
命令(输入 m 获取帮助):n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
   
#设置分区属性为主分区
Select (default p): p
#分区编号设置为1
分区号 (1-4,默认 1):1
#设置扇区的起始位置和结束位置
起始 扇区 (2048-41943039,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):
将使用默认值 41943039
分区 1 已设置为 Linux 类型,大小设为 20 GiB
#保存更改并退出
命令(输入 m 获取帮助):w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: 设备或资源忙.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
正在同步磁盘。

注意:由于我是将整个磁盘作为一个分区使用,所以此处对扇区按默认设置,即所有扇区都分给分区1,如果想分多个分区,可写入不同的扇区位置或设置具体的大小(单位K/M/G)

查看硬盘分区

通过命令查看分区情况,命令如下:

[root@localhost ~]# fdisk -l

磁盘 /dev/sda:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000ccdc3

   设备 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200    41943039    19921920   8e  Linux LVM

磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x881d3f29

   设备 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048    41943039    20970496   83  Linux

由以上输出可以看到,我们成功新增了一个分区/dev/sdb1

分区挂载到路径

既然新增了分区,我们接着要做的事情就是把分区和对应的目录关联起来,永久设置方式为编辑/etc/fstab文件:

[root@localhost /]# vim /etc/fstab 
#在最后一行加上
 /dev/sdb1       /home/iceter      ext3   defaults   1 1

参数说明: /dev/sdb1 /home/iceter ext3 defaults 1 1

参数解释
/dev/sdb1分区
/home/iceter对应的文件夹
ext3挂载类型

挂载及卸载命令如下:

#挂载
mount /dev/sdb1 /home/iceter
#卸载
umount /dev/sdb1 /home/iceter

然后要做软硬连接的时候发现不适用就作罢了,还是放上命令,以供不时之需,如下:

#硬连接
[root@localhost iceter]# ln iceter.out iceter
#软连接
[root@localhost iceter]# ln -s iceter iceters
[root@localhost iceter]# ls -li
总用量 2050008
11 -rw-r--r--. 2 root root 1048576000 223 17:07 iceter
11 -rw-r--r--. 2 root root 1048576000 223 17:07 iceter.out
12 lrwxrwxrwx. 1 root root          6 223 17:16 iceters -> iceter

**注意:

  1. 硬连接只能对文件使用,对文件夹无效,且不能跨设备使用。
  2. 软连接对文件文件夹有效。**
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐