Linux第三周作业

Linux

1、    列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。

[root@ada-dog ~]# who | cut -d ” ” -f1 |uniq -c

2 root

1 ada

2、    取出最后登录到当前系统的用户的相关信息。

[root@ada-dog ~]# id $(last | head -1 | cut -d ” ” -f1)

uid=1000(ada) gid=1000(ada) groups=1000(ada)

3、取出当前系统上被用户当作其默认shell的最多的那个shell。

[root@ada-dog ~]# cut -d: -f7 /etc/passwd | uniq -c | sort -n | tail -1

32 /sbin/nologin

4、将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中。

[root@ada-dog ~]# sort -t: -k3 -n /etc/passwd |tail -10 | tr ‘a-z’ ‘A-Z’

DOCKER:X:1001:1002::/HOME/DOCKER:/BIN/BASH

OPENSTACK:X:1005:1005::/HOME/OPENSTACK:/BIN/BASH

MOGILEFS:X:1006:1006:MOGILFS DFS:/HOME/MOGILEFS:/BIN/BASH

MOOSEFS:X:1007:1007::/TMP/MOOSEFS:/BIN/BASH

MARIADB:X:1009:5002::/HOME/MARIADB:/SBIN/NOLOGIN

GENTOO:X:1010:1010::/USERS/GENTOO:/BIN/BASH

USER3:X:3000:3000::/HOME/USER3:/BIN/BASH

USER1:X:3001:3001::/HOME/USER1:/BIN/BASH

CENTOS:X:3002:3002::/HOME/CENTOS:/BIN/BASH

NFSNOBODY:X:65534:65534:ANONYMOUS NFS USER:/VAR/LIB/NFS:/SBIN/NOLOGIN

5、取出当前主机的IP地址,提示:对ifconfig命令的结果进行切分。

[root@ada-dog ~]# ifconfig | cut -d” ” -f10 | head -2

 

192.168.64.128

6、列出/etc目录下所有以.conf结尾的文件的文件名,并将其名字转换为大写后保存至/tmp/etc.conf文件中。

[root@ada-dog tmp]# ls /etc/*.conf | tr ‘a-z’ ‘A-Z’ > /tmp/etc.conf

7、显示/var目录下一级子目录或文件的总个数。

[root@ada-dog tmp]# ls -l /var/ | wc -l

23

8、取出/etc/group文件中第三个字段数值最小的10个组的名字。

[root@ada-dog tmp]# sort -t: -k3 -n /etc/group | head -10 | cut -d: -f1

root

bin

daemon

sys

adm

tty

disk

lp

mem

kmem

 

9、将/etc/fstab和/etc/issue文件的内容合并为同一个内容后保存至/tmp/etc.test文件中。

[root@ada-dog tmp]# cat /etc/fstab /etc/issue > /tmp/etc.test

 

10、请总结描述用户和组管理类命令的使用方法并完成以下练习:

useradd

useradd [options] username

options:

-c:描述信息,comment;

-d:指定家目录路径;

-e:账户过期日期;

-g:指定组id;

-G:指定特定或附加组;

-m:创建新建用户家目录;

-M:不创建新建用户家目录;

-p:创建用户密码;

-s:指定用户使用的shell类型;

-u:指定用户属主ID;

 

usermod

usermod [options] username

options:

-a:追加属主用户附加组常和-G一起用;

-c:用户描述信息,comment;

-d:修改用户家目录路径;

-g:修改组id;

-G:修改特定或附加组;

-L:锁定用户;

-m:移动用户家目录;

-p:修改用户密码;

-s:修改用户使用的shell类型;

-u:修改用户属主ID;

 

userdel

userdel [options] username 删除用户

-f:强制删除用户,即使用户当前已登录;

-r:删除用户的同时,删除与用户相关的所有文件。

 

passwd

普通用户仅能修改自己的密码;超级用户可以修改任意账户的密码;也可以改变相关账户密码的有效期;

passwd [options] [LOGIN]

选项:

-a,–all

与-S搭配使用,显示所有用户状态

-d,–delete

删除用户密码

-e,–expire

使用户密码立即失效,强制用户下次登录时修改密码

-h,–help

显示帮助信息并退出

-i,–inactive INACTIVE

当账户失效INACTIVE天后,用户无法再使用该账户登录

-n,–mindays MIN_DAYS

密码两次修改的时间至少间隔MIN_DAYS天,若MIN_DAYS为0,则表示可在任意时刻进行修改

-S,–status

显示账户状态信息,共有7个字段,分别是登录名、L(P or NP)、上次修改时间、最小期限、最大期限、警告期、inactive period。这些ages的单位都是天。

-w,–warndays WARN_DAYS

密码失效前WARN_DAYS天发出警告

-x,–maxdays MAX_DAYS

设置密码最长的有效期

