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:强制修复;

      

Linux:Day7(下) 磁盘管理、文件系统管理的更多相关文章

  1. Linux学习之四——磁盘与文件系统管理

    一.一些基本定义 1. superblock:记录此 filesystem 的整体信息,包括inode/block的总量.使用量.剩余量, 以及文件系统的格式与相关信息等:2. inode:记录档案的 ...

  2. linux命令之磁盘与文件系统管理命令(上)

    1.fdisk:磁盘分区工具 该命令是linux下常用的磁盘分区工具,但是只能给小于2TB的磁盘划分分区. 常用参数为-l,显示所有磁盘分区的信息. 示例: 1)显示磁盘分区列表 [root@boxi ...

  3. Linux之磁盘与文件系统管理

    磁盘及文件系统管理详解 [参考文献:马哥视频] 原文:http://blog.csdn.net/u013008795/article/details/51150075 目前市场上主流的磁盘是机械式硬盘 ...

  4. centos Linux下磁盘管理 parted,df ,du,fdisk,partprobe,mkfs.ext4,mount,/etc/fstab,fsck,e2fsck,mk2efs,tmpfs ,nr_inodes, LVM,传统方式扩容文件系统 第七节课

    centos Linux下磁盘管理   parted,df ,du,fdisk,partprobe,mkfs.ext4,mount,/etc/fstab,fsck,e2fsck,mk2efs,tmpf ...

  5. Linux学习笔记—Linux磁盘与文件系统管理(转载)

    认识EXT2文件系统 文件的系统特性 Linux的正规文件系统为Ext2 文件数据除了文件实际内容外,还包括其他属性(文件权限.文件属性). 文件系统将这两部分数据分别存放在不同的块,权限和属性放在i ...

  6. Linux学习笔记之Linux磁盘及文件系统管理笔记

    Linux磁盘及文件系统管理 CPU,memory(RAM),I/O i/o: disks,ehtercard disks:持久存储数据 接口类型: IDE(ata): 并口,133MB/s;并行总线 ...

  7. 第八章、Linux 磁盘与文件系统管理

    认识 EXT2 文件系统 Linux最传统的磁盘文件系统(filesystem)使用的是EXT2这个啦!所以要了解文件系统就得要由认识EXT2开始! 而文件系统是创建在硬盘上面的,因此我们得了解硬盘的 ...

  8. linux(3)磁盘与文件系统管理/查看硬盘、内存空间/文件系统的操作/ 文件的压缩和打包

    一.磁盘与文件系统管理 1.分区与文件系统分区:记录每一个分区的开始柱面和结束柱面主引导区(master boot recorder):记录分区的数据,记录硬盘里所有的分区信息分区划分好后,要将分区格 ...

  9. Linux下磁盘管理命令df与du

    Linux下磁盘管理命令df与du  对磁盘进行查看和控制的两个linux命令,df和du.  一.du命令 首先看一下du的help说明: [root@misdwh opt]# du --help ...

随机推荐

  1. 异常:Data = 由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值。

    做项目的时候,将DataTable序列化成Json,通过ashx向前台返回数据的时候,前台总是获取不到数据,但是程序运行却没问题, 没抛出异常.一时找不到办法,减小输出的数据量,这时前台可以接收到页面 ...

  2. CSS border-collapse 属性

    表格边框合并: table {  border-collapse:collapse; 边框会合并为一个单一的边框 } ----------------------------------------- ...

  3. angular $index获取ng-repeat的上一条数据

    <div ng-repeat="item in dataList" ng-click="func($index,$index-1)"></di ...

  4. js 提取某()特殊字符串长度

    // 提取特殊字符串长度(scrstr 源字符串 armstr 特殊字符) getStrCount: function(scrstr, armstr) { var count = 0; while ( ...

  5. HashMap的resize方法中尾部遍历出现死循环问题 Tail Traversing (多线程)

    一.背景介绍: 在看HashMap源码是看到了resize()的源代码,当时发现在将old链表中引用数据复制到新的链表中时,发现复制过程中时,源码是进行了反序,此时是允许反序存储的,同时这样设计的效率 ...

  6. Python 基于Python从mysql表读取千万数据实践

    基于Python 从mysql表读取千万数据实践   by:授客 QQ:1033553122 场景:   有以下两个表,两者都有一个表字段,名为waybill_no,我们需要从tl_waybill_b ...

  7. Android studio 下的SDK Manager只显示已安装包的情况

    原因是连接不上Google的更新服务器: 解决方法: 选择第三个Options: 修改Http Proxy Server: mirrors.neusoft.edu.cn Http Proxy Port ...

  8. (其他)window10上好用的软件

    1.everything:比我用电脑搜索快一些,(常用的搜索其实熟悉电脑的都会,不过想快一点) 如果你曾对效率工具有过研究,想必对 Everything 的名字不会陌生.这款仅有 1.3 MB 的小软 ...

  9. (网页)HTMl5的sessionStorage和localStorage

    百度上百度的,记录一下: html5中的Web Storage包括了两种存储方式:sessionStorage和localStorage. sessionStorage用于本地存储一个会话(sessi ...

  10. 结对编程--四则运算(Java)萧英杰 夏浚杰

    结对编程--四则运算(Java)萧英杰 夏浚杰 Github项目地址 功能要求 题目:实现一个自动生成小学四则运算题目的命令行程序 使用 -n 参数控制生成题目的个数(实现) 使用 -r 参数控制题目 ...