用户
useradd命令
useradd命令用于创建新的用户
格式:useradd 「选项」 用户名
使用useradd命令创建用户账号时,默认的用户家目录会被存放在/home
目录中,默认的shell
解释器为/bin/bash
,而且默认会创建一个与该用户同名的基本用户组
useradd命令中的用户参数以及作用
参数 | 作用 |
---|---|
-d | 指定用户的家目录(默认为/home/username) |
-e | 账号的到期时间,格式为YYYY-MM-DD |
-u | 指定该用户的默认UID |
-g | 指定一个初始的用户基本组(必须已存在) |
-G | 指定一个或多个扩展用户组 |
-N | 不创建与用户同名的基本用户组 |
-s | 指定该用户的默认shell解释器 |
groupadd命令
groupadd命令用于创建用户组
格式:groupadd 「选项」 群组名
usermod命令
usermod命令用于修改用户的属性
格式:usermod 「选项」 用户名
usermod命令中的参数以及作用
参数 | 作用 |
---|---|
-c | 填写用户账号的备注信息 |
-d -m | 参数-m与参数-d连用,可重新指定用户的家目录并自动把旧的数据转移过去 |
-e | 账号的到期时间,格式为YYYY-MM-DD |
-g | 变更所属用户组 |
-G | 变更扩展用户组 |
-L | 锁定用户禁止其登录系统 |
-U | 解锁用户,允许其登录系统 |
-s | 变更默认终端 |
-u | 修改用户的UID |
passwd命令
passwd命令用于修改用户密码、过期时间、认证信息等
格式:passwd 「选项」 「用户名」
普通用户只能使用passwd只能修改自身的系统密码,而root管理员可以修改自己或他人的密码,且不需要验证旧密码
passwd命令中的参数以及作用
参数 | 作用 |
---|---|
-l | 锁定用户,禁止其登录 |
-u | 解除锁定,允许用户登录 |
--stdin | 允许通过标准输入修改用户密码,如 echo "NewPassWord" | passwd --stdin Username
|
-d | 使该用户可用空密码登录系统 |
-e | 强制用户在下次登录时修改密码 |
-S | 显示用户的密码是否被锁定,以及密码所采用的加密算法名称 |
userdel命令
userdel命令用于删除用户
格式:userdel 「选项」 用户名
userdel命令的参数以及作用
参数 | 作用 |
---|---|
-f | 强制删除用户 |
-r | 同时删除用户及用户家目录 |
文件
常见的文件字符:
-
:普通文件
d
:目录文件
l
:链接文件
b
:块设备文件
c
:字符设备文件
p
:管道文件
在Linux中每个文件都有所属的所有者和所有组
文件的权限有:可读(r)、可写(w)、可执行(x)
可读
:表示能够读取文件的实际内容
可写
:表示能够编辑、新增、修改、删除文件的实际内容
可执行
:表示能够运行一个脚本程序
文件权限的字符与数字表示
权限分配 | => |
文件所有者 | <= |
=> |
文件所属组 | <= |
=> |
其他用户 | <= |
---|---|---|---|---|---|---|---|---|---|
权限项 | 读 | 写 | 执行 | 读 | 写 | 执行 | 读 | 写 | 执行 |
字符表示 | r | w | x | r | w | x | r | w | x |
数字表示 | 4 | 2 | 1 | 4 | 2 | 1 | 4 | 2 | 1 |
注:这里的文件所有者、文件所属组和其他用户都对应的权限项为:读、写、执行,因为这里的markdown打不出所需的效果,见谅
chmod命令
chmod命令用于设置文件或目录的权限
格式:chmod 「参数」 权限 文件或目录名称
chmod 775 test
chown命令
chown命令用于设置文件或目录的所有者和所属组
格式:chown 「参数」 所有者:所属组 文件或目录名称
chown www:www test
chattr命令
chattr命令用于设置文件的隐藏权限
格式:chattr 「参数」 文件
如果想要把某个隐藏功能添加到文件,则在命令后“+参数
”;如果想要把某个隐藏功能移出文件,则在命令后“-参数
”
chattr命令中用户隐藏权限的参数以及作用
参数 | 作用 |
---|---|
i | 无法对文件进行修改;若对目录设置了该参数,则仅能修改其中的子文件内容而不能新建或删除文件 |
a | 仅允许补充(追加)内容,无法覆盖/删除内容(Append Only) |
S | 文件内容在变更后立即同步到硬盘(sync) |
s | 彻底从硬盘中删除,不可恢复(用0填充原文件所在硬盘区域) |
A | 不再修改这个文件或目录的最后访问时间(atime) |
b | 不再修改文件或目录的存取时间 |
D | 检查压缩文件中的错误 |
d | 使用dump命令备份时忽略本文件/目录 |
c | 默认将文件或目录进行压缩 |
u | 当删除该文件后依然保留其在硬盘中的数据,方便日后恢复 |
t | 让文件系统支持尾部合并(tail-merging) |
X | 可以直接访问压缩文件中的内容 |
lsattr命令
lsattr命令用于显示文件的隐藏权限
格式:lsattr 「参数」 文件
setfacl命令
setfacl命令用于管理文件的ACL规则
格式:setfacl 「参数」 文件名称
-R
:递归参数,对目录文件时需要
-m
:针对普通文件
-b
:删除某个文件的ACL时需要
getfacl命令
getfacl命令用于显示文件上设置的ACL信息
格式:getfacl 文件名称
su命令
su命令用于切换用户身份
//切换到chase用户
su - chase
su命令与用户名之间有一个减号(-),意味着完全切换到新的用户,即把环境变量信息也变更为新用户的相应信息,而不是保留原始的信息。
强烈建议在切换用户身份时添加这个减号(-)
root用户切换到普通用户时是不需要密码验证的,而从普通用户切换成root管理员时就需要进行密码验证
sudo命令
sudo命令用于给普通用户提供额外的权限来完成原本root管理员才能完成的任务
格式:sudo 「参数」 命令名称
sudo服务中的可用参数以及作用
参数 | 作用 |
---|---|
-h | 列出帮助信息 |
-l | 列出当前用户可执行的命令 |
-u 用户名或UID值 | 以指定的用户身份执行命令 |
-k | 清空密码的有效时间,下次执行sudo时需要再次进行密码验证 |
-b | 在后台执行指定的命令 |
-p | 更改询问密码的提示语 |
sudo命令具有的功能:
限定用户执行指定的命令、
记录用户执行的每一条命令、
配置文件(/etc/sudoers)提供集中的用户管理,权限与主机等参数、
验证密码的后5分钟内(默认值)无须再让用户验证密码
设置用户执行sudo命令时免密码验证:
visudo
//竖排省略号表示省略
.
.
.
# 大概99行位置处
98 root ALL=(ALL) ALL
99 chase ALL=NOPASSWD: /usr/sbin/poweroff
.
.
.
su - chase
//直接切换到chase用户了