磁盘管理及文件系统

磁盘管理


本文将从以下几方面介绍

第一部分:磁盘管理

  • 1、浅识Linux磁盘

  • 2、常见命令

第二部分:文件系统管理

  • 1、文件系统的创建

  • 2、文件系统挂载

  • 3、自动挂载配置文件

第一部分:磁盘管理


浅识Linux磁盘

对于Linux来说我们知道一切皆文件,同样在Linux中硬件设备在系统上会映射成相对应的文件,我们就像是在Windows看文件一样只要打开对应的文件就能访问放在硬件中的信息。下面我们来看看一些与磁盘有关的简单命令

常见命令

1、查看空间使用状态
        free 
             -m : 以M为单位显示
             -g : 以G为单位显示
             -h : 人类易读形式显示
        [root@Centos6 ~]#free -h
                     total       used       free     shared    buffers     cached
        Mem:          980M       625M       355M       2.1M        77M       238M
        -/+ buffers/cache:       308M       672M
        Swap:         2.0G         0B       2.0G          

     2、文件系统磁盘占用情况
        df
             -T : 显示文件系统类型
             -h : 以人类易读的形式显示
             -i : 显示inode号

        [root@Centos6 ~]#df -T
        Filesystem     Type    1K-blocks    Used Available Use% Mounted on
        /dev/sda2      ext4     50264772 5054532  42650240  11% /
        tmpfs          tmpfs      502056      76    501980   1% /dev/shm
        /dev/sda3      ext4     40185208  181224  37955984   1% /app
        /dev/sda1      ext4       999320   34944    911948   4% /boot
        /dev/sr0       iso9660   3878870 3878870         0 100% /media/CentOS_6.9_Final

     3、查看某目录总体空间占用情况
        du
             -s : 摘要
             -h : 以人类易读的形式显示

        [root@Centos6 ~]#du -sh /etc
        42M    /etc
     4、转换、复制文件
        dd  if=/path/to/file of=/path/to/file [bs|obs|cbs]=#[k|M|G] count skip seek
             if : inputfile
             of : outputfile
             bs : 指定块大小
             ibs: 一次读#个字节
             obs: 一次写#个字节
             cbs:一次转换#个字节
             count: 复制#个bs块
             skip: inputfile中从头跳过#个ibs大小的块
             seek: outputfile中从头跳过#个ibs大小的块

        [root@Centos6 ~]#dd if=/dev/sda of=/dev/null bs=1M count=1024  #测试磁盘读能力
        1024+0 records in
        1024+0 records out
        1073741824 bytes (1.1 GB) copied, 3.45514 s, 311 MB/s           #可以看出速度还是不错的
这里分享一个修复硬盘的方法(适用于长时间不用的磁盘,非物理性破坏状态下)硬盘长时间不用,会
产生消磁点,当这种情况影响到磁盘的第一个删去时,可能会导致磁盘不能用
使用命令:
dd if=/dev/sda of=/dev/sda   #这里以sda为例
该命令可使消磁点数据恢复,并且整个过程是安全的

第二部分:文件系统管理


文件系统的创建

在Linux中有较多的文件系统类型我们知道的有ext2、ext3、ext4、xfs等
 根据是否支持日志功能可将其分为
             日志型文件系统: ext3、ext4、xfs
             非日志型文件系统: ext2、vft
 首先我们先来了解一下,文件系统在Linux中如何通过命令创建的

 1、创建分区
fdisk 命令
         在创建分区时会有提示信息,按照提示进行选择即可
         eg : fdisk /dev/sda   # 对/dev/sda 进行分区     
     一般在创建完分区后需要查看内核是否已经识别新的分区
         查看方法:
              cat /proc/partition          

             如果没有查看到新的分区,需要通知内核重新读取
             centos6 :  partx -a /dev/sda
             centos7 :  partprobe
2、管理分区

 在创建好后怎样去使用管理分区呢,接下来进行一一说明
管理分区的工具
      (1)、创建文件系统

         mkfs
             -t [ext2 | ext3 | ext4] <==> 等同于mkfs.ext2 | mkfs.ext3 | mkfs.ext4: 修改文件系统类型
             -L : 修改卷标名

         mke2fs (ext专用文件管理系统)
             -t : 修改文件系统类型
             -L : 修改卷标
             -b : 修改block(块)大小,默认4096
             -j : 等同于 -t ext3 
             -i# : 一个inode对应多少字节,默认8192
             -m# : 预留的空间百分比,默认为%5
      (2)、管理文件系统 (重新设定ext文件系统参数值)
         tune2fs
             -l DEVICE : 查看系统块信息 ,其实命令 dumpe2fs -h DEVICE 也能查看设备块(超级块)信息 
             -j : ext2-->ext3
             -L : 修改卷标
             -m#: 修改预留空间百分比
             -o [^]: 开启或关闭指定挂载选项
             -U UUID: 修改UUID值,生成随机UUID命令为uuidgen
        查看指定块设备的属性信息
         blkid 
             -L : 查看卷标名对应的磁盘分区
             -U : 查看UUID对应的磁盘分区
        修复文件分区
            注意: 在进行修复的过程中必须取消挂载状态,不能在线检查修复
         fsck
             -a : 自动修复
             -r : 人机交互式
        专门用于ext文件系统检查
         e2fsck 
             -y : 在修复是自动回答为yes
             -f : 强制进行检查

