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 - 系统和程序的日志文件。
相关推荐
上辈子杀猪这辈子学IT14 分钟前
【Zookeeper集群搭建】安装zookeeper、zookeeper集群配置、zookeeper启动与关闭、zookeeper的shell命令操作
linux·hadoop·zookeeper·centos·debian
minihuabei19 分钟前
linux centos 安装redis
linux·redis·centos
EasyCVR41 分钟前
萤石设备视频接入平台EasyCVR多品牌摄像机视频平台海康ehome平台(ISUP)接入EasyCVR不在线如何排查?
运维·服务器·网络·人工智能·ffmpeg·音视频
lldhsds1 小时前
书生大模型实战营第四期-入门岛-1. Linux前置基础
linux
wowocpp2 小时前
ubuntu 22.04 硬件配置 查看 显卡
linux·运维·ubuntu
山河君2 小时前
ubuntu使用DeepSpeech进行语音识别(包含交叉编译)
linux·ubuntu·语音识别
鹏大师运维2 小时前
【功能介绍】信创终端系统上各WPS版本的授权差异
linux·wps·授权·麒麟·国产操作系统·1024程序员节·统信uos
筱源源2 小时前
Elasticsearch-linux环境部署
linux·elasticsearch
萨格拉斯救世主2 小时前
jenkins使用slave节点进行node打包报错问题处理
运维·jenkins
川石课堂软件测试2 小时前
性能测试|docker容器下搭建JMeter+Grafana+Influxdb监控可视化平台
运维·javascript·深度学习·jmeter·docker·容器·grafana