Linux用户管理

1.用户管理:
(1)超级用户:拥有操作系统的最高权限,可以进行任何操作.默认是root.
它的Uid,gid都是0
(2)普通用户:是有管理员创建的用户,权限有限,只对自己的家目录拥有完整权限
Centos 7的Uid是从1000开始.
(3)虚拟用户:(程序用户===>植物人),一般用来运行服务时候指定的用户,不能登录操作系统.
系统的默认用户:
Centos6之前是1—499;
Centos7开始是1—999;
2.用户和组管理的重要文件
(1)用户管理配置文件:/etc/passwd
haha ❌1000:1000:haha:/home/haha:/bin/bash
dhcpd ❌177:177:DHCP server:/:/sbin/nologin
第一列:用户名;
第二列:密码占位符
第三列:uid(user id用户唯一标识)
第四列:gid (group id)
第五列:全名
第六列:用户家目录
第七列:是否允许登录操作系统./bin/bash允许登录系统;/sbin/nologin不允许登录系统.
(2)用户的密码文件:/etc/shadow
haha: 6 6 6gBMaK.xDoFH6LksE D H t W / I r z j A I S . f y o S g . j a i Q I d . l v i Y r H H 8 a U 5 m G i O J u r 7 k s E Q g C Q x D 1 C K I 8 g s Z a k w 6 s D w m z V k 1 o W n z F 9 N Y o A h . : 18116 : 0 : 99999 : 7 : : : 第 一 列 : 用 户 名 第 二 列 : 用 户 加 密 后 的 密 码 , 用 S H A 加 密 第 三 列 : 密 码 的 修 改 时 间 , 距 离 1970 − 01 − 01 的 时 间 第 四 列 : 密 码 的 最 短 有 效 期 , 如 果 为 0 , 表 示 无 限 制 第 五 列 ; 密 码 的 最 长 有 效 期 第 六 列 : 提 前 7 天 提 醒 第 七 列 : 账 号 的 失 效 时 间 第 八 列 : 未 定 义 ( 3 ) 组 相 关 : / e t c / g r o u p j i s h u b u : x : 2000 : 第 一 列 : 组 名 第 二 列 : 组 密 码 占 位 符 第 三 列 : g i d ( 组 I D ) 第 四 列 : 组 成 员 3. 用 户 管 理 的 命 令 : u s e r a d d / u s e r m o d ( 1 ) 命 令 的 基 本 格 式 : u s e r a d d [ 参 数 − G / − g / − d / − s / − u ] [ 参 数 的 值 ] 操 作 的 用 户 u s e r n a m e 举 例 : u s e r a d d x i a o m i n g / / 创 建 一 个 用 户 , 默 认 会 创 建 一 个 同 名 的 组 , 这 个 用 户 就 属 于 同 名 组 . i d x i a o m i n g / / 检 查 用 户 的 u i d / g i d 和 基 本 组 信 息 u s e r m o d − G h e i h e i x i a o m i n g / / − G 是 给 一 个 用 户 指 定 一 个 " 附 加 组 " ; i d x i a o m i n g u i d = 1002 ( x i a o m i n g ) g i d = 1002 ( x i a o m i n g ) 组 = 1002 ( x i a o m i n g ) , 1001 ( h e i h e i ) / / x i a o m i n g 是 基 本 组 , h e i h e i 是 附 加 组 u s e r a d d x i a o h u a i d x i a o h u a u s e r m o d − g h e i h e i x i a o h u a / / − g 是 指 定 用 户 的 基 本 组 , 把 x i a o h u a 的 基 本 组 设 置 为 h e i h e i u s e r a d d − d / a d m i n − g j i s h u b u − G r o o t a d m i n / / 创 建 一 个 用 户 a d m i n , − d 指 定 家 目 录 , − g 指 定 基 本 组 ; − G 指 定 附 加 组 g r o u p a d d − g 2001 c a i w u b u / / 创 建 一 个 组 叫 c a i w u b u , 同 时 指 定 g i d W i e 2001 u s e r a d d − u 2001 − g 2001 − d / t e s t b b b b b b / / 创 建 一 个 用 户 b b b , 同 时 指 定 u i d = g i d = 2001 , 指 定 ( 同 时 会 创 建 ) 家 目 录 为 / t e s t b b b ; 默 认 普 通 用 户 的 家 目 录 在 / h o m e / 用 户 名 u s e r a d d − s / s b i n / n o l o g i n − M w w w / / 创 建 一 个 虚 拟 用 户 ( 植 物 人 ) , 用 户 名 叫 w w w , − M 是 不 指 定 家 目 录 ; − s 指 定 用 户 登 录 的 s h e l l . / s b i n / n o l o g i n 表 示 不 允 许 登 录 系 统 . ( 2 ) p a s s w d 给 用 户 设 置 密 码 p a s s w d x i a o m i n g / / 给 小 明 设 置 密 码 P a s s w d − d a a − − − − − − − 清 空 a a 用 户 的 密 码 p a s s w d − l x i a o m i n g / / 锁 定 x i a o m i n g p a s s w d − u x i a o m i n g / / 给 x i a o m i n g 解 锁 p a s s w d − S x i a o m i n g / / 查 看 小 明 的 状 态 ( 3 ) 批 量 创 建 用 户 举 例 : f o r n i n 1..20 ; d o u s e r a d d u s e r DHtW/IrzjAIS.fyoSg.jaiQId.lviYrHH8aU5mGiOJur7ksEQgCQxD1CKI8gsZakw6sDwmzVk1oWnzF9NYoAh.:18116:0:99999:7::: 第一列:用户名 第二列:用户加密后的密码,用SHA加密 第三列:密码的修改时间,距离1970-01-01的时间 第四列:密码的最短有效期,如果为0,表示无限制 第五列;密码的最长有效期 第六列:提前7天提醒 第七列:账号的失效时间 第八列:未定义 (3)组相关:/etc/group jishubu:x:2000: 第一列:组名 第二列:组密码占位符 第三列:gid(组ID) 第四列:组成员 3.用户管理的命令:useradd/usermod (1)命令的基本格式: useradd [参数-G/-g/-d/-s/-u] [参数的值] 操作的用户username 举例: useradd xiaoming //创建一个用户,默认会创建一个同名的组,这个用户就属于同名组. id xiaoming //检查用户的uid/gid和基本组信息 usermod -G heihei xiaoming //-G是给一个用户指定一个"附加组"; id xiaoming uid=1002(xiaoming) gid=1002(xiaoming) 组=1002(xiaoming),1001(heihei) //xiaoming是基本组,heihei是附加组 useradd xiaohua id xiaohua usermod -g heihei xiaohua //-g是指定用户的基本组,把xiaohua的基本组设置为heihei useradd -d /admin -g jishubu -G root admin //创建一个用户admin,-d指定家目录,-g指定基本组;-G指定附加组 groupadd -g 2001 caiwubu //创建一个组叫caiwubu,同时指定gidWie2001 useradd -u 2001 -g 2001 -d /testbbb bbb //创建一个用户bbb,同时指定uid=gid=2001,指定(同时会创建)家目录为/testbbb; 默认普通用户的家目录在/home/用户名 useradd -s /sbin/nologin -M www //创建一个虚拟用户(植物人),用户名叫www,-M是不指定家目录;-s 指定用户登录的shell./sbin/nologin表示不允许登录系统. (2)passwd给用户设置密码 passwd xiaoming //给小明设置密码 Passwd -d aa -------清空aa用户的密码 passwd -l xiaoming //锁定xiaoming passwd -u xiaoming //给xiaoming解锁 passwd -S xiaoming //查看小明的状态 (3)批量创建用户举例: for n in {1..20};do useradd user DHtW/IrzjAIS.fyoSg.jaiQId.lviYrHH8aU5mGiOJur7ksEQgCQxD1CKI8gsZakw6sDwmzVk1oWnzF9NYoAh.:18116:0:99999:7:::::,SHA:,19700101:,0,;:7::(3):/etc/groupjishubu:x:2000::::gid(ID):3.:useradd/usermod(1):useradd[G/g/d/s/u][]username:useraddxiaoming//,,.idxiaoming//uid/gidusermodGheiheixiaoming//G"";idxiaominguid=1002(xiaoming)gid=1002(xiaoming)=1002(xiaoming),1001(heihei)//xiaoming,heiheiuseraddxiaohuaidxiaohuausermodgheiheixiaohua//g,xiaohuaheiheiuseraddd/admingjishubuGrootadmin//admin,d,g;Ggroupaddg2001caiwubu//caiwubu,gidWie2001useraddu2001g2001d/testbbbbbb//bbb,uid=gid=2001,()/testbbb;/home/useradds/sbin/nologinMwww//(),www,M;sshell./sbin/nologin.(2)passwdpasswdxiaoming//Passwddaaaapasswdlxiaoming//xiaomingpasswduxiaoming//xiaomingpasswdSxiaoming//(3):fornin1..20;douseraddusern;done //基本格式:for ;do 执行的命令;done
(4)删除用户和家目录
userdel aaa //删除用户,家目录还在
userdel -r aaa //删除用户的同时,删除家目录
(5)组管理的命令:
groupadd xiaoshoubu //创建一个组,叫xiaoshoubu
groupadd -g 2001 caiwubu //创建一个组叫caiwubu,同时指定gidWie2001
groups xiaoming //查看xiaoming这个用户,属于的组
gpasswd -d szy szy //把szy这个用户,从szy这个组里-d移除
gpasswd -d xiaoming heihei //把xiaoming这个用户,从heihei这个组里删除
groupdel szy //删除szy这个组
gpasswd -a zhangsan root ---------将zhangsan加入root组
gpasswd -M aa,bb,cc,dd jishubu -------------将aa bb cc dd 四个用户同时加入jishubu组
说明:如果有某个用户把这个组作为基本组,那么这个组就无法删除.----->要么直接把用户删除;要么直接把用户移走.
课堂练习:
1.创建组叫 jishubu caiwubu
2.创建用户aaa,指定用户的uid=gid=2000;
3.创建用户xiaoming,xiaohua
4.把xiaoming加入附加组到jishubu;把xiaohua加入到附加组caiwubu;
5.批量创建20个用户叫user1,user2,user3…命名;并查看/etc/passwd检查结果;
6.删除20个用户和他们的家目录
7.创建shichangbu的组
8.创建用户aaa,bbb,ccc;把多个用户都加入到shichangbu这个组中.
9.创建用户ddd,把ddd加入到shichangbu这个附加组里;
10.创建user这个组,再删除.给出命令
4.添加一个用户后,useradd命令会在该用户的宿主目录中建立一些初始配置文件,这些文件都是隐藏的.
文件包括三个:

  1. .bash_logout ----文件中的命令将会在每次退出登录时执行
  2. .bash_profile -----文件中的命令将会在用户每次登录时被执行
  3. .bash_bashrc -----文件中的命令将会在每次加载bash时候执行
    alias kaobei=‘cp -i’
    kaobei user1.txt user2.txt
    /etc目录下也有bashrc这个文件,这里面的文件是面对所有用户(全局配置)

