Linux____用户和群组进阶学习笔记

来源:互联网 发布:八爪鱼采集数据重复 编辑:程序博客网 时间:2024/06/03 06:21

# root ____区分两种符号____ $ user


/etc/passwd

user1:x:500:500:描述:/home/user1:/bin/bash

用户名:密码:用户userid:组id:描述:主目录home目录:默认shell默认执行脚本 其中密码一般加密后放在/etc/shadow内


/etc/shadow

如果查看/etc/shadow文件存放的特殊帐号信息如下: 
name:!!:13675:0:99999:7:::  
每一行给一个特殊帐户定义密码信息,每个字段用 : 隔开。 
字段 1 定义与这个 shadow 条目相关联的特殊用户帐户。 
字段 2 包含一个加密的密码。 
字段 3 自 1/1/1970 起,密码被修改的天数 
字段 4 密码将被允许修改之前的天数(0 表示“可在任何时间修改”) 
字段 5 系统将强制用户修改为新密码之前的天数(1 表示“永远都不能修改”) 
字段 6 密码过期之前,用户将被警告过期的天数(-1 表示“没有警告”) 
字段 7 密码过期之后,系统自动禁用帐户的天数(-1 表示“永远不会禁用”) 
字段 8 该帐户被禁用的天数(-1 表示“该帐户被启用”) 
字段 9 保留供将来使用

如果查看/etc/shadow下存放的普通帐号信息如下: 
(1):帐号名称 
(2):密码:这里是加密过的,但高手也可以解密的。要主要安全问题(代!符号标识该帐号不能用来登录) 
(3):上次修改密码的日期 
(4):密码不可被变更的天数 
(5):密码需要被重新变更的天数(99999表示不需要变更) 
(6):密码变更前提前几天警告 
(7):帐号失效日期 
(8):帐号取消日期 
(9):保留条目,目前没用 
例如:abc:!!:14768:0:99999:7:::


$su -sky 切换到sky用户

$su  - 切换到root账户


$ls -l 查看所有文件-la:查看所有文件包括隐藏文件


$cd  .. 切换到上层文件夹


$cd /home/sky 进入sky文件


$pwd 查看现在的目录


$groups 列出所属群组


$vi /etc/passwd查看passwd文件 


$vi /etc/group 查看group文件

————————————————用户的管理————————————————

useradd指令:添加新用户

#useradd -u 520 -g user1  -G user2 -d /home/usertest user3

说明:

-u:指定一个特殊的UID给该账号

-g:指定一个主要群组的名称 会修改passwd文件

-G:指定一个次要群组的名称 会修改group文件

-M:强制不要创建用户家目录 系统账号root默认

-m:强制建立用户家目录 一般账号user默认 

-c:passwd文件中第五个字段的说明文字

-d:指定用户的家目录位置,不要使用默认的值

-s:指定默认的shell,如果没有指定则默认是/bin/bash


usermod指令:修改用户信息

/root切换到下面的用户不需要密码 /冻结就是在shadow文件下对应的用户的密码前加上! 禁用

-c:该账号的说明文字

-d:账号的家目录

-e:指定账号的禁用日期 格式YY-MM-DD

-G:修改次要群组的名称,会修改group文件

-g:修改主要群组名称

-a:与-G何用,添加次要群组

-l:将当前账号的名称重命名为指定名称

-u:修改UID

-L:暂时将该账号的密码冻结,无法登录

-U:解冻账号吗,就是删除shadow的!字符


userdel username

-r:连同home目录一同删除


passwd 修改密码

通过root修改 不需要输入当前密码 普通用户则需要输入修改的账号的当前密码

#passwd user5 修改指定用户密码

#passwd   修改当前用户密码


————————————————用户信息的检查————————————————

finger [-s] username 指令 查询用户的相关信息 finger指令没有权限限制,所有用户下都可以查看

# finger  

# finger user3

# finger -s user3

-s:仅仅列出用户的账号、全名、登录时间等


id指令 查看某人或自己相关的UID GID信息

# id 查看当前

# id jike 查看特定用户


whoami指令 查看当前是哪个用户登录的系统


who&w指令 与finger类似,查看当前有哪些用户在使用系统


users指令 只显示当前使用系统的用户名


groups指令 查看当前用户所属的群组


————————————————默认权限的控制————————————————

1、内核级别,文件的默认权限是666

2,、内核级别,目录的默认权限是777

3、最终权限会通过umask进行遮盖,来阻止一些权限,从而产生最终权限

4、非管理账号的umask是0002

5、root的umask是0022

6、umask的作用原理 注意是遮盖  不是减法!

举例:

(#操作符表示root下操作)

#mkdir testdir结果:rwx r-x r-x

#touch testfile结果:rw-  r-- r--

原因:

dir 666 r w x r w x r w x

Umask 022 - - - - w - - w -

____________________________________

结果 644r w x r - xr - x



File 666 r w - r w - r w -

Umask 022 - - - - w - - w -

____________________________________

结果 644r w - r - -r - -

————————————————用户群组的管理————————————————

groupadd [-g gid] [-r] 组名 :创建群组

例子:groupadd -g 505 group2

-g:后面接特定的GID 用来指定GID GID从500开始计算 例506

-r:建立系统群组 GID小于500 例104


groupmod [-g gid] [-n group_name] 群组名 :修改群组

例子:groupmod -g 515 -n grouptwo group2   /将group2群组GID修改为515 群组名修改为grouptwo

-g:修改当前的GID

-n:修改当前的组名


groupdel [groupname] :删除群组

例子:groupdel grouptwo /删掉上面的已经将name修改为grouptwo的群组


0 0
原创粉丝点击