文件系统的挂载

在创建好文件系统并格式化后怎样去使用它呢,将其挂载到设备文件上我们就可以使用了
(1)、挂载命令
         mount
             -L : 指定卷标名挂在设备
             -U : 以UUID方式挂在设备
             -a : 自动挂载/etc/fstab中的挂载关系
             -n : 挂载时不更新/etc/fstab
             -B --bind : 将目录挂到目录上
             -o [option]:
                        loop : 挂载回环设备,将文件挂到目录上
                        remount : 重新挂载或不卸载重新挂载指定选项
                        acl : 支持使用acl选项
                        user|nouser : 是否允许普通用户挂载此设备
      (2)、卸载
         umount DEVICE 

         当被挂载的文件系统正在使用是不能被卸载的,遇到这种情况我们可以这样解决
             一、查看挂载情况
                     findmnt DEVICE 
             二、查看正在访问文件系统的进程
                     lsof DEVICE  或 fuser -v  DEVICE 
             三、终止正在访问指定的文件系统进程
                     fuser -km DEVICE 
             四、卸载

自动挂载配置文件 (/etc/fstab)

首先我们先打开它看看,是什么样子的
[root@Centos6 ~]#cat /etc/fstab

        UUID=ef20e35d-b3b0-4bb0-a7f0-b6da5f9478ea  /           ext4    defaults        1 1    
        UUID=bad2ae77-157a-4e40-a1c0-8d67af3cc105  /app        ext4    defaults        1 2            
        UUID=90739410-fd0f-4419-900a-2b981300f2d0  /boot       ext4    defaults        1 2    
        UUID=97172ba1-b115-4e5a-b739-8f2b2b309115  swap        swap    defaults        0 0
来解释一下每个字段的含义

 第一字段 : 挂载的设备
             (1)设备文件
             (2)卷标名
             (3)UUID
 第二字段 : 挂载点
 第三字段 : 文件系统类型
             (1)ext2、ext3、ext4等
 第四字段 : 挂载选项
             mount 命令中的选项,默认为default
 第五字段 : 备份频率
             0 : 从不
             1 : 每天
             2 : 每隔一天
 第六字段 : 自检次序
             0 : 不自检,即使有错误在不自检的情况下也不会影响系统正常开机
             1 : 首先自检,通常只有根 "/"才会需要首先自检
             2 : 次级自检,不同设备可以使用同一自检次序

在/etc/fstab文件下实现

1、目录挂载目录
eg : /boot  /mnt/boot  none  bind  0 0
2、文件挂载目录
eg : /app/file  /mnt/boot  ext4 loop  fefault  0 0
3、挂载Windows共享文件
eg : //192.168.x.x/sharefile  /mnt/share  ext4 cifs default ,username=xxx,password=***  0 0

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

(0)
M25_ymdM25_ymd
上一篇 2017-08-15
下一篇 2017-08-16

相关推荐

  • 由摩根定律引发的思考

    在Linux中,我们常常需要对一些条件进行判断,而对于多个条件的组合判断是基于摩根定律而进行的。所以理解摩根定律对于我们学习条件判断是很有必要的,下面我们就先介绍摩根定律进而引出其在一些具体场景上的应用。   一、摩根定律 在Linux中的条件判断中,摩根定律可以以下式来表示: !( A || B )=!A && !B !( A &…

    Linux干货 2016-08-16
  • 加密的应用

    加密的应用 一、实现对称加密 1、openssl enc man enc 算法:3des, aes, blowfish, twofish 加密操作:openssl enc -e -des3 -a -salt -in testfile -out testfile.cipher 解密操作:openssl enc  -d -des3 -a  -…

    Linux干货 2016-09-26
  • nginx反向代理负载均衡集群配置详解

    反向代理负载均衡集群配置详解 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时站在服务器角度来看,代理服务器对外就表现为一个反向代理服务器。 对反向代理服务器的攻击并不会使得后端内网Web服务器上网页信息遭到…

    Linux干货 2016-11-07
  • Linux计划任务

    Linux计划任务

    Linux干货 2017-10-27
  • 冥界之王-第8周作业

       1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。     网桥:网桥(Bridge)是早期的两端口二层网络设备,用来连接不同网段。网桥的两个端口分别有一条独立的交换信道,        &nbs…

    Linux干货 2016-10-23
  • 互联网安全之iptables/netfilter入门到进阶

    随着互联网技术的方兴未艾,各种网络应用层出不穷,网络攻击、黑客入侵也成了网民畅游互联网的心头大患,互联网安全也愈加受到了人们的重视。网络防火墙,作为一种简单高效的互联网防御手段,逐渐成为了网民畅游网络世界的保护伞。下面笔者介绍下Linux系统的守卫者——iptables/netfilter。  一 兄弟齐心,其利断金  iptables/netfilter就…

    Linux干货 2017-05-06