磁盘与文件系统管理

一、文件系统概述

对于linux的文件系统来说,它将一个文件的属性存放到inode中,实际数据存放到data block中,整个文件系统还有一个super block。

super block:记录文件系统的整体信息,包括inode/block的总量、使用量、剩余量,文件系统格式等相关信息

inode:记录文件的属性(权限、属主属组、大小、修改与访问时间等),以及此文件的数据所在的block号码

block:记录实际文件的内容

每个文件最多占用一个inode,如果文件较大可能占用多个block,如果文件较小block的剩余空间不能再被其他文件占用。

一个文件系统一开始就讲inode与block规划好了,除非重新格式化或者resizefs,否则inode与block固定后就不再变动。

 

二、df

df用来列出文件系统的整体使用情况,语法df [-akmhiTH] [文件系统/挂载点],一般使用df -h即可。

  • -a:列出所有的文件系统,包括系统特有的/proc等
  • -k/m/h:以K、M或者较易阅读的单位显示大小,默认以KB显示
  • i:显示inode数量,而不是大小
  • T:显示文件系统类型
  • H:以1000为进位的方式显示大小

 

三、du

du用来统计目录和文件所占用的磁盘容量,语法du [-akmhs] 目录或文件,一般在某个目录下使用du -sh *。

  • -a:列出指定的目录或文件所占用的空间大小,会递归显示各个层级的目录
  • -k/m/h:以K、M或者较易阅读的单位显示大小,默认以KB显示
  • s:列出指定的目录或文件所占用的空间大小,不显示子目录

 

dumpe2fs /dev/hda   查看文件系统信息

 

五、fdisk磁盘分区

fdisk -l [磁盘]:列出指定分区表,如果省略则列出所有分区

 

fdisk 磁盘:对指定磁盘进行分区操作

注意使用fdisk进行分区时,是对磁盘进行分区而不是对磁盘中的分区进行分区,例如应该是fdisk /dev/sda而不是、fdisk /dev/sda1。

fdisk中常用的命令是p打印、n新增、d删除、w保存并退出、q不保存退出。

如果通过fdisk进行了分区修改,需要在退出fdisk命令后执行partprobe来告知内核重新读取分区表。 

由于每个磁盘最多有4个分区,在新增分区时:

如果分区号1-4有剩余且未有扩展分区,此时会让选择创建主分区还是扩展分区,和1-4之间的分区号

如果分区号1-4有剩余且已有扩展分区,此时会让选择创建主分区还是逻辑分区,如果选择主分区还需要选择剩余的分区号,选择逻辑分区系统会自动指定

如果分区号1-4没有剩余,无需挑选分区类型,直接进入逻辑分区流程

 

六、文件系统格式化

mke2fs

 

 

七、mount与umount

mount -a:读取/etc/fstab将未挂载的磁盘挂载上

mount [l]:显示当前挂载信息,加上-l参数会增加一列label卷标

mount  [-t 文件系统类型]  [-L label]  [-o 参数] 设备名 挂载点

  • -t:指定文件系统类型,常见的有ext2、ext3、vfat、iso9660等,一般没有特别情况下这个参数可以不指定,系统会自动分析并测试挂载
  • -L:利用文件系统的卷标名称进行挂载
  • -o:挂载参数,例如账号、密码、权限等

    ro、rw 挂载后的文件系统只读、可读写

    async、sync 使用异步、同步方式写入

    auto noauto 允许、禁止使用mount -a一键挂载

    ……等等其他参数

 

umount 设备名或挂载点

例如mount /dev/sda1 /mnt/sda1

    umount /dev/sda1或者umount /mnt/sda1

 

系统重启后会读取/etc/fstab的内容进行文件系统的自动挂载,因此通过mount和umount挂载和卸载的设备,如要永久生效,还需要写入/etc/fstab。

/etc/fstab文件内容共6列,分别表示设备名称[或label]、挂载点、文件系统类型、参数、能否用dump备份、是否开机进行fsck检查文件系统完整性。

对于第5列dump,0表示不作dump备份、1表示每天进行dump、2表示其他不定日期的dump备份,我们自己写入这个文件的一般值都设置为0。

对于第6列fsck,0表示不用开机检查,1表示最早检查(一般只有根目录设为1),2也表示检查,我们自己写入这个文件的一般值都设置为0。

 

 

 

CPU核数:cat /proc/cpuinfo|grep cores|uniq

CPU物理个数:cat /proc/cpuinfo|grep "physical id"|sort|uniq|wc -l(主板上实际插入的cpu数量,能够数不重复的 physical id 有几个(physical id))

CPU逻辑个数:cat /proc/cpuinfo|grep processor|wc -l(单块CPU上面能处理数据的芯片组的数量,如双核、四核等 (cpu cores))

一般来说,逻辑个数=物理个数*核数,如果不相等的话表示该服务器的CPU支持超线程技术,一般是一核倆线程,即逻辑个数=物理个数*核数*2

或者通过lscpu命令查看CPU(S)的值

 

操作系统内核:uname -a

操作系统发行版:cat /etc/issue

查看内存信息:cat /proc/meminfo|grep MemTotal

 

一般常说的几C几G

C是指CPU逻辑个数:通过lscpu命令查看CPU(S)的值,或者CPU逻辑个数:cat /proc/cpuinfo|grep processor|wc -l

G是指内存的大小:free -g,或者cat /proc/meminfo|grep MemTotal

 

posted @ 2019-09-09 21:36  Forever77  阅读(220)  评论(0编辑  收藏  举报