zoukankan      html  css  js  c++  java
  • Linux

    Linux - 挂载不同设备对挂载目录的影响

    一次偶然的机会,发现了在Linux(虚拟机)中挂载U盘和光盘,对被挂载目录的权限和时间影响是不同的

     

    一:准备条件

     

    1.当前的硬件

    • 1台装了VMware Workstation虚拟机软件的电脑
    • 虚拟机软件中装了Linux虚拟机
    • 1个空U盘(因为一会儿需要格式化)
     

    2.Linux虚拟机

    • 需要有可挂载的镜像
    • 支持NTFS格式U盘
     

    3.设置

    # 安装 wget (如已安装 请忽略)
    yum install wget
    
    
    # 更改yum源为阿里云
    wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
    
    
    # 更新yum
    yum update
    
    
    # 安装 ntfs-3g (用于识别NTFS格式的外界设备)
    yum install ntfs-3g

    4.U盘相关设置

     

    ① 将U盘格式化成NTFS格式

    ② 在U盘中创建1个文件(为了之后能识别这个设备)

     

    ③ 在虚拟机右下角找到这个图标

     

    ④ 点击 - 连接

     

    ⑤ 确保光盘和u盘的图标都亮起来了

     

    二:测试

    测试对比的是光盘和U盘依次挂载到/mnt目录下,对该目录的权限影响

     

    1.在不挂载光盘镜像和U盘的情况下,查看/mnt目录的信息

    [root@localhost ~]# ls -dl /mnt
    drwxr-xr-x. 2 root root 6 Nov 15 15:44 /mnt
    • 属主:rwx
    • 属组:rx
    • 其他用户:rx
    • 修改时间:Nov 15 15:44
     

    2.在挂载光盘镜像的情况下,查看/mnt目录的信息

    # 将光盘镜像挂载到/mnt
    [root@localhost ~]# mount /dev/cdrom /mnt
    mount: /dev/sr0 is write-protected, mounting read-only
    
    
    # 查看/mnt目录的信息
    [root@localhost ~]# ls -dl /mnt
    dr-xr-xr-x. 8 root root 2048 Dec  9  2015 /mnt
    • 属主:rx
    • 属组:rx
    • 其他用户:rx
    • 修改时间:Dec 9 2015
     

    3.在挂载U盘的情况下,查看/mnt目录的信息

     

    ① 一般情况下,U盘会挂载在/dev目录下,名称为sdb*,但是该目录下文件较多,我们可以用管道命令来过滤

    # 过滤出 /dev目录下 带有sdb 的内容
    [root@localhost ~]# ls -l /dev | grep 'sdb'
    brw-rw----. 1 root disk      8,  16 Nov 26 21:20 sdb
    brw-rw----. 1 root disk      8,  17 Nov 26 21:21 sdb1

    ② 但是U盘只有1个,却出来了2个设备(只有1个是可用的),只能一个一个挂载过去了

    # 取消/mnt目录的挂载(取消之前的光盘镜像的挂载)
    [root@localhost ~]# umount /mnt
    
    # 挂载sdb 失败!
    [root@localhost ~]# mount /dev/sdb /mnt
    mount: /dev/sdb is write-protected, mounting read-only
    mount: wrong fs type, bad option, bad superblock on /dev/sdb,
           missing codepage or helper program, or other error
    
           In some cases useful info is found in syslog - try
           dmesg | tail or so.
           
           
    # 挂载sdb1 成功!(没有提示,就是最好的提示)
    [root@localhost ~]# mount /dev/sdb1 /mnt

    ③ 挂载成功后,验证挂载的U盘内容

    # 验证成功!(时间和文件都和原来U盘里的一样)
    [root@localhost ~]# ll /mnt
    total 4200
    -rwxrwxrwx. 1 root root 4296716 Aug 30  2019 BG.jpg
    -rwxrwxrwx. 1 root root       0 Nov 26 21:23 Darker.md
    drwxrwxrwx. 1 root root       0 Nov 26 21:20 System Volume Information

    ④ 查看/mnt目录的信息

    [root@localhost mnt]# ls -dl /mnt
    drwxrwxrwx. 1 root root 4096 Nov 26 21:23 /mnt
    • 属主:rwx
    • 属组:rwx
    • 其他用户:rwx
    • 修改时间:Nov 26 21:23
     

    4.结论

     

    修改的时间

    状态最后修改时间
    原始状态 系统安装完成的时间 / 内容变动过的时间
    挂载光盘镜像 光盘镜像被制造的时间
    挂载U盘 U盘的最后修改时间
     

    属主

    状态读取写入执行
    原始状态 1 1 1
    挂载光盘镜像 1   1
    挂载U盘 1 1 1
     

    属组

    状态读取写入执行
    原始状态 1   1
    挂载光盘镜像 1   1
    挂载U盘 1 1 1
     

    其他用户

    状态读取写入执行
    原始状态 1   1
    挂载光盘镜像 1   1
    挂载U盘 1 1 1
     

    最明显的区别

    • 在挂载了光盘镜像后,所有用户(包括root用户)对挂载的目录都失去了写的权限
    • 在挂载了U盘之后,所有用户都有了 读、写、执行 的权限
    • 在挂载了设备之后,修改时间也会随着设备的最后修改时间而变化
  • 相关阅读:
    获取class
    domReady
    JS原型
    JavaScript继承
    LeetCode 46. Permutations
    LinkCode 第k个排列
    接口测试基础——第5篇xlrd模块
    接口测试基础——第4篇logging模块
    接口测试基础——第3篇smtplib发送带图片的邮件
    接口测试基础——第2篇smtplib发送带附件的邮件
  • 原文地址:https://www.cnblogs.com/ltyc/p/14057807.html
Copyright © 2011-2022 走看看