博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
8.4文件系统的管理与挂载2
阅读量:6228 次
发布时间:2019-06-21

本文共 2608 字,大约阅读时间需要 8 分钟。

hot3.png

    mount - mount a filesystem

        mount [option]... [-t fstype] [-o option]  设备  挂载点
            挂载点要求:
                1、事先存在;
                2、使用空闲目录;
      不跟选项时,显示已挂载的设备
            常用的挂载选项[option]:
                -t fstype:指定文件系统类型
                -r: readonly, 只读挂载
                -w: read and write, 读写挂载
                -L LABEL:以卷标方式指定设备, mount -L MYDATA 挂载点
                -U UUID: 以UUID的方式指定设备,mount UUID='uuid' 挂载点, mount -U uuid 挂载点
                -a: 自动挂载所有(/etc/fstab文件中定义的)的支持自动挂载设备,对于交换设备是不行的
                -n: 挂载时,不更新/etc/mtab文件

            -o option:

                async:异步I/O,数据写操作先于内存完成,而后再根据某种策略同步至持久设备中
                sync: 同步I/O,
                atime/noatime: 文件和目录被访问时是更新最近一次的访问时间戳
                auto/noauto:设备是否支持mount的-a选项自动挂载
                diratime/nodiratime: 目录被访问时是更新最近一次的访问时间戳
                dev/nodev: 是否支持在此设备上使用设备;
                exec/noexec: 是否允许执行此设备上的二进制程序文件
                suid/nosuid: 是否支持在此设备的文件上使用suid
                remount: 重新挂载,通常用于不卸载的情况下重新指定挂载选项
                ro: 只读
                rw: 读写
                user/nouser: 是否允许普通挂载此文件设备
                acl: 在此设备是支持使用facl,默认不支持;

            例如:以指定挂载后支持acl为例:

                方法1:
                    mount -o acl DEVICE MOUNT_POINT

                方法2:

                    tune2fs -o acl DEVICE
                    tune2fs -o ‘^acl’ DEVICE
                        为设备设定默认挂载选项

                    mount DEVICE MOUNT_POINT

        查看所有已经挂载的设备:
            # mount
            # cat /proc/mounts
            # cat /etc/mtab 追踪当前系统已经挂载的设备

            卸载:挂载点没有被进程访问时方可以卸载 ;

    卸载:umount DEVICE
          umount MOUNT_POINT

         查看哪些进程正在访问挂载的设备:

             fuser -v 挂载点

         中止正在此挂载点的进程:

             fuser -km 挂载点

    df: disk free

        -h: human-readable
        -i: 显示inode的使用信息而非默认的磁盘空间使用信息

    du: disk usage

    du - estimate file space usage
        -s:
        -s, --summarize
              display only a total for each argument
        -h:
        -h, --human-readable
              print sizes in human readable format (e.g., 1K 234M 2G)
获取UUID的两种方式:
[root@linux_basic ~]#tune2fs -l /dev/vg_lvm/lv1 | grep "^Filesystem UUID" | cut -d: -f2 | tr -d ' '
655ed2ec-3a50-47ef-b0e5-d9e83eb88a3d
[root@linux_basic ~]#blkid /dev/vg_lvm/lv1 | cut -d' ' -f2 | tr -d UUID=\"\"
655ed2ec-3a50-47ef-b0e5-d9e83eb88a3d

    练习:创建一个20G的分区,块大小为2048,预留百分比为3,卷标为MYDATA,要求挂载

    后支持acl,使用UUID的方式挂载至/mydata目录;
        使用重新挂载的功能,让其不支持dev功能;
        #mke2fs -b 2048 -m 3 -L MYDATA 挂载设备
        #tune2fs -o acl  挂载设备
        #mount -U
        #mount -o remount,nodev /mydata

    交换分区:

        mkswap

        free: 查看内存及交换分区的使用信息

      真正使用的:used - buffers - cached
        启用某交换分区设备
            swapon [DEVICE]
                -a: all, 启用所有交换分区
                -p #: 指定此交换设备的优先级

        禁用某交换分区设备

            swapoff [DEVICE]
                -a: 禁用所有

    自动挂载的设备的配置文件:/etc/fstab

        6字段:
            挂载的设备:可以是以下值
                设备文件
                LABEL
                UUID
            挂载点:
            文件系统类型
            挂载选项:
                挂载选项可以有多个,彼此间使用逗号分隔;
            转储频率:
                0:从不转储
                1: 每天转储
                2: 每隔一天
            自检次序:
                0:不自检,额外创建的文件系统都无须自动自检
                1:首先自检,通常只有根文件系统需要首先自检
                2:次级自检,不同的设备可以使用同一个自检次序
                3
                ...

 

练习:写一个脚本,完成如下功能

    1、列出当前系统上的所有磁盘设备;
    2、让用户选择一个磁盘设备,并在选择后显示指定设备上的所有分区信息;
    3、询问用户是否擦除此磁盘上的所有现存分区后重新添加三个分区;
        y或yes: 继续
        n或no: 中止脚本
        其它字符则提醒用户重新输入合法的字符
    4、在用户选择是后执行相应的分区操作
        创建三个分区
            主分区1:512M,ext4
            主分区2: 512M,swap
            主分区3:2G,ext4
    5、将创建的分区按如上说明分别格式为相应的文件系统;
    6、将主分区1挂载至/mnt/boot目录,主分区3挂载至/mnt/sysroot目录;

    扩展:在上述第3个步骤开始之后,先查看此设备上是否有分区被挂载,如果有,则先卸载之;

    # fdisk -l | awk '/^Disk \/dev\/[sh]d[a-z]/{print $2}' | tr -d ':'

    /dev/sda
    /dev/sdb

转载于:https://my.oschina.net/u/1762991/blog/665649

你可能感兴趣的文章
实验一
查看>>
单页数据多iOS预加载的方法
查看>>
acm计划(更新于2014.11.9)
查看>>
hdu3364 高斯消元1(开关控制灯,异或解的个数)
查看>>
Python网络编程1:套接字
查看>>
Complete Physics Platformer Kit 学习
查看>>
软件工程---删除重复数组
查看>>
ubuntu16 64 搭建lnmp环境
查看>>
数据结构中的图
查看>>
设计模式:结构型模式总结
查看>>
HDU 1260:Tickets(DP)
查看>>
Codeforces 1080C- Masha and two friends
查看>>
使用CRT定位内存泄漏
查看>>
异常的处理方式
查看>>
JavaScrip 数组/字典/循环
查看>>
C#Question:“XXX”的重载均与“System.Threading.WaitCallback”不匹配。
查看>>
linux service等命令不能使用的解决办法
查看>>
java学习笔记(Core Java)5 继承
查看>>
算法(3)—— 链表习题 完结
查看>>
详谈外部浏览器如何实现复制公众号一键唤起微信添加关注
查看>>