美文网首页
ubuntu 新建账户

ubuntu 新建账户

作者: 命运牵绊 | 来源:发表于2019-08-19 20:05 被阅读0次

    [TOC]

    基本流程

    预备步骤(新建分区并挂载)

    出于文件安全的考虑, 考虑每个用户单独一个分区,所以需要新建分区并挂载

    # 在sdb上新建分区
    fdisk /dev/sdb
    
    # 输入n新建分区,输入l表示新建逻辑分区,确认分区大小后输入w保存
    # 注意! 扩展分区不能直接使用
    
    # 重载分区表
    partprobe
    
    # 新建目录
    mkdir /home/user0
    # 格式化分区
    mkfs -t ext4 -c /dev/sdb(n)
    # 或者
    mkfs.ext4 /dev/sdb(n)
    # 挂载目录
    mount /dev/sdb(n) /home/user0
    
    

    新建账户

    # 新建用户
    useradd -d  /mnt/hdd2/user0   -m -s  /bin/bash  user0
    # 设置密码
    passwd user0
    # 添加用户到sudo组, 对不需要给sudo权限的用户不需要此操作
    usermod -aG sudo  user0
    
    # 修改主目录权限
    chown user0:user0 /home/user0
    
    
    

    修改挂载

    为了让账户挂载在重启后仍可用,需要配置/etc/fstab 文件

    # 修改/etc/fstab 文件
    # 查看UUID
    blkid /dev/sda5
    # 修改fstab文件
    vim /etc/fstab
    # 第一项可以是UUID 也可以是/dev/sd(..)
    

    blkid的结果

    /dev/sda1: UUID="3149de15-df74-45b2-af47-54f3d2b97f70" TYPE="ext4" PARTUUID="96f25a32-01"
    

    新建 .bashrc

    由于文件夹已存在,所以并不会新建配置文件.

    # 切换到新建账户
    su user0
    
    # 添加.bashrc文件
    # 先复制默认.bashrc
    
    cp /etc/skel/.bashrc ~/
    # 创建.profile文件
    vim ~/.profile
    # 复制以下文件到.profile
    >    # ~/.profile: executed by Bourne-compatible login shells.
        if [ "$BASH" ]; then
          if [ -f ~/.bashrc ]; then
            . ~/.bashrc
          fi
        fi
        mesg n
        
    # 重载配置文件 
    source ~/.profile
    

    用户管理的其他操作

    添加用户

    adduser

    adduser 可以直接新建一个账户,基本上一路回车加OK就行,不需要怎么自主配置

    useradd

    对于要单独设置家目录位置的情况,useradd 就可以用,它需要单独设置各种参数,

    例子

    # 新建账户 user0 
    # 主目录在 '/mnt/hdd2/user0'
    # 启用了默认配置
    # 解释器为/bin/bash
    useradd -d  /mnt/hdd2/user0   -m -s  /bin/bash  user0
    # 设置密码
    passwd user0
    

    useradd的参数说明

    选项:  
      -b, --base-dir BASE_DIR   新账户的主目录的基目录  
      -c, --comment COMMENT         新账户的 GECOS 字段  
      -d, --home-dir HOME_DIR       新账户的主目录  
      -D, --defaults        显示或更改默认的 useradd 配置  
      -e, --expiredate EXPIRE_DATE  新账户的过期日期  
      -f, --inactive INACTIVE       新账户的密码不活动期  
      -g, --gid GROUP       新账户主组的名称或 ID  
      -G, --groups GROUPS   新账户的附加组列表  
      -h, --help                    显示此帮助信息并推出  
      -k, --skel SKEL_DIR   使用此目录作为骨架目录  
      -K, --key KEY=VALUE           不使用 /etc/login.defs 中的默认值  
      -l, --no-log-init 不要将此用户添加到最近登录和登录失败数据库  
      -m, --create-home 创建用户的主目录  
      -M, --no-create-home      不创建用户的主目录  
      -N, --no-user-group   不创建同名的组  
      -o, --non-unique      允许使用重复的 UID 创建用户  
      -p, --password PASSWORD       加密后的新账户密码  
      -r, --system                  创建一个系统账户  
      -s, --shell SHELL     新账户的登录 shell  
      -u, --uid UID         新账户的用户 ID  
      -U, --user-group      创建与用户同名的组  
      -Z, --selinux-user SEUSER     为 SELinux 用户映射使用指定 SEUSER  
    

    设置用户组

    # 另一种设置shell的方式,其中user0是用户名,-s 来为用户指定shell;
    usermod -s /bin/bash  user0 
    
    # 添加user0到到sudo组,也就是说user0可以用sudo命令
    usermod -aG sudo  user0
    # 或
    gpasswd  –a  user0  sudo
    
    
    
    root@PJX:/home# usermod --help
    Usage: usermod [options] LOGIN
    
    Options:
      -c, --comment COMMENT         new value of the GECOS field
      -d, --home HOME_DIR           new home directory for the user account
      -e, --expiredate EXPIRE_DATE  set account expiration date to EXPIRE_DATE
      -f, --inactive INACTIVE       set password inactive after expiration
                                    to INACTIVE
      -g, --gid GROUP               force use GROUP as new primary group
      -G, --groups GROUPS           new list of supplementary GROUPS
      -a, --append                  append the user to the supplemental GROUPS
                                    mentioned by the -G option without removing
                                    him/her from other groups
      -h, --help                    display this help message and exit
      -l, --login NEW_LOGIN         new value of the login name
      -L, --lock                    lock the user account
      -m, --move-home               move contents of the home directory to the
                                    new location (use only with -d)
      -o, --non-unique              allow using duplicate (non-unique) UID
      -p, --password PASSWORD       use encrypted password for the new password
      -R, --root CHROOT_DIR         directory to chroot into
      -s, --shell SHELL             new login shell for the user account
      -u, --uid UID                 new UID for the user account
      -U, --unlock                  unlock the user account
      -v, --add-subuids FIRST-LAST  add range of subordinate uids
      -V, --del-subuids FIRST-LAST  remove range of subordinate uids
      -w, --add-subgids FIRST-LAST  add range of subordinate gids
      -W, --del-subgids FIRST-LAST  remove range of subordinate gids
      -Z, --selinux-user SEUSER     new SELinux user mapping for the user account
    
    

    删除用户

    删除用户时需要登出用户才可以

    # 删除用户user0
    userdel user0
    

    参考资料

    https://blog.csdn.net/jamesdodo/article/details/81742618

    https://www.cnblogs.com/sddai/p/10644870.html

    https://blog.csdn.net/taolusi/article/details/81304057

    相关文章

      网友评论

          本文标题:ubuntu 新建账户

          本文链接:https://www.haomeiwen.com/subject/kcoesctx.html