第三周作业

1、列出1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。
[root@localhost ~]# who | cut -d ‘ ‘ -f1 | sort -u

2、取出最后登录到当前系统的用户的相关信息。
[root@localhost ~]# who | tail -1 | export &> /tmp/lang.sh

3、取出当前系统上被用户当作其默认shell的最多的那个shell。
[root@localhost ~]# cut -d ‘:’ -f7 /etc/passwd | uniq -c -d | sort | head -1

4、将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中。
[root@localhost ~]# sort -n -t: -k3 /etc/passwd | tail -10 &> /tmp/maxusers.txt

5、取出当前主机的IP地址,提示:对ifconfig命令的结果进行切分。
[root@localhost ~]#ifconfig | grep -o -E “(1[0-9]{2})(.)([0-9]{3})(.)([0-9]{1,3})(.)[0-2][0-5][0-4]”

6、列出/etc目录下所有以.conf结尾的文件的文件名,并将其名字转换为大写后保存至/tmp/etc.conf文件中。
[root@localhost ~]# ls -a /etc/*.conf | tr [a-z].conf [A-Z].conf | cat &>> /tmp/etc.conf

7、显示/var目录下一级子目录或文件的总个数。
[root@localhost ~]# ls -d /var/* | ls -o | head -n 1

8、取出/etc/group文件中第三个字段数值最小的10个组的名字。
[root@localhost ~]# sort -n -t: -k3 /etc/group | head -10 | cut -d ‘:’ -f1

9、将/etc/fstab和/etc/issue文件的内容合并为同一个内容后保存至/tmp/etc.test文件中。
[root@localhost ~]# tail /etc/fstab /etc/issue &>> /tmp/etc.test

用户管理命令:useradd、usermod、userdel、
useradd 命令
创建一个新用户或创建一个默认信息的用户。如果创建的新用户没有指定组,那么系统会为其创建一个与用户名同名的私有组。
语法:
useradd [选项] USER登录用户名

选项:
-u:指定UID,(但必须指定属主)格式例如:COMMAND -u 属主 用户名
-g:设置新建用户的属组为指定用户名的属组相同,指定的组必须是已经存在的组
-c: 指明注释信息
-G,–groups GROUP1 [,GROUP2,…[GROUPN]]]:新建用户并将为其做为指定用户名所属的附加组,多个组之间用逗号隔开;
-d: 创建已经指定的路径为用户的家目录;通过复制/etc/skel此目录并重命令实现;如果指定的家目录事先存在,便不会为用户复制环境初始化配置文件。
-s: 指定用户的默认shell,可用的所有shell列表存储为/etc/shell文件;
-r:创建系统用户:
-m: 如果不存在,则创建用户主目录
-M:不创建用户主目录,
-f:密码过期,账户彻底禁用之前的天数。0标识立即禁用,-1 禁用密码永不过期。。。。。查询资料
-D:显示用户的默认配置,也可以使用useradd -D [OPTION]来修改位于/etc/default/useradd文件中。修改默认值

——————————————————————————–
usermod命令
修改用户账户信息
语法:
usermod [OPTION] user登录用户

选项:
-U:修改用户的ID
-g:修改用户所属的基本组,组前提必须穿在
-G,–group GROUP[,GROUP2,…[,GROUP]]] :修改用户所属的附加组,如果原来用户有的附加组会被新的覆盖。避免出现覆盖应和-a,–append同时使用。
-a:与-G一同使用,用于为用户追加新的附加组:
-c:修改注释信息。
-d:修改用户的家目录,避免原来的用户文件不会被转移到新位置,要同时与-m,–move-home,
-m:只能与-d选项一同使用,用于将原来的家目录移动到新的家目录;
-l:修改用户名。
-s:修改用户的默认shell。

-L:锁定用户密码,即在用户原来的密码字符串之前添加一个“!”
-U:解锁用户的密码:删除用户密码字符串前面的“!”。

——————————————————————————–
userdel 命令
删除用户账户
语法:
userdel [OPTION] user登录用户

