Linux| 用户和用户组管理

Posted Python小灶

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux| 用户和用户组管理相关的知识,希望对你有一定的参考价值。


市面上Linux学习资料太多,实在不用再多做介绍,所以这篇文章主要是做一些自己认为是比较重要的笔记记录,遇到的一些问题及解决办法,好的学习资源分享等等。

本人以菜鸟教程作为学习入门 建议CSDN阅读效果更好(因为Markdown可以跳转)

【Linux】| 用户和用户组管理

本文只列出示例用法,更多用法自行搜索 或者man 命令例如man useradd或者命令 --help 例如useradd --help

@

  • 用户管理

    • 添加新用户

    • 切换用户

    • 修改用户

    • 用户口令(密码)的管理

    • 删除用户

  • Linux系统用户组的管理

    • 新增一个用户组

    • 删除一个用户组

    • 修改用户组的属

    • 如果一个用户同时属于多个用户组,那么用户可以在用户组之间切换,以便具有其他用户组的权限。

  • 与用户账号有关的系统文件

  • 更改文件属性

    • chgrp:更改文件属组

    • chown:更改文件属主,也可以同时更改文件属组

    • chmod:更改文件9个属性

  • 处理目录的常用命令

  • Linux 文件内容查看


Linux简介

用户和用户组管理

用户管理

最令我们熟知的应该就是root账户,其实Linux系统是一个多用户多任务的分时操作系统。实现用户账号的管理,要完成的工作主要有如下几个方面:

  • 用户账号的添加、删除与修改。
  • 用户口令的管理。
  • 用户组的管理。

添加新用户

useradd -d /home/sam -m sam此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录 /home/sam(/home为默认的用户主目录所在的父目录)。

切换用户

su sam此命令切换当前用户为sam,如果想切回root使用同样的方法,不过要输入密码

修改用户

usermod -g L1 sam此命令将sam用户组改为L1

用户口令(密码)的管理

初始创建用户是没有口令的,可以先用root账号给用户添加口令,有了密码后后续可以在当前账户操作su root   输入密码passwd sam  按照提示设置sam的密码

删除用户

userdel -r sam此命令删除用户sam在系统文件中(主要是/etc/passwd, /etc/shadow, /etc/group等)的记录,同时删除用户的主目录。如果有相关报错

user sam is currently used by process 219359

直接强制删除就好userdel -rf sam

Linux系统用户组的管理

用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对/etc/group文件的更新。

新增一个用户组

groupadd L1此命令向系统中增加了一个新组L1,新组的组标识号是在当前已有的最大组标识号的基础上加1。组标识号也可以通过-g 组标识号来指定。

删除一个用户组

groupdel L1

修改用户组的属

groupmod -g 1002 -n L2 sam此命令将组sam的标识号改为1002,组名修改为L2。

如果一个用户同时属于多个用户组,那么用户可以在用户组之间切换,以便具有其他用户组的权限。

useradd -G L1 a 添加一个新用户,用户组为L1groupadd L2 添加一个新用户组为L2usermod -G L2 a把用户a同时添加进L2组su a切换到用户agroups 显示当前用户所属组,应该是L1 L2

newgrp L2 由属组L1切换到属组L2

groups 显示当前用户所属组,应该是L2 L1

与用户账号有关的系统文件

  • /etc/passwd文件是用户管理工作涉及的最重要的一个文件
  • /etc/shadow中的记录行与/etc/passwd中的一一对应,它由pwconv命令根据/etc/passwd中的数据自动产生
  • 用户组的所有信息都存放在/etc/group文件中
  • 添加批量用户的应用

Linux 文件基本属性

教程的顺序本来是先介绍文件属性,不过我先把用户用户组给介绍一下,接下来再学习文件属性就好理解多了。在 Linux 中我们可以使用 ll 或者 ls –l 命令来显示一个文件的属性以及文件所属的用户和组,如:-rw-r--r-- 1 a L1 22 Apr 2 13:39 hello.py

在 Linux 中第一个字符代表这个文件是目录、文件或链接文件等等。

  • 当为 d 则是目录
  • 当为 - 则是文件;
  • 若是 l 则表示为链接文档(link file);
  • 若是 b 则表示为装置文件里面的可供储存的接口设备(可随机存取装置);
  • 若是 c 则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。

接下来的字符中,以三个为一组,且均为 rwx 的三个参数的组合。其中, r 代表可读(read)、 w 代表可写(write)、 x 代表可执行(execute)。要注意的是,这三个权限的位置不会改变,如果没有权限,就会出现减号 - 而已。

后面依次是:文件数量,所属用户,所属组,大小,最后编辑时间,文件名,详情见图。【Linux】| 用户和用户组管理那么我们最常用的操作就是修改文件或目录的所属用户与权限:

更改文件属性

chgrp:更改文件属组

chgrp [-R] 属组名 文件名

chown:更改文件属主,也可以同时更改文件属组

chown [–R] 属主名 文件名chown [-R] 属主名:属组名 文件名

chmod:更改文件9个属性

可以看以下示例,工作中很多问题是因为权限不够造成的,比如这个py文件,加了777权限后,颜色为绿色,代表可执行。777的具体含义(r:4,w:2,x:1),以770为例:owner = rwx = 4+2+1 = 7 group = rwx = 4+2+1 = 7 others= --- = 0+0+0 = 0

Linux 文件与目录管理

处理目录的常用命令

接下来我们就来看几个常见的处理目录的命令吧:

  • ls(英文全拼:list files): 列出目录及文件名
  • cd(英文全拼:change directory):切换目录
  • pwd(英文全拼:print work directory):显示目前的目录
  • mkdir(英文全拼:make directory):创建一个新的目录
  • rmdir(英文全拼:remove directory):删除一个空的目录
  • cp(英文全拼:copy file): 复制文件或目录
  • rm(英文全拼:remove): 删除文件或目录
  • mv(英文全拼:move file): 移动文件与目录,或修改文件与目录的名称 你可以使用 man [命令] 来查看各个命令的使用文档,如 :man cp。

Linux 文件内容查看

Linux系统中使用以下命令来查看文件的内容:

  • cat  由第一行开始显示文件内容
  • tac  从最后一行开始显示,可以看出 tac 是 cat 的倒着写!
  • nl   显示的时候,顺道输出行号!
  • more 一页一页的显示文件内容
  • less 与 more 类似,但是比 more 更好的是,他可以往前翻页!
  • head 只看头几行
  • tail 只看尾巴几行


猜你喜欢

                                



                                           

以上是关于Linux| 用户和用户组管理的主要内容,如果未能解决你的问题,请参考以下文章

Oracle-常用数据库对象笔记(片段)

《java精品毕设》基于javaweb宠物领养平台管理系统(源码+毕设论文+sql):主要实现:个人中心,信息修改,填写领养信息,交流论坛,新闻,寄养信息,公告,宠物领养信息,我的寄养信息等(代码片段

Linux 用户和用户组管理

VSCode 如何操作用户自定义代码片段(快捷键)

VS code自定义用户代码片段snippet

SnippetsLab for Mac 1.9 中文共享版 – 强大的代码收藏管理工具