Linux用户、组帐号和权限(学习笔记九)
一、用户分类
- 超级用户:root
- 普通用户:由超级用户和管理员创建,一般只在自己的目录中有完全的权限
- 程序用户:
二、用户账号管理
常用命令:
useradd:添加用户
userdel:删除用户
passwd:设置用户密码
groupadd:添加组账号
groupdel:删除组账号
gpasswd:添加/删除组成员
2.1、useradd:添加用户
[root@model tar]# useradd -e test1
[root@model tar]# passwd test1
Changing password for user test1.
New password:
BAD PASSWORD: it is too short
BAD PASSWORD: is too simple
Retype new password:
passwd: all authentication tokens updated successfully.
[root@model tar]# useradd test2
2.2、userdel:删除用户
[root@model tar]# userdel test2 -r
[root@model tar]# ls -l /home/
total
drwx------. test1 test1 Feb : test1
[root@model tar]#
2.3、papasswd:设置用户密码
[root@model tar]# passwd -S test1
test1 PS -- - (Password set, SHA512 crypt.)
[root@model tar]# passwd -l test1
Locking password for user test1.
passwd: Success
[root@model tar]# passwd -S test1
test1 LK -- - (Password locked.)
[root@model tar]# passwd -u test1
Unlocking password for user test1.
passwd: Success
[root@model tar]# passwd -S test1
test1 PS -- - (Password set, SHA512 crypt.)
[root@model tar]# passwd -d test1
Removing password for user test1.
passwd: Success
[root@model tar]#
2.4、groupadd:添加组账号
[root@model ~]# groupadd class1
[root@model ~]# useradd test2 -g class1
2.5、groupdel:删除组账号
2.6、gpasswd:添加/删除组成员
[root@model ~]# useradd test3
[root@model ~]# gpasswd -a test3 class1
Adding user test3 to group class1
[root@model ~]# gpasswd -d test3 class1
Removing user test3 from group class1
[root@model ~]# groupdel class1
[root@model ~]#
2.7 用户组修改
更改用户的用户组: usermod –g group_name user_name 将用户添加到其它组: usermod –G group_name user_name 修改组的名称: groupmod -n new_group_name old_ group_name
2.8、查看当前用户组
[root@model home]# groups
root
[root@model home]#
2.9、修改用户信息
修改用户信息命令:
[root@local opt]#usermod 参数 用户名
参数:
-c 说明
-g 组名 初始用户组
-e 过期日期 格式:YYYY-MM-DD
-G 组名 其他用户组
-l 修改用户名
-L 锁定账号(在/etc/shadow文件中用户对应密码密码串的前面加上两个叹号(!!))
-U 解锁
三、权限
[root@model Documents]# ls -al
total
drwxr-xr-x. root root Feb : .
dr-xr-x---. root root Feb : ..
-rw-r--r--. root root Feb : a.txt
drwxr-xr-x. root root Feb : com
-rw-r--r--. root root Feb : c.tar.gz
-rw-r--r--. root root Feb : c.txt
-rw-r--r--. root root Feb file1.txt.gz
-rw-r--r--. root root Feb : httpd.conf
drwxr-xr-x. root root Feb : tar
-rw-r--r--. root root Feb test
drwxr-xr-x. root root Feb : test1
drwxr-xr-x. root root Feb : test4
-rw-r--r--. root root Feb : test4.tar.gz
drwxr-xr-x. root root Feb tests
[root@model Documents]#
列表的列定义如下:
[权限属性信息] [连接数] [拥有者] [拥有者所属用户组] [大小] [最后修改时间] [文件名]
权限属性列表为10个字符:
第一个字符表示文件类型,d为目录 -为普通文件 l为连接 b为可存储的接口设备 c为键盘鼠标等输入设备
2、3、4个字符表示所有者权限,5、6、7个字符表示所有者同组用户权限,8、9、10为其他用户权限
第二个字符表示所有者读权限,如果有权限则为r,没有权限则为-
第三个字符表示所有者写权限,如果有权限则为w,没有权限则为-
第四个字符表示所有者执行权限,如果有权限则为x,没有权限则为-
第五个字符表示所有者同组用户读权限,如果有权限则为r,没有权限则为-
第六个字符表示所有者同组用户写权限,如果有权限则为w,没有权限则为-
第七个字符表示所有者同组用户执行权限,如果有权限则为x,没有权限则为-
第八个字符表示其他非同组读权限,如果有权限则为r,没有权限则为-
第九个字符表示其他非同组写权限,如果有权限则为w,没有权限则为-
第十个字符表示其他非同组执行权限,如果有权限则为x,没有权限则为-
四、权限的表示形式
数字形式和字符形式
r、w、x可分别使用八进制的4,2,1来表示,表示一个组合时,需要将数字相加.如下图
五、权限设置chmod
5.1、chmod [ugoa...][+-=][rwx] 文件或者目录
ugoa:针对的用户类别,u代表文件的所有者,g代表文件所有都所在的用户组内的用户,o其它任何用户,a代表所有用户(u,g,o总和)
+-=:设置权限的动作,+表示增加相应权限,-减表示少相应权限,=表示仅设置相应的权限
rwx:权限的字符组合形式,可以单个使用也可以组合使用如:r,w,x,rw,rx,wx,
5.2、chmod nnn 文件或者目录
5.3 chmod -R选项
增加-R选项可以将目录下的子目录,文件设置为同一权限
六、设置文件归属
chown:可以设置属主,属组
chgrp:只修改属组
因此chown经常使用
6.1、chown
chown 属主[:[属组]] 文件或者目录
同时设置时用:分隔
如果单独设置属组时,要组:属组
Linux用户、组帐号和权限(学习笔记九)的更多相关文章
- Linux用户、用户组、文件权限学习笔记
最近打算更仔细学习一下linux操作系统.先是恶补了一下用户.用户组.文件权限这三样比较重要的知识.学习这几样东西,得先掌握linux的权限系统相关知识.linux的权限系统主要是由用户.用户组和权限 ...
- linux 用户创建、管理、权限分配
(1)su与sudo su:通过su可以在用户之间切换,如果超级权限用户root向普通或虚拟用户切换不需要密码,什么是权力?这就是!而普通用户切换到其它任何用户都需要密码验证: sudo: sudo扮 ...
- 《Linux内核分析》第六周学习笔记
<Linux内核分析>第六周学习笔记 进程的描述和创建 郭垚 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/co ...
- 《Linux内核分析》第八周学习笔记
<Linux内核分析>第八周学习笔记 进程的切换和系统的一般执行过程 郭垚 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163 ...
- 《Linux内核分析》第三周学习笔记
<Linux内核分析>第三周学习笔记 构造一个简单的Linux系统MenuOS 郭垚 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.stud ...
- Android M Permission 运行时权限 学习笔记
Android M Permission 运行时权限 学习笔记 从Android 6.0开始, 用户需要在运行时请求权限, 本文对运行时权限的申请和处理进行介绍, 并讨论了使用运行时权限时新老版本的一 ...
- 《Linux内核分析》第七周学习笔记
<Linux内核分析>第七周学习笔记 可执行程序的装载 郭垚 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/co ...
- 《Linux内核分析》第五周学习笔记
<Linux内核分析>第五周学习笔记 扒开系统调用的三层皮(下) 郭垚 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.c ...
- 多线程学习笔记九之ThreadLocal
目录 多线程学习笔记九之ThreadLocal 简介 类结构 源码分析 ThreadLocalMap set(T value) get() remove() 为什么ThreadLocalMap的键是W ...
随机推荐
- react父子组件数据传递
子传父 1.首先父组件设定一个自定义函数 getChildDatas = (values) => { //...业务代码 } 2.将该函数暴露在子组件的引用上 <Child getChil ...
- 解决 git push Failed to connect to 127.0.0.1 port 45463: 拒绝连接
使用Github pull 代码突然报错: Failed to connect to 127.0.0.1 port 43421: Connection refused 使用 lsof 发现端口未被占用 ...
- PowerDesigner设置唯一约束/唯一索引/唯一键
注意:还需要设置unique约束,也是在这个界面. 参考: https://blog.csdn.net/cnham/article/details/6676650 https://blog.csdn. ...
- Tasker to proximity screen on
in my previous entry, i posed an idea how to use the built-in proximity sensor to turn the screen of ...
- MVC使用TempData跨控制器传递信息而无需记住key的名称
通常情况下,使用TempData需要记住key的名称,本篇体验:通过帮助类,实现对TempData的设置.获取.删除. 关于传递信息的类: namespace MvcApplication1.Mode ...
- 关于deselectRowAtIndexPath
有没有遇到过,导航+UITableView,在push,back回来之后,当前cell仍然是选中的状态.当然,解决办法简单,添加一句[tableView deselectRowAtIndexPath: ...
- [翻译] MCProgressView 使用自定义图片做进度显示
MCProgressView 使用自定义图片做进度显示 https://github.com/Baglan/MCProgressView Progress bar view with custom i ...
- 《Windows核心编程》第七章——进程优先级实验
其实就是做个实验,看看SetPriorityClass是否真的会生效. 设计思路:主线程一直在进行某种操作(这里是写文件操作),以保证有一定的CPU占用率:生成的子线程来接收你的命令,决定将进程改变为 ...
- TR069协议小结
也称为CWMP,是在Internet网上通过wan口控制通信终端设备的协议.其协议流程如下图所示: 具体网上有很多资料.其主要的两个内容是:HTTP Client模型.DATA模型. ...
- oracle 表空间自己主动扩展大小
select a.FILE_NAME,a.AUTOEXTENSIBLE,a.MAXBYTES,a.INCREMENT_BY from dba_data_files a; --AUTOEXTENSI ...