一、设备
IDE磁盘的设备文件采用/dev/hdx来命名,分区则采用/dev/hdxy来命名,其中x表示磁盘(a是第一块磁盘,b是第二块磁盘,以此类推), y代表分区的号码(由1开始,1、2、3以此类推) SCSI设备和分区采用/dev/sdx和/dev/sdxy来命名(x和y的命名规则与IDE磁盘一样)。IDE和SCSI光驱采用的是跟磁盘一样的命名方式。 /dev/hda/表示第一个IDE接口的第一个硬盘设备(master) /dev/hdb/表示第一个IDE接口的第二个硬盘设备(slave) /dev/hdc和/dev/hdd则是第二个IDE接口上的master和slave设备 主分区占用了1到4号,逻辑分区从5开始算起 1. /dev/hdc6:第二个IDE接口的master接口硬盘的第二个逻辑分区 2. /dev/sdb1:第二个SCSI接口硬盘的第1个主分区 3. 第二个IDE接口的master接口硬盘的第三个主分区:/dev/hdc3 4. 第五个SCSI接口硬盘的第三个逻辑分区:/dev/sde7
字符设备 console:本地物理控制台 tty:虚拟终端 ttys:串行虚拟终端 pts/{0,1,2}:模拟终端设备(通过远程网络,例如Xshell)关联远程连接(TCP)会话
who: 查看当前系统谁登录 w:查看谁登录,正在干什么 whoami:查看当前登录的登录名 last:所有用户在此计算机上曾经登录成功的用户名 lastb:曾经登录失败的信息 lastlog:显示一个给定用户的最近登录信息
/var/log/wtmp:保存登录成功的信息 last /var/log/btmp:保存登录失败的信息 lastb
sleep 5;ls 等待5秒后执行ls ctrl+D 注销(exit)
块设备 能完成数据存储的功能。 ram sd#(serial disk串行磁盘) sr#(serial cdrom|dvdrom光盘) fd#(floppy disk软盘)
元数据(没有文件名,文件名存放在目录中)
元数据(Metadata),又称中介数据、中继数据,为描述数据的数据(data about data),主要是描述数据属性(property)的信息,
用来支持如指示存储位置、历史数据、资源查找、文件记录等功能。
固态硬盘,芯片存储,U盘(闪存)
机械硬盘,磁头盘片
U盘存储速度:芯片的处理速度,接口标准,总线宽度
磁盘管理,文件系统
盘片,两面,磁性材料,两个磁头
柱面,磁道,扇区
最外圈,线速度最快,读取速度最快
划分分区,从外面向里面划分
操作系统安装在最靠近外边缘的分区。
整个磁盘盘上头好像有多个同心囿绘制出的饼图,而由圆心以放射状癿方式分割出磁盘的最小储存单
位,那就是扇区(Sector), 在物理组成分面,每个扇区大小为 512Bytes,这个值是不会改变的。而扇
区组成一个圆就成为磁道(track), 如果是在多碟的硬盘上面, 在所有磁盘盘上面癿同一个磁道可以组
成一个磁柱(Cylinder), 磁柱也是一般我仧分割硬盘时癿最小单位了!
格式化
高级格式化:在已经划分好的分区里面进行磁盘块以及元数据的创建(由文件系统进行操作)
低级格式化:在硬盘式划分磁道
文件系统在操作系统的内核里
在linux里面,文件系统将磁盘分区划分为大小相等的若干磁盘块(block)(在windows里叫簇)
块的大小只有三种标准:1024Byte,2048B,4096B(默认4096)
元数据
索引信息
索引节点(inode),索引位图(inode bitmap),块位图
访问一个文件,/tmp/test/a.txt 首先看是否存在,然后找索引节点号(ls -id /tmp),再找数据块 文件夹里只有文件名和节点编号 若文件没有节点编号,一定不存在 一个inode可能对应很多块数据块
添加磁盘
虚拟机设置,添加硬盘(SCSI支持热插拔),创建新磁盘,存储为单个文件,完成。 sda1:启动分区 sda2:交换分区 sda3:根分区 为了是系统内核重新识别并创建新的设备文件,可以如下操作: echo " - - - " > /sys/class/scsi_host/host2/scan 重新识别硬盘 添加新的磁盘设备之后使用新磁盘的操作步骤: 1.划分分区 2.创建文件系统 3.创建卷标(可选) 4.挂载(前提:有挂载点并且挂载点是空目录) cat /proc/partitions 现在的分区信息(blocks单位是1k)
二、fdisk
划分分区的命令:
fdisk [选项] [设备名] -l 显示分区信息,包含标准输出,标准输入 command: n:添加新的分区 d: 删除分区 m:获得帮助菜单 p:显示当前分区表 q:不保存退出 w:保存退出 t:转换分区系统标识
partprobe [设备名] 手动更新分区表
partprobe /dev/sdb
补充:
判断文件是否为空 touch a wc -l < a
三、文件系统
1、mkfs
mkfs:make file system
-t fstype
当前系统可支持的文件系统
ls /lib/modules/2.6.32-71.el6.i686/kernel/fs autofs4 cifs(普通的互联网文件系统) dlm ext2 fat(文件分配表) gfs2 jffs2 nfs(网络文件系统) nls udf btrfs configfs ecryptfs ext3(增加了日志系统) fscache jbd lockd nfs_common squashfs cachefiles cramfs exportfs ext4(单个文件大小更大了,块大小可自由调节,控制inode) fuse jbd2 mbcache.ko nfsd ubifs
1个inode对应4块block
mkfs -t ext2 = mkfs.ext2
2、mke2fs
mke2fs -t ext3/4:创建ext3/4类型文件系统 -b:指定块大小,默认4096,可用取值1024,2048,4096 -L LABEL:指定分区卷标(严格区分大小写) -m #:指定预留给超级用户的块数百分比 -i #:用于指定为多少个字节的空间创建一个inode,默认16384,这里给出的数值应该为块大小的2^n倍; -N #:指定inode个数 -F:强制创建文件系统 -E:用户指定额外文件系统属性
注意:别格式化扩展分区(扩展分区不能直接格式化),别格式化整个磁盘(会格式化MBR,分区表也没了)
能创建系统的是主分区和逻辑分区
mke2fs -b 2048 -i 4096 - L mydate /dev/sdb1
3、blkid:查询或者查看磁盘设备的相关属性
UUID:通用唯一的标识符号,标识分区设备,由CPU随机计算生成
SEC_TYPE:辅助
TYPE:文件系统类型
LABEL:卷标
4、e2label:修改卷标
e2label /dev/sdb2 "hx"
5、tune2fs:调整文件系统的相关属性
-j:不损害原有数据,将ext2升级为ext3 -L LABEL:设定或修改卷标 -m #:调整预留百分比 -r #:指定预留块数 -o:设定默认挂载选项 acl -c #:指定挂载次数达到#次后进行自检,0或-1表示关闭此功能 -i #:每挂载多少天后进行自检,0或-1表示关闭此功能 -l:显示超级块中的信息
dumpe2fs:显示文件属性信息
-h:只显示超级块中的信息
6、fsck:检查并修复linux文件系统
-t FSTYPE:指定文件系统类型
-a:自动修复
7、e2fsck:专用于修复ext2/ext3文件系统
-f:强制检查
-p:自动修复