Linux学习之用户管理和组管理

简介:

一、Linux系统上用户和用户组类别

用户类别

1、管理员 uid=0

2、普通用户 id:1~65535

2.1、系统用户 id:1~499,一般不允许登陆系统

2.2、一般用户 id:500~60000

组类别

1、管理员组

2、普通组

2.1、系统组

2.2、一般组

基本组:用户的默认组

私有组:每个用户都有自己的默认组,没有指定所属组,系统默认创建一个和用户名同名的组

附加组:又称额外组,默认组之外的组

针对/etc/passwd、 /etc/shadow配置文件,在/etc/default目录下有两个文件是定义创建用户初始化的文件

有兴趣的可以研究下

[lovelace@lovelace default]$ ll
total 16
-rw-r--r-- 1 root root 1756 Jan 20  2012 nss
-rw------- 1 root root  119 Oct 25  2011  useradd

二、关于用户管理

涉及到的命令有:useradd 、userdel、usermod、passwd、chsh、shfn、finger、id、change

详情可参考下图:

用户管理 (2)

 

三、关于组管理

涉及到的命令有:groupadd、groupdel、groupmod、gpasswd

详情可参考下图:

组管理

四、问题延伸

案例:新建一个用户lovetest,没有创建家目录,然后切换到该用户模式下,发现bash环境有问题,这时我们该怎么做?

#新建用户,不创建家目录
[root@lovelace ~] # useradd -M lovetest
#验证家目录是否存在
[root@lovelace ~] # ls /home/
kale      mark  practice    scripts   test    test2   user2  user4  user6  user8
lovelace  nick  python1.py  shell    test1  user10  user3  user5  user7  user9
#给用户lovetest创建密码
[root@lovelace ~] # passwd lovetest
Changing password  for  user lovetest.
New UNIX password:
Retype new UNIX password:
passwd : all authentication tokens updated successfully.
#切换到lovetest用户下,这时我们将看到如下的结果
[root@lovelace ~] # su -l lovetest
su : warning: cannot change directory to  /home/lovetest : No such  file  or directory
- bash -3.2$  ls
ls : .: Permission denied

碰到这种情况我们该怎么办?

解决方法如下:

#把/etc/skel目录复制到/home目录下,并且命名为lovetest
[root@lovelace ~] # cp -r /etc/skel /home/lovetest
#然后给/home/lovetest设置属组属主,注意要使用递归选项
[root@lovelace ~] # chown -R lovetest.lovetest /home/lovetest/
#给/home/lovetest目录设置权限,注意要使用递归选项
[root@lovelace ~] # chmod -R go-rwx /home/lovetest/

再次切换用户看看效果:

[root@lovelace ~] # su -l lovetest
[lovetest@lovelace ~]$  ls
[lovetest@lovelace ~]$  pwd
/home/lovetest

 

五、后记

关于用户管理和组管理的知识点很多,需要我们用心去学习,特别是关于用户时间限制这一块特别重要,希望朋友们要认真学习下。。。。



本文转自lovelace521 51CTO博客,原文链接:http://blog.51cto.com/lovelace/1201614,如需转载请自行联系原作者

相关文章
|
Linux 编译器 开发工具
【Linux快速入门(三)】Linux与ROS学习之编译基础(Cmake编译)
【Linux快速入门(三)】Linux与ROS学习之编译基础(Cmake编译)
663 2
|
存储 安全 Linux
|
9月前
|
存储 IDE Linux
零基础保姆级教程!手把手教你免费玩转Linux CentOS安装+学习环境搭建(附避坑指南)
本文详细介绍了在VMware虚拟机中安装CentOS 6.8的全过程。首先,需确保已安装VMware并开启V-CPU虚拟化功能,可通过BIOS设置或使用LeoMoon CPU-V工具检测。接着,下载CentOS镜像文件,并在VMware中新建虚拟机,配置CPU、内存、硬盘等参数。最后,加载ISO镜像启动虚拟机,按照提示完成CentOS的安装,包括语言、键盘、存储方式、地区、密码设置及硬盘分区等步骤。安装完成后,以root用户登录即可进入系统桌面,开始学习Linux命令和操作。
896 12
零基础保姆级教程!手把手教你免费玩转Linux CentOS安装+学习环境搭建(附避坑指南)
|
Linux Shell 数据安全/隐私保护
Linux 初学者必学的 10 个命令,学习!
【10月更文挑战第28天】
303 1
Linux 初学者必学的 10 个命令,学习!
|
Linux 编译器 C语言
【Linux快速入门(一)】Linux与ROS学习之编译基础(gcc编译)
【Linux快速入门(一)】Linux与ROS学习之编译基础(gcc编译)
271 2
|
网络协议 Linux
linux学习之套接字通信
Linux中的套接字通信是网络编程的核心,允许多个进程通过网络交换数据。套接字提供跨网络通信能力,涵盖本地进程间通信及远程通信。主要基于TCP和UDP两种模型:TCP面向连接且可靠,适用于文件传输等高可靠性需求;UDP无连接且速度快,适合实时音视频通信等低延迟场景。通过创建、绑定、监听及读写操作,可以在Linux环境下轻松实现这两种通信模型。
298 1
|
Linux 开发工具
【Linux快速入门(二)】Linux与ROS学习之编译基础(make编译)
【Linux快速入门(二)】Linux与ROS学习之编译基础(make编译)
385 0
|
Linux 数据安全/隐私保护
Linux用户管理命令
Linux用户管理命令
158 1
|
Linux Shell 开发工具
一文熟知 Linux 用户管理及相关命令(详解)
Linux 的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录 “/” ,然后在此目录下再创建其他的目录。
298 0
一文熟知 Linux 用户管理及相关命令(详解)
|
Unix Linux 开发工具
Linux——vi/vim文本编辑器、用户管理的相关命令
Linux——vi/vim文本编辑器、用户管理的相关命令
Linux——vi/vim文本编辑器、用户管理的相关命令