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. Chrome开发者工具Debug入门

    译者按: 手把手教你摆脱console.log,掌握高级的debug方法. 原文: Learn How To Debug JavaScript with Chrome DevTools 译者: Fun ...

  2. EF中更新操作 ID自增但不是主键 ;根据ViewModel更新实体的部分属性

    //ID自增但不是主键的情况 public int Update_join<TEntity>(TEntity entity) where TEntity : class { dbconte ...

  3. javascript中call()、apply()的区别

    call().apply()的区别: 相同点: 1.call()和apply()都可以用来间接调用函数,都可以显式调用所需的this.即,锚点滑动任何函数可以作为任何对象的方法来调用. 2.两个方法都 ...

  4. Go开发之路 -- 时间和日期类型

    time包 time.Time类型, 用来表示时间 获取当前时间, now := time.Now() time.Duration() 用来表示纳秒 时间类型的格式化 now := time.Now( ...

  5. babel在项目里的使用

    1.手动在项目里创建文件 .babelrc 2.安装 $ npm install --save-dev babel-cli # ES2015转码规则 $ npm install --save-dev ...

  6. jQuery效果之简单的手风琴效果

    实现效果如图所示: html结构: <div class="item_box box10"> <div class="item_box_wp" ...

  7. 1.Odoo产品分析系列 – 目录

    Odoo产品分析 (一) – 一切为零 Odoo产品分析 (二) – 商业板块(1) – 销售(1) Odoo产品分析 (二) – 商业板块(1) – 销售(2) Odoo产品分析 (二) – 商业板 ...

  8. Spring的原理性总结

    一.Bean的生命过程 Bean的生命过程可以借鉴Servlet的生命过程,了解其生命过程对于不管是思想还是以后的使用都很有帮助: Bean可以通过两种方式进行加载,分别是使用BeanFactory ...

  9. Tomcat_记一次tomcatwar包应用简单部署过程

    记一次tomcat war包应用简单部署过程 by:授客 QQ:1033553122 1.  实践环境 Linux apache-tomcat-7.0.73 2.  实践步骤 # 解压tomcat压缩 ...

  10. The server principal "sa" is not able to access the database "xxxx" under the current security context

    在SQL Server服务器上一个作业执行时,遇到下面错误信息: Message: Executed as user: dbo. The server principal "sa" ...