磁盘及文件系统管理—第二篇

挂载配置文件

每行定义一个要挂载的文件系统及相关属性

    使用mount -a挂载/etc/fstab文件中所定义的文件系统

    配置文件格式:

        一共分为6个字段:

            1.要挂载的设备:指定挂载设备        

                可指定设备文件路径进行挂载

                LABEL进行挂载

                UUID挂载

            2.挂载点:指定挂载点

                注意:swap分区挂载点为swap

            3.文件系统类型:Filesystem Type

            4.挂载选项:挂载文件系统时的默认选项

                defaults:使用默认挂载选项        

                如果要同时指定多个挂载选项,彼此间以,分隔

                    defaults,acl,atime,

            5.转储频率

                0:从不备份

                1:每天备份

                2:每个天备份

            6.自检次序

                0:不自检

                1:首先自检,通常只能是跟文件系统

1472195118483929.png

  

  

  

如果/etc/fstab文件配置格式不当,则有可能导致系统无法正常启动,我们来模拟一下故障并解决

2016-08-29_212817.png

1.重启系统发现无法正常启动,输入root密码进入单一用户模式

2016-08-29_213105.png

2.这是我们发现无法对/etc/fstab文件做修改

2016-08-29_213203.png

3.重新挂载根分区

2016-08-29_213316.png

4.重新修改/etc/fstab文件,修正错误

2016-08-29_213458.png

5.重新系统即可正常启动

2016-08-29_213602.png

如何创建本地loop设备并挂载使用。

1.是用dd命令创建大小为2G的空文件

[root@CentOS6 ~]# dd if=/dev/zero of=/root/spacefile bs=1M count=2048
2048+0 records in
2048+0 records out
2147483648 bytes (2.1 GB) copied, 4.94237 s, 435 MB/s
[root@CentOS6 ~]#

2.关联此设备

[root@CentOS6 ~]# losetup /dev/loop0 /root/spacefile 
[root@CentOS6 ~]# losetup -a
/dev/loop0: [0802]:131201 (/root/spacefile)
[root@CentOS6 ~]#

3.创建文件系统

[root@CentOS6 ~]# mke2fs -t ext4 /root/spacefile 
mke2fs 1.41.12 (17-May-2010)
/root/spacefile is not a block special device.
Proceed anyway? (y,n) y
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
131072 inodes, 524288 blocks
26214 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=536870912
16 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912

Writing inode tables: done                            
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 37 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
[root@CentOS6 ~]# blkid /root/spacefile 
/root/spacefile: LABEL="LOOP" UUID="883849f7-7135-4b90-a7f8-420690741b42" TYPE="ext4" 
[root@CentOS6 ~]#

4.挂载并使用

[root@CentOS6 ~]# mkdir /mnt/spacefile
[root@CentOS6 ~]# mount -o loop /root/spacefile /mnt/spacefile/
[root@CentOS6 ~]# mount | tail -1
/root/spacefile on /mnt/spacefile type ext4 (rw,loop=/dev/loop1)
[root@CentOS6 ~]# cd /mnt/spacefile/
[root@CentOS6 spacefile]# ls
lost+found
[root@CentOS6 spacefile]# echo xxxx > aa
[root@CentOS6 spacefile]# cat aa 
xxxx
[root@CentOS6 spacefile]#

2016-08-29_214329.png

swap交换分区:

    在物理内存使用完之后,将磁盘空间虚拟成内存来使用.它和Windows系统的交换文件作用类似,但是它是一段连续的磁盘空间,并且对用户不可见。

    Linux上的交换分区必须是独立的文件系统

        且文件系统类型ID为82

    创建swap设备:mkswap命令

        mkswap [OPTIONS] DEVICE

            -L LABEL:指明卷标

            -f:强制

[root@CentOS7 testing]# mkswap /dev/sdc2
mkswap: /dev/sdc2: warning: wiping old swap signature.
Setting up swapspace version 1, size = 2097148 KiB
no label, UUID=f321c704-748b-41b2-9798-51259693533e
[root@CentOS7 testing]# blkid /dev/sdc2
/dev/sdc2: UUID="f321c704-748b-41b2-9798-51259693533e" TYPE="swap" 
[root@CentOS7 testing]#

         swapon DEVICE:启动交换分区

            -a:启用所有定义在/etc/fstab文件中的交换分区

[root@CentOS7 testing]# swapon /dev/sdc2
[root@CentOS7 testing]# free -h
              total        used        free      shared  buff/cache   available
Mem:           977M        329M        415M        7.2M        232M        451M
Swap:          4.0G          0B        4.0G
[root@CentOS7 testing]#

        查看当前系统上已启动的swap分区:swapon -s

