上一篇文中提到了使用mount命令挂载文件系统
添加硬盘设备在mac系统中,使用vmware function进行操作演示。
在虚拟机中模拟添加了硬盘设备后就应该能看到抽象后的硬盘设备文件了。按照udev服务命名规则,第二个被识别的SATA设备应该会被保存为/dev/sdb,这个就是硬盘设备文件了。但在开始使用该硬盘之前还需要进行分区操作,例如从中取出一个2GB的分区设备以供后面的操作使用。
fdisk命令用于新建、修改及删除磁盘的分区表信息,英文全称为“format disk”,语法格式为“fdisk磁盘名称”。
在Linux系统中,管理硬盘设备最常用的方法就当属fdisk命令了。它提供了添加、删除、转换分区等功能。
参数作用m查看全部可用的参数n添加新的分区d删除某个分区信息l列出所有可用的分区类型t改变某个分区的类型p查看分区表信息w保存并退出q不保存直接退出[root@Dapeng ~]# fdisk /dev/sdbWelcome to fdisk (util-linux 2.32.1).Changes will remain in memory only, until you decide to write them.Be careful before using the write command.Device does not contain a recognized partition table.Created a new DOS disklabel with disk identifier 0x88b2c2b0.Command (m for help): pDisk /dev/sdb: 20 GiB, 21474836480 bytes, 41943040 sectorsUnits: sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisklabel type: dosDisk identifier: 0x88b2c2b0Command (m for help): nPartition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions)Select (default p): pPartition number (1-4, default 1): 1# 起始的扇区位置,默认即可First sector (2048-41943039, default 2048): 此处敲击回车即可Last sector, +sectors or +size{K,M,G,T,P} (2048-41943039, default 41943039): +2G# 输入+2G,是为了创建出一个容量为2GB的硬盘分区Created a new partition 1 of type 'Linux' and of size 2 GiB.
执行完毕之后,Linux系统会自动把这个硬盘主分区抽象成/dev/sdb1设备文件。随后,重启系统,使用file命令查看该文件的属性。
[root@Dapeng ]# file /dev/sdb1/dev/sdb1: block special
接下来,只有执行格式化操作才能写入数据,使用mkfs命令进行格式化操作,将分区为XFS的文件系统进行格式化。
[root@Dapeng ~]# mkfs.xfs /dev/sdb1meta-data=/dev/sdb1 isize=512 agcount=4, agsize=131072 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=1, sparse=1, rmapbt=0 = reflink=1data = bsize=4096 blocks=524288, imaxpct=25 = sunit=0 swidth=0 blksnaming =version 2 bsize=4096 ascii-ci=0, ftype=1log =internal log bsize=4096 blocks=2560, version=2 = sectsz=512 sunit=0 blks, lazy-count=1realtime =none extsz=4096 blocks=0, rtextents=0
完成了存储设备的分区和格式化操作之后,接下来就是要来挂载并使用存储设备了。与之相关的步骤也非常简单:首先是创建一个用于挂载设备的挂载点目录;然后使用mount命令将存储设备与挂载点进行关联;最后使用df -h命令来查看挂载状态和硬盘使用量信息。
[root@Dapeng ~]# mkdir /newFS[root@Dapeng ~]# mount /dev/sdb1 /newFS[root@Dapeng ~]# df -hFilesystem Size Used Avail Use% Mounted ondevtmpfs 969M 0 969M 0% /devtmpfs 984M 0 984M 0% /dev/shmtmpfs 984M 9.6M 974M 1% /runtmpfs 984M 0 984M 0% /sys/fs/cgroup/dev/mapper/rhel-root 17G 3.9G 14G 23% //dev/sr0 6.7G 6.7G 0 100% /media/cdrom/dev/sda1 1014M 152M 863M 15% /boottmpfs 197M 16K 197M 1% /run/user/42tmpfs 197M 3.5M 194M 2% /run/user/0/dev/sdb1 2.0G 47M 2.0G 3% /newFS
du命令在Linux系统中可以使用du -sh /*命令来查看在Linux系统根目录下所有一级目录分别占用的空间大小,在1s之内就能找到哪个目录占用的空间最多。
[root@Dapeng ~]# du -sh /*0/bin113M/boot0/dev29M/etc12K/home0/lib0/lib646.7G/media0/mnt0/newFS0/opt0/proc8.6M/root9.6M/run0/sbin0/srv0/sys12K/tmp3.5G/usr155M/var
添加交换分区交换(SWAP)分区是一种通过在硬盘中预先划分一定的空间,然后把内存中暂时不常用的数据临时存放到硬盘中,以便腾出物理内存空间让更活跃的程序服务来使用的技术,其设计目的是为了解决真实物理内存不足的问题。通俗来讲就是让硬盘帮内存分担压力。但由于交换分区毕竟是通过硬盘设备读写数据的,速度肯定要比物理内存慢,所以只有当真实的物理内存耗尽后才会调用交换分区的资源。
交换分区的创建过程和前面相似,同样是是使用fdisk命令对 /dev/sdb 存储设备进行分区操作。此处省略操作。在创建完成后,要使用mskwap命令进行格式化。
mkswap命令、swapon命令mkswap用于对新设备进行交换分区格式化
mkswap 设备名称
swapon命令用于激活新对交换分区
swapon 设备名称
格式化并激活后,我们可以使用free命令来查看效果
软硬方式链接链接(soft link):也叫符号链接(symbolic link),仅仅包含所链接文件的名称和路径,很像一个记录地址的标签。当原始文件被删除或移动后,新的链接文件也会随之失效,不能被访问。可以针对文件、目录设置软链接,跨文件系统进行链接也不是问题。从这一点来看,它与Windows系统的“快捷方式”具有一样的性质。
硬链接(hard link):可以将它理解为一个“指向原始文件block的指针”,系统会创建出一个与原来一模一样的inode信息块。所以,硬链接文件与原始文件其实是一模一样的,只是名字不同。每添加一个硬链接,该文件的inode个数就会增加1;而且只有当该文件的inode个数为0时,才算彻底将它删除。换言之,由于硬链接实际上是指向原文件block的指针,因此即便原始文件被删除,依然可以通过硬链接文件来访问。需要注意的是,由于技术的局限性,不能跨分区对目录文件进行硬链接。
ln命令ln命令用于创建文件的软硬链接,英文全称为“link”,语法格式为“ln [参数]原始文件名 链接文件名”。
参数作用-s创建“符号链接”(如果不带-s参数,则默认创建硬链接)-f强制创建文件或目录的链接-i覆盖前先询问-v显示创建链接的过程