linux中文件和目录的概念(Linux 文件、目录与磁盘格式)
导读:用户与用户组 用户:即某个文件的拥有者,可以管理自己账号下的文件,另有一个超级账号 root,可以统一管理全局,利用 su root 命令登录该账号。 用户组:相当于群组,多个用户之间可以组成用户组,组内数据可共享,并且对外不共享。...
用户与用户组
用户:即某个文件的拥有者 ,可以管理自己账号下的文件 ,另有一个超级账号 root ,可以统一管理全局 ,利用 su root 命令登录该账号 。 用户组:相当于群组 ,多个用户之间可以组成用户组 ,组内数据可共享 ,并且对外不共享 。用户身份 、用户组记录文件:
默认情况下 ,系统账号以及 root 的相关信息 ,都记录在 /etc/passwd 文件夹内 ,个人的密码记录在 /etc/shadow 文件夹内 ,所有的组名记录在 /etc/group 文件夹内 。文件权限
ls 命令可以列出当前目录下的所有文件 ,ls -al 则可以更详细的列出所有文件以及权限等信息 。
第一列代表文件类型与权限: 第一列一共有 10 个字符 第一个字符表示文件类型 如果为 d 则是目录 如果为 - 则是文件 如果为 l 则表示链接文件 如果为 b 表示设备文件里面的存储设备 如果为 c 则表示串口设备,如键盘鼠标 接下来的 9 个字符 ,三个为一组 ,且均为 rwx 三个参数组合,没有该权限则为 - 。分别表示文件拥有者 、用户组内其它账号 、非本人且没有加入组的其它账号的权限 。 第二列表示有多少文件名链接到此节点 。每个文件都会将它的权限与属性记录到文件系统的 inode 中 ,每个文件名会链接到一个 inode ,这个属性就是记录有多少不同文件名链接到相同的 inode 号码 。 第三列表示文件拥有者的账号 第四列表示文件的所属用户组 第五列为文件大小(Bytes) 第六列为创建日期或修改日期 。这个时间如果距离现在太久 ,会仅显示年份 ,不具体到小时 。如果想要显示完整的时间 ,可以使用 ls -l --full-time 第七列为文件名 ,如果前面有 . ,则为隐藏文件 。修改文件属性与权限
chgrp [-R] [group name] [file name]:修改文件所属用户组 chown [-R] [account name] [file name] or chown [-R] [account name]:[group name] [filename]:修改文件拥有者 chmod:修改文件的权限 。方法有两种 ,分别是使用数字和使用符号。 使用数字 chmod [-R] [number] [filename] :数字对照表关系为 r:4 w:2 x:1 ,这三种权限加起来为一个数 ,分别有三个数 ,来表示用户 、用户组 、其他人对应的权限 。 使用符号 chmod [u/g/o/a] [+/-/=] [r/w/x] [file name]-R 表示递归 ,即连同该目录下的所有目录与文件一并修改
目录配置
FHS (Filesystem Hierarchy Standard) 标准用于规范每个特定的目录下应该要放置什么样的数据 。
根目录 /:根目录所在分区应该越小越好,且应用程序所安装的软件最好不要与根目录在同一分区。 FHS 要求必须存在的目录 /bin:用于放置在单人维护模式下还能够被使用的命令 /boot:用于放置在启动时会使用到的文件 ,包括 Linux 内核文件 、启动选项以及相关配置文件 /dev:任何设备都以文件的形式存放在这个目录 。读写这个目录下的某个文件 ,就相当于读写某个设备 。 /etc:存放系统主要的配置文件 。另外 FHS 还规范几个重要的目录: /etc/opt:必要 。放置第三方辅助软件 /opt 的相关配置文件 /etc/x11:建议 。与 X Window 有关的各种配置文件 。尤其是 xorg.conf 这个 X server 的配置文件 /etc/sgml:建议 。与 SGML 格式有关的配置文件 /etc/xml:建议 。与 XML 格式有关的配置文件 /lib:存放在启动时会用到的函数库,以及 /bin 或 /sbin 下的命令需要调用的函数库 /media:放置的是可删除的设备 ,如 软盘 、光盘 、DVD 的挂载 /mnt:用来暂时挂载一些额外设备 ,与 /media 相似 /opt:给第三方辅助软件放置的目录 /run:保存系统启动后产生的信息 ,可以使用内存来模拟 /sbin:系统启动过程中需要的 ,包括启动 、修复 、还原系统所需要的命令 。某些服务器软件程序放置在 /usr/sbin 中 ,本机自行安装的软件所产生的系统执行文件放置在 /usr/local/sbin /srv:一些网络服务启动后 ,需要使用的数据目录 /tmp:让一般用户或正在执行的程序暂时放置文件的地方 。任何人都可存取 ,所以需要定期清理 。 FHS 建议可以存在的目录 /home:系统默认的用户目录 ,此目录有两种代号: ~:代表目前这个用户的家目录 ~username:代表 username 这个用户的家目录 /lib<qual>:用来存放与 /lib 不同的格式的二进制函数库 ,例如支持 64 位的 /lib64 /root:root 的家目录 FHS 没有规定 ,但仍重要的目录 /proc:一个虚拟文件系统 ,它的内容储存在内存中 。存储系统内核 、进程信息 、外接设备的状态、网络状态 /sys:虚拟文件系统 ,记录内核和系统硬件信息 /usr:UNIX Software Resource 内部数据不可分享 、不可变动。是 UNIX 操作系统软件资源所放置的目录,所有软件的数据应该合理的放置在此目录下的子目录中 FHS 要求必须存在的目录 /usr/bin:所有一般用户能够使用的命令 。FHS 要求在此目录下不能有子目录 /usr/lib:与 /lib 相同 ,由其链接到该目录 /usr/local:系统管理员在本机将自己的软件安装到此目录 /usr/sbin:非系统正常运行所需要的命令 。由 /sbin 链接到此目录 /usr/share:放置只读的数据文件 ,不分系统架构都可读取的文本文件,以及共享文件 /usr/share/man:在线帮助文件 /usr/share/doc:软件的说明文档 /usr/share/zoneinfo:与时区有关的时区文件 FHS 建议可以存在的目录 /usr/games:与游戏相关数据 /usr/include:C/C++ 等语言的头文件和包含文件 ,在我们用 Tarball(*.tar.gz)的方式安装软件时会用到 /usr/libexec:不被一般用户常用的执行文件和脚本 /usr/lib<qual>:由 /lib<qual> 链接到此目录 /usr/src:一般将源代码放置在这里 ,内核源代码放在 /usr/src/Linux /var:该目录主要存放在系统运行时经常变动的内容 ,包括缓存和日志以及一些运行产生的文件 FHS 要求必须存在的目录 /var/cache:应用程序缓存 /var/lib:执行过程中需要用到的数据文件 ,此目录下各软件有各自的目录 /var/lock:某些设备或资源的进程锁 /var/log:日志文件 ,非常重要 /var/mail:放置个人电子邮箱 ,该目录与 /var/spool/mail 互为链接 /var/run:某些程序或服务启动后 ,会将它们的 PID 放在此目录下 ,此目录链接到 /run /var/spoot:放置一些队列数据创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!