linux基础文件管理软硬链接

一、文件系统的基本结构

1、文件和目录被组成一个单根倒置树目录结构

2、文件系统从根目录下开始,用“/”表示

3、根文件系统(rootfs):root filesystem文件名区分大小写

4、以 . 开头的文件为隐藏文件

5、路径用/隔离

6文件有两类数据:元数据和数据本身
7、文件名规则

  • 文件名最多255个字节包括路径在内文件名称最长4095个字节
  • 蓝色-->目录 绿色-->可执行文件 红色-->压缩文件 浅蓝色-->链接文件 灰色-->其他文件
  • 除了斜杠和NUL,所有字符都有效.但使用特殊字符的目录名和文件不推荐使用,有些字符需要用引号来引用它们
  • 标准Linux文件系统(如ext4),文件名称大小写敏感例如:MAIL, Mail, mail, mAiL,部分文件系统大小写不敏感,文件大小写敏感与否取决于文件系统而不是操作系统

8、文件系统结构

  • /boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader, grub)都存放于此目录
  • /bin:所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序
  • /sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序
  • /lib:启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules)
  • /lib64:专用于x86_64系统上的辅助共享库文件存放位置
  • /etc:配置文件目录
  • /home/USERNAME:普通用户家目录
  • /root:管理员的家目录
  • /media:便携式移动设备挂载点
  • /mnt:临时文件系统挂载点
  • /dev:设备文件及特殊文件存储位置
  • b: block device,随机访问
  • c: character device,线性访问
  • /opt:第三方应用程序的安装位置
  • /srv:系统上运行的服务用到的数据
  • /tmp:临时文件存储位置
  • /usr: universal shared, read-only data
  • bin: 保证系统拥有完整功能而提供的应用程序
  • sbin:
  • lib:32位使用
  • lib64:只存在64位系统
  • include: C程序的头文件(header files)
  • share:结构化独立的数据,例如doc, man等
  • local:第三方应用程序的安装位置
  • bin, sbin, lib, lib64, etc, share
  • /var: variable data files
  • cache: 应用程序缓存数据目录
  • lib: 应用程序状态信息数据
  • local:专用于为/usr/local下的应用程序存储可变数据
  • lock: 锁文件
  • log: 日志目录及文件
  • opt: 专用于为/opt下的应用程序存储可变数据
  • run: 运行中的进程相关数据,通常用于存储进程pid文件
  • spool: 应用程序数据池
  • tmp: 保存系统两次重启之间产生的临时数据
  • /proc: 用于输出内核与进程信息相关的虚拟文件系统
  • /sys:用于输出当前系统上硬件设备相关信息虚拟文件系统
  • /selinux: security enhanced Linux,selinux相关的安全策略等信息的存储位置

二、linux应用程序的组成部分以及文件的类型

  1、linux文件的组成部分

  • 二进制程序:/bin, /sbin, /usr/bin, /usr/sbin, /usr/local/bin, /usr/local/sbin
  • 库文件:/lib, /lib64, /usr/lib, /usr/lib64, /usr/local/lib, /usr/local/lib64
  • 配置文件:/etc, /etc/DIRECTORY, /usr/local/etc
  • 帮助文件:/usr/share/man, /usr/share/doc, /usr/local/share/man,/usr/local/share/doc

2、文件类型

  • - 普通文件
  • d 目录文件
  • b 块设备
  • c 字符设备
  • l 符号链接文件
  • p 管道文件pipe
  • s 套接字文件socket

