Linux Basics–part3

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

~]# who | cut -d” ” -f1 | sort -u

centos

ronny

root

~]# who | cut -d” ” -f1 | sort |uniq

centos

ronny

root

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

~]# who | tail -n 1

centos  pts/2        2017-07-27 23:35 (192.168.4.241)

~]# last -i | head  -n 1

centos  pts/2        192.168.4.241    Thu Jul 27 23:35  still logged in

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

~]# cat /etc/passwd |cut -d: -f7 |uniq -c |sort -n |tail -n 1

18 /sbin/nologin

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

[root@ronny1 ~]# cat /etc/passwd |sort -t: -k 3 -n|tail |tr ‘a-z’ ‘A-Z’ > /tmp/maxusers.txt

[root@ronny1 ~]# cat /tmp/maxusers.txt

SYSTEMD-BUS-PROXY:X:999:997:SYSTEMD BUS PROXY:/:/SBIN/NOLOGIN

RONNY:X:1000:1000:RONNY:/HOME/RONNY:/BIN/BASH

RONNY1.1:X:1001:1001::/HOME/RONNY1.1:/BIN/BASH

GENTOO:X:4004:4004::/USERS/GENTOO:/BIN/BASH

FEDORA:X:4005:4005::/USERS/FEDORA:/BIN/BASH

WWW:X:4006:4006::/USERS/WWW:/BIN/BASH

CENTOS:X:4007:4007::/HOME/CENTOS:/BIN/BASH

USER1:X:4008:4008::/HOME/USER1:/BIN/BASH

NOLOGIN:X:4009:4009::/HOME/NOLOGIN:/SBIN/NOLOGIN

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

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

~]# ifconfig |grep -E “^[[:space:]]” |cut -d” ” -f10 | head -n 1

192.168.4.240

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

~]# touch /tmp/etc.conf

~]# ll -a /etc/ |grep -E “\.conf$” | tr ‘a-z’ ‘A-Z’| tee /tmp/etc.conf

~]# cat /tmp/etc.conf

-RW-R–R–.  1 ROOT ROOT      55 11月  5 2016 ASOUND.CONF

-RW-R–R–.  1 ROOT ROOT    13386 11月  6 2016 AUTOFS.CONF

-RW——-.  1 ROOT ROOT      232 11月  6 2016 AUTOFS_LDAP_AUTH.CONF

-RW-R–R–.  1 ROOT ROOT    21929 11月  6 2016 BRLTTY.CONF

-RW-R–R–.  1 ROOT ROOT      676 11月  6 2016 CGCONFIG.CONF

……

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

~]# ll -a /var/ | wc -l

26

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

~]# cat /etc/group| sort -t: -k3 -n |head -n 10

root:x:0:

bin:x:1:

daemon:x:2:

sys:x:3:

adm:x:4:

tty:x:5:

disk:x:6:

lp:x:7:

mem:x:8:

kmem:x:9:

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

[root@ronny1 ~]# vim /etc/fatab

hello world!!

~]# cat /etc/fatab /etc/issue > /tmp/etc.test

~]# cat /tmp/etc.test

hello world!!

\S

Kernel \r on an \m

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

groupadd命令:添加组

groupadd [选项] group_name

-g GID:指定GID;默认是上一个组的GID+1;

-r: 创建系统组;

groupmod命令:修改组属性

groupmod [选项] GROUP

-g GID:修改GID;

-n new_name:修改组名;

groupdel命令:删除组

groupdel [选项] GROUP

useradd命令:创建用户

useradd [选项] 登录名

-u, –uid UID:指定UID;

-g, –gid GROUP:指定基本组ID,此组得事先存在;

-G, –groups GROUP1[,GROUP2,…[,GROUPN]]]:指明用户所属的附加组,多个组之间用逗号分隔;

-c, –comment COMMENT:指明注释信息;

-d, –home

-s, –shell SHELL:指定用户的默认shell,可用的所有shell列表存储在/etc/shells文件中;

-r, –system:创建系统用户;

useradd -D:显示创建用户的默认配置;

useradd -D 选项: 修改默认选项的值;

usermod命令:修改用户属性

usermod [选项] 登录

-u, –uid UID:修改用户的ID为此处指定的新UID;

-g, –gid GROUP:修改用户所属的基本组;

