fstab文件的作用和格式

fstab文件的作用和格式,第1张

文件/etc/fstab存放的是系统中的文件系统信息。当正确的设置了该文件,则可以通过"mount /directoryname"命令来加载一个文件系统,每种文件系统都对应一个独立的行,每行中的字段都有空格或tab键分开。同时fsck、mount、umount的等命令都利用该文件。

The fstab (or file systems table ) file is a system configuration file commonly found at /etc/fstab on Unix and Unix-like computer systems. In Linux it is part of the util-linux package. The fstab file typically lists all available disk partitions and other types of file systems and data sources that are not necessarily disk-based, and indicates how they are to be initialized or otherwise integrated into the larger file system structure.

The fstab file is read by the mount command, which happens automatically at boot time to determine the overall file system structure, and thereafter when a user executes the mount command to modify that structure. It is the duty of the system administrator to properly create and maintain the fstab file.

While fstab is still used for basic system configuration, for other uses it has been superseded by automatic mounting mechanisms.

The file has other names on some versions of Unixfor example, it is found at /etc/vfstab on Solaris systems.

The fstab file is read by programs that work with disk partitions and other file systems and is not automatically maintained . Instead it is written by the system administrator or sometimes by an operating system installation program.

各列含义:

Linux下手动设置Windows磁盘挂载点

我的笔记本是同时装了Linux系统和Windows系统。Linux系统启动后,Windows磁盘就会自动挂载在/media目录下,而且挂载点的名称又长又难记。例如,windows系统C盘挂载后名称变为FE6C0C5C6C0C1257。如果windows系统总共有好几个盘,那么挂载后,就是一堆字符串,很难分辨到底各自对应哪个盘。于是,我决定手动修改磁盘挂载点。

首先,执行命令“sudo fdisk -l”,显示系统存在的各个磁盘分区信息如下所示:

Device Boot Start End Blocks Id System

/dev/sda1 * 1 2150 17269843 7 HPFS/NTFS

/dev/sda2 2151 14593 99948367 5 Extended

/dev/sda5 2151 4802 21302158+ 7 HPFS/NTFS

/dev/sda6 7414 14593 57673318+ 7 HPFS/NTFS

/dev/sda7 4803 5051 1998848 82 Linux swap / Solaris

/dev/sda8 5052 7413 18971648 83 Linux

由于我的windows系统总共有3个盘:C盘,D盘,E盘,且都是NTFS格式,所以“/dev/sda1”应该对应C盘,“/dev/sda5”应该对应D盘,“/dev/sda6”应该对应E盘。C盘是windows *** 作系统,一般不需要访问。只需要重新挂载D盘和E盘即可。于是我使用mkdir命令在"/home/cary"(cary为我的用户名)目录下创建了programFiles和myDocuments两个目录分别作为D盘和E盘的挂载点(实际上这两个目录的名字是可以随意命名的)。

执行“sudo gedit /etc/fstab”打开fstab文件。参照文件中提示的格式,在文件最后添加下面两行语句:

/dev/sda5 /home/cary/programFiles ntfs defaults,user,rw 0 0

/dev/sda6 /home/cary/myDocuments ntfs defaults,user,rw 0 0

保存该文件后,先执行"sudo umount -a"命令卸载各磁盘,再执行“sudo mount -a”重新挂载所有磁盘。则D盘和E盘就都挂载在指定路径下了。通过“~/programFiles”和“~/myDocuments”两个路径就能访问。

下面对fstab文件作简单介绍。

文件/etc/fstab存放的是系统中的文件系统信息。当正确的设置了该文件,则可以通过mount /directoryname命令来加载一个文件系统,每种文件系统都对应一个独立的行,每行中的字段都有空格或tab键分开。

fstab文件格式示例如下:

fs_spec fs_file fs_type fs_options fs_dump fs_pass

/dev/hda1 / ext2 defaults 1 1

fs_spec - 该字段定义希望加载的文件系统所在的设备或远程文件系统,对于一般的本地块设备情况来说:IDE设备一般描述为/dev/hdaXN,X是IDE设备通道 (a, b, or c),N代表分区号;SCSI设备一描述为/dev/sdaXN。

fs_file - 该字段描述希望的文件系统加载的目录点,对于swap设备,该字段为none;对于加载目录名包含空格的情况,用40来表示空格。