三、文件常用的命令  

  ls

  列出当前目录的内容或指定目录

  用法:ls [options] [files_or_dirs]

  示例

  ls -a 包含隐藏文件

  ls -l 显示额外的信息

  ls -R 目录递归

  ls -ld 目录和符号链接信息    

  ls -1 文件分行显示

  ls –S 按从大到小排序

  ls –t 按mtime排序

  ls –u 配合-t选项,显示并按atime从新到旧排序    

  ls –U 按目录存放顺序显示

  ls –X 按文件后缀排序

  stat

  文件:metadata, data

  三个时间戳:

  access time 访问时间,atime,读取文件内容

  modify time 修改时间, mtime,改变文件内容(数据)

  change time 改变

  时间, ctime,元数据发生改变

  touch

  

  -a 仅改变 atime和ctime

  -m 仅改变 mtime和ctime

  -t [[CC]YY]MMDDhhmm[.ss]

  指定atime和mtime的时间戳

  -c 如果文件不存在,则不予创建

  cp

  

  SRC是文件:

  如果目标不存在:新建DEST,并将SRC中内容填充至DEST中

  如果目标存在:

  如果DEST是文件:将SRC中的内容覆盖至DEST中

  基于安全,建议为cp命令使用-i选项

  如果DEST是目录:在DEST下新建与原文件同名的文件,并将SRC中内容填充至新文件中

  

  -i 覆盖前提示

  -n 不覆盖,注意两者顺序

  -r, -R 递归复制目录及内部的所有内容

  -a 归档,相当于-dR --preserv=all

  -d --no-dereference --preserv=links 不复制原文件,只复制链接名

  

  --preserv[=ATTR_LIST]

  mode: 权限

  ownership: 属主属组

  timestamp:

  links

  xattr

  context

  all

  -p 等同--preserv=mode,ownership,timestamp

  -v --verbose 显示复制过程

  -f --force 强制

  -u --update 只复制源比目标更新文件或目标不存在的文件

  -b 目标存在,覆盖前先备份,形式为 filename~

  --backu

  p=numbered 目标存在,覆盖前先备份加数字后缀

  mv  

  -i 交互式

  -f 强制

  -b 目标存在,覆盖前先备份

  tree

  -d: 只显示目录

  -L level:指定显示的层级数目

  -P pattern: 只显示由指定pattern匹配到的路径

  mkdir

  -p: 存在于不报错,且可自动创建所需的各目录

  -v: 显示详细信息

  -m MODE: 创建目录时直接指定权限

  rmdir

  -p: 递归删除父空目录

  -v: 显示详细信息

  通配符

  * 匹配零个或多个字符

  ? 匹配任何单个字符

  ~ 当前用户家目录

  ~mage 用户mage家目录

  ~+ 当前工作目录

  ~- 前一个工作目录

  [0-9] 匹配数字范围

  [a-z]:字母

  [A-Z]:字母

  [wang] 匹配列表中的任何的一个字符   

  [:digit:]:任意数字,相当于0-9

  [:lower:]:任意小写字母

  [:upper:]: 任意大写字母

  [:alpha:]: 任意大小写字母

  [:alnum:]:任意数字或字母

  [:blank:]:水平空白字符

  [:space:]:水平或垂直空白字符

  [:punct:]:标点符号

  [:print:]:可打印字符

  [:cntrl:]:控制(非打印)字符

  [:graph:]:图形字符  

  [:xdigit:]:十六进制字符

四、硬链接

  

  1、创建硬链接会增加额外的记录项以引用文件

  2、对应于同一文件系统上一个物理文件

  3、每个目录引用相同的inode号

  4、创建时链接数递增

  5、删除文件时:

  6、rm命令递减计数的链接

  7、文件要存在,至少有一个链接数

  8、当链接数为零时,该文件被删除

  9、不能跨越驱动器或分区

  10、语法:ln filename [linkname ]

五、软连接

  

  一个符号链接指向另一个文件

  1、ls - l的 显示链接的名称和引用的文件

  2、一个符号链接的内容是它引用文件的名称

  3、可以对目录进行

  4、可以跨分区

  5、指向的是另一个文件的路径;其大小为指向的路径字符串的长度;不增加或减少目标文件inode的引用计数

  6、语法:ln -s filename [linkname]

六、软硬链接的区别

  1、文件类型不同

  2、软连接可跨分区,硬链接不可以

  3、硬链接的与原文件的inode号相同,软连接不同

  4、硬链接可以增加文件的链接数,软连接不可以

  5、主从关系。硬链接无主从关系,原文件删除不会影响访问,软连接则会失效。

原文地址:https://www.cnblogs.com/kading/p/10885024.html

时间: 2024-10-24 12:30:43

linux基础文件管理软硬链接的相关文章

Linux基础文件管理命令之ls,cd

Linux中提供了大量的命令,使用他们可以简化我们的工作,也许在图形化界面中要点击鼠标十几下操作,而在linux系统中一条命令就可以轻松解决.所以,在Linux系统上工作离不开使用系统提供的命令.要想真正理解Linux系统,就必须从Linux命令学起. linux系统中的命令格式一般如下: 命令格式:   命令  选项  参数     选项:       短选项: -       多个选项可以组合:-a -b = -ab       长选项: -- 参数:命令的作用对象 下面主要介绍ls和cd命

