zoukankan      html  css  js  c++  java
  • Linux 文件目录管理

    Linux 文件目录管理

    文件信息显示

    ls -al:用于显示文件的所有信息。

    依次是:文件权限类型/链接数/文件所有者/文件所属群组/文件大小/文件最后修改时间/文件名,在 Linux 下,文件夹也是一个文件(类型为 d)。

    文件类型由十个字符组成。

    分别为:文件类型/文件所有者权限/文件所属群组权限/其他人权限。

    权限由三个字符组成。

    分别为:可读/可写/可执行。

    文件类型:d(目录)/ -(文件)/ l(链接)/ b(存储设备)/ c(串行端口设备)

    文件权限更改

    chgrp:改变文件所属群组,组名必须要在 /etc/group 文件中存在。

    chown:改变文件拥有者,如果需要连目录下的所有子目录或文件同时更改所有者,需要使用 -R 选项。此外,用户名需要在 /etc/passwd 文件中存在。

    chmod:改变文件权限,我们知道权限由三部分组成,文件所有者权限/文件所属群组权限/其他人权限,每一个部分可以看作一个二进制数,三个部分所对应的十进制数字代表了这个文件的最终权限。例如:770(rwxrwx---)、777(rwxrwxrwx)。除了可以使用数字进行更改外,也可以使用符号进行更改,u/g/o/a(用户/组/其他/所有),+/-/=(加入/删除/设定),rwx。chmod u=rwx,go=rx .bashrc

    权限的意义

    对于文件来说,r(可读)表示可以读取此文件的实际内容,w(可写)表示可以编辑、新增或者是修改该文件的内容(不含删除文件),x(可执行)表示文件能够被执行。

    对于目录来说,r(可读)表示可以读取目录下的文件名,w(可写)表示可以改变目录结构列表(创建活删除文件和目录),x(可执行)表示用户可以进入该目录(工作目录)。

    chmod u=rwx,go=rx .bashrc

    Linux 目录结构

    /(根目录)目录下

    目录名 文件内容
    /bin 存放单人维护模式下能够被操作的指令
    /boot 放置开机会使用到的文件
    /dev 装置和接口设备
    /etc 系统主要的配置文件
    /lib 系统的函数库
    /media 可移除的设备(CDROM)
    /mnt 暂时挂载的设备
    /opt 存放第三方软件
    /run 开机后产生的各项信息
    /sbin 存放只有 root 用户才能使用的执行的指令
    /srv 存放服务所需的数据目录
    /tmp 暂时存放文件的地方
    /home 系统默认家目录,每个使用者都会将家目录规范到这个文件夹
    /root 系统管理员(root)的家目录
    /lost+found 使用日志文件系统格式产生的目录,存放当文件系统发生错误产生的遗失片段
    /proc 此目录的数据都在内存,不会占用任何硬盘空间,系统状态信息
    /sys 与 /proc 类似,记录核心与系统硬件信息相关的信息

    /usr 目录下

    目录名 文件内容
    /usr/bin 所有一般用户都能使用的命令(centos 7 中与 /bin 目录一样)
    /usr/lib 与 /lib 目录基本一致
    /usr/local 存放系统管理员自行安装的软件
    /usr/sbin 与 /sbin 目录基本一致
    /usr/share 存放只读架构的数据文件

    /var 目录下

    与 /usr 目录不同的是,/var 目录是在系统运作后才渐渐占用硬盘容量,而 /usr 是安装时会占用较大硬盘容量。/var 目录主要针对常态性变动的文件,包括缓存(cache)、日志(log file)以及某些软件运行所产生的文件。

    终端显示文件内容

    cat/tac/nl(可以显示行号)/more(向后翻页)/less(可以向后向前翻)/head(截取前 n 行)/tail(截取后 n 行)/od(一般来说针对非文本文件,可以 ASCII/各种进制来输出文件内容)

    修改文件内容

    对于一个文件,有三个时间,分别是 mtime(修改时间,内容变更)/ctime(权限或属性更改时变更)/atime(访问时变更)。使用 touch 指令可以修订文件的时间(atime 和 ctime)。

    文件权限

    umask(显示预设权限,该默认值为需要减掉的权限)。用户在创建文件和文件夹的时候默认权限属性是不同的。

    1. 文件默认没有 x 权限,因此最大为 rw-rw-rw-(666)。
    2. 文件目录默认为所有权限,因此最大为 rwxrwxrwx(777)。

    特殊文件权限

    Set UID:出现在文件拥有者的 x 权限上,简称 SUID 权限,仅可用于二进制程序上,不能用在 shell 脚本上。通过 SUID 程序可以取得临时的 root 权限,举个例子:

    /etc/shadow 的权限为 rw-r-----,仅有 root 用户具有修改权限,那么普通用户修改密码是通过 passwd 指令,passwd 的权限为 rwsr-xr-x,即普通用户具有可执行权限,使用 SUID,普通用户在执行 passwd 时可以暂时获得 root 权限用于修改 shadow 文件。

    Set GID:出现在群组的 x 权限上,简称 SGID 权限,与 SUID 类似,使用 SGID 普通用户可以获得文件所属组的支持。

    Sticky Bit:SBIT 只针对目录有效。如果目录被加上了 SBIT 的权限时,则用户只能够针对自己建立的文件或目录进行删除/更名/移动操作,而无法删除他人的文件。

    文件的搜寻

    可执行文件搜寻:which,根据 $PATH 环境变量指定的目录进行搜寻。

    普通文件搜寻:whereis(只搜索特定目录,bin/man/src)。locate(针对已建立的数据库进行搜寻,根据发行版的不同,数据库更新的周期也不相同)。find(直接从磁盘中搜寻)

  • 相关阅读:
    CF763C Timofey and Remoduling
    CF762E Radio Stations
    CF762D Maximum Path
    CF763B Timofey and Rectangles
    URAL1696 Salary for Robots
    uva10884 Persephone
    LA4273 Post Offices
    SCU3037 Painting the Balls
    poj3375 Network Connection
    Golang zip压缩文件读写操作
  • 原文地址:https://www.cnblogs.com/bdsir/p/8973502.html
Copyright © 2011-2022 走看看