Linux组管理、用户管理、查看用户信息、usermod、which、切换用户、修改文件具体权限
组管理
提示:创建组/删除组的终端命令都需要通过sudo执行
| 序号 | 命令 | 作用 |
| 01 | groupadd组名 | 添加组 |
| 02 | groupdel组名 | 删除组 |
| 03 | cat/etc/group | 确认组信息 |
| 04 | chgrp –R 组名 文件/目录名 | 递归修改文件/目录的所属组 |
提示:
- 组信息保存在/etc/group文件夹中
- /ect目录是专门用来保存系统配置信息的目录
- 修改完文件或者目录的所属组之后,此文件的组权限会变成rwx,这时候我们只需要将需要的用户添加都改组之中便有了改组具有的权限。
用户管理
提示:创建用户/删除用户/修改其他用户密码的终端命令都需要sudo权限执行
创建用户/设置密码/删除用户(创建新用户必须使用01、02命令)
| 序号 | 命令 | 作用 | 说明 |
| 01 | useradd –m –g 组 新建用户名 | 添加新用户 |
|
| 02 | passwd 用户名 | 设置用户权限 |
如果是普通用户,直接使用password 可以修改自己账号的密码 |
| 03 | userdel –r 用户名 | 删除用户 | -r 选项会自动删除用户家目录 |
| 04 | cat /etc/passwd |grep 用户名 | 确认用户密码信息 | 新建用户后,用户信息会保存到/etc/password 文件中 |
提示:
- 创建用户时,如果忘记添加-m选项指定新用户的家目录 --最简单的方法就是删除用户,重新创建
- 创建用户时,默认会创建一个和用户名同名的组名
- 用户信息保存在/etc/passwd文件中
查看用户信息
| 序号 | 命令 | 作用 |
| 01 | id [用户名] | 查看当前用户的UID(用户)和GID(组)信息 |
| 02 | who | 查看当前所有登陆的用户列表 |
| 03 | whoami | 查看当前登陆用户的账户名 |
passwd文件
/etc/passwd文件存放的是用户信息,由6个分号组成的7个信息,分别是
- 1.用户名
- 2.密码(x,表示密码加密)
- 3.UID:用户标识
- 4.GID:组标识
- 5.用户全名或本地账户
- 6.家目录
- 7.登陆使用的shell,就是登陆之后,使用终端命令,ubuntu默认是dash(默认对文件和可执行文件等没有颜色显示区别,可以切换成bash,对文件和可执行等有颜色的显示区别)

usermod
主组:通常在新建用户时指定,在etc/passwd的第4列GID对于的组(随用户创建默认设置,一般的时候不做修改)
辅组:在etc/group中最后以列表该组的用户列表,用于指定用户的附件权限(一般为用户添加附加组使其具有附加组的权限)
usermod可以用来设置用户的主组/附加组和登陆shell,命令格式如下
| usermod –g 组 用户名 | 修改用户的主组(passwd中的GIDuser) |
| usermod –G 组 用户名 | 修改用户的附件组 |
| usermod –s /bin/bash 用户名 | 修改 用户登陆 shell |
提示:
- 设置用户的附加值之后,要重新登陆才能生效!
- 默认使用useradd 添加的用户没有权限使用 sudo以root身份执行命令的,可以使用以下命令,将用户添加到速冻附加组中
| usermod –G sudo 用户名 |
- 默认ubuntu使用的shell为dash即在终端只有一个 $,而使用了bash会在终端显示 用户名@计算机名:当前目录$ 的形式。如下图所示

主组和辅组的区别示例如下图

which
which 命令可以查看执行命令所在的位置
提示:
- /ect/passwd 适用于保存用户信息的文件
- /usr/bin/passwd 适用于修改用户密码的程序
- cd这个命令内置在系统内核中,没有独立文件,which无法查询到。

例如: which ls 则输出/bin/ls
bin和sbin
在Linux中,绝大多数可执行文件都保存在/bin、/sbin、/usr/bin、/usr/sbin
/bin(binary)是二进制可执行目录,主要是具体应用
/sbin(system binary)是系统管理员专用的二进制代码存放目录,主要用于系统管理
/usr/bin(user command for application)后期安装的一些软件
/usr/sbin(superuser command for application)超级用户的一些管理程序
切换用户
| 序号 | 命令 | 作用 | 说明 |
| 01 | su - 用户名 | 切换用户,并且切换目录 |
- 可以切换到用户的家目录,否则保持位置不变 su 不接用户名可切换到root,但不推荐 |
| 02 | exit | 退出当前登陆账号 |
修改文件权限
| 序号 | 命令 | 命令格式 | 作用 |
| 01 | chown | chown 用户名 文件名|目录名 | 修改拥有者 |
| 02 | chgrp | chgrp –R 组名 文件名|目录名 | 修改组 |
| 03 | chmod | chmod –R 755 文件名|目录名 | 修改权限 |
chmod在设置权限时,可以简单的设置三个数字分别对应拥有者/组和其他用户权限。
三个数字的含义如下图

