1,基本操作要求

实现用户账号的管理,要完成的工作主要有如下几个方面:

·       用户账号的添加、删除与修改。
·       用户口令的管理。
·       用户组的管理。

2,用户账户添加删除和修改

    用户账户添加:useradd 选项 用户名

    常用选项:

-c comment 指定一段注释性描述。
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。-d和-m选项用来为登录名xxx产生一个主目录/usr/xxx
-g 用户组 指定用户所属的用户组。
-G 用户组,用户组 指定用户所属的附加组。
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号
-l 修改用户信息的时候用作用户重命名

   添加一个账户hehe,根目录是/home/hehe: sudo useradd -d /home/hehe -m hehe    #sudo是必须的,否则会显示重试信息,最好指定根目录,否则就不会创建

        添加一个账户,指定用户组: sudo useradd -d /home/haha -m haha -g daing -G dahu     #-g指定主用户组,-G指定其他用户组,可以通过groups haha来查看其所属的用户组。

删除账户:sudo userdel -r hehe    #-r意思是连带主目录一块删除

修改用户:sudo usermod  -l hehehe hehe    #把hehe用户重命名为hehehe

修改用户:参数除了-l其他的都和创建的时候一样。

2 用户口令管理

用户管理的一项重要内容是用户口令的管理。用户账号刚创建时没有口令,但是被系统锁定,无法使用,必须为其指定口令后才可以使用,即使是指定空口令

    passwd 选项 用户名
    可使用的选项:

-l 锁定口令,即禁用账号。使用户不能登录
-u 口令解锁。
-d 使账号无口令。
-f 强迫用户下次登录时修改口令。

修改当前用户的密码:passwd    #依次输入旧密码,新密码就可以啦

超级用户也可以修改其他用户的密码: passwd haha    #按照提示输入密码就可以啦

3 用户组管理

每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理

    groupadd 选项 用户组

    -g GID 指定新用户组的组标识号(GID)。
    -o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。

查看用户属于哪个用户组:groups username

添加用户组:sudo groupadd group1    #添加一个叫group1的用户组,目前为空

添加新组并且指定标识号:groupadd -g 101 group2    #指定新组的组标识号是101。

把用户haha添加到用户组group1中:sudo usermod -G group1 haha    #-G指定的是副组,groups haha已经可以看到group1

删除用户组:sudo groupdel group1

切换用户组:newgrp 用户组名    #如果一个用户同时属于多个用户组,那么用户可以在用户组之间切换,以便具有其他用户组的权限。命令行输入groups第一个就是自己所在的用户组

修改用户组使用groupmod命令:groupmod –g 10000 -n group3 group2     #此命令将组group2的标识号改为10000,组名修改为group3,其他修改组的参数如下:

-g GID 为用户组指定新的组标识号。
           -o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
           -n新用户组 将用户组的名字改为新名字

        

linux系统 户和账号操作的更多相关文章

  1. linux系统安全加固--账号相关

    linux系统安全加固 一.账号相关 1.禁用或删除无用账号 减少系统无用账号,降低安全风险. 当我们的系统安装完毕后,系统默认自带了一些虚拟账户,比如bin.adm.lp.games.postfix ...

  2. Linux系统编程--文件IO操作

    Linux思想即,Linux系统下一切皆文件. 一.对文件操作的几个函数 1.打开文件open函数 int open(const char *path, int oflags); int open(c ...

  3. Linux系统chmod 777 误操作目录权限 - 恢复方法

    小白操作Linux,手抖导致误修改了系统文件和目录权限,导致系统宕机的修复. -R / -R / test 有的是真不懂,执行了上面的第一条命令,有的是懂,但是操作太快或者粗心大意,或者有乱敲空格的恶 ...

  4. linux系统中的删除操作

    #rm [-fir] 文件或者目录 参数: -f:就是force的意思,忽略不存在的文件,不会出现警告信息: -i:互动模式,在删除前会询问用户是否操作: -r:递归删除.最常用的在目录删除.这是一个 ...

  5. Linux系统禁止root账号远程登录

    修改配置文件/etc/ssh/sshd_config,去掉PermitRootLogin前的注释,修改值为no,然后重启sshd服务即可 #LoginGraceTime 2m PermitRootLo ...

  6. Linux系统编程—信号集操作函数

    先来回顾一下未决信号集是怎么回事. 信号从产生到抵达目的地,叫作信号递达.而信号从产生到递达的中间状态,叫作信号的未决状态.产生未决状态的原因有可能是信号受到阻塞了,也就是信号屏蔽字(或称阻塞信号集, ...

  7. 记录linux系统用户shell终端操作记录

    在 /etc/profile 最后添加 export HISTTIMEFORMAT='[%F %T]: ' export PROMPT_COMMAND='{ msg=$(history 1 | { r ...

  8. linux系统常见命令以及操作

    2.安装xshell,安装完打开,配置回话,输入名称(随便).SSH.主机(打开linux,点击右上角电脑图标system etho进行联网,打开终端输入ifconfig回车,找到inet add地址 ...

  9. linux系统相关文件和操作

    查看内核: uname -r [root@server0 ~]# uname -r -.el7.x86_64 [root@server0 ~]# 查看版本: cat  /etc/redhat-rele ...

随机推荐

  1. Luogu P3346 [ZJOI2015]诸神眷顾的幻想乡 广义SAM 后缀自动机

    题目链接 \(Click\) \(Here\) 真的是好题啊-不过在说做法之前先强调几个自己总是掉的坑点. 更新节点永远记不住往上跳\(p = fa[p]\) 新建节点永远记不住\(len[y] = ...

  2. (转载)python: getopt的使用;

    注: 该文转载于https://blog.csdn.net/tianzhu123/article/details/7655499python中 getopt 模块, 该模块是专门用来处理命令行参数的 ...

  3. mybatis下载地址(所有版本)

    https://github.com/mybatis/mybatis-3/releases,这个github里面几乎包含了所有的没有batis

  4. python自动化开发-[第十二天]-前端html

    今日概要: 前端基础之html 1.web服务器的本质: #!/usr/bin/python # -*- coding:utf-8 -*- import socket def handle_reque ...

  5. 使用Redis模拟简单分布式锁,解决单点故障的问题

    需求描述: 最近做一个项目,项目中有一个功能,每天定时(凌晨1点)从数据库中获取需要爬虫的URL,并发送到对应的队列中,然后客户端监听对应的队列,然后执行任务.如果同时部署多个定时任务节点的话,每个节 ...

  6. 根文件系统之init

    title: 根文件系统之init tag: arm date: 2018-11-12 18:53:23 --- 引入 在Kernel源码分析中,了解到init_post是在挂载根文件系统之后执行应用 ...

  7. Nginx自定义404页面并返回404状态码

    Nginx定义404页面并返回404状态码, WebServer是nginx,直接告诉我应该他们配置了nginx的404错误页面,虽然请求不存在的资源可以成功返回404页面,但返回状态码确是200. ...

  8. ruby----%使用法

    %{String}  用于创建一个使用双引号括起来的字符串,这个表示法与%Q{String}完全一样 result = %{hello} puts "result is: #{result} ...

  9. org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cardSalDao' defined in file [E:\GItUp\pointerCard+redis\target\gameCard-1.0-SNAPSHOT\WEB-INF\classes\cn\jbit\dao

    错误信息: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cardSa ...

  10. C# UserControl集合属性使用

    在UserControl中,定义集合属性时,如果直接使用List是检测不到在属性框中的列表修改变化的,可以通过 ObservableCollection() 实现 1.定义类 [Serializabl ...