linux文件系统一---磁盘挂载的学习

来源:互联网 发布:苹果电脑强制装windows 编辑:程序博客网 时间:2024/06/03 19:29

磁盘挂载的步骤如下:

关闭服务器加上新硬盘---》启动服务器,查看系统内有几块盘---》对磁盘进行分区---》对分好的区进行格式化---》挂载到文件系统---》设置开机自动加载

1、查看系统内有几块盘

fdisk -l

[root@git ~]# fdisk -lDisk /dev/sda: 1000.2 GB, 1000204886016 bytes, 1953525168 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 4096 bytesI/O size (minimum/optimal): 4096 bytes / 4096 bytesDisk label type: dosDisk identifier: 0x0a079ed2   Device Boot      Start         End      Blocks   Id  System/dev/sda1            2048      821247      409600   de  Dell Utility/dev/sda2          821248     7112703     3145728    c  W95 FAT32 (LBA)/dev/sda3   *     7112704     8136703      512000   83  Linux/dev/sda4         8136704  1953525167   972694232    5  Extended/dev/sda5         8138752  1953523711   972692480   8e  Linux LVMDisk /dev/sdb: 1000.2 GB, 1000204886016 bytes, 1953525168 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 4096 bytesI/O size (minimum/optimal): 4096 bytes / 4096 bytesDisk /dev/mapper/centos-swap: 3145 MB, 3145728000 bytes, 6144000 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 4096 bytesI/O size (minimum/optimal): 4096 bytes / 4096 bytesDisk /dev/mapper/centos-root: 1993.1 GB, 1993091317760 bytes, 3892756480 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 4096 bytesI/O size (minimum/optimal): 4096 bytes / 4096 bytes
可以看出,目前服务器一共连着四块盘,分别为/dev/sda、/dev/sdb、/dev/mapper/centos-swap、/dev/mapper/centos-root

2、对磁盘进行分区

磁盘分区即是指定操作系统在写入文件时的开始与结束的区域(实际上是磁柱)范围,因此一块磁盘是一定要进行分区的,哪怕你只分一个区。各分区范围的数据记录在磁盘第一个扇区的分区表中,因为分区表大小为64byte有限,最多只能记录4个范围段,因此一个盘实际上只能分四个区。这四个区称之为主要分区和延伸分区,延伸分区还可以划分为逻辑分区。

能被格式化的只有主要分区和逻辑分区。逻辑分区的数量根据操作系统不同,IDE硬盘最多有59个(5号到63号),SATA硬盘则有11个(5号到15号)。

fdisk  /dev/sdb    ##对磁盘sdb进行分区

[root@git ~]# fdisk /dev/sdbWelcome to fdisk (util-linux 2.23.2).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 tableBuilding a new DOS disklabel with disk identifier 0x4d5f82a7.The device presents a logical sector size that is smaller thanthe physical sector size. Aligning to a physical sector (or optimalI/O) size boundary is recommended, or performance may be impacted.Command (m for help): n     ###输入n为增加一个分区Partition type:   p   primary (0 primary, 0 extended, 4 free)   e   extendedSelect (default p): p     ###选择是创建主要分区还是扩展分区,这里不输入直接回车则默认为PPartition number (1-4, default 1):     ###输入分区的编号,不输入默认为1First sector (2048-1953525167, default 2048):   ###输入开始的扇区编号,不输入为默认为从第一个开始,默认的编码为2048Using default value 2048Last sector, +sectors or +size{K,M,G} (2048-1953525167, default 1953525167): ###输入结束的扇区编号,不输入默认为最后一个Using default value 1953525167Partition 1 of type Linux and of size 931.5 GiB is set  Command (m for help): p    ###输入p则展示当前的分区信息Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes, 1953525168 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 4096 bytesI/O size (minimum/optimal): 4096 bytes / 4096 bytesDisk label type: dosDisk identifier: 0x4ab65fd4   Device Boot      Start         End      Blocks   Id  System/dev/sdb1            2048  1953525167   976761560   83  LinuxCommand (m for help): q   ###输入w则保存分区信息,q则退出不保存信息

