Linux巩固篇005-Linux 用户和文件

简介: 纸上得来终觉浅,绝知此事要躬行

前言

身为一个三年的运维工程师,从开发转测开再转运维,都是不断学习的过程,未必开发才是最优秀的,找到适合自己的职业不断深耕,你也会在自己的行业大放光彩,本系列依照《Linux就该这么学》系列随书学习练习操作,将一些课本上不顺畅的地方,全部以最简方式免费开源展示给大家,资源大家可以自行百度,也希望大家多关注刘遄老师的第二版关于centos8的丛书,学习最前沿的Linux相关技术。

常用命令汇总

用户常用命令

管理员 UID 为0:系统的管理员用户。

系统用户UID 为1~999: Linux 系统为了避免因某个服务程序出现漏洞而被黑客提权至整台服务器,默认服务程序会有独立的系统用户负责运行,进而有效控制被破坏范围。

普通用户 UID 从1000 开始:是由管理员创建的用于日常工作的用户。

useradd 命令

useradd 命令用于创建新的用户,格式为“useradd [选项] 用户名”

image.png

[root@localhost ~]# useradd -d /home/linux -u 8888 -s /sbin/nologin linuxwei

[root@localhost ~]# id linuxwei

uid=8888(linuxwei) gid=8888(linuxwei) groups=8888(linuxwei)

groupadd 命令

groupadd 命令用于创建用户组,格式为“groupadd [选项] 群组名”

[root@linux ~]# groupadd ronny

usermod 命令

usermod 命令用于修改用户的属性,格式为“usermod [选项] 用户名”

image.pngimage.png

[root@linuxwei~]# usermod -G root linuxwei

[root@linuxwei~]# id linuxwei

uid=1000(linuxwei) gid=1000(linuxwei) groups=1000(linuxwei),0(root)

[root@linuxwei~]# usermod -u 8888 linuxwei

[root@linuxwei~]# id linuxwei

uid=8888(linuxwei) gid=1000(linuxwei) groups=1000(linuxwei),0(root)

passwd 命令

passwd 命令用于修改用户密码、过期时间、认证信息等,格式为“passwd [选项] [用户名]

image.png

[root@linuxwei~]# passwd

Changing password for user root.

New password: 此处输入密码值

Retype new password: 再次输入进行确认

passwd: all authentication tokens updated successfully.

[root@linuxwei~]# passwd linuxwei

Changing password for user linuxwei.

New password: 此处输入密码值

Retype new password: 再次输入进行确认

passwd: all authentication tokens updated successfully.


锁定指定用户,请注意解锁时要保证被锁用户有密码否则会失败

[root@localhost ~]# passwd -l linuxwei  

Locking password for user linuxwei.

passwd: Success

[root@localhost ~]# passwd -S linuxwei  

linuxwei LK 2022-10-13 0 99999 7 -1 (Password locked.)

[root@localhost ~]# passwd -u linuxwei  

Unlocking password for user linuxwei.

passwd: Warning: unlocked password would be empty.

passwd: Unsafe operation (use -f to force)

[root@localhost ~]# su - linuxwei  

This account is currently not available.

[root@localhost ~]# passwd linuxwei  

Changing password for user linuxwei.

New password:  此处输入密码值

BAD PASSWORD: The password is shorter than 8 characters

Retype new password:  再次输入进行确认

passwd: all authentication tokens updated successfully.

[root@localhost ~]# passwd -u linuxwei  

Unlocking password for user linuxwei.

passwd: Success

[root@localhost ~]# passwd -S linuxwei  

linuxwei PS 2022-10-13 0 99999 7 -1 (Password set, MD5 crypt.)

userdel 命令

userdel 命令用于删除用户,格式为“userdel [选项] 用户名”

image.png

[root@localhost ~]# id linuxwei

uid=8888(linuxwei) gid=8888(linuxwei) groups=8888(linuxwei)

[root@localhost ~]# userdel -r linuxwei  

[root@localhost ~]# id linuxwei

id: linuxwei: no such user

文件普通权限

-:普通文件。

d:目录文件。

l:链接文件。

b:块设备文件。

c:字符设备文件。

p:管道文件。

image.png

rwxrw-r--,数字法表示即为764

image.png


类型为普通文件

所有者权限为可读、可写(rw-)

所属组权限为可读(r--)

其他人权限为可读(r--)

文件的磁盘占用大小是34298 字节

最近一次的修改时间为4 月2 日的凌晨23 分

文件的名称为install.log

文件特殊权限

SUID

