搬马

导航

 

Linux入门

Linux系统管理:

  磁盘管理、文件系统管理

  RAID基本原理、LVM2

  网络管理:TCP/IP协议、Linux网络属性配置

  程序包管理:rpm,yum

  进程管理:htop,glance,tsar等

  sed和awk

  Linux系统开机流程

  内核管理基础知识:编译内核、模块

  Linux系统裁剪

    kernel+busybox

  课外作业:LFS

 

Linx磁盘管理

  I/O ports:I/O设备地址;

  一切皆文件:

    open(),read(),write(),close()

    块设备:block,存取单位“块”,磁盘

    字符设备:char,存取单位“字符”,键盘

    

    设备文件:关联至一个设备驱动程序,进而能够与之对应硬件设备进行通信;     注:设备文件是特殊类型的文件,只有元数据,没有数据。

      主设备号:major number,标识设备类型

      次设备号:minor number,标识同一类型下的不同设备

      # 可通过ll /dev/查看设备文件,前面一个为主设备号,后面一个为次设备号。

      

    硬盘接口类型:

      并行:

        IDE:133MB/s

        SCSI:640MB/s

      串口:

        STAT:6Gbps

        SAS:6Gbps

        USB:480MB/s

      rpm:rotations per minute 每分钟转的圈数

    /dev/DEV_FILE

      磁盘设备的设备文件命名;

      IDE:/dev/hd

      SCSI,SATA,SAS,USB:/dev/sd

        不同设备:a-z

          /dev/sda,/dev/sdb,...

        同一设备上的不同分区:1,2,...

          /dev/sda1,/dev/sda5

    

    机械式硬盘:

      track:磁道

      cylinder:柱面

      secotr:扇区

        512bytes

      如何分区:

        按柱面

      0磁道0扇区:512bytes

        MBR:Master Boot Record  主引导记录

          446bytes:boot loader  引导加载器,是一个程序

          64bytes:分区表

            16bytes:标识一个分区,每16个字节标识一个分区,所以一块磁盘最多只能出现4个分区。

          2bytes:55AA  代表前面520个字节是有效的。

          4个主分区:

            4个主分区

            3主分区+1扩展分区(N个逻辑分区)

              逻辑分区,从5开始编号

      问题:UEFI,GPT?

 

分区管理工具:fdisk,parted,sfdisk

  fdisk:对于一块硬盘来讲,最多只能管理15分区;

  # fdisk -l [-u] [device...]    列出所有或指定磁盘设备分区信息

       

    boot:表示该分区是否可引导,*号表示该分区可引导。

    其它解析依次是:起始柱面、结束柱面、包含的磁盘块数、分区标识、应用在哪个系统上常用的分区标识。

    sda1的结束柱面和sda2的开始柱面是同一柱面,这个是不允许的,所以有了Partition 1 does not end on cylinder boundary.提示

  # fdisk device  

    子命令:管理功能

      p:print,显示已有分区;

      n:new,创建

      d:delete,删除

      w:write,写入磁盘并退出

      q:quit,放弃更新并退出

      m:获取帮助

      l:列表所分区id  # 显示分区类型以及id,用t设置的时候可能会用到

      t:调整分区id

  查看内核是否已经识别新的分区:只有识别了才能做进一步操作。

    # cat /proc/partations

  通知内核重新读取硬盘分区表:

    partx -a /dev/DEVICE

      -n M:N

    kpartx -a /dev/DEVICE

      -f:force

    Centos 5:使用partprobe

      partprobe [/dev /DEVICE]

 

Linux文件系统管理:

  Linux文件系统:ext2,ext3,ext4,xfs,btrfs,reiserfs,jfs,swap

    swap:交换分区

    光盘:iso9660

  Windows:fat32,ntfs

  Unix:FFS,UFS,JFS2

  网络文件系统:NFS,CIFS

  集群文件系统:GFS2,OCFS2

  分布式文件系统:ceph

    moosefs,mogilefs,GlusterFS,Lustre

  根据其否支持“journal”功能:日志型就是多了一个日志区域,元数据先放在日志区域,等传完了,再把元数据挪到元数据区域,这样如果中途断电了,开机只需要检查日志区域就可以了,提高了检查效率。

    日志型 文件系统:ext3,ext4,xfs,...

    非日志型 文件系统:ext2,vfat

  文件系统的组成部分:

    内核中的模块:ext4,xfs,vfat

    用户空间的管理工具:mkfs.ext4,mkfs.xfs,mkfs.vfat

  Linux的虚拟文件系统:VFS

    

  创建文件系统:想要创建文件系统内核必须支持,另外还要有用户空间的管理工具。使用用户空间管理工具调用内核模块功能来实现文件系统管理功能。

  cat  /proc/filesystems  查看系统支持的文件系统。

  lsmod    查看内核中装载的模块,任何一个文件系统想要使用,内核中必须装载相应的模块。

    mkfs命令:格式化完成后可以使用blkid查看设备的属性信息,如UUID,文件系统类型、卷标。 

      (1)# mkfs.FS_TYPE  /dev/DEVICE

        ext4

        xfs

        btrfs

        vfat

      (2) # mkfs -t FS_TYPE  /dev/DEVICE  其实指定类型后调用的就是上面那些命令

      -L 'LABEL':设定卷标,将来可以使用卷标对这个分区执行调用操作。

    mke2fs:ext系统文件系统专用管理工具

      -t {ext2|ext3|ext4}

      -b {1024|2048|4096}

      -L 'LABEL’

      -j:相当于 -t ext3

        mkfs.ext3 = mkfs -t ext3 = mke2fs -j = mke2fs -t ext3

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

      -N #:为数据空间创建个多少个inode;

      -m #:为管理人员预留的空间占据的百分比;

      -O FEATRUE [,...]:启用指定特性

        -O ^FEATURE:关闭指定特性

    mkswap:创建交换分区

      mkswap [options] device

        -L ‘LABEL’

      前提:调整其分区的ID为82

  

  其它常用工具:

    blkid:块设备属性信息查看

      blkid [OPTION]...[DEVICE]mkswap [-c] [-f] [-p PSZ] [-L label] [-U uuid] device

        -U UUID:根据指定的UUID来查找对应的设备,UUID为全局唯一标识符

        -L LABEL:根据指定的LABEL来查找对应的设备    例:blkid -L 'mydata'

    e2label:管理ext系统文件系统的LABEL

      # e2label DEVICE [LABEL]    用来查看或设置分区卷标

    tune2fs:重新设定ext系统文件系统可调整参数的值

      -l:查看指定文件系统超级块信息:super block

      -L ‘LABEL':修改卷标

      -m #:修改预留给管理员的空间百分比

      -j:将ext2升级为ext3

      -O:文件系统属性启用或禁用

      -o:调整文件系统的默认挂载选项

      -U UUID:修改UUID号;

    dumpe2fs:后面直接加设备查看是块组信息。

      -h:查看超级块信息

  文件系统检测:

    fsck:File System Check

      fsck.FS_TYPE

      fs -t FS_TYPE

        -a:自动修复错误

        -r:交互式修复错误

        Note:FS_TYPE一定要与分区上已有文件类型相同;

    e2fsck:ext系列文件专用的检测修复工具

      -y:自动回答为yes;

      -f:强制修复;

      

posted on 2018-09-19 11:11  搬马  阅读(140)  评论(0编辑  收藏  举报