2017.12.29 3周5次课

发布时间:2019-07-09 09:30:27编辑:auto阅读(1432)

    三周第五次课(12月29日)

    4.5/4.6 磁盘格式化  4.7/4.8 磁盘挂载 4.9 手动增加swap空间

    4.5/4.6 磁盘格式化

    centos7系统支持的文件格式如下:

    在/etc/filesystems里查看

    “xfs”是centos7默认的文件系统,之前的版本都是“ext“

    1. 命令【mke2fs】:格式化成ext2/ext3/ext4的文件系统

    常用的选项有(mkfs.ext2/ext3/ext4也适用):

    ‘-b’ 分区时设定每个数据区块占用空间大小,目前支持1024, 2048 以及4096 bytes每个块。

    ‘-i’ 设定inode的大小

    ‘-N’ 设定inode数量,有时使用默认的inode数不够用,所以要自定设定inode数量。

    ‘-m’指定分区预留的分区大小。  

    ‘-c’ 在格式化前先检测一下磁盘是否有问题,加上这个选项后会非常慢

    ‘-L’ 预设该分区的标签label

    ‘-j’ 建立ext3格式的分区,如果使用mkfs.ext3 就不用加这个选项了

    ‘-t’ 用来指定什么类型的文件系统,可以是ext2, ext3 也可以是 ext4。默认是ext2

    1. 命令【mkfs】:格式化成xfs/ext2/ext3/ext4的文件系统

    mkfs本身并不执行建立文件系统的工作,而是去调用相关的程序来执行。

    如果要格式化成xfs文件系统时,如有已存在文件系统的分区,命令会提醒用“-f”选项强制写入。

    使用方式 : mkfs [options] [-t type] [fs-options] device [size]

     参数 :

     -t, --type type 文件系统类型

     fs-options 传递指定的文件系统选项给真实的文件系统创建程序

    -V, --verbose 显示执行过程

    -V, --version 显示版本信息(仅当-V是唯一选项时,否则会以--verbose执行)

    -h, --help 显示帮助信息

    mkfs.xfs  /dev/sdc1  (等同于 mkfs -t xfs  /dev/sdc1)

    如果有文件系统存在,mkfs命令会提醒需要加“-f“强制执行

    1. 刚格式化好的分区在【mount】里是看不到的,因为是没有挂载在任何挂载点上

    命令【blkid】可以查看到还没有挂载的分区

    1. 磁盘最大化使用

    在格式化是有个预留空间的信息

    上图说明有5%的空间是预留给root用户,现修改为1%给root用户

    1. Inode表是在格式化分区时创建的

    可以计算出inode和块的比例,上图比例是1:4,1个inode对应4个(块/4K)= 16K,现在改成占用8K.

    最低1个inode对于1个块。

    4.7/4.8 磁盘挂载

    不管有没有分区,都是可以格式化的,只有格式化了才能挂载文件系统。Linux系统要访问磁盘必须要挂载到1个挂载点下

    挂载点实际上就是1个目录。

    命令【mount】挂载文件系统到指定的挂载点(目录)

     单一文件系统不应该被重复挂载在不同的挂载点(目录)中;    

     单一目录不应该 重复挂载多个文件系统;   

     要作为挂载点的目录,理论上应该都是空目录才是。

    格式:mount 文件系统 挂载目录

    选项:

    -a  :依照配置文件 /etc/fstab 的数据将所有未挂载的磁盘都挂载上来

    -l  :单纯的输入 mount 会显示目前挂载的信息。加上 -l 可增列 Label 名称!

    -t  :与 mkfs 的选项非常类似的,可以加上文件系统种类来指定欲挂载的类型。

         常见的 Linux 支持类型有:ext2, ext3, vfat, reiserfs, iso9660(光盘格式),

         nfs, cifs, smbfs(此三种为网络文件系统类型)

    -n  :在默认的情况下,系统会将实际挂载的情况实时写入 /etc/mtab 中,以利其他程序

         的运行。但在某些情况下(例如单人维护模式)为了避免问题,会刻意不写入。

         此时就得要使用这个 -n 的选项了。

    -L  :系统除了利用装置文件名 (例如 /dev/hdc6) 之外,还可以利用文件系统的标头名称

         (Label)来进行挂载。最好为你的文件系统取一个独一无二的名称吧!

    -o  :后面可以接一些挂载时额外加上的参数!比方说账号、密码、读写权限等:

         ro, rw:       挂载文件系统成为只读(ro) 或可擦写(rw)

         async, sync:  此文件系统是否使用同步写入 (sync) 或异步 (async) 的

                       内存机制,请参考文件系统运行方式。默认为 async。

         auto, noauto: 允许此 partition 被以 mount -a 自动挂载(auto)

         dev, nodev:   是否允许此 partition 上,可创建装置文件? dev 为可允许

         suid, nosuid: 是否允许此 partition 含有 suid/sgid 的文件格式?

         exec, noexec: 是否允许此 partition 上拥有可运行 binary 文件?

         user, nouser: 是否允许此 partition 让任何使用者运行 mount ?一般来说,

                       mount 仅有 root 可以进行,但下达 user 参数,则可让

                       一般 user 也能够对此 partition 进行 mount 。

         defaults:     默认值为:rw, suid, dev, exec, auto, nouser, and async

         remount:      重新挂载,这在系统出错,或重新升级参数时,很有用!

    1. 挂载磁盘

    1. 卸载磁盘

    命令【umount】

    选项:

    -a:卸除/etc/mtab中记录的所有文件系统;

    -f :强制卸除!可用在类似网络文件系统 (NFS) 无法读取到的情况下;

    -n :卸除时不要将信息存入/etc/mtab文件中;

    -l :惰性卸载。从文件系统层次结构中分离文件系统,并在文件系统不再忙的时候立即清除对文件系统的所有引用

    1)退出挂载点目录到家目录下卸载

    2)惰性删除

    1. “/etc/fstab“配置文件

    当Linux系统下划分了新的分区后,需要将这些分区设置为开机自动挂载,否则,Linux是无法使用新建的分区的。 /etc/fstab 文件负责配置Linux开机时自动挂载的分区

    磁盘Linux分区都必须挂载到目录树中的某个具体的目录上才能进行读写操作,而fstab正是负责这一配置。显然,根目录是所有Linux的文件和目录所在的地方,需要挂载上一个磁盘分区。Linux分区交换也需要独立使用一个分区,因此,安装一个Linux至少需要两个分区。(事实上,只使用一个分区安装Linux也是可能的,而且,如果电脑的物理内存足够大,交换分区并不是必须的)

    格式 :“设备文件 挂载目录 格式类型 权限选项 转储 磁盘检查"

    设备文件:一般为设备的路径+设备名称, 也可以写唯一识别码(UUID)

    挂载目录:指定要挂载到的目录,需在挂载前创建好

    格式类型 指定文件系统的格式:比如Ext-3s、 Ext4、 XFS、 SWAP、 iS09660 (此为光盘设备) 等

    权限选项:设置为defaults,则默认权限为:rw,suid, dev, exec, auto, nouser, async

    auto: 系统自动挂载,fstab默认就是这个选项

    defaults: rw, suid, dev, exec, auto, nouser, and async.

    noauto 开机不自动挂载

    nouser 只有超级用户可以挂载

    ro 按只读权限挂载

    rw 按可读可写权限挂载

    user 任何用户都可以挂载

    请注意光驱和软驱只有在装有介质时才可以进行挂载,因此它是noauto

    转储频率: 0:不做备份 1:每天转储 2:每隔一天转储

    磁盘检查:当其值为0时,永远不检查;而 / 根目录分区永远都为1。其它分区从2开始,数字越小越先检查,如果两个分区的数字相同,则同时检查。

       举例:

    写入/etc/fstab

    重启查看,已挂载

    4.9 手动增加swap空间

     命令【mkswap】在设置或文件上创建linux交换区(swap)

     mkswap  [参数]  设备名 [块数]

     设备名,这里的设备通常是一个磁盘分区,如:/dev/sda6,或者是一个文件/swapfile 

    -c  建立交换空间前,先检查是否有坏道,如果有坏道,将坏道总数目显示出来。

    -f  强行运行mkswap命令 

    -p  <页大小>  指定所使用的页大小 

    -L  <标签>    指定一个标签,此后swapon可以使用这个标签

    -U <uuid> 指定要使用的UUID。默认是生成一个UUID

    -v0  建立旧式交换区 

    -v1  建立新式交换

    原来的swap空间

    增加后空间

    卸载swap空间


关键字