Linux---用户及权限配置

文章目录


前言

用户在操作系统中是非常重要的,我们登录系统,访问共享文件夹等都需要用户进行验证。所以,掌握管理用户的知识非常有必要的


一.基本概念

用户的账户信息存储在/etc/passwd中,在此文件中一行一个用户信息,各字段用":"隔开,如下图所示:

从左向右一次代表

用户名:用户密码:用户uid:用户gid:用户的描述信息:用户的家目录:用户的shell

用户的密码信息存储在/etc/shadow中,如下图所示:

上面第一个和第二个冒号之间的就是加密后的密码。

当我们需要判断一个用户是否存在时可以使用如下命令:id tom

二.用户管理

创建用户

复制代码
[root@192 ~]# useradd tom
#设置密码
[root@192 home]# passwd tom

常见参数:

复制代码
-d:指定用户的家目录,默认为home/用户
-m:创建家目录,这是默认选项,默认为/home目录
-s:指定用户的shell,默认为/bin/shell
-c:用来指定备注信息,不指定则为空
-u:指定用户的uid
-g:默认情况下,创建用户时会创建一个同名组。例如,创建用户tom会同时创建tom组
-G:指定附属组,把用户加入一个额外的组,此时tom属于两个组

修改用户属性

如果想要修改用户属性可以用usermod命令,全称:user modeify 意为用户修改

常见参数:

复制代码
-c:修改注释信息
-s:修改shell信息
-d:修改家目录
-L:锁定用户
-U:解锁用户

演示案例:把tom的shell目录改为/bin/bas并把备注信息改成hello tom

复制代码
[root@192 ~]# usermod -s /bin/bash -c "hello tom" tom 

用户组管理

所有组的信息都是放在/etc/group中的,如果要判断一个组是否存在,可以到/etc/group中查询

复制代码
#查看用户组信息
[root@192 etc]# grep tom /etc/group
tom:x:1001:
#增加组
[root@192 etc]# groupadd tom
#删除某个组
[root@192 etc]# groupdel tom 
#设置创建组的gid为3000
[root@192 etc]# groupadd -g 3000 tom
#将tom用户加入到组bin中
[root@192 etc]# gpasswd -a tom bin

用户授权

很多时候普通用户的权限是不够的,例如,下面的命令

要执行该操作,需要使用su命令切换到root,但是并不希望其他人知道root密码,那怎么办?我们可以让root用户通过sudo对普通用户进行授权。

以root身份到/etc/sudoers.d下随便创建一个文件,这里为了辨识以用户名命名文件。假设,现在要授权tom用户在本机以root用户的身份使用mount命令,编辑如下:

我们可以切换到tom用户下使用下面的命令查看tom用户能够使用root身份执行哪些权限

复制代码
[tom@192 ~]$ sudo -l

总结

相关推荐
迷路爸爸1801 分钟前
无sudo权限远程连接Ubuntu服务器安装TeX Live实操记录(适配VS Code+LaTeX Workshop,含路径选择与卸载方案)
java·服务器·ubuntu·latex
我送炭你添花1 分钟前
树莓派 3B+ 部署 TR-069 ACS(自动配置服务器)GenieACS 实录
运维·服务器·网络协议
皓月盈江6 分钟前
MoonBit国产编程语言创建新包和使用新包
linux·moonbit·国产编程语言·moonbit教程·moonbit创建包·moonbit使用包
扫地生大鹏10 分钟前
阿里云大模型服务器安装SNMP包启发
运维·服务器
2601_9496130213 分钟前
flutter_for_openharmony家庭药箱管理app实战+用药提醒列表实现
服务器·前端·flutter
今晚打佬虎15 分钟前
精准阻断 Docker 容器映射端口:流量路径诊断与 iptables 配置
运维·docker·容器
honsor19 分钟前
机房/档案室专用以太网温湿度传感器:智能监控赋能环境安全
运维·网络·物联网·安全
小白郭莫搞科技20 分钟前
鸿蒙跨端框架Flutter学习:ListView卡片样式详解
linux·服务器·windows
栈低来信32 分钟前
Linux设备模型
linux
晚风吹长发40 分钟前
初步了解Linux中的信号捕捉
linux·运维·服务器·c++·算法·进程·x信号