目录
一个目录可以有**程序,目录,文件,以及这三者的链接。**可以看到还分别有使用者和权限信息。
每个文件和目录都有与之关联的三个主要属性:所有者(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
文件目录结构
-
/bin
- 基本的二进制文件,包含所有用户和系统启动时必须使用的命令。/bin/bash
- Bourne Again Shell,一个广泛使用的命令行解释器。/bin/chmod
- 更改文件权限。
-
/sbin
- 超级用户(系统管理员)的二进制文件,包含系统管理工具。/sbin/service
- 管理系统服务。/sbin/shutdown
- 关闭系统。
-
/boot
- 启动加载程序和内核映像。/boot/grub
- GRUB(GRand Unified Bootloader)启动加载器的配置和数据。/boot/vmlinuz-*
- 内核映像文件。
-
/dev
- 设备文件,提供对硬件设备的访问。/dev/sda
- 第一个SCSI硬盘。/dev/null
- 一个特殊的设备,用于丢弃写入它的数据。
-
/etc
- 系统和程序的配置文件。/etc/fstab
- 文件系统表,定义了系统启动时挂载的文件系统。/etc/passwd
- 用户账户信息。
-
/home
- 用户的个人家目录。/home/username
- 特定用户的个人目录。
-
/opt
- 可选或第三方软件的安装位置。/opt/someapp
- 第三方应用程序可能安装在这里。
-
/proc
- 虚拟文件系统,提供关于进程和内核的信息。/proc/cpuinfo
- 提供CPU的信息。
-
/root
- 系统管理员(root用户)的家目录。sudo su 后可以进入。 -
/run
- 包含系统运行时的系统状态信息。/run/user/1000
- 某个用户(通常是第一个非特权用户)的临时文件。
-
/snap
- 用于存储和管理Snap软件包的目录。/snap/someapp/current
- Snap包的当前版本可能存放在这里。
-
/sys
- 虚拟文件系统,提供关于系统硬件的信息。/sys/class/net
- 网络接口的类信息。
-
/tmp
- 临时文件存放在这里,通常在系统重启后会被清空。 -
/tools
- 可以把自己的工具放在这里。 -
/usr
- 用户的程序和数据存放在这里。/usr/bin
- 用户级别的命令行工具。/usr/share
- 共享数据,如文档和图标。
-
/var
- 包含经常变化的文件,如日志文件、数据库、邮件等。/var/log
- 系统和程序的日志文件。