SUID 权限x改变成s,普通用户临时获得程序所有者的身份

[root@linuxwei~]# ls -l /etc/shadow

----------. 1 root root 1004 Jan 3 06:23 /etc/shadow

[root@linuxwei~]# ls -l /bin/passwd

-rwsr-xr-x. 1 root root 27832 Jan 29 2017 /bin/passwd

SGID

让执行者临时拥有属组的权限(对拥有执行权限的二进制程序进行设置)

在某个目录中创建的文件自动继承该目录的用户组(只可以对目录进行设置)

[root@localhost tmp]# cd /tmp/

[root@localhost tmp]# mdir testdir/

Can't open /dev/fd0: No such file or directory

Cannot initialize 'A:'

[root@localhost tmp]# cd /tmp/

[root@localhost tmp]# mkdir testdir/

[root@localhost tmp]# ls -ald testdir/

drwxr-xr-x. 2 root root 6 Oct 14 16:36 testdir/

[root@localhost tmp]# chmod -Rf 777 testdir/

[root@localhost tmp]# chmod -Rf g+s testdir/

[root@localhost tmp]# ls -ald testdir/

drwxrwsrwx. 2 root root 6 Oct 14 16:36 testdir/

切换至一个普通用户,然后尝试在该目录中创建文件,会发现属组还是root

chmod 命令

设置文件或目录的权限,格式为“chmod [参数] 权限文件或目录名称”

chown 命令

设置文件或目录的所有者和所属组,其格式为“chown [参数] 所有者:所属组文件或目录名称”

两者均可通过加上大写参数-R 来表示递归操作

[root@linux ~]# chown root:bin test

[root@linux ~]# ls -l test

-rwxrw----. 1 root bin 15 Feb 11 11:50 test

SBIT

SBIT 特殊权限位可确保用户只能删除自己的文件,而不能删除其他用户的文件,当目录被设置SBIT 特殊权限位后,文件的其他人权限部分的x 执行权限就会被替换成t 或者T,原本有x 执行权限则会写成t,原本没有x 执行权限则会被写成T

[root@linux tmp]# su - linuxwei

Last login: Wed Feb 11 12:41:20 CST 2022 on pts/0

[linux@linux tmp]$ ls -ald /tmp

drwxrwxrwt. 17 root root 4096 Feb 11 13:03 /tmp

对其他目录来设置SBIT 特殊权限位,用chmod 命令就可以了。对应的参数o+t 代表设置SBIT 粘滞位权限,当对某个目录设置了SBIT 粘滞位权限,该目录中的文件只能被其所有者执行删除操作了

文件特殊属性

chattr 命令

chattr 命令用于设置文件的隐藏权限,格式为“chattr [参数] 文件”

图片.png

图片.png

加权命令

[root@localhost learnlinux]# chattr +a linuxwei

[root@localhost learnlinux]# lsattr linuxwei

-----a---------- linuxwei

减权命令

[root@localhost learnlinux]# chattr -a linuxwei

[root@localhost learnlinux]# lsattr linuxwei

---------------- linuxwei

lsattr 命令

lsattr 命令用于显示文件的隐藏权限,格式为“lsattr [参数] 文件”

文件访问控制

setfacl 命令

setfacl 命令用于管理文件的ACL 规则,格式为“setfacl [参数] 文件名称”

针对目录文件使用-R 递归参数

针对普通文件使用-m 参数

删除文件的ACL使用-b 参数

[root@linux ~]# setfacl -Rm u:andy:rwx /root

[root@linux ~]# su - andy

Last login: Sat Mar 21 15:45:03 CST 2017 on pts/1

[linux@linux ~]$ cd /root

[linux@linuxroot]$ ls

image.png

getfacl 命令

getfacl 命令用于显示文件上设置的ACL 信息,格式为“getfacl 文件名称”

[root@localhost ~]# getfacl /root

getfacl: Removing leading '/' from absolute path names

# file: root

# owner: root

# group: root

user::r-x

user:andy:rwx

group::r-x

mask::rwx

other::---

su与sudo服务

su 命令与用户名之间有一个减号(-)完全切换到新的用户,环境变量信息也变更为新用户的相应信息,不保留原始的信息。

sudo 命令把特定命令的执行权限赋予给指定用户

image.png

只有 root 管理员才可以使用visudo 命令编辑sudo 服务的配置文件

谁可以使用 允许使用的主机=(以谁的身份) 可执行命令的列表(无需密码)

[root@linux ~]# visudo

...

99 linuxwei ALL=NOPASSWD: /usr/sbin/poweroff