groupadd 用于创建一个新的工作组,新工作组的信息将被添加到系统文件中。

groupadd [options] group-name

选项

-g:指定新建工作组的id;-r:创建系统工作组,系统工作组的组ID小于500;-K:覆盖配置文件“/ect/login.defs”;-o:允许添加组ID号不唯一的工作组。

 

groupmod 更改群组识别码或名称。需要更改群组的识别码或名称时,可用groupmod指令来完成这项工作。

groupmod  [options] group-name

选项

-g<群组识别码>:设置欲使用的群组识别码;

-o:重复使用群组识别码;

-n<新群组名称>:设置欲使用的群组名称。

 

groupdel 用于删除指定的工作组,本命令要修改的系统文件包括/ect/group和/ect/gshadow。若该群组中仍包括某些用户,则必须先删除这些用户后,方能删除群组。

groupdel  group-name

 

   (1)、创建组distro,其GID为2016;

[root@ada-dog tmp]# groupadd -g 2016 distro

   (2)、创建用户mandriva, 其ID号为1005;基本组为distro;

[root@ada-dog ~]# useradd -u 1005 -G distro mandriva

   (3)、创建用户mageia,其ID号为1100,家目录为/home/linux;

[root@ada-dog ~]# useradd -u 1100 -d /home/linux mageia

   (4)、给用户mageia添加密码,密码为mageedu;

[root@ada-dog ~]# echo ‘mageedu’ | passwd –stdin mageia

   (5)、删除mandriva,但保留其家目录;

[root@ada-dog tmp]# userdel mandriva

   (6)、创建用户slackware,其ID号为2002,基本组为distro,附加组peguin;

[root@ada-dog ~]# groupadd peguin

[root@ada-dog ~]# useradd -u 2002 -g distro -G peguin slackware

[root@ada-dog ~]# id slackware

uid=2002(slackware) gid=2016(distro) groups=2016(distro),5001(peguin)

 

   (7)、修改slackware的默认shell为/bin/tcsh;

[root@ada-dog ~]# usermod -s /bin/tcsh slackware

   (8)、为用户slackware新增附加组admins;

[root@ada-dog ~]# usermod -G admins slackware

[root@ada-dog ~]# id slackware

uid=2002(slackware) gid=2016(distro) groups=2016(distro),5003(admins)

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

(0)
FelixFelix
上一篇 2018-07-07
下一篇 2018-07-08

相关推荐

  • 实现cobbler自动安装(基于网络)

    本节索引: 一、cobbler简介 二、实验:模拟搭建cobbler服务器,实现cobbler自动化安装系统 三、实验:实现基于web的cobbler   一、cobbler简介: cobbler 功能:用来快速建立 Linux 网络安装环境 特性: 1.基于PXE的二次封装,将多种安装参数封装到一个菜单,更加方便,自动化 2.Python编写 3…

    Linux笔记 2018-05-27
  • 文本三剑客之grep及正则表达式用法

    grep (缩写来自Globally search a Regular Expression and Print)是一种强大的文本搜索工具,与sed(文本过滤工具),awk(文本报告生成器)并称为Linux文本处理三剑客,它能使用特定模式匹配(包括正则表达式)搜索文本,并默认输出匹配行。

    2018-04-07
  • Elastic Stack(ELK)介绍及相关示例实验

    Elastic Stack是一套支持数据采集、存储、分析、展现的全流程数据分析工具,旧时称作ELK(Elasticsearch,Logstash,Kibana的缩写,)。Elastic Stack由一系列的工具集组成,Logstash & Beats:数据采集工具,logstash适合大批量数据的采集,其结构较重,消耗资源较大,适合集群化部署。

    2018-07-31
  • 第四个礼拜作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。         cp -r /etc/skel /home/tuser1 ;         ll -d /home/tuser1;         chmod -R g-rwx,o-rwx /home/tuser1;   …

    Linux笔记 2018-06-03
  • 文件管理类命令和bash特性之(命令状态返回值和命令行展开)

    文件管理类命令 ls 用途:list 列出指定目录下的内容; 语法:ls [OPTION]… [FILE]… 选项:-a : 显示所有文件,包括隐藏文件;-A :显示除 . 和 .. 之外的所有文件;-l :长格式列表,显示文件的详细属性信息;-h :可以对文件大小进行单位换算是非精确值;-d:查看目录自身而非其内部文件列表(如果文件符合也会显示出来);-r…

    2018-05-19
  • 运维自动化之ansible

    ansible的基本架构 ​ host inventory主机清单 ​ playbook相当于脚本, ​ modules模块 ansible工作原理 ​ 通过执行命令,或ansible playbook,cmdb ansible配置文件 ​ /etc/ansible/ansible.cfg主配置文件,配置ansible工作特性 ​ /etc/ansible/…

    Linux笔记 2018-06-03