您的位置:

fstab文件详解

一、fstab文件详解修改

在Linux系统中,fstab(文件系统表)是一个必要的文件,它包含了系统所有挂载文件系统的信息。修改fstab文件有时会导致系统无法启动,所以一定要谨慎操作。

注意:以下是一个示例fstab文件,仅供参考。


# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# 
                    
       
       
             
       
        
         PARTUUID=8d18b41b-6cea-43d5-8d01-6493edb66512 / ext4 errors=remount-ro 0 1 # /boot/efi was on /dev/nvme0n1p1 during installation UUID=F659-DDBA /boot/efi vfat umask=0077 0 1 /swapfile none swap sw 0 0
        
       
      
     
    
   

在这里,我们可以看到三个挂载设备:

  1. 第一个设备在文件系统表中被表示为PARTUUID,它的唯一身份标识为8d18b41b-6cea-43d5-8d01-6493edb66512。
  2. 第二个设备是一个可移动存储设备,它的唯一身份标识为UUID。它是使用vfat文件系统格式分区的。
  3. 第三个设备是一个交换分区,因此它的类型为swap。

修改fstab文件可能会导致系统无法启动。为了避免这种情况的发生,我们建议在修改前备份文件。在修改文件后,请执行“mount -a”命令以重新挂载新的fstab文件信息。

二、fstab文件

fstab文件是一个文本文件,通常位于/etc目录下。它包含了系统所有挂载文件系统的信息,包括文件系统的位置、挂载点、文件系统类型和挂载选项等信息。系统启动时,这些信息被读取并用于挂载文件系统。更改fstab文件需要root权限。

以下是一个典型的fstab文件:


# /etc/fstab: static file system information.
#
# 
                
       
       
                         
       
        
         /dev/mapper/ubuntu--vg-root / ext4 errors=remount-ro 0 1 # /boot was on /dev/sda1 during installation UUID=148ca517-8b10-4580-b067-c28531b2d28d /boot ext4 defaults 0 2 /dev/mapper/ubuntu--vg-swap_1 none swap sw 0 0
        
       
      
     
    
   

在这里,我们可以看到三个挂载设备:

  1. 第一条记录指定系统根分区的挂载点为/,文件系统类型为ext4。
  2. 第二条记录指定/boot分区的唯一身份标识为UUID,挂载点是/boot,文件系统类型为ext4,默认挂载选项。
  3. 第三条记录指定交换分区的唯一身份标识为/dev/mapper/ubuntu--vg-swap_1。

三、安卓fstab文件详解

在安卓系统中,fstab文件中包含了系统所有挂载分区的信息。安卓系统通常会使用名为vold的后台程序来挂载和卸载文件系统。在安卓设备上,fstab文件通常被放置在/ system /etc/目录下。

以下是一个典型的安卓fstab文件:


#vold.fstab
# mount point   fstype          device          [device2]                [options]

/devices/platform/msm_sdcc.1/by-name/system      ext4          /dev/block/mmcblk0p12         wait
/devices/platform/msm_sdcc.1/by-name/userdata    ext4          /dev/block/mmcblk0p13         wait
/devices/msm_sdcc.1/by-name/cache        ext4          /dev/block/mmcblk0p16         wait
/devices/msm_sdcc.1/by-name/modem        vfat        /dev/block/mmcblk0p5          wait,ro,remount
/mnt/media_rw/extsd                   vfat         /dev/block/mmcblk1p1          wait,uid=1023,mode=0600,execute #external sdcard

在这里,我们可以看到五个设备:

  1. 第一个设备的挂载点是名称为“system”的分区,文件系统类型为ext4。
  2. 第二个设备的挂载点是名称为“userdata”的分区,文件系统类型为ext4。
  3. 第三个设备的挂载点是名称为“cache”的分区,文件系统类型为ext4。
  4. 第四个设备是一个可移动存储设备,文件系统类型为vfat。它的挂载点是名称为“modem”的分区。
  5. 第五个设备是一个可移动存储设备,文件系统类型为vfat。它的挂载点是/mnt/media_rw/extsd。

四、fstab文件立即生效

在Linux系统中,我们可以使用mount命令立即挂载新的文件系统,但是重启后所有更改都将被撤消。为了使更改在重启后仍然有效,我们需要更新fstab文件。

在已经修改了fstab文件的情况下,我们可以使用以下命令使新的文件系统立即生效:


sudo mount -a

如果挂载过程中出现任何错误,我们可以查看系统日志以获取更多信息。在实际应用中,我们建议在修改fstab文件后立即使用该命令以确保文件系统正常运行。

五、总结

总之,fstab文件是一个重要的文件,它包含了系统所有挂载文件系统的信息。为了避免系统无法启动的情况,在修改fstab文件之前一定要备份。修改后使用mount -a命令立即生效,如果出现错误,请查看日志以获取更多信息。