|
注意: chmod +/- rwx 文件名|目录名 # 直接修改文件|目录 读|写|执行权限,但不能精确到拥有者、组和其他用户 |
Linux组管理、用户管理、查看用户信息、usermod、which、切换用户、修改文件具体权限的更多相关文章
- [转帖]如何在Linux上使用命令行查看硬件信息
如何在Linux上使用命令行查看硬件信息 时间:2016-01-13 作者:admin 分类:新手入门 阅读:126次 http://embeddedlinux.org.cn/emb-linux/ ...
- 从Windows系统服务获取活动用户的注册表信息(当前活动用户的sessionId. 当前活动用户的 hUserToken)
首先,对“活动用户”的定义是,当前拥有桌面的用户.对于Windows XP及其以后的系统,即使是可以多个用户同时登录了,拥有桌面的也仅仅只有一个. 如果系统级服务调用Windows API来获取注册表 ...
- Linux修改文件的权限,拥有者,所属组
修改文件的权限,拥有者,所属组 1.设置文件的权限(chmod) ①方式一(建议使用这种方式) 命名:chomd 755 文件名 ②方式二 命名:chomd -R +x 文件名 2.设置文件的拥有者( ...
- linux ,mac连接, git pull error, chmod修改文件的权限/chown修改文件和目录的所有者
去项目目录下 启动服务 setsid npm start & Mac下如何用SSH连接远程Linux服务器 https://www.cnblogs.com/littleBit/p/536280 ...
- Linux 组群账户管理
一.Linux组群账户配置文件 1./etc/group文件 /etc/group文件是用户组群的配置文件,内容包括用户和用户组群,并且能显示出用户是归属哪个用户组群或哪几个用户组群.一个用户可以归属 ...
- ***Linux系统下如何查看及修改文件读写权限
查看文件权限的语句: 在终端输入:ls -l xxx.xxx (xxx.xxx是文件名) 那么就会出现相类似的信息,主要都是这些:-rw-rw-r-- 一共有10位数 其中: 最前面那个 - 代表的是 ...
- [转]Linux系统下如何查看及修改文件读写权限
转自 :http://www.cnblogs.com/CgenJ/archive/2011/07/28/2119454.html 查看文件权限的语句: 在终端输入:ls -l xxx.xxx (xxx ...
- Linux文件类型及如何查看,修改文件读写权限
现在使用 ls -l 命令,查看详细信息格式的文件列表,您将会看到如下内容: total 5drwxr-x--- 4 user group 4096 Mar 10 00:37 filenamed ...
- linux修改文件的权限和修改文件所有者和所属组
文件设定法:chmod [who] [+][-][=] [mode] who 文件所有者:u 文件所属组:g 其他:o 所有人:a + 添加权限 - 减少权限 = 覆盖原来权限 权 ...
随机推荐
- GitLab : Omnibus Installer
转自:https://www.ibm.com/developerworks/community/blogs/2280dc86-a78a-441b-89d7-5b4c41595852/entry/Git ...
- [Gradle] 发布 library 到本地 maven 仓库
Java Library // publish_local_java.gradle apply plugin: 'maven-publish' publishing { publications { ...
- 多项式总结&多项式板子
多项式总结&多项式板子 三角/反三角是不可能放的(也不可能真香的 多项式乘法(DFT,FFT,NTT,MTT) 背板子 前置知识:泰勒展开 如果\(f(x)\)在\(x_0\)处存在\(n\) ...
- 洛谷 P5506 封锁
目录 题目 思路 \(Code\) 题目 P5506 封锁 思路 模拟 \(\large\text{读题一定要细心}\) 解释都在代码里. \(Code\) #include<bits/stdc ...
- 【loj3119】【CTS2019】随机立方体
题目 一个 $ n m l $ 的立方体等概率填入 $ 1-nml $ ; 定义一个位置是极大的当且仅当这个位置比三位坐标的至少一维与之相等的位置的值都大. 询问极大值恰好有\(k\)个的 ...
- 干货 | column generation求解VRPTW问题 java代码分享
00 前言 经过小编不断的努力,关于column generation求解VRPTW的代码终于新鲜出炉啦. 01 运行说明 关于这部分的代码,这里提供两个版本. 第一个版本GitHub一个叫Semin ...
- Redis代码示例
RedisTemplate 如果想要在java中使用Redis相关的数据结构,要先注入RedisTemplate. @Autowired private RedisTemplate<K,V> ...
- coredump之栈溢出
1.栈溢出引发的core往往出现出现在递归调用中. gdb时看到的特征是: 栈缺失,当前栈地址不可读. 根据栈是逆向生长的特点(栈逆向生长,所以很容易出现类似数组溢出覆盖率函数返回地址,导致函数退出地 ...
- typescript - 5.接口
接口的作用: 在面向对象的编程中,接口是一种规范的定义,它定义了行为和动作的规范,在程序设计里面,接口起到一种限制和规范的作用.接口定义了某一批类所需要遵守的规范,接口不关心这些类的内部状态数据,也不 ...
- [转]c++多线程编程之pthread线程深入理解
多线程编程之pthread线程深入理解 Pthread是 POSIX threads 的简称,是POSIX的线程标准. 前几篇博客已经能给你初步的多线程概念.在进一 ...