[root@CentOS6 ~]# swapon -s
Filename				Type		Size	Used	Priority
/dev/sda5                               partition	2097148	0	-1
/dev/sdc1                               partition	2104476	0	-2
[root@CentOS6 ~]#

        指定swap分区优先级

2016-08-29_214920.png

2016-08-29_215020.png

        swapoff DEVICE:关闭交换分区

            -a:关闭所有的定义在/etc/fstab文件中的交换设备



使用空文件创建swap分区

1.是用dd命令创建1G大小的swapfile文件

[root@CentOS6 ~]# dd if=/dev/zero of=/root/swapfile bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 2.12568 s, 505 MB/s
[root@CentOS6 ~]#

2.创建swap分区

[root@CentOS6 ~]# mkswap -L SWAPFILE swapfile 
mkswap: swapfile: warning: don't erase bootbits sectors
        on whole disk. Use -f to force.
Setting up swapspace version 1, size = 1048572 KiB
LABEL=SWAPFILE, UUID=6265e0fc-ac1d-497b-983a-2770a2e74a32
[root@CentOS6 ~]# blkid swapfile 
swapfile: LABEL="SWAPFILE" UUID="6265e0fc-ac1d-497b-983a-2770a2e74a32" TYPE="swap" 
[root@CentOS6 ~]#

3.开启swap分区

[root@CentOS6 ~]# swapon swapfile 
[root@CentOS6 ~]# swapon -s
Filename				Type		Size	Used	Priority
/dev/sda5                               partition	2097148	0	-1
/dev/sdc1                               partition	2104476	0	100
/root/swapfile                          file		1048572	0	-2
[root@CentOS6 ~]#

2016-08-29_215921.png

   

  

  

常用工具介绍:

free:查看当前系统物理内存以及交换内存的使用情况

    free [OPTIONS]

    -m:以M为单位显示

    -h:做单位换算

    -g:以G为单位显示

[root@CentOS7 testing]# free -mh
              total        used        free      shared  buff/cache   available
Mem:           977M        329M        415M        7.2M        232M        451M
Swap:          4.0G          0B        4.0G
[root@CentOS7 testing]#

df:查看所有文件系统占用空间信息

    -l:显示本地文件系统

    -h:做单位换算

    -T:显示文件系统类型

    -P:以Posix兼容的格式输出

    -i:显示inode使用情况

[root@CentOS7 ~]# df -lhTPi
Filesystem     Type     Inodes IUsed IFree IUse% Mounted on
/dev/sda2      xfs         50M  143K   50M    1% /
devtmpfs       devtmpfs   119K   418  119K    1% /dev
tmpfs          tmpfs      123K     6  123K    1% /dev/shm
tmpfs          tmpfs      123K   598  122K    1% /run
tmpfs          tmpfs      123K    13  123K    1% /sys/fs/cgroup
/dev/sda5      xfs         20M  8.9K   20M    1% /testdir
/dev/sda1      xfs        200K   330  200K    1% /boot
tmpfs          tmpfs      123K    18  123K    1% /run/user/42
/dev/sr0       iso9660       0     0     0     - /media/cdrom
tmpfs          tmpfs      123K     1  123K    1% /run/user/0
/dev/sdb1      ext4        51K    12   51K    1% /mydata
/dev/sdc1      ext4       320K    11  320K    1% /testing
/dev/sdb2      ext3       1.3M    11  1.3M    1% /mogdata
[root@CentOS7 ~]#

du:查看目录总体占用空间情况

    -s:显示目录的总体占用大小

    -h:做单位换算

[root@CentOS7 ~]# du -sh /etc/
30M	/etc/
[root@CentOS7 ~]#

dd命令:convert and copy a file

用法:

    dd if=/PATH/FROM/SRC of=/PATH/TO/DEST

    bs=#:block size,复制单元大小

    count=#:复制多少个bs

of=file    写到所命名的文件而不是标准输出

if=file    从所命名文件读取而不是从标准输入

bs=size    指定块大小

count=#    复制多少个字节

skip=blocks  从开头忽略blocks个ibs大小的块

seek=blocks  从开头忽略blocks个obs大小的块

[root@CentOS6 ~]# dd if=/dev/zero of=test bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 1.98053 s, 542 MB/s
[root@CentOS6 ~]#

 

 

 

配置磁盘配额

1.启用配额挂载选项

