电脑基础 · 2023年3月19日

Linux 学习笔记——五、文件与目录

一、使用者与群组

默认情况下,所有系统上的账号与一般身份使用者、root 相关信息都记录在 /etc/passwd ,密码记录在 /etc/shadow 。群组名称记录在 /etc/group 。

二、Linux 文件权限概念

ls -al :表示列出所有文件详细的权限与属性(包含隐藏文件),其中列出的文件内容如下:

-rw-r--r--.		1				root					root						18		Dec	29		2013	.bash_logout
文件类型权限     连接数           拥有者                  所属群组                     容量    修改时间             文件名
  1. 文件类型权限

    - r w x r w x - - -
    文件类型 可读 可写 可执行 可读 可写 可执行 无权限 无权限 无权限
    文件类型 拥有者权限 拥有者权限 拥有者权限 群组权限 群组权限 群组权限 其他人权限 其他人权限 其他人权限
    d:目录 增删改 能否进入目录
    -:文件 增删改 执行
    l:链接文件
    b:可随机存取设备
    c:一次性读取设备
  2. 连接数:每个文件都会将它的权限与属性记录到文件系统的 i-node 中,,由于使用的目录树采用文件名来记录,因此每个文件名就会链接到一个 i-node ,连接数这个属性记录有多少不同的文件名链接到同一个 i-node 。

  3. 拥有者:表示该文件拥有者的账号。

  4. 所属群组:表示文件的所属群组。

  5. 文件容量:文件大小,默认单位为 Bytes 。

  6. 修改时间:文件创建时间或修改时间(日期/时间)。

  7. 文件名:包括后缀。

1. 属性、权限、修改、意义

  • chgrp :改变文件所属群组,要求群组名称必须存在;
  • chown :改变文件拥有者,要求账户名称必须存在;
  • chmod :改变文件的权限,SUID、SGID、SBIT 等等特性;
操作动作 /dir1 /dir1/file1 /dir2 重点
读取 file1 内容 x r - 先进入再读取
修改 file1 内容 x rw - 先进入再修改
执行 file1 内容 x rx - 先进入再运行
删除 file1 文件 wx - - 能进入并修改目录即可
将 file1 复制到 /dir2 x r wx 能读 file1 且能修改 /dir2

上述操作可以不使用 r 权限,但是这样 tab 将无法补齐,需要自行编写。

2. 文件种类与扩展

文件种类:

  • 正规文件(regular file):最常用的文件类型,属性为 -
    • 纯文本文件(ASCII):字符型文件
    • 二进制文件:可可执行文件
    • 数据格式文件:部分特定格式文件
  • 目录:属性为 d
  • 链接文件(link):类似快捷文件,属性为 l
  • 设备与设备文件(device):与系统周边及存储相关的文件,通常在 /dev 目录下
    • 区块(block)设备文件:存储一些数据,以提供系统随机存取的周边设备(硬盘、软盘等),属性为 d
    • 字符(character)设备文件:一些序列埠的周边设备(键盘、鼠标等),特点是一次性读取,不能截断输出,属性为 c
  • 数据接口文件(sockets):通常在网络中承接,套接字文件,属性为 s ,通常在 /run 或 /tmp 目录
  • 数据输送档(FIFO, pipe):解决多个程序同时存取一个文件所造成错误问题的文件,属性为 p

扩展名:

  • .sh :脚本或批处理文件(scripts),通常用 shell 写成
  • Z, .tar, .tar.gz, .zip, *.tgz :经过打包的压缩文件
  • .html, .php :网页相关文件

文件长度限制:单一文件或目录的最大容许文件名为 255 Bytes ,即 255 个字符长度,128 个中文字

文件名限制:应避免使用 ? > < ; & ! [ ] | \ ( ) { } - + ,以 . 开头的文件表示隐藏文件