3、对分区进行格式化

在操作系统中,除了文件数据这些实际内容外, 通常还有很多属性,如文件权限(rwx)与文件属性(所有者、群组、时间参数等)。 文件系统通帯会将这两部分数据分别存放在不同的区块,权限不属性放置到 inode中,至于实际数据则放置到 data block 区块中。 另外,还有一个超级区块 (superblock) 会记彔整个文件系统的整体信息,包括 inode 与block 的总量、使用量、剩余量等。

这就是为什么需要对存储数据的分区进行格式化,就是因为每个操作系统所设定的文件属性与权限都不相同,为了存放这些文件的数据,就需要对存储数据的分区进行格式化,使之成为一个文件系统,可以存储数据。

PS:linux使用的是EXT2、EXT3等文件系统。此外,传统的磁盘与文件系统的应用中,一个分区就是能够被格式化成为一个文件系统,所以我们可以说一个filesystem 就是一个 partition。但是由于新技术的利用,例如 LVM 与软件磁盘阵列(software raid), 这些技术可以将一个分区格式化为多个文件系统(例如 LVM),也能够将多个分区合成一个文件系统(LVM, RAID)! 所以说,目前我们在格式化时已经不再说成针对 partition 来格式化了, 通帯我们可以称呼一个可被挂载的数据为一个文件系统而不是一个分区。

mkfs  [-t    文件系统格式]  磁盘分区名     ##此命令用来格式化分区

mkfs[tab][tab]    ##此命令可以显示出mkfs所能支持的文件系统格式

[root@git ~]# mkfsmkfs         mkfs.btrfs   mkfs.cramfs  mkfs.ext2    mkfs.ext3    mkfs.ext4    mkfs.fat     mkfs.gfs2    mkfs.minix   mkfs.msdos   mkfs.vfat    mkfs.xfs
mkfs.ext3  /dev/sdb1  等同于  mkfs -t ext3 /dev/sdb1

4、挂载分区

挂载分区就是将分区挂载到某一目录上,有几点需要注意的:

单一文件系统不应该被重复挂载到不同的挂载点上;单一目录不应该重复挂载多个文件系统;要作为挂载点的目录,理论上都应该是空目录才可以。尤其后两条,若目录不为空的就进行挂载,则会导致挂载后,该目录下原有的文件及目录找不到。例如当前的/dev/sda1挂载在/下,而现在我要把/dev/sda2挂载到/home上,则/home下原有的文件就找不到了,这些文件是被隐藏而不是消失,当卸载掉/sda2后又会出现。

mkdir  /data     ##创建data目录

mount   /dev/sdb1   /data  挂载sdb1到/data目录

df  -h    ##查看是否挂载成功

vim  /etc/fstab    ##因为mount挂载在重启服务器后会失效,所以需要将分区信息写到/etc/fstab文件中让它永久挂载

/dev/mapper/centos-root /          xfs     defaults        1  1/dev/sdb1   /data            ext3     defaults        1  2

PS:格式说明:/dev/sdb1 代表哪个分区;/data为挂载点; ext3是该分区的文件系统格式; defaults 是挂载时所要设定的参数(只读,读写,启用quota等),输入defaults包括的参数有(rw、dev、exec、auto、nouser、async) ,一般默认即可;1是要进行dump备份,0是不要dump备份,一般为0即可; 2是开机时以fsck检查filesystem是否完整,是boot系统文件就为1(最早检验),其他文件系统都为2(也要检验,但顺序在1之后),如不要检验就为0)

PS:由此可见,若将一个目录例如/home进行扩容,则必须先拷贝该目录下的东西,然后删除/home下的所有内容,然后再挂载一个新的分区到/home目录,再把备份的文件拷贝过来。

5、磁盘挂载的一些命令

umount  /dev/sda1    ##卸载sda1分区

mount    ##查看所有的挂载情况





阅读全文
0 0
原创粉丝点击