-G, –groups GROUP1[,GROUP2,…[,GROUPN]]]:修改用户所属的附加组;原来的附加组会被覆盖;

-a, –append:与-G一同使用,用于为用户追加新的附加组;

-c, –comment COMMENT:修改注释信息;

-d, –home HOME_DIR:修改用户的家目录;用户原有的文件不会被转移至新位置;

-m, –move-home:只能与-d选项一同使用,用于将原来的家目录移动为新的家目录;

-l, –login NEW_LOGIN:修改用户名;

-s, –shell SHELL:修改用户的默认shell;

-L, –lock:锁定用户密码;即在用户原来的密码字符串之前添加一个”!”;

-U, –unlock:解锁用户的密码;

userdel命令:删除用户

userdel [选项] 登录

-r:删除用户时一并删除其家目录;

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

~]# groupadd -g 2016 distro

~]# tail -n -1 /etc/group

distro:x:2016:

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

~]# useradd -u 1005 -g 2016 mandriva

id mandriva

uid=1005(mandriva) gid=2016(distro) groups=2016(distro)

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

~]# useradd -u 1100 -d /home/linux mageia

~]# tail -n 1 /etc/passwd

mageia:x:1100:1100::/home/linux:/bin/bash

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

~]# echo “mageedu” | passwd –stdin mageia

更改用户 mageia 的密码 。

passwd:所有的身份验证令牌已经成功更新。

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

~]# userdel mandriva

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

~]# useradd -u 2002 -g 2016 -G 5001 slackware

 ~]# id slackware

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

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

~]# usermod -s /bin/tcsh slackware

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

~]# groupadd admins

~]# usermod -aG admins slackware

[root@ronny1 ~]# id slackware

uid=2002(slackware) gid=2016(distro) 组=2016(distro),5001(peguin),5003(admins)

原创文章,作者:N27_ronny,如若转载,请注明出处:http://www.178linux.com/84126

(0)
上一篇 2017-08-06 23:19
下一篇 2017-08-07 02:18

相关推荐

  • 高可用keepalived结合haproxy代理WordPress(动静分离)

    (1)A  B两台服务器做keepalived高可用,同时作为haproxy动静分离后端代理。         (keepalived时主备模型,haproxy轮询调度) (2)C 服务器搭建apache作为动态资源服务器 (3)D 服务器搭建nginx作为静态资源服务器 (4)VIP:172.18.0.42…

    2017-05-20
  • Java中的Map List Set等集合类

    Map List Set等集合类: 一、概述 在JAVA的util包中有两个所有集合的父接口Collection和Map,它们的父子关系: +Collection 这个接口extends自 –java.lang.Iterable接口 ├+List(接口 代表有序,可重复的集合。列表) │├ ArreyList   &…

    Linux干货 2015-04-07
  • 内核相关

    内核两大流派单内核微内核 grub分为三个阶段:1阶段 1.5阶段 2阶段 内核阶段 通过/proc/cmdline找到根并挂载2阶段内容是放在/boot/grub目录下Centos6 实验:丢失除grub.conf外所有文件没有修复过的时候/boot/grub下文件是放在磁盘上某个位置的修复过一次后/boot/grub下文件就起作用了,一旦执行过grub-…

    Linux干货 2018-01-03
  • for、while、until循环

    一、for循环          for 变量名 in 列表;do             循环体     &nbsp…

    Linux干货 2016-09-19
  • 网络基础总结

    这周南老师出差了,由王老师给我们代课,这周我们主要学习了网络基础,相比着之前,主要是理论加理解。下面我总结一下。 处于21世纪的我们,互联网时代,网络在我们身边的各个角落,覆盖了我们的衣食住行,带来 很多方便;首先什么是网络, 家庭办公室,移动用户,总部,分支机构。。。都在用互联网相连着,省去了许多麻烦,时间,加快了办公效率; 资源共享的功能和优点:数据和应…

    2017-09-02
  • 第八周-Shell脚本编程

    1、写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态; 在线的主机使用绿色显示; 不在线的主使用红色显示; #!/bin/bash for i in {1..254}; do { ip=172.16.250.$i if ping -c 1 -w 1 $ip &> /dev/null …

    Linux干货 2017-08-23

评论列表(1条)

  • 马哥教育
    马哥教育 2017-08-20 19:06

    这次作业考察的是些基础的操作命令,熟练掌握,在以后的工作中会更加的得心应手。