linux 笔记--磁盘及文件系统,压缩及归档

  • 块:系统按逻辑把磁盘存放数据的区域分成很多个块,每一个块的大小可以是 1024 ,2048 ,4096 (字节)设备文件不会占磁盘块,每一个块都有一个inode号
  • 超级块super block 储存块的数据:
  • 1.有多少个块组
  • 2.每一个块组中包含多少个块
  • 3.块的大小
  • 4.空闲的磁盘块,已用的磁盘块,已用inode,空闲inode
  • 任何分区的第一个块都会被系统预留下来:多系统时会用到,用于加载引导分区上的系统
  • 一个分区中包含有:boot block(分区的第一个块)--block group0--block group1--block group2....
  • block group 中包含:super block --- GDI(块组描述表) ---data block bitmap(块位图) --- inode bitmap(inode位图) --- inode table(inode 表) --- data block
  • GDI块组描述表:每一个块组的块组名,起始块,结束块,结束块编号
  • 目录映射表:
  • inode   rec_len   name_len   file-type   name
  • 0   21      12         1            2         .
  • 12  22      12         2            2         ..
  • 磁盘引用格式
  • mode
  • owner-info
  • timestamps
  • (一级引用)diroct block-----------data  直接引用 指针有限
  • (二级引用)indiroct block-----------------块组-----------{data  data}
  • (三级引用)doublc indiroct--------块组-----{块组 块组}-------{data data data data}    (大文件常用,同样也限制了单个最大文件)   间接引用
  • triplc indiroct
  • 文件系统管理:
  • 重新创建文件系统会损坏原有文件
  • 查看当前内核支持的文件系统类型:cat /proc/filesystems
  • mkfs:make file system
  • mkfs -t fstype /dev/sda#
  • 管理ext系列文件:
  • mke2fs -j ext3 /dev/sda#  直接创建为ext3文件系统(mke2fs -j /dev/sda# )   -b:指定block size 默认为4096字节可以用1024  2048 4096   -L:指定分区卷标  -m #:指定预留给root用户的块数百分比(不用接百分号)  -i:用于指定多少字节的空间创建一个inode,默认为8192 这里给出的数值应该为块大小的2n倍  -N #:指定创建inode个数  -F:强制创建文件系统(用于正在挂载使用的分区)  -E:用户指定额外文件系统属性
  • blkid:查看磁盘设备的相关属性 blkid 设备名(uuid:统一的全局的唯一的标识符)
  • eslabel:用于查看或定义卷标  定义卷标:e2label 设备名 卷标名
  • tune2fs:用于调整文件系统的相关属性 , -j ext3 :将ext2升级为ext3 不损坏原有数据,但不能降级 (ext2和ext3的区比:ext3中加入了日志文件系统)  -L:设定或修改卷标  -m #:调整预留百分比  -r #:指定预留块数  -O:设定默认挂载选项  -c #:设定挂载次数,达到#次后进行自检,0或-1关闭此功能  -i #:没挂载多少天后进行自检,0或-1关闭此功能  -l:显示超级块中的信息
  • dumpe2fs:显示文件属性信息 -h:只显示超级块信息
  • fsck:检查并修复文件系统 -t fstype:指定文件系统类型  -a:自动修复(不询问,自动完成)
  • e2fsck:专门检查并修复ext2 ext3   -f:强制检查  -p:自动修复 也可以-u
  • 挂载:将新的文件系统关联至当前根文件系统
  • 卸载:将文件系统从当前根文件系统的关联关系移除
  • mount:mount不加选项为 显示当前系统已挂载的设备及挂载点,mount [options] [-o options] device  mount_point  -a:表示挂载/etc/fstab文件中定义的所有文件系统  -n:默认情况下,mount命令每挂载一个设备都会把挂载的信息保存到/etc/mtab中,使用-n就不把信息写入此文件,-t fstype:指定正在挂载设备上的文件系统的类型  不使用此选项时mount会调用blkid命令获取对应文件系统类型  -r:文件系统,只读(挂载光盘常用)  -w:读写挂载  -o:指定额外挂载选项
  • 挂载  mount  设备名(设备文件、卷标或UUID)  挂载点(目录)
  • 目录要求:1.此目录设备没有被其他进程使用 2.目录必须存在 3.目录中的原有文件会暂时隐藏(卸载后可以看见)
  • 挂载完成后要通过挂载点访问对应文件系统上的文件
  • umount:卸载某文件系统  umount 设备名(设备文件、卷标或UUID) 或者  挂载点(目录) (挂载的设备没有进程使用)
  • remout:重新挂载当前文件系统,ro:只读挂载  rw:读写挂载   -o remount,ro /dev/sda#
  • free :查看当前系统上的物理内存和交换空间的使用情况的   -m 以M为单位显示交换空间信息
  • 创建交换分区:
  • 1.调整分区类型:fdisk 命令中调整为82分区类型
  • 2.mkswap /dev/sda#(创建交换分区)
  • 3.swapon -a /dev/sda# 打开挂载 (-a:启用所有定义在/etc/fstab文件中的交换设备) swapoff /dev/sda#关闭挂载
  • 回环设备:
  • loopback,使用软件来模拟实现硬件
  • mount命令通过回环设备可以挂iso镜像
  • mount -o loop ~/centos6.ios /media/ (-o loop 本地回环设备)
  • dd if=源文件  of=数据目标  bs=1024(指定大小可以以M为单位)  count=2(指定个数)
  • 可用于备份MBR:
  • dd if=/dev/sda of=/mnt/usb/bf.backup bs=512 count=1
  • 还原MBR:
  • dd if=/mnt/usb/bf.backup of=/dev/sda bs=512 count=1
  • 制作光盘镜像:cat /dev/cdrom > ~/centos6.iso
  • 不用分区,利用文件增加swap交换空间的大小:
  • 1.dd /dev/zero of=/var/swfile/ bs=1M count=1024 创建一个1G大小的文件
  • 2.mkswap /var/swfile
  • 3.swapon /var/swfile
  • ( dd 后面也可以跟 seek=1023 表示跳过1023M建立后的空间大小属假的,可以用du来查看)
  • 文件系统的配置文件/etc/fstab:系统启动时自动挂载此文件中定义的每一个文件系统
  • 要挂载的设备(UUID或设备名)  挂载点  文件系统类型  挂载选项  转存屏率  自检次序
  • 挂载选项:默认为defaulfs
  • 转存屏率:每多少天做一次完全备份 1:每天都要做备份 2:每隔两天做一次完全备份 0:不备份
  • 自检次序:只有根为1,其他可以同时为2  0:表示不检查
  • fuser:验证进程正在使用的文件或套接字文件 -v:查看某文件上正在运行的进程  -k -m file :终止正在访问此挂载点的所有进程
  • 压缩  解压缩
  • 压缩格式:.gz  .bz2  .xz  .zip
  • 压缩算法不同,压缩的比也会不同
  • gzip bzip2 xz 都只能压缩文件不能压缩目录默认会源删除文件
  • gzip:gzip file1  file2  -d:相当于gunzip  -#:指定压缩等级(1-9),默认为6
  • 解压缩:gunzip file1 file2(也会删除源文件)
  • zcat file.gz:不解压的情况下查看文件的内容
  • bzip2:比gzip有着更大的压缩比,使用格式与gzip近似,-k :可以保留源文件 也支持 -d -#  bunzip:解压 bzcat:不解压,查看
  • xz file1 ...:也支持-d -# -k unxz xzcat
  • 即归档又压缩:
  • zip  unzip  都不删除源文件
  • zip  压缩后的文件名  源文件
  • archive:归档 并不意味着压缩
  • tar:归档工具,不压缩 -c:创建归档文件 -f:操作的归档文件 -x:还原归档 -cf file -xf ... 默认不删除源文件  --xattrs:归档同时保留其扩展属性信息 -tf:查看归档中的文件 xz 压缩 **.tar文件  -zcf:即归档也压缩(调用gzip压缩)  -zxf:解压缩,展开归档  -jcf:调用bzip2压缩  -jxf:解压缩(bzip2)  -Jcf:调用xz压缩  -Jxf:解压缩(xz)  -jtf:查看  --exclude filename:在打包或者压缩时,不将filename文件包括在内
  • read:交互 -p :提示信息 -t等待时间
  • while循环:
  • 适用于循环次数未知的场景,while cowditiow;do
  • statement
  • ....
  • done
