用户身份与文件权限

2018-11-27  本文已影响0人  在牛魔角上狂码

用户


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用户了
上一篇 下一篇

猜你喜欢

热点阅读