选项:
-r:删除用户时一并删除其家目录。

——————————————————————————–
passwd命令
修改用户密码。
语法:
passwd [-k] [-l] [-u [-f]] [-d] [-e] [-n mindays] [-x maxdays] [-w warndays] [-i inactivedays] [-S] [–stdin] [username]
语法格式:
passwd [密码]
* 修改当前登录用户的密码,

passwd USERNAME [密码]
* 修改指定用户的密码,普通用户需要被修改用户的密码,管理员则无需密码操作。

选项:
-l,-u:锁定和解锁用户。
-d:删除用户密码的字符串,
-e DATE:指明用户账号的过期时间。日期
-n:密码的最短使用期限
-x:密码的最长使用期限。
-w:密码的警告期限
-i DAYS:非活动期限。几天
–stdin :重定输入
* echo “PASSWORD” passwd –stdin USERNAME

——————————————————————————–
su命令
完成用户切换
语法格式:
su – USERNAME
su -l USERNAME
* 登陆式切换:会通过读取目标用户的配置文件来重新出初始化。

su USERNAME
* 非登陆式切换:不会读取目标用户的配置文件进行初始化。

选项:
-c ‘COMMAND’ :仅以指定用户的身份运行此处指定的命令一次。

——————————————————————————–
id命令
显示用户实际和有效的ID
语法:
id [OPITON]…[USER]

选项:
-u –user:仅显示用户的有效ID。
-g:仅显示用户的基本组ID。
-G:仅显示用户所属的所有组的ID。
-n:仅显示名字而非ID。

——————————————————————————–
组管理命令 groupadd、groupmod、groupdel、
groupadd 命令
添加组
语法:
groupadd [选项] group_name

选项:
-g –gicGID:可以指定ID,如不指定则是迷人上一个组的GID+1
-r:创建系统组:

——————————————————————————–
groupmod命令:修改组属性
语法:
groupmod [OPTIONS] GROUP

选项:
-g GID:修改组的组名,不能与现有的ID相同。
-n –new-name:修改组名

——————————————————————————–
groupdel命令
删除组
语法:
groupdel [OPTION] GROUP

删除组后会随之删除组内包含的附加组

——————————————————————————–
gpassed命令
默认给组添加密码
保存组密码的位置/etc/gshadow
语法:
gpasswd [OPTION]gtoup

选项:
-a USERNAME;向组中添加用户。
-d USERNAME:从组中移除用户。

示例:
——————————————————————————–
nwegrlp命令
临时切换至需的组,如果加上了[-] 则会模拟用户登陆一次,登陆后为用户的基本组。不加[-]表示临时切换至用户组,切换后可使用pwd查看。
语法格式:
nwegrp [-] [group]

解释:
-:会模拟用户重新登陆以实现重新初始化其工作环境。
——————————————————————————–
chage命令
改用户过期密码信息
常用选项:
-d,–lastday LAST DAY :
-E:过期日期,
-i:非活动期限
-m:最短使用期限。
-M:最长使用期限。
-W:警告期限

——————————————————————————–
id命令
显示用户实际和有效的ID
语法:
id [OPITON]…[USER]

选项:
-u –user:仅显示用户的有效ID。
-g:仅显示用户的基本组ID。
-G:仅显示用户所属的所有组的ID。
-n:仅显示名字而非ID。

——————————————————————————–
(1)、创建组distro,其GID为2016;
[root@localhost ~]# groupadd -g 2016 distro

(2)、创建用户mandriva, 其ID号为1005;基本组为distro;
[root@localhost ~]# useradd -g distro -u 1005 manfriva

(3)、创建用户mageia,其ID号为1100,家目录为/home/linux;
[root@localhost ~]# useradd -u 1100 mageia -d /home/linux

(4)、给用户mageia添加密码,密码为mageedu;
[root@localhost ~]# passwd mageia
更改用户 mageia 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。

[root@localhost ~]# echo “mageia” | passwd –stdin mageia
更改用户 mageia 的密码 。
passwd:所有的身份验证令牌已经成功更新。