时间: 2024-12-08 19:49:58

linux 笔记--磁盘及文件系统,压缩及归档的相关文章

linux文件的编辑、压缩、归档、操作

一.文件内容操作(/etc/passwd) 1. cat 查看文件内容比较少的 2. more 可以分页显示 3. less 比more更全面 4. head 默认显示文件头10行 -n 数字 显示头n行 5. tail 默认显示文件尾10行 -n 数字 显示尾n行 -f 实时查看 6. wc 统计 7. grep 输出包含指定字符串的行 -i 忽略大小写 -v 取反 ^root 以root开头 root$ 以root结尾 ^$ 匹配空行 -E 查找多个关键字,匹配其中任意一个都输出 8. dm

Linux 入门之文件的压缩和归档

Linux入门之压缩与归档 LInux中的有很多对文件压缩和归档的工具,而且其压缩的算法也在不段的更新和突破,但是作为对数据的稳定一般常用的工具不会太多,下面看看一些压缩工具吧,这里我在RHEL5 (red hat 5)或CentOS 6版本的系统上列举这些工具 compress 这是一个很老旧的工具了,一般只有系统内核上的弄些不常改变的文件使用此工具压缩,但是这个工具对于小型数据的压缩效果还是不会很差的. #使用rpm测试软件包是否已经安装 [[email protected] ~]# rpm

