Ubuntu24 文件目录结构——用户——权限 详解

目录

权限

用户

文件目录结构


一个目录可以有**程序,目录,文件,以及这三者的链接。**可以看到还分别有使用者和权限信息。

每个文件和目录都有与之关联的三个主要属性:所有者(owner)、组(group)和权限(permission)。

权限

有三种权限:r "读"(read)、w "写"(write)、x "执行"(execute)

比如这图,第一位表示文件(d)或者链接(l)。红色rwx所有者权限。蓝色r-x组成员权限。紫色r-x其他用户权限,有读,执行权限,没有写权限。

目录的执行权限指进入目录。程序的读写权限指对源代码的读写(shell脚本)。

更改权限命令chmod:

chmod(更改权限) = change(改变) + mod(模式)

chmod 755 filename 什么意思?

755每位数分别对应文件所有者(owner)、所属组(group)和其他用户(others)的权限。

  • 读(r)= 4
  • 写(w)= 2
  • 执行(x)= 1
  • 累加后用一个数字表示
  • 7 (rwx):所有者有读、写和执行权限。
  • 6 (rw-):所有者有读和写权限,没有执行权限。
  • 5 (r-x):所有者有读和执行权限,没有写权限。
  • 4 (r--):所有者只有读权限。

另一种命令指定方式:符号模式:chmod + 用户 + 符号 + 权限 + 文件名

  • u:所有者(user)
  • g:组(group)
  • o:其他用户(others)
  • a:所有用户(所有者、组和其他用户)
  • +:添加指定的权限。
  • -:删除指定的权限。
  • =:设置指定的权限,移除其他所有权限。

chmod u=x 1.txt 对所有者,只保留执行权限,不能读写。

chmod +x 1.txt 添加执行权限,默认给所有用户添加

用户

**owner:**所有者指创建用户。

**Group:**拥有特定权限的一组用户。

创建新用户 :

复制代码
sudo useradd newuser
复制代码
sudo groupadd newgroup
sudo usermod -a -G newgroup newuser

注销后可以登录新用户

移除用户和目录:

复制代码
sudo deluser --remove-home newuser
sudo groupdel newgroup

文件目录结构

  1. /bin - 基本的二进制文件,包含所有用户和系统启动时必须使用的命令。

    • /bin/bash - Bourne Again Shell,一个广泛使用的命令行解释器。
    • /bin/chmod - 更改文件权限。
  2. /sbin - 超级用户(系统管理员)的二进制文件,包含系统管理工具。

    • /sbin/service - 管理系统服务。
    • /sbin/shutdown - 关闭系统。
  3. /boot - 启动加载程序和内核映像。

    • /boot/grub - GRUB(GRand Unified Bootloader)启动加载器的配置和数据。
    • /boot/vmlinuz-* - 内核映像文件。
  4. /dev - 设备文件,提供对硬件设备的访问。

    • /dev/sda - 第一个SCSI硬盘。
    • /dev/null - 一个特殊的设备,用于丢弃写入它的数据。
  5. /etc - 系统和程序的配置文件。

    • /etc/fstab - 文件系统表,定义了系统启动时挂载的文件系统。
    • /etc/passwd - 用户账户信息。
  6. /home - 用户的个人家目录。

    • /home/username - 特定用户的个人目录。
  7. /opt - 可选或第三方软件的安装位置。

    • /opt/someapp - 第三方应用程序可能安装在这里。
  8. /proc - 虚拟文件系统,提供关于进程和内核的信息。

    • /proc/cpuinfo - 提供CPU的信息。
  9. /root - 系统管理员(root用户)的家目录。sudo su 后可以进入。

  10. /run - 包含系统运行时的系统状态信息。

    • /run/user/1000 - 某个用户(通常是第一个非特权用户)的临时文件。
  11. /snap - 用于存储和管理Snap软件包的目录。

    • /snap/someapp/current - Snap包的当前版本可能存放在这里。
  12. /sys - 虚拟文件系统,提供关于系统硬件的信息。

    • /sys/class/net - 网络接口的类信息。
  13. /tmp - 临时文件存放在这里,通常在系统重启后会被清空。

  14. /tools - 可以把自己的工具放在这里。

  15. /usr - 用户的程序和数据存放在这里。

    • /usr/bin - 用户级别的命令行工具。
    • /usr/share - 共享数据,如文档和图标。
  16. /var - 包含经常变化的文件,如日志文件、数据库、邮件等。

    • /var/log - 系统和程序的日志文件。
相关推荐
A小辣椒1 天前
TShark:Wireshark CLI 功能
linux
A小辣椒1 天前
TShark:基础知识
linux
AlfredZhao1 天前
OCI 明明分配了 200G 系统盘,为什么 df 只看到 30G?
linux·oci
AlfredZhao2 天前
vi 删除指定范围的行,不用再反复按 dd
linux·vi
用户9718356334662 天前
银河麒麟 KY10 申威(SW64) 安装 nginx-1.16.1-2.p01.ky10.sw_64.rpm 详细步骤
linux
猪脚踏浪2 天前
linux 拷贝文件或目录到指定的位置
linux
大树883 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠3 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质3 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
bush43 天前
嵌入式linux学习记录十四、术语
linux·嵌入式