...

结语

简问简答

在RHEL 7 系统中,root 管理员是谁?

答:是UID 为0 的用户,默认是root 管理员


如何使用Linux 系统的命令行来添加或删除用户?

答:添加和删除用户的命令分别是useradd 与userdel


当普通用户使用sudo 命令时是否需要验证密码?

答:系统在默认情况下需要验证当前登录用户的密码,若不想要验证,可添加NOPASSWD参数

如果想上手操作的同学们可以通过阿里云ecs服务器免费试用参与或低价购买专属于自己的服务器入口如下

入口一:新老同学免费试用

入口二:新人服务器特惠礼包

入口三:大学生版低价特惠服务器

入口四:云服务器首购特惠&免费试用

入口五:云服务器特惠1.5折起

入口六:低价特惠建站


目录
相关文章
|
3天前
|
Linux
linux中查看某个文件夹下文件的个数和大小
这篇文章介绍了在Linux系统中使用各种命令(如`stat`、`wc`、`du`和`ls`)来查看文件夹下文件的个数和大小的方法。
27 4
linux中查看某个文件夹下文件的个数和大小
|
30天前
|
Linux
Linux下使用ls查看文件颜色全部为白色的解决方法,以及Linux中文件颜色介绍
Linux下使用ls查看文件颜色全部为白色的解决方法,以及Linux中文件颜色介绍
94 2
|
1月前
|
存储 监控 安全
在Linux中,⼀个EXT3的文件分区,当使用touch test.file命令创建⼀个新文件时报错,报错的信息是提示磁盘已满,但是采用df -h命令查看磁盘大小时,只使用了,60%的磁盘空间,为什么会出现这个情况?
在Linux中,⼀个EXT3的文件分区,当使用touch test.file命令创建⼀个新文件时报错,报错的信息是提示磁盘已满,但是采用df -h命令查看磁盘大小时,只使用了,60%的磁盘空间,为什么会出现这个情况?
|
1天前
|
Linux Shell
10-9|linux上统计文件中单词次数
10-9|linux上统计文件中单词次数
|
1天前
|
存储 Linux Shell
常用vim命令和vim基本使用及Linux用户的管理,用户和组相关文件
这篇文章介绍了Vim编辑器的基本使用、常用命令和模式,以及Linux系统中用户和组的管理方法,包括用户和组相关文件如/etc/passwd、/etc/shadow和/etc/group的说明。
常用vim命令和vim基本使用及Linux用户的管理,用户和组相关文件
|
1月前
|
Linux
Linux 服务器下载百度网盘文件
本教程指导如何使用 `bypy` 库从百度网盘下载文件。首先通过 `pip install bypy` 安装库,接着运行 `bypy info` 获取登录链接并完成授权,最后将文件置于指定目录并通过 `bypy downdir /Ziya-13b-v1` 命令下载至本地。
35 1
Linux 服务器下载百度网盘文件
|
1月前
|
缓存 NoSQL Linux
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
|
24天前
|
Ubuntu Linux Shell
Linux系统命令 安装和文件相关命令
本文档详细介绍了Linux系统中的常用命令,包括软件安装卸载命令如`dpkg`和`apt-get`,压缩与解压命令如`gzip`、`bzip2`和`xz`,以及`tar`命令用于打包和解包。此外还介绍了文件分割命令`split`,文件操作命令如`cat`、`head`、`tail`、`more`、`less`等,管道命令和`wc`、`grep`、`find`、`cut`、`sort`、`uniq`、`diff`等实用工具。最后,文档还讲解了文件属性相关的命令如`chmod`、`chown`、`chgrp`以及创建硬链接和软链接的`ln`命令。
|
1月前
|
Linux
linux 删除乱码文件名的文件
【8月更文挑战第26天】当遇到文件名显示为乱码,导致无法正常通过键盘输入文件名进行删除操作时,可以利用鼠标的复制功能配合`rm`命令实现删除。对于文件夹的删除,可使用`rm -rf 目录名`。然而,有时这种方式仍无法删除某些特殊乱码文件,这时可以通过获取文件的i节点号(使用`ls -i`或`ll -i`命令查看)并执行`find -inum [节点号] -delete`来进行删除。这种方法特别适用于处理那些因文件名问题而难以删除的情况。
82 2
|
1月前
|
JSON Linux 网络安全
【Azure 应用服务】如何从App Service for Linux 的环境中下载Container中非Home目录下的文件呢?
【Azure 应用服务】如何从App Service for Linux 的环境中下载Container中非Home目录下的文件呢?