MMT$I`CMH8PO@$JDOQD~D}P.png

2.创建磁盘配额数据库,在创建之前 先禁用selinux

[root@CentOS7 ~]# getenforce 
Enforcing
[root@CentOS7 ~]# setenforce 0
[root@CentOS7 ~]# getenforce 
Permissive
[root@CentOS7 ~]# quotacheck -cug /home

3.启用数据库

[root@CentOS7 ~]# quotaon -p /home
group quota on /home (/dev/sda6) is off
user quota on /home (/dev/sda6) is off
[root@CentOS7 ~]# quotaon /home
[root@CentOS7 ~]# quotaon -p /home
group quota on /home (/dev/sda6) is on
user quota on /home (/dev/sda6) is on
[root@CentOS7 ~]#

4.配置配额项

[root@CentOS7 ~]# edquota zhai

XEDX$Q2M2H7SL$6OU}`AKGB.png

[root@CentOS7 ~]# setquota tom 100M 150M 0 0 /home        #使用setquota也可配置
[root@CentOS7 ~]# edquota -p zhai jerry        #将zhai用户的配额复制给用户jerry
[root@CentOS7 ~]# repquota /home
*** Report for user quotas on device /dev/sda6
Block grace time: 7days; Inode grace time: 7days
                        Block limits                File limits
User            used    soft    hard  grace    used  soft  hard  grace
----------------------------------------------------------------------
root      --      20       0       0              2     0     0       
zhai      --      28   51200   81920              7     0     0       
tom       --      28  102400  153600              7     0     0       
jerry     --      28   51200   81920              7     0     0       


[root@CentOS7 ~]#

5.测试配额

[zhai@CentOS6 ~]$ dd if=/dev/zero of=test bs=1M count=40        #可正常填充40M数据
40+0 records in
40+0 records out
41943040 bytes (42 MB) copied, 0.103855 s, 404 MB/s
[zhai@CentOS6 ~]$ dd if=/dev/zero of=test bs=1M count=50        #当达到50M时则发出警告
sdb1: warning, user block quota exceeded.
50+0 records in
50+0 records out
52428800 bytes (52 MB) copied, 0.106969 s, 490 MB/s
[zhai@CentOS6 ~]$ dd if=/dev/zero of=test bs=1M count=90        #超过80M时报错
sdb1: warning, user block quota exceeded.
sdb1: write failed, user block limit reached.
dd: writing `test': Disk quota exceeded
80+0 records in
79+0 records out
83865600 bytes (84 MB) copied, 0.169611 s, 494 MB/s
[zhai@CentOS6 ~]$ du -sh .
80M	.
[zhai@CentOS6 ~]$ quota zhai
Disk quotas for user zhai (uid 500): 
     Filesystem  blocks   quota   limit   grace   files   quota   limit   grace
      /dev/sdb1   81920*  51200   81920   6days      10       0       0        
[zhai@CentOS6 ~]$

原创文章,作者:zhai796898,如若转载,请注明出处:http://www.178linux.com/41932

(0)
zhai796898zhai796898
上一篇 2016-08-30 10:32
下一篇 2016-08-30 13:53

相关推荐

  • N25期–第七周作业

    1、创建一个10G分区,并格式为ext4文件系统; fdisk /dev/sda n p 2 enter +10G w partx -a /dev/sda (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; mke2fs -t ext4 -…

    Linux干货 2017-02-20
  • N25期第五周作业

    1.显示当前系统上root、fedora或user1用户的默认shell grep -E ‘^(root|ftp|sync)’ /etc/passwd|cut -d: -f7 2.找出/etc/rc.d/init.d/functions文件中某单词后面跟一组小括号的行,形如:hello() grep ‘\b.*\b()’ /etc/rc.d/init.d/f…

    Linux干货 2016-12-26
  • MySQL慢日志监控脚本实例剖析

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://nolinux.blog.51cto.com/4824967/1577326        公司线上的 MySQL 慢日志,之前一直没有做好监控。趁着上周空闲,我就把监控脚本写了下,…

    Linux干货 2016-08-15
  • php5.4zend-opcache安装

    公司在做高并发压测,fastcgi,apc,ocache,opcache, 几经考虑,最终考虑用opcache,因为作为 zend-opcache合并为php5.5的分支版本,xcache的前途堪虑, 在环境的安装上竟然折腾了半个下午没有搞定,这个作下问题记录。 先说安装, http://php.net/manual/zh/opcache.installat…

    2015-04-20
  • 计算机的组成及其功能。

    一、计算机的组成及其功能。 计算机,是现代一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能。是能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。 1、运算器(Arithmetical and Logical Unit):计算机中执行各种算术和逻辑运算操作的部件。运算器的基本操作包括加、减、乘、除四则运算,与…

    Linux干货 2016-10-30
  • Linux Basic–磁盘分区

    附件: 磁盘管理相关方法.pdf

    Linux干货 2016-11-21