Part2:文件属性
1.查看文件属性;
[root@cent7 test]# ls -lhi //-l是以长格式显示;-h是以人们易读的方式显示;-i是inode节点号.
操作系统为了读取效率更高,会给每个文件创建一个inode节点号.
total 196K
102353779 -rw-r–r-- 1 root root 11 Aug 12 09:40 date.txt
1478308 -rw-r–r-- 1 root root 5.1K Aug 12 15:38 eee.txt
第一列:inode节点号;
第二列:第一个位表示文件类型;

  • 普通文件;
    

d 目录文件;
l 连接文件;
后边的9位表示文件的权限信息,每3位分为一组,分别代表:属主user/属组group/其他other
权限分为:r(read,读取;权限用4表示)
w(write,写入,权限用2表示)
x(excute,执行,权限用1表示):前提是一个可执行文件.用./文件名来执行.
默认在Linux中,目录的权限是755,文件权限默认是644.
第三列:1表示的是文件的硬链接数.每创建一个硬链接,数值会加1.
第四列:属主
第五列:属组
第六列:文件大小
第七列—第九列:表示时间
第十列:文件名
ln -s aaaaaaaaaaaaaaaaa.txt a.txt //给aaaaaaaaaaaaaaaaa.txt源文件,创建一个软连接(之前不能存在)
ln aaaaaaaaaaaaaaaaa.txt a.txt //给aaaaaaaaaaaaaaaaa.txt源文件,创建一个硬连接
ln 直接创建的叫做硬链接文件,硬链接文件是源文件的另外一个入口.和源文件是同一个文件.
特别说明:ln -s 参数是创建一个软连接,软连接和源文件不是同一个文件.
如果删除源文件,软连接会无法访问;但是硬链接还正常.
2.修改文件权限:
方式一:使用英文字母的方式修改权限
chmod [u/g/o][+/-/=][rwx] 文件名
chmod a+x aa.txt //给aa.txt的所有人添加可执行权限
chmod u+x aa.txt //给aa.txt的属主添加可执行权限
chmod u=rwx aa.txt //给aa.txt的属主赋予"读,写,执行权限"
方式二:直接使用数字方式来修改权限
chmod 700 aa.txt //给aa.txt的属主所有权限;属组和其他人没有任何权限
chmod 755 aa.txt //给aa.txt的属主所有权限,属组和其他人有"读取和执行的权限"
常用参数:chmod -R 644 nload-0.7.4 //针对nload目录,-R递归修改权限为644.
3.修改文件的属主和属组:
chown root.root nload-0.7.4/* //把nload-0.7.4下的所有文件的属主和属组都修改为root
chown root.root nload-0.7.4 //把nload-0.7.4目录的属主和属组都修改为root
属主:属组
ls -l //检查权限是否修改成功
练习:
(1)在/test目录下创建一个文件aaaaaaaa.txt ;并写入内容为This is test for aaaaa.txt.
(2)给aaaaaaaa.txt这个文件创建软连接为a.txt;
(3)给aaaaaaaa.txt文件创建硬链接文件hard.txt;
(4)使用ls -lhi 来查看3个文件的inode节点号的区别;
(5)删除源文件aaaaaaaa.txt,看a.txt和hard.txt是否还能正常访问;
(6)在/test/下创建一个可执行文件,叫ls.txt ,写入内容:
#!/bin/bash #声明脚本的解释器
ifconfig ens33
echo 123456 > ls.txt
echo 678910 >> ls.txt
(7)给这个文件赋予可执行权限,并查看结果.
修改为英文字符集:
[root@cent7 /]# cat /etc/locale.conf //编辑"字符集"配置文件
#LANG=“zh_CN.UTF-8”
LANG=“en_US.UTF-8”
[root@cent7 /]# source /etc/locale.conf //重新加载配置文件
[root@cent7 /]# echo $LANG //查看字符集的环境变量
en_US.UTF-8
今日单词:
username 用户名
Password 密码
locked 锁定
remove 移除
directory 目录
cd=change directory //切换目录
执行文件命令:./aa.txt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值