(5)、删除mandriva,但保留其家目录;
[root@localhost ~]# userdel mandriva
userdel:组“mandriva”没有移除,因为它不是用户 mandriva 的主组
[root@localhost ~]# ls /home/
a CentOS distro fedora linux mova nova peguin user1 user3
archlinux debian docker gentoo mandriva nameone openstack slackware user2

(6)、创建用户slackware,其ID号为2002,基本组为distro,附加组peguin;
[root@localhost ~]# useradd -u 2002 slackware
[root@localhost ~]# usermod -g distro slackware
[root@localhost ~]# usermod -G slackware peguin

(7)、修改slackware的默认shell为/bin/tcsh;
[root@localhost ~]# usermod -s /ect/tcsh slackware

(8)、为用户slackware新增附加组admins;
[root@localhost ~]# useradd -G slackware admins
[root@localhost ~]# tail -2 /etc/group
slackware:x:2002:peguin,admins
admins:x:4009:
[root@localhost ~]#

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/90167

(0)
上一篇 2017-12-16 17:45
下一篇 2017-12-16 19:52

相关推荐

  • chmod 没有执行权限的解决办法 [转载http://www.fblinux.com/?p=30]

    chmod没有权限,貌似就算是root用户也无法授权,这可咋办?chmod是设置权限的命令,但是自身没有了执行权限,那么就表示没有办法更改其他命令的权限,也没有办法改变自己的权限。 1 2 3 4 [root@localhost ~]# ll /bin/chmod ———-. 1 root root 48712 Oct 15 2014 …

    Linux干货 2017-01-01
  • netfilter/iptables 基础入门

    netfilter/iptables 基础入门 Firewall防火墙的实现方式 什么是netfilter?        Netfilter是由Linux内核提供的框架,允许以定制处理程序的形式实现各种与网络相关的操作。Netfilter为包过滤,网络地址转换和端口转换提供各种功能和操作,它们提供了通过网络…

    2017-06-13
  • 程序包管理之制作yum本地源

    Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。 使用本地yum源有两种方式:第一直接使用光盘镜像,不过此方…

    Linux干货 2016-08-24
  • Linux交换分区的创建和调整

    概述 本文对swap进行简要介绍,以及系统安装后(在运行中)如何建立或调整swap分区。 文中演示环境为: 什么是swap space? 交换分区,即swap space。它将某段磁盘空间独立划分出来,当物理内存不够的情况下,系统先把物理内存中暂时不用的数据,暂存到交换空间,腾出内存空间来,以保证程序的运行;当swap中存储的页面被访问到时,系统会将其重新载…

    Linux干货 2016-08-30
  • Bash脚本写法及变量如何使用

    Bash是什么? bash脚本是作为linux执行与内核交互的一个方便快捷的脚本语言工具。它可以帮助我们快速的解决问题。 Bash写法: 需要创建一个文件,以.sh结尾。这样就生成一个脚本文件 我们文件内容开头要以#!/bin/bash 开头,这是脚本规定的格式,目的是告诉编译器我们这个脚本是bash类型的脚本。 当上述工作都做好以后,我们就可以正式开始脚本…

    Linux干货 2017-04-10
  • linux上的组管理

    上一次我们谈了CentOS上的用户管理,现在我们再来谈下CentOS上的用户组管理。 groupadd创建一个新的组 用法如下: groupadd [选项] groupname 常用选项: -f 强制添加一个组(这个组可能已经存在系统中) -g 指定组的id; -r 创建系统工作组(系统工作组的组ID小于500) -K 覆盖配置文件/ect/log…

    Linux干货 2017-04-09

评论列表(2条)

  • 马哥教育
    马哥教育 2018-01-07 16:16

    赞,内容上基本没什么问题,排版上能注意一下最好~继续加油

    • N28_刚好遇到小熊猫
      N28_刚好遇到小熊猫 2018-01-12 12:28

      @马哥教育嗯嗯 以后会注意的老师 ,一直没有找到太好的排版方式,