Linux 入门之文件的压缩和归档(2)

Linux入门之归档与压缩(二) 前言 在linux中,不仅有常见的压缩工具,也有打包工具,把单个或多个文件.文件夹打成包,方便管理,而tar工具就能很好的打包,然后调用其它压缩工具进行打包压缩结合 tar 命令用法: tar  [option]...  /path/to/file... -c :创建归档 -f :指明归档文件路径 -t :查看归档文件列表 -x :展开归档 -C :展开归档时使用此项执行展开路径 -j  :调用bzip2工具 -z  :调用gzip 工具 -J  :调用 xz

一起来学linux:磁盘与文件系统:

对于文件系统来说,windows上最长用的就是FAT32和NTFS.在Linux上时候用的是Ext2.在linux中,文件权限与文件属性这两部分会被存储在不同的块,权限与权限放置到inode中,实际数据放置到data block当中.另外还有一个超级块(superblock)会记录整个文件系统的整体信息.包括inode与block的总量,使用量,剩余量以及文件系统的格式与相关信息等.Super block: 记录此文件系统的整体信息,包括inode/block的总量,使用量,剩余量以及文件系统的

linux下磁盘及文件系统基础知识(一)

MBR主引导记录,共有512字节 其中446字节表示BootLoad系统启动引导器 64字节表示磁盘分区,且16个字节可标识一个主分区,所有一块磁盘最多只能有4个主分区 所以大部分磁盘分区是3个主分区和一个扩展分区,而扩展分区又可分N个逻辑分区 最2字节主要是标准MBR是否有效 2.df命令:显示文件系统磁盘空间使用情况 格式:df [选项] 选项:-B 1K/1M/1G块显示(默认以1K块大小显示) -h 以人类能识别的单位显示M/G显示 -i 以inode显示磁盘使用情况 -P 强制一行一行

LINUX 笔记之常用打包压缩命令

1.将所有.jpg文件打成一个名为all.tar的包 tar -cf all.tar *.gif 2.将所有.gif文件追加到all.tar tar -rf all.tar *.gif 3.更新原来tar包中logo.gif文件 tar -uf all.tar logo.gif 4.列出all.tar中文件 tar -tf all.tar 5.解包文件 tar -xf all.tar 6.tar调用gzip tar -czf all.tar.gz *.jpg tar -xzf all.tar.g

Linux学习命令汇总六——磁盘分区,磁盘挂载,文件系统管理,压缩及归档命令

本章Blog相关Linux知识点 Linux文件系统中的文件是数据的集合,文件系统不仅包含着文件中的数据而且还有文件系统的结构,所有Linux 系统中的文件.目录.软连接及文件保护信息等都存储在其中.按照名称进行存取. 磁盘:磁道,扇区 ,柱面 ,固定角速度 ,平均寻道时间 MBR :master boot recoard 主引导记录 (512字节),存放bootloader (引导加载器 446字节)+ 磁盘分区 (64字节) 一块磁盘最多分为4个主分区 ,或者3主分区1扩展分区  ,磁盘在C

关于linux一些备份、还原,压缩,归档的命令

15.1 gzipgzip(1) 是GNU的压缩程序.它只对单个文件进行压缩.基本用法如下:$ gzip filename程序执行以后,文件名会变成filename.gz,而且一般情况下大小会比原文件要小.注意,程序并不新建一个新的文件filename.gz, 而是将filename变成filename.gz.一般来说,文本文件压缩率会比较高.而那些jpeg图像,mp3等类似文件的压缩率就没有那么好了,因为它们本来就已经被压缩过了的.这个基本用法考虑了压缩时间和压缩后文件尺寸的平衡问题(译者注:

Linux基础之压缩与归档工具

压缩出现的原因简析 压缩为什么会诞生?我们可以想象一下如果没有压缩的场景:一个游戏10G,下载下来得一整天,我们要上传一个1G电影得1天,磁盘不够用了,再买一块扩展...上传下载好耗费时间啊,买一块硬盘好贵.如果我们可以将游戏压缩到原来的80%,我们就可以节省下来20%的时间,同时也节省了一部分磁盘空间.所以压缩诞生的目的首先是解决磁盘空间问题,其次也是为了节省我们上传下载的时耗问题. 看起来它的出现真的是好的无以复加,不过它也有它的不足,压缩必定伴随着压缩这个过程,同样若是想要解压也需要解压这