分区块基本知识点及侧重点 — 上

    我们需要熟练了解磁盘分区原理。元数据及块设备对应inode是最重要也是最基本的原理。后面分区很多地方都和inode有关系。

   一个磁盘片有63扇区,1024存储位,256个磁头,每个扇区只有前512字节是有效存储单元。所以后面磁盘清零都是跟512这个数字有关。

   数据分数据区和元数据区,元数据包括大小属性,属主属组,时间戳,inode节点等信息,但唯独不包括文件名,这点需要牢记。

  数据里面的块设备,磁盘大小由文件大小决定。

   链接文件:存储指针空间中存储的是设备号

   磁盘空间有缩影,按位对位缩影,inode也有对位缩影。

   在分区内部划分二级结构,磁盘首先是逻辑单元(block,disk),逻辑快之间可以联动存储数据

   超级块:是块设备中至关重要的设备,必须要有备份方案,有其他备份块组。

   每个逻辑组都会有块组描述符GDT

   目录也是文件:根也在内存中:根的磁盘块下。

   根据inode可以查找文件下的磁盘块,能找到其目录下的所有文件名及其inode对应信息。

   路径映射,一层一层的查找。

   用free命令可以查找缓存及内存空间

  

Linux文件系统。可以支持多种文件系统

  任何两个文件系统不兼容时都可以架构中间层。

   文件系统有vfat,ext2.3.4,xfs reiserfs   btrfs

   交换文件系统swap是虚拟文件系统:虚拟假设机制:在磁盘上找一块空间假装成内存,将最近较少使用的内存存放在swap上。

   对一个文件系统来说,交换分区是必须的

   下面来介绍一下常见的分区工具及命令:

   fdisk

   见名知意,这个就是ext的分区工具,GPT分区工具是gdisk。

   常用方法fdisk -l device名字  查看设备分区信息

   也可以直接fdisk device来对设备进行分区,这里就不在赘述

   mke2fs的 几个常用方法。

-i #: 为数据空间中每多少个字节创建一个inode;此大小不应该小于block的大小-N #:为数据空间创建个多少个inode     

Inode数越少越好。适量,一个inode可以对应多个快,至少一个快,对应的块数越多存储性能越好。元数据不需要这么多的空间

 -I 制定inode的大小

-m #: 默认5%,为管理人员预留空间占总空间的百分比

   常见格式化文件系统的工具mkfs,mke2fs 等

   当然mke2fs功能比mkfs略微强大

   

   这里详细介绍下tune2fs这个命令

    tune2fs  -l devvice 可以查看这个分区的详细信息

   tune2fs -L device 可以更改分区的卷标

   e2label device 卷标名 可以更改分区的卷标名。

   tune2fs -o 可以更改分区挂载时的一些属性。

         -O 可以更改分区的一些常规选项

   分区结束后小伙伴们可以使用partprobe 或者kpartx -af device来刷新分区列表

   这是我们分区时最重要的核心思想,就是分区的同步性,分区同步意味着可以避免出错,后期的工作每个点我们完成后都需要复查。

   结束后有3中方法查看分区列表

   cat /proc/partitions blkid

   df device

   fdisk -l device 

   添加外面硬盘想要不关机就读取使用

partx -a -n  M:N  /dev/DEVICE 命令

   分区的检测工具fsck e2fsck

   还有blkid和lsblk这两个常用命令,小伙伴们也必须熟练掌握,这里不再赘述。

   当然还有dump2fs 也是查看文件系统属性的命令

   dd是文件系统备份的命令格式

   最重要的是它的命令格式,同学们学会使用就好。

   dd if=需要备份的设备 of=备份到的文件 bs= count skip= seek=

   mount 是挂载命令,下面是mount 用法的详解。

   

   

-t vsftype:指定要挂载的设备上的文件系统类型

-r: readonly,只读挂载

-w: read and write, 读写挂载

-n: 不更新/etc/mtab,相当于#mount 悄悄的挂

-a:自动挂载所有支持自动挂载的设备(定义在了/etc/fstab文件中,且挂载选项中auto功能)

-L 'LABEL': 以卷标指定挂载设备

-U 'UUID': 以UUID指定要挂载的设备

-B, –bind: 绑定目录到另一个目录上       文件夹挂文件夹

 查看内核追踪到的已挂载的所有设备:

cat /proc/mounts   Cat /etc/mtab

    

-o options:(挂载文件系统的选项),多个选项使用逗号分隔

async:异步模式   默认

sync:同步模式,内存更改时,同时写磁盘

atime/noatime:包含目录和文件  默认很多情况不更新

           制定网页缓存无意义   优化至少5%   临时生效

diratime/nodiratime:目录的访问时间戳

auto/noauto:是否支持自动挂载,是否支持-a选项

exec/noexec:是否支持将文件系统上运行应用程序临时生效

dev/nodev:是否支持在此文件系统上使用设备文件

很危险

suid/nosuid:默认没有suid和sgid权限  非常危险

Chmod u+s/g+s    普通用户没有mount权限

remount:重新挂载

ro:只读

rw:读写

user/nouser:是否允许普通用户挂载此设备,默认管理员才能挂载

acl:启用此文件系统上的acl功能

Defaults:相当于rw, suid, dev, exec, auto, nouser, async

    mknod cdrom b 11 0  生成cdrom的设备文件    主设备号11 次设备号0.设备类型b

接下来的文章将会给大家介绍怎么编写etc/fstab这个文件以及如何启用交换分区及硬盘修复。

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

(0)
sjfbjssjfbjs
上一篇 2016-08-24
下一篇 2016-08-24

相关推荐

  • python 10第二周博客作业

    1.取磁盘利用率:cut -d命令 df|tr –s  ‘ ’   ‘%’ |cut –d “%” –f5正则表达式:df -h |grep “^/dev/sd” |grep -o “[[:digit:]]\+%”|grep -o “[[:digit:]]\+”2. paste 合并两个…

    Linux干货 2018-03-17
  • Redis 存储分片之代理服务Twemproxy 测试

    概述 实际业务场景中单点 Redis 容量、并发都是有限的,所以有 Redis Cluster 的需求。 但是官方的 Redis Cluster 一再跳票,还不可用。 只好先使用最简单的方式:Proxy。有很多可选,但在大范围生产使用的, Twitter 开源的 Twemproxy  看起来是个理想的选择 – https://…

    Linux干货 2015-03-10
  • 常用的文件查看命令

    常用的文件查看命令 1.     cat 常用参数 -n     显示行号 -E     显示行尾结束符 $ -b     显示非空行编号 -s    &nbs…

    2017-04-03
  • 程序包的编译安装

    程序包的编译安装     程序包的编译安装是比较重要的内容,在之后的网络知识以及服务的配置等学习方面也发挥着重要作用,是我们的必备技能。 一、杂项知识整理 1、which –skip-alias:跳过别名,直接查看原命令 [root@localhost ~]# which –…

    Linux干货 2016-08-24
  • 一个删除MySQL大表数据的shell脚本

    #!/bin/bash #为了删除一些特别大的表 dbname=''  #库名 tabname=''  #表名 step='10000' #删除步长 sleeptime=1  #睡眠时间 start_index=30000001 &…

    系统运维 2015-07-16
  • BIND 配置DNS服务器以及子域授权

    1、安装bind      [root@www ~]# yum -y install bind 2、查看安装生成的文件      [root@www ~]# rpm -ql bind | less 3、程序路径     /var/named 4、配置…

    Linux干货 2016-03-22