用户管理 、组账号管理、计划任务

  • 用户管理简介

    • 用户账户

    作用: 1.可以登陆操作系统 2.不同的用户具备不同的权限

    唯一标识:UID(编号从0开始的编号,默认最大60000

    zhangsan(UID 1200)

    管理员root的UID:永远为0

    普通用户的UID:默认从1000开始

    • 组账户

    作用: 方便管理用户

    唯一标识:GID(编号从0开始的编号,默认最大60000

    sg(1500

    lisi 1006 sg 1500

    原则:Linux一个用户必须至少属于一个组

    组账户的分类:

    基本组:系统创建与用户同名

    附加组(从属组):由管理员创建,由管理员进行加入

    ]# useradd zhangsan

    组: zhangsan

    组:sg xs mn haha xixi student

    • 本地账户的数据文件

      1. /etc/passwd、/etc/shadow
      2. /etc/group、/etc/gshadow

    • /etc/passwd:存放用户基本信息配置文件

    [root@localhost ~]# head -1 /etc/passwd #显示文件第一行

    root:x:0:0:root:/root:/bin/bash

    用户名:密码占位符:UID:基本组GID:用户描述信息:家目录:解释器

    [root@localhost ~]# useradd wangwu

    [root@localhost ~]# grep wangwu /etc/passwd

    • 用户账号创建

    • 命令useradd

      1. 格式:useradd [选项]... 用户名
    1. 常用命令选项

    -u:指定 用户UID

    -d:指定宿主目录(家目录),默认为 /home/用户名

    -G:指定所属的附加组

    -s:指定用户的登录解释器

    -u:指定 UID 编号

    [root@localhost ~]# useradd nsd01

    [root@localhost ~]# ls /home/ #查看家目录的产生

    [root@localhost ~]# grep nsd01 /etc/passwd #查看nsd01信息

    [root@localhost ~]# id nsd01 #查看nsd01用户基本信息

    [root@localhost ~]# id gaga

    id: gaga: no such user #无此用户

    [root@localhost ~]# useradd -u 1500 nsd02 #指定UID创建用户

    [root@localhost ~]# id nsd02 #查看nsd02用户基本信息

    [root@localhost ~]# grep nsd /etc/passwd #查看用户信息

    [root@localhost ~]# useradd nsd03

    [root@localhost ~]# grep nsd /etc/passwd

    [root@localhost ~]# id nsd03

    -d:指定宿主目录(家目录),默认为 /home/用户名

    [root@localhost ~]# useradd -d /opt/nsd04 nsd04

    [root@localhost ~]# grep nsd04 /etc/passwd

    [root@localhost ~]# ls /opt/

    [root@localhost ~]# useradd -d /opt/haha05 nsd05

    [root@localhost ~]# grep nsd05 /etc/passwd

    [root@localhost ~]# ls /opt/

    -G:指定所属的附加组 -g:指定基本组

    [root@localhost ~]# groupadd stugrp #单独创建stugrp组

    [root@localhost ~]# useradd -G stugrp nsd06

    [root@localhost ~]# id nsd06

    uid=1504(nsd06) gid=1505(nsd06) 组=1505(nsd06),1504(stugrp)

    [root@localhost ~]# useradd -G stugrp nsd07

    [root@localhost ~]# id nsd07

    [root@localhost ~]# groupadd tmooc #单独创建tmooc组

    [root@localhost ~]# useradd -G stugrp,tmooc nsd11

    [root@localhost ~]# id nsd11

    -s:指定用户的登录解释器 /bin/bash

    shell:壳,解释器

    用户---->解释器---->内核---->硬件

    /sbin/nologin:禁止用户登录操作系统

    [root@localhost ~]# useradd -s /sbin/nologin nsd10

    [root@localhost ~]# grep nsd10 /etc/passwd

    [root@localhost ~]# useradd -s /sbin/nologin nsd12

    [root@localhost ~]# grep nsd12 /etc/passwd

    • usermod命令

      1. 格式:usermod [选项]... 用户名
    1. 常用命令选项

    -l:更改用户帐号的登录名称

    -u:用户id

    -d:家目录路径

    -s:登录解释器

    -G:附加组 //重置附加组

    -l:更改用户帐号的登录名称

    -u:用户id

    -s:登录解释器

    ]# useradd nsd13

    ]# id nsd13

    ]# grep nsd13 /etc/passwd

    ]# usermod -l stu13 nsd13 #修改用户名字

    ]# id stu13

    ]# usermod -u 1600 stu13 #修改用户的UID

    ]# id stu13

    ]# usermod -s /sbin/nologin stu13#修改用户的解释器程序

    ]# grep stu13 /etc/passwd

    -d:家目录路径(不会自动创建家目录) (了解)

    [root@localhost ~]# useradd nsd15

    [root@localhost ~]# grep nsd15 /etc/passwd

    nsd15:x:1601:1601::/home/nsd15:/bin/bash

    [root@localhost ~]# ls /home/

    [root@localhost ~]# usermod -d /etc/abc nsd15

    [root@localhost ~]# grep nsd15 /etc/passwd

    nsd15:x:1601:1601::/etc/abc:/bin/bash

    [root@localhost ~]# ls /etc/abc

    ls: 无法访问/etc/abc: 没有那个文件或目录

    -G:修改用户的附加组 #重置附加组 (了解)

    [root@localhost ~]# useradd nsd16

    [root@localhost ~]# id nsd16

    uid=1602(nsd16) gid=1602(nsd16) 组=1602(nsd16)

    [root@localhost ~]# usermod -G stugrp nsd16

    [root@localhost ~]# id nsd16

    uid=1602(nsd16) gid=1602(nsd16) 组=1602(nsd16),1504(stugrp)

    [root@localhost ~]# groupadd tmooc #创建组

    [root@localhost ~]# usermod -G tmooc nsd16

    [root@localhost ~]# id nsd16

    uid=1602(nsd16) gid=1602(nsd16) 组=1602(nsd16),1603(tmooc)

    • 设置密码
    • passwd命令

      1. 格式:passwd [选项]... 用户名

    [root@localhost ~]# useradd nsd18

    [root@localhost ~]# passwd nsd18 #交互式设置

    更改用户 nsd18的密码 。

    新的 密码: #输入新密码

    无效的密码: 密码少于 8 个字符

    重新输入新的 密码: #重新输入新密码

    passwd:所有的身份验证令牌已经成功更新。

    [root@localhost ~]# su - nsd18 #临时切换用户身份

    [nsd18@localhost ~]$ passwd

    更改用户 nsd18 的密码 。

    nsd18 更改 STRESS 密码。

    (当前)UNIX 密码: #输入旧密码

    新的 密码: #输入新密码

    重新输入新的 密码: #重新输入新密码

    passwd:所有的身份验证令牌已经成功更新。

    [nsd18@localhost ~]$ exit #退出。回到root用户身份

    • passwd命令,支持非交互式设置密码

    --stdin:从标准输入(比如管道)取密码

    ]# echo 123 | passwd --stdin nsd18

    ]# echo 123456 | passwd --stdin nsd18

    ]# echo redhat | passwd --stdin nsd18

    • /etc/shadow,保存密码字串/有效期等信息
      1. 每个用户记录一行,以:分割为9个字段

    [root@localhost ~]# grep nsd01 /etc/shadow

    nsd01:$6$NVe937Nd$B0n94XrpQ.LipQHTpYh0iV/M4jCLdccfHxzRLprdxDzwk8WDDh/TzdTfh8lA9y9WKJ.8Ls/l5.w/1W.nV6CFX/:18481:0:99999:7:::

    上一次修改密码的时间:自1970-1-1到达上一次修改密码的时间,所经历的天数

    字段1:用户帐号的名称

    字段2:加密后的密码字符串

    字段3:上次修改密码的时间

    字段4:密码的最短有效天数,默认0

    字段5:密码的最长有效天数,默认99999

    字段6:密码过期前的警告天数,默认7

    字段7:密码过期后多少天禁用此用户账号

    字段8:帐号失效时间,默认值为空

    字段9:保留字段(未使用)

    • /etc/shadow,保存密码字串/有效期等信息

    强制用户初次登录时修改密码

    [root@svr1 ~]# useradd harry

    [root@svr1 ~]# echo 123 | passwd --stdin harry

    [root@svr1 ~]# vim /etc/shadow

    ………

    harry:$6$Y7P/HqvZ$roWXwACsX.pUY9GUKLQMRVHjygMWmiN8m45jYY3Tt.tPFDWVxJIdE7gyKHWo1/UKQC7ocEke5Uu8gKN8jydkp1:0:0:99999:7:::

    [root@svr1 ~]# grep harry /etc/shadow

    上一次修改密码的时间:自1970-1-1到达上一次修改密码的时间,所经历的天数,修改成0

    wq!强制保存并退出

    • 用户初始配置文件
    • 主要的初始配置文件

    ~/.bashrc:每次进入新的Bash环境时执行(开启新的终端)

    [root@localhost ~]# vim /root/.bashrc #定义永久别名

    ……

    alias hn='hostname'

    ……

    开启新的终端进行测试:

    [root@localhost ~]# hn

    /etc/bashrc全局配置文件,影响全体用户 (开启新的终端)

    [root@localhost ~]# vim /etc/bashrc

    …….

    alias myls='ls -ld'

    …….

    #新开一个终端验证

    [root@localhost ~]# useradd nsd21

    [root@localhost ~]# su - nsd21 #相当于开启新的终端

    [nsd21@localhost ~]$ myls /opt

    [nsd21@localhost ~]$ exit

    登出

    [root@localhost ~]#

    • 删除用户

    • userdel命令

    格式:userdel [-r] 用户名

    添加 -r 选项,宿主目录/用户邮件也一并删除

    [root@localhost ~]# userdel -r nsd01 #连同家目录一并删除

    [root@localhost ~]# userdel nsd02 #不删除家目录,只删除用户信息

    • 组账户管理

    • /etc/group,保存组帐号的基本信息

    每个组记录一行,以:分割为4个字段

    [root@localhost ~]# grep stugrp /etc/group

    stugrp:x:1504:nsd06

    组名:组密码占位符:组的GID:组成员列表

    [root@localhost ~]# groupadd tarena #新建一个组

    [root@localhost ~]# grep tarena /etc/group #查看组信息

    tarena:x:1607:

    组名字:密码占位符:GID:组成员列表

    [root@localhost ~]# useradd kaka

    [root@localhost ~]# useradd nb

    [root@localhost ~]# useradd jack

    [root@localhost ~]# useradd kenji

    • gpasswd命令

      1. 格式:gpasswd [选项]... 组名
    1. 常用命令选项

    -a:添加组成员,每次只能加一个

    -d: 删除组成员,每次只能删一个

    -M:定义(重置)组成员用户列表,可设置多个

    ]# gpasswd -a kaka tarena #添加用户kaka到tarena组

    ]# grep tarena /etc/group #查看组信息

    ]# id kaka

    ]# gpasswd -a nb tarena #添加用户nb到tarena组

    ]# grep tarena /etc/group

    ]# gpasswd -M 'jack,kenji' tarena #定义组成员列表

    ]# grep tarena /etc/group

    ]# gpasswd -a nb tarena #添加用户nb到tarena组

    ]# grep tarena /etc/group

    ]# gpasswd -d nb tarena #将nb用户从tarena组中删除

    ]# grep tarena /etc/group

    ]# gpasswd -M '' tarena #删除组中所有成员

    ]# grep tarena /etc/group

    -A:定义组管理员列表

    [root@localhost ~]# su - nb

    [nb@localhost ~]$ gpasswd -a kaka tarena

    gpasswd:没有权限。

    [nb@localhost ~]$ exit

    [root@localhost ~]# gpasswd -A nb tarena #设置组管理员

    [root@localhost ~]# su - nb

    [nb@localhost ~]$ gpasswd -a kaka tarena

    正在将用户“kaka”加入到“tarena”组中

    [nb@localhost ~]$ exit

    [root@localhost ~]#

    • /etc/gshadow:组的管理信息配置文件

    [root@localhost ~]# grep tarena /etc/gshadow

    tarena:!:nb:

    组名:密码加密字符串:组的管理员列表:组成员列表

    ]# gpasswd -A 'nb,kenji' tarena #设置多个组管理员

    ]# grep tarena /etc/gshadow

    ]# gpasswd -A '' tarena #删除所有的组管理员

    ]# grep tarena /etc/gshadow

    • 总结:用户与组重要的配置文件

    /etc/passwd:用户基本信息配置文件

    /etc/shadow:用户密码信息配置文件

    /etc/group:组基本信息配置文件

    /etc/gshadow:组管理信息配置文件

    请问用户基本信息配置文件为(C)

    A/etc/password B/etc/psaswd

    C/etc/passwd D/etc/passmd

    • 删除组账号:删除组的时候,不可以删除基本组

    [root@localhost ~]# groupdel tarena

    [root@localhost ~]# groupdel tmooc

    [root@localhost ~]# grep tmooc /etc/group

    [root@localhost ~]# grep tarena /etc/group

    • 总结:Linux系统执行useradd命令,会完成那些操作?

    1.会在/etc/passwd增加一行信息

    2.会在/etc/shadow增加一行信息

    3.会在/home新增用户家目录

    4.会在/var/spool/mail增加用户邮件文件

    5.会在/etc/group增加一行组信息

    6.会在/etc/gshadow增加一行组的管理信息

    • 总结:Linux系统执行userdel -r命令,会完成那些操作?

    1.会在/etc/passwd删除一行信息

    2.会在/etc/shadow删除一行信息

    3.会在/home删除用户家目录

    4.会在/var/spool/mail删除用户邮件文件

    5.会在/etc/group删除一行组信息

    6.会在/etc/gshadow删除一行组的管理信息

    • 计划任务

    用途:

    按照设置的时间间隔为用户反复执行某一项固定的系统任务

    软件包:cronie、crontabs

    系统服务:crond

    日志文件:/var/log/cron

    • 使用 crontab 命令

      1. 编辑:crontab -e [-u 用户名]
      2. 查看:crontab -l [-u 用户名]
      3. 清除:crontab -r [-u 用户名]

    • 计划任务书写格式

    分 时 日 月 周 任务命令行(绝对路径)

    * * * * * #每分钟执行一次

    38 8 * * * #每天早晨的8点38分,执行一次

    30 8 * * * #每天早上8:30 执行一次

    30 23 * * * #每天晚上23:30 执行一次

    30 23 * * 5 #每周的周五23:30 执行一次

    30 23 * * 1-5 #每周的周一至周五23:30 执行一次

    30 23 * * 1,3,6 #每周的周一周三周六23:30 执行一次

    30 23 1 * 1 #每月的1号或每周一晚上23:30 执行一次

    5 * * * * #每个小时的第五分钟执行一次

    * * * * * #每分钟运行一次

    */6 * * * * #每隔6分钟运行一次

    48 */2 * * * #每隔2小时运行一次

    *:匹配范围内任意时间

    ,:分隔多个不连续的时间点

    -:指定连续时间范围

    /n:指定时间频率,每n ...

    案例:

    每分钟记录当前的系统时间,写入/opt/time.txt

    [root@localhost ~]# date

    [root@localhost ~]# date >> /opt/time.txt

    [root@localhost ~]# cat /opt/time.txt

    [root@localhost ~]# crontab -e #编写计划任务

    * * * * * date >> /opt/time.txt

    [root@localhost ~]# crontab -l #查看计划任务内容

    * * * * * date >> /opt/time.txt

    [root@localhost ~]# cat /opt/time.txt

    [root@localhost ~]# ls /var/spool/cron #任务文件存放的路径

    [root@svr1 ~]# cat /var/spool/cron/root #记录root用户计划任务

    * * * * * date >> /opt/time.txt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值