fs_type - 定义了该设备上的文件系统,一般常见的文件类型为ext2 (Linux设备的`常用文件类型)、vfat(Windows系统的fat32格式)、NTFS、iso9600等。

fs_options - 指定加载该设备的文件系统是需要使用的特定参数选项,多个参数是由逗号分隔开来。对于大多数系统使用defaults就可以满足需要。其他常见的选项包括:rw 以读写模式加载该文件系统;user 允许普通用户加载该文件系统。

fs_dump - 该选项被dump命令使用来检查一个文件系统应该以多快频率进行转储,若不需要转储就设置该字段为0

fs_pass - 该字段被fsck命令用来决定在启动时需要被扫描的文件系统的顺序,根文件系统/对应该字段的值应该为1,其他文件系统应该为2。若该文件系统无需在启动时扫描则设置该字段为0

以ext4文件系统为例,设计的时候分为4个部分

由于 ls -l 获取的是i节点记录的数据使用的数据块个数,而 du 则是通过i节点获取实际大小, 所以 ls -l 和 du 显示的数据大小不同。

RAID全称是Redundant Array of Independent Disks,也就是磁盘阵列,通过整合多块硬盘从而提升服务器数据的安全性,以及提高数据处理时的I/O性能。

RAID目前常用的是RAID5, 至少需要3块硬盘,其中一块硬盘用于奇偶校验,保证数据安全,其余硬盘同时读写,提高性能。此外,你还需要知道最原始的是RAID0,同时将数据读写到所有硬盘里,速度就变成了原来的N倍。RAID1至少需要两块盘,其中一块硬盘是另外硬盘的镜像。它不提高读写效率,只提高了数据安全性。RAID10是RAID0和RAID1的组合。

目前的服务器都配备了硬件RAID卡,因此在为服务器增加或更换硬盘时,需要 格外注意

fdisk只能对不多于2TB的硬盘进行分区

假如你的硬盘大于2TB,那么会输出如下信息

提示信息中的警告中,就建议"Use parted(1) and GUID partition table format (GPT)."

因此,对于大于2TB的硬盘就需要用 parted 进行分区

输出信息如下

创建新的GPT标签,例如

设置单位

创建分区, 比如我将原来的10T分成2TB和8TB

查看分区表

输出如下

退出

此时会提示"Information: You may need to update /etc/fstab." /etc/fstab 用于设置开机硬盘自动挂载。如果硬盘被拔走了,而 /etc/fstab 没有修改,那么会就提示进行修复模式。

在挂载硬盘之前,需要先对磁盘进行格式化。使用的命令为 mkfs , 使用 -t 指定文件系统,或者用 mkfs.xxx ,其中xxx就是对应的文件系统。文件系统有如下几类

目前最流行的是ext4和xfs,足够稳定。其中xfs是CentOS7之后的默认文件系统。

之后用 mount 进行硬盘挂载,分别两种情况考虑

一种是新建一个文件路径,进行挂载。

另一种是挂载一个已有目录,比如说临时文件目录 /tmp 挂载到新的设备中。

第一步: 新建一个挂载点,将原有数据移动到该目录下

第二步: 删除原来的 /tmp 下内容

第三步: 重新挂载

和mount相关的文件如下

此外mount在挂载的时候还可以设置文件系统参数,例如是否支持磁盘配额,对应 -o 参数

第零步: 检查服务器是否具备RAID阵列卡,如果有,则需要先为硬盘做RAID。

第一步: 使用 fdisk -l 检查硬盘是否能被系统检测到

第二步(可选): 假如需要 硬盘分区 ,则用 fdisk/gdisk/parted 对硬盘划分磁盘

第三步: 使用mkfs进行磁盘 格式化 ,有如下几种可选,

第四步: 用mkdir新建一个目录,然后用mount将格式化的硬盘挂载到指定目录下。卸载硬盘,则是 umout

第五步: 修改 /etc/fstab 将硬盘在重启的时候自动挂载。 注意 : 如果硬盘不在了,则需要将对应行注释掉,否则会进入到emergency模式。

版权声明 :本博客所有文章除特别声明外,均采用 知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议 (CC BY-NC-ND 4.0) 进行许可。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11303505.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存