专栏首页cslinux学习笔记三

linux学习笔记三

文件组成

linux文件系统的运行和操作系统的文件组成有关,文件系统会将文件权限,属性放在inode(索引节点)中,至于实际的数据则放在block快中。另外还有一个超级块(super block)会记录整个文件系统的整体信息,包括inode与block的总量,使用量和剩余量。)


1.0 super block:记录此文件的整体信息,包括inode/block的总量,使用量,剩余量,以及文件系统的格式和相关信息等。 2.0 inode:记录文件属性,包括文件的类型,权限,UID,GID,linkcount,文件大小,时间截以及文件数据所在block编号,一个文件占用一个inode。 3.0 block:实际记录文件的内容,若文件太大,会占用多个block。

文件属性.jpg

在整体规划中,文件前面有一个启动扇区(boot sector),这个启动扇区可以安装引导挂载程序,用于将不同的引导装载程序安装到对于的文件系统最前端,而不用覆盖整个硬盘唯一的MRB,这样也能制造出多重引导环境。

使用命令tune2fs-l/dev/sda1可以查看分区的信息,即查看该分区的超级快。

root@kali:/dev# tune2fs -l /dev/sda1
tune2fs 1.43.6 (29-Aug-2017)
Filesystem volume name:   <none>
Last mounted on:          /
Filesystem UUID:          40dbc8ca-5e0d-45a9-a325-dd44eceae166
Filesystem magic number:  0xEF53
Filesystem revision #:    1 (dynamic)

目录组成

在linux中,目录也被看成文件,称之为目录文件,因此目录也也有 inode和block组成,其中inode记录目录相关的权限与属性,并记录分配到block编号 而block则记录了在这个目录下的文件名和该文件名所占用的block编号。

可以使用命令 ls -li 查看文件的inode。

root@kali:/home# ls -li dflx 
650247 -rw-r--r-- 1 root root 0 11月 15 06:46 dflx

文件类型。

linux系统常见的文件类型包括普通文件,目录文件你,设备文件以及链表文件等 1.0 普通文件,所有用编程语言,语言编译程序,数据库管理程序产生的文本文件,二进制文件,数据文件等都是普通文件,它是一种无结构式的流式文件


2.0 目录文件, 也称文件夹,在linux/UNIX系统中把它当成一种特殊的文件,利用它可以构成文件系统的分层树形的结构


每一个目录的第一项都表示目录本身,并以“.”作为它的文件名。每个目录的第二项的名字是“..",表示该目录的父目录。* 注意以”."开头的文件名表示隐藏文件,使用ls -a命令可以查看。 3.0 设备文件,在linux系统中,所有设备都作为一类特殊的文件对待,用户像使用普通文件那样对设备进行操作。从而实现设备无关性。 **4.0 链接文件,为了解决文件共享问题,引入链接文件。链接文件包括二种,硬链接(hard link)和软链接(soft link)

软连接和硬链接.jpg

文件打包和压缩

1.0 tar 选项 打包/压缩文件 [文件或者目录的列表]

 -c  创建打包/压缩文件
 -z  采用gzip方式打包/解压缩已经打包的文件
 -x  还原打包/压缩文件中的文件和目录
 -v   显示命令执行的过程
 -f   tar命令必须的参数

tar -zcvf dflx 压缩文件 tar -zxvf dflx 解压文件

2.0 gzip [选项] 文件|目录

 -d 压缩文件
 -r 参数为目录时候,安装目录递归压缩目录中所有的文件
 -v 显示文件压缩比例

3.0 zip [选项] 压缩文件 文件列表

 -m 压缩完成后删除源文件
 -r  按目录结构递归压缩目录中的所有文件

先大概介绍这么多吧,以后在简书和博客园,可能二个地方同时进行。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • c++那些事儿7.0 I/O流,文件操作

    知识点综述: ---- C++ I/O: 在iostream头文件中定义 istream //通用输入流和其它输入流基类。 ...

    东风冷雪
  • ubuntu DNS解决方案。

    Ubuntu采用宽带上网(DSL),昨天发现打不开网页了,真是无语,所以就得解决 首先我的wine qq可以登上,firefox打不开网页,我采用ping命令...

    东风冷雪
  • c++那些事儿6.0 STL中的string

    ---- 知识点综述 c++,string 类 string 是C++中的字符串对象,是一种特殊类型的容器,专门设计来操作的字符序列。 ...

    东风冷雪
  • 艾特文件管理器 1.8

    刺_猬
  • 【Linux】聊聊Linux文件管理那些事

    //在Centos7之前,bin目录和sbin目录直接存放于根目录中,Centos7就移动到了usr目录中了,同样tmp目录也从usr移动到了var目录中去。

    一名白帽的成长史
  • LINUX常用命令

    修改密码: passwd 查看当前目录下的文件 ls 查看当前用户信息 whoami *可以匹配0个或任意多个字符 ?可以匹配1个字符 cat filename...

    用户1624346
  • 文件系统:隐匿在 Linux 背后的机制

    在 Linux 中,最直观、最可见的部分就是 文件系统(file system)。下面我们就来一起探讨一下关于 Linux 中国的文件系统,系统调用以及文件系统...

    cxuan
  • 文件操作

    "U"表示在读取时,可以将 \r \n \r\n自动转换成 \n (与 r 或 r+ 模式同使用)

    IT人一直在路上
  • unix环境高级编程(上)-文件篇

    笔者将《unix环境高级编程》主要内容总结为三篇:文件篇,进程篇,高级io和进程间通信三大板块。本文是unix环境高级编程系列文章第一篇:文件篇。该篇主要包括:

    kinnylee
  • ESP8266 刷写MicroPython固件

    ESP8266是业内集成度最高的Wi-Fi芯片,最小封装尺寸仅为5mmx5mm。ESP8266高度集成了天线开关、射频balun、功率放大器、低噪放大器...

    云深无际

扫码关注云+社区

领取腾讯云代金券