• linux实践——user操作


    linux一般默认的用户是root,我们一般都会把这个用户禁止登录。

    新增用户

    功能说明:建立用户帐号。

    语  法:useradd [-mMnr][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-s <shell>][-u <uid>][用户帐号] 或 useradd -D [-b][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-s <shell>]

    补充说明:useradd可用来建立用户帐号。帐号建好之后,再用passwd设定帐号的密码.而可用userdel删除帐号。使用useradd指令所建立的帐号,实际上是保存在/etc/passwd文本文件中。

    参  数:
     
    -c<备注>  加上备注文字。备注文字会保存在passwd的备注栏位中。  
     -d<登入目录>  指定用户登入时的启始目录。 
     -D  变更预设值. 
     -e<有效期限>  指定帐号的有效期限。 
     -f<缓冲天数>  指定在密码过期后多少天即关闭该帐号。 
     -g<群组>  指定用户所属的群组。 
     -G<群组>  指定用户所属的附加群组。 
     -m  自动建立用户的登入目录。 
     -M  不要自动建立用户的登入目录。 
     -n  取消建立以用户名称为名的群组. 
     -r  建立系统帐号。 
     -s<shell>   指定用户登入后所使用的shell。 
     -u<uid>  指定用户ID。

    #用root登录系统
    mkdir /home/zpf
    #创建新增用户目录
    useradd -c ZpfAsRoot -g root -d /home/zpf -s /bin/bash zpf 
    #-c备注,-g属组,-d用户文件,-s命令执行环境
    passwd zpf
    #更改登录密码,输入两次,输入字符不会回显
    #新开一个ssh端使用新增的zpf用户登录
    View Code

    成功登录!!

    我们使用这个用户执行root权限

    这时候我们需要回到root登录的ssh(这里不用su切换用户了,麻烦!)

    vi /etc/sudoers
    #找到这行 root ALL=(ALL) ALL,
    #在他下面添加zpf ALL=(ALL) ALL
    :wq
    #保存
    #这里说下你可以sudoers添加下面四行中任意一条
    #youuser            ALL=(ALL)                ALL
    #%youuser           ALL=(ALL)                ALL
    #youuser            ALL=(ALL)                NOPASSWD: ALL
    #%youuser           ALL=(ALL)                NOPASSWD: ALL
    
    #第一行:允许用户youuser执行sudo命令(需要输入密码).
    #第二行:允许用户组youuser里面的用户执行sudo命令(需要输入密码).
    #第三行:允许用户youuser执行sudo命令,并且在执行的时候不输入密码.
    #第四行:允许用户组youuser里面的用户执行sudo命令,并且在执行的时候不输入密码.
    View Code

    现在回到新增用户ssh下就可以执行root权限了。

     哦!对了,刚才创建的用户目录/homt/zpf是root所属,需要改为zpf

     禁用root登录

    sudo echo AllowUsers zpf@* >> /etc/ssh/sshd_config
    #允许zpf从任何地方登录
    View Code

    编辑用户

    语  法:usermod [-LU][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-l <帐号名称>][-s <shell>][-u <uid>][用户帐号] 
    补充说明:usermod可用来修改用户帐号的各项设定,用户在登录状态不能修改。 
    参  数: 
     -c<备注>  修改用户帐号的备注文字。 
     -d<登入目录>  修改用户登入时的目录。 
     -e<有效期限>  修改帐号的有效期限。 
     -f<缓冲天数>  修改在密码过期后多少天即关闭该帐号。 
     -g<群组>  修改用户所属的群组。 
     -G<群组>  修改用户所属的附加群组。 
     -l<帐号名称>  修改用户帐号名称。 
     -L  锁定用户密码,使密码无效。 
     -s<shell>  修改用户登入后所使用的shell。 
     -u<uid>  修改用户ID。 
     -U  解除密码锁定。 

    举个栗子:

      1、将 newuser2 添加到组 staff 中 

    usermod -G staff newuser2
    

      2、修改 newuser 的用户名为 newuser1 

    usermod -l newuser1 newuser 
    

      3、锁定账号 newuser1 

    usermod -L newuser1
    

      4、解除对 newuser1 的锁定 

    usermod -U newuser1
    

      5、更改用户目录

    usermod -d /home/newuser1 newuser1
    

      

     

    删除用户

    功能说明:删除用户帐号。

    语  法:userdel [-r][用户帐号]

    补充说明:userdel可删除用户帐号与相关的文件。若不加参数,则仅删除用户帐号,而不删除相关文件。

    参  数:
      -f  删除用户登入目录以及目录中所有文件。

    userdel user1
    

      此命令删除用户sam在系统文件中(主要是/etc/passwd, /etc/shadow, /etc/group等)的记录,同时删除用户的主目录。

    ————20170414更————

  • 相关阅读:
    free和delete把指针怎么啦?
    动态内存会被自动释放吗?
    杜绝“野指针”
    有了malloc/free为什么还要new/delete ?
    Linux Shell Bash 带有特殊含义的退出码
    centos中更换jdk的版本
    shift移动变量
    shell script针对参数已经有配置好变量名称
    输入两个数后输出相乘的结果
    输入变量
  • 原文地址:https://www.cnblogs.com/perfectzhang/p/5748534.html
Copyright © 2020-2023  润新知