Linux基础文件管理命令之rm,mv,cp,touch

在linux系统下,一切皆文件,就连光盘也看作文件,要使用光盘首先要先建立一个目录,然后通过挂载来操作这个光盘,就连鼠标,键盘都是被看作文件.所以学习文件的相关操作命令是很重要的. rm命令 rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除.对于链接文件,只是删除了链接,原有文件保持不变. 注:rm是一个危险的命令,使用的时候要特别小心,尤其对于新手,否则整个系统就会毁在这个命令,比如以root身份在根目录下执行rm * rf

Linux中的软硬链接

说到Linux中的软硬链接,就必须谈一下Linux的文件系统的组成的重要部分iNode和block. 首先是iNode,先用一张图了解一下iNode在Linux文件系统中的地位: Linux中的文件的文件名.文件属性和文件的数据是分开存储的.文件名存放在目录项(dentry)中,文件的属性存放在iNode中,而文件的内容,即文件的实际数据存放在block中,而目录只有iNode没有block.一般而言这个iNode的大小为128B,iNode中的内容大致如下:  1.文件的字节数: 2.文件拥有

Linux课程笔记 软硬链接

1. 软硬链接的介绍和实践 1.1链接的概念 在linux系统中,链接分为硬链接和软链接.在默认不带参数的情况下,执行ln命令创建的是硬链接. 链接是指通过索引节点来进行链接.在linux系统中,多个文件名指向同一个索引节点是正常且允许的,这种是硬链接.硬链接的作用之一是允许一个文件有多个有效路径防止误删除源数据. 文件系统中,只要文件的索引节点还有一个以上的链接,只删除其中一个链接并不影响索引节点和其他的链接(即数据实体并未删除).只有当最后一个链接被删除,此时如果有新数据要存储到硬盘时,被删

Linux基础篇三——链接文件知多少

As is known to all,在windows环境下我们早已经见过链接文件,机我们平时所使用的快捷方式. 其实,在linux里我们可以见到以下两种类型的链接文件 a.硬链接文件 创建命令:ln [源文件] [目标文件] 硬链接即实际链接. 记得我们讲过什么叫做inode,那么我们来根据下图理解一    这样做的意义是:安全.如果你不慎删除了其中一个文件名那么你还可以通过其他文件来找到这个源文件 并且你修改一个文件其他的文件也会跟着被修改 *上图中能看到,这两个文件的信息是一模一样的 实际

linux下的软硬链接

软链接与硬链接解决了linux下文件的共享使用,还可以增加权限安全以及节省存储空间. inode: 文件在linux上被分为用户数据(用户数据块:记录文件真实内容)与元数据(文件的其他附属性:文件大小.创建时间等),其中inode(文件索引号)是元数据的一部分但不包含文件名,它是文件的唯一标识.系统或程序通过inode号寻找匹配的文件数据块. 软链接(符号链接): 如果文件用户数据块中存放的内容是另一文件的路径名指向,则该文件为软链接. 软链接的创建与使用: 1.软链接有自己的inode和数据块

Linux基础文件管理命令

Linux上的文件管理类命令有哪些,其常用的使用方法及其相关的示例演示. 1.ls:显示目录文件 -a:显示所有文件,包括隐藏文件 -A:显示所有文件,包括隐藏文件,但是不包含当前目录和父级目录 -l:列出长数据串,包含文件的属性.权限.所有者.所属组.大小等等 -d:配合-l一起使用,查看目录自身属性(不是目录内部的文件列表) 2.cd:切换目录 cd / #切换到根目录 cd(cd ~) #切换到当前用户的家目录 cd - #切换到上一次所在的目录 cd .. #切换到父级目录 3.pwd:

达内-linux基础-day07-聚合链接和防火墙策略管理(初级)

###############################################################################  配置聚合连接(网卡绑定)team,聚合连接(也称为链路聚合)– 由多块网卡(team-slave)一起组建而成的虚拟网卡,即"组队"– 作用1:轮询式(roundrobin)的流量负载均衡 – 作用2:热备份(activebackup)连接冗余 一.添加team团队设备[[email protected] ~]# man te

Linux文件属性之软硬链接