【精通Linux系列】Linux用户管理与组管理详解,让自己的操作系统自己管理

???? 作者 :“大数据小禅”


???? 专栏简介 :本专栏主要分享Linux技术,会涉及到常用的Linux命令操作,常用的服务部应用署以及相关运维知识,还有一些Linux系统的深层解析,Linux系列专栏地址,欢迎小伙伴们订阅!


???? 个人主页 :大数据小禅


???? 粉丝福利 :加入小禅的大数据社群


???? 欢迎小伙伴们 点赞????、收藏⭐、留言????


文章目录

linux用户的分类:

用户操作相关命令及用法

创建指定用户:

用户的修改,添加与删除命令;

修改组命令实例:下图没改之前组id都是属于XD的 下面的 -g 0 就是制定root组了 (0指的是最高限权root组)

更深一步的理解组的增添:

Linux(linux的强大之处在于,linux中可以多用户多分组,而且相互隔离)在window中是有用户跟组这种分类的;



【精通Linux系列】Linux用户管理与组管理详解,让自己的操作系统自己管理

linux用户的分类:

超级用户root:拥有至高无上的权限 UID:0
普通用户:权限有一定的限制,可以登录系统。一般可以执行/usr/local/bin或者/bin或者/usr/bin或者自
己家目录的命令 UID(相当于身份证号独一无二):500 -60000 (centos 6) UID:1000 - 60000(centos7)
系统用户(伪用户):一般不会登录系统,一般情况是用来维持某个服务程序 UID :1-499 (centos 6)
UID :1-1000 (centos 7)
关于用户的相关配置文件
账号信息:/etc/passwd
密码信息:/etc/shadow

test   :x       :1000 :1000 : :/home/test :/bin/bash     #冒号为分割符
用户 密码占位符 UID  GID 用户描述 用户家目录    登录后使用的shell解释
/sbin/nologin #是不可登录的
/bin/bash #可以登录

用户操作相关命令及用法

添加用户命令:useradd


-u #指定用户UID

-d #指定用户主目录

-g #指定用户所属组

-r #指定用户是系统用户

-s #用户登录shell解释器

-M #不创建主目录,不指定家目录,不生成家目录,之前是用 cd /home进入家目录后可以看到我们创建的XD用户,使用这个-M就是不会出现在家目录中的了。如在创建一个useradd -M 后面是默认的话会自动指定是/bin/bash是可登录的,而UID会在之前的基础上自动增加


创建指定用户:

创建一个用户XD,指定UID为1010,指定家目录为/home/XD ,指定所属组为root组,指定登录shell 为/bin/bash;(使用 id + 用户名字可以查看此用户信息,su +用户,切换用户)


useradd -u 1010 -d /home/XD -g root -s /bin/bash XD

【精通Linux系列】Linux用户管理与组管理详解,让自己的操作系统自己管理


报错解决:

登录用户时出现以下信息如何解决,有时候创建一个目录之后指定多个家目录就会出现下面的错误,下面的错误是输入su CD 切换用户的时候出现的。ls -lrta这个命令看隐藏内容,下面是用rm -rf *.,cd XD命令进入XD用户后删了里面的内容演示su XD出现的错误,会出现下面的这些。


【精通Linux系列】Linux用户管理与组管理详解,让自己的操作系统自己管理


报错如下:
bash-4.2$
bash-4.2$

解决:复制相关信息到家目录
进入 cd /etc/skel/
ls -lrta 这里面有一些刚才演示删除的隐藏信息
cp -r /etc/skel/.bash* /home/XD/     复制到home目录的XD,重新su XD切换目录,解决问题!


用户的修改,添加与删除命令;

删除用户命令:userdel     

userdel  -r XD这样会把家目录,即使home目录下的一起删除-r #连同家目录一块删除

添加用户组命令:groupadd

删除用户组命令:groupdel


修改用户的信息命令:usermod

-u #指定用户UID

 -d #指定用户主目录

-g #指定用户所属组


###### 设置用户密码命令passwd

passwd XD   #这个命令输入后会让你输入两次密码,交互式的方式键盘输入。

echo "123456" | passwd --stdin XD   #这个相当于重定向,直接输密码。

修改组命令实例:下图没改之前组id都是属于XD的 下面的 -g 0 就是制定root组了 (0指的是最高限权root组)【精通Linux系列】Linux用户管理与组管理详解,让自己的操作系统自己管理

更深一步的理解组的增添:

Linux中useradd和adduser的区别
1. 在root权限下,useradd只是创建了一个用户名,如 (useradd  +用户名 ),它并没有在/home目录下创建同名文件夹,也没有创建密码,因此利用这个用户登录系统,是登录不了的,为了避免这样的情况出现,可以用 (useradd -m +用户名)的方式创建,它会在/home目录下创建同名文件夹,然后利用( passwd + 用户名)为指定的用户名设置密码。

2. 可以直接利用adduser创建新用户(adduser +用户名)这样在/home目录下会自动创建同名文件夹

3.  删除用户,只需使用一个简单的命令“userdel 用户名”即可。不过最好将它留在系统上的文件也删除掉,你可以使用“userdel -r 用户名”来实现这一目的。 

Linux系统如何添加用户这个问题到网上问一下或者搜一下,很多人可能会说useradd,实际这是不对的。useradd只会添加一个用户,没有创建它的主目录,除了添加一个新用户之外什么都没有。这个用户甚至不能登录,因为没有密码。正确的做法是man page里说的,adduser,这个命令实际是一个perl脚本,是useradd等类似底层命令的更友好的前端,它会用交互性的方式建立新用户,使用它可以指定新用户的家目录,登录密码,是否加密主目录等等,它会:

1.建立一个新目录作为家目录
2.建立同名新组
3.把用户的主要组设为该组(除非命令选项覆盖以上默认动作,比如–disall-homdirecry之类)
4.从/etc/SKEL目录下拷贝文件到家目录,完成初始化
5.建立新用户的密码
6.如果其存在的话,还会执行一个脚本。


上一篇:yum安装haproxy


下一篇:浅谈Generator和Promise原理及实现