第四周作业


1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。


[root@SeaFile ~]# cp -Rf /etc/skel/ /home/tuser1/

[root@SeaFile ~]# ls /home

linux  mandriva  openstack  seafile  slackware  tuser1

[root@SeaFile ~]# ll /home/tuser1/

总用量 0


[root@SeaFile ~]# useradd -d /home/tuser1 tuser1

useradd:警告:此主目录已经存在。

不从 skel 目录里向其中复制任何文件。


[root@SeaFile ~]# ll -a /home/tuser1

总用量 12

drwxr-xr-x. 3 root root  74 8月  28 16:37 .

drwxr-xr-x. 8 root root  92 8月  28 16:37 ..

-rw-r--r--. 1 root root  18 8月  28 16:37 .bash_logout

-rw-r--r--. 1 root root 193 8月  28 16:37 .bash_profile

-rw-r--r--. 1 root root 231 8月  28 16:37 .bashrc

drwxr-xr-x. 4 root root  37 8月  28 16:37 .mozilla

[root@SeaFile ~]# cat /etc/passwd | grep ^tuser1

tuser1:x:3004:3004::/home/tuser1:/bin/bash

[root@SeaFile ~]# chown -R tuser1:tuser1 /home/tuser1

[root@SeaFile ~]# ll -a /home/tuser1

总用量 12

drwxr-xr-x. 3 tuser1 tuser1  74 8月  28 16:37 .

drwxr-xr-x. 8 root   root    92 8月  28 16:37 ..

-rw-r--r--. 1 tuser1 tuser1  18 8月  28 16:37 .bash_logout

-rw-r--r--. 1 tuser1 tuser1 193 8月  28 16:37 .bash_profile

-rw-r--r--. 1 tuser1 tuser1 231 8月  28 16:37 .bashrc

drwxr-xr-x. 4 tuser1 tuser1  37 8月  28 16:37 .mozilla


[root@SeaFile ~]# chmod 600 -R /home/tuser1

[root@SeaFile ~]# ll -a /home/tuser1

总用量 12

drw-------. 3 tuser1 tuser1  74 8月  28 16:37 .

drwxr-xr-x. 8 root   root    92 8月  28 16:37 ..

-rw-------. 1 tuser1 tuser1  18 8月  28 16:37 .bash_logout

-rw-------. 1 tuser1 tuser1 193 8月  28 16:37 .bash_profile

-rw-------. 1 tuser1 tuser1 231 8月  28 16:37 .bashrc

drw-------. 4 tuser1 tuser1  37 8月  28 16:37 .mozilla

[root@SeaFile ~]#


2、编辑/etc/group文件,添加组hadoop。


[root@SeaFile ~]# tail -5 /etc/group

peguin:x:2017:slackware

admins:x:2018:slackware

clouds:x:2019:

nova:x:2020:openstack

tuser1:x:3004:

[root@SeaFile ~]# vim /etc/group

[root@SeaFile ~]#

[root@SeaFile ~]# tail -5 /etc/group

admins:x:2018:slackware

clouds:x:2019:

nova:x:2020:openstack

tuser1:x:3004:

hadoop:x:3005:

[root@SeaFile ~]#


3、手动编辑/etc/passwd文件新增一行,添加用户hadoop,其基本组ID为hadoop组的id号;其家目录为/home/hadoop。


[root@SeaFile ~]# tail -5 /etc/passwd

mysql:x:1001:1001::/home/mysql:/sbin/nologin

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

slackware:x:2002:2016::/home/slackware:/bin/tcsh

openstack:x:3003:2019::/home/openstack:/bin/bash

tuser1:x:3004:3004::/home/tuser1:/bin/bash

[root@SeaFile ~]# vim /etc/passwd

[root@SeaFile ~]# tail -5 /etc/passwd

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

slackware:x:2002:2016::/home/slackware:/bin/tcsh

openstack:x:3003:2019::/home/openstack:/bin/bash

tuser1:x:3004:3004::/home/tuser1:/bin/bash

hadoop:x:3005:3005::/home/hadoop:/bin/bash

[root@SeaFile ~]#


4、复制/etc/skel目录为/home/hadoop,要求修改hadoop目录的属组和其它用户没有任何访问权限。


[root@SeaFile ~]# ll -a /home

总用量 8

drwxr-xr-x.  8 root      root      92 8月  28 16:51 .

dr-xr-xr-x. 19 root      root    4096 8月  21 14:01 ..

drwx------.  3 mageia    mageia    74 8月  21 02:43 linux

drwx------.  3      1005 distro    74 8月  21 02:41 mandriva

drwx------.  3 openstack clouds    74 8月  21 03:09 openstack

drwx------. 15 seafile   seafile 4096 8月  22 09:25 seafile

drwx------.  3 slackware distro    74 8月  21 02:52 slackware

drw-------.  3 tuser1    tuser1    74 8月  28 16:37 tuser1

[root@SeaFile ~]# cp -Rf /etc/skel/ /home/hadoop/

[root@SeaFile ~]# ll -a /home/

总用量 12

drwxr-xr-x.  9 root      root    4096 8月  28 16:51 .

dr-xr-xr-x. 19 root      root    4096 8月  21 14:01 ..

drwxr-xr-x.  3 root      root      74 8月  28 16:51 hadoop

drwx------.  3 mageia    mageia    74 8月  21 02:43 linux

drwx------.  3      1005 distro    74 8月  21 02:41 mandriva

drwx------.  3 openstack clouds    74 8月  21 03:09 openstack

drwx------. 15 seafile   seafile 4096 8月  22 09:25 seafile

drwx------.  3 slackware distro    74 8月  21 02:52 slackware

drw-------.  3 tuser1    tuser1    74 8月  28 16:37 tuser1

[root@SeaFile ~]# ll -a /home/hadoop

总用量 16

drwxr-xr-x. 3 root root   74 8月  28 16:51 .

drwxr-xr-x. 9 root root 4096 8月  28 16:51 ..

-rw-r--r--. 1 root root   18 8月  28 16:51 .bash_logout

-rw-r--r--. 1 root root  193 8月  28 16:51 .bash_profile

-rw-r--r--. 1 root root  231 8月  28 16:51 .bashrc

drwxr-xr-x. 4 root root   37 8月  28 16:51 .mozilla

[root@SeaFile ~]# chown hadoop:hadoop -R /home/hadoop/

[root@SeaFile ~]# ll -a /home/hadoop

总用量 16

drwxr-xr-x. 3 hadoop hadoop   74 8月  28 16:51 .

drwxr-xr-x. 9 root   root   4096 8月  28 16:51 ..

-rw-r--r--. 1 hadoop hadoop   18 8月  28 16:51 .bash_logout

-rw-r--r--. 1 hadoop hadoop  193 8月  28 16:51 .bash_profile

-rw-r--r--. 1 hadoop hadoop  231 8月  28 16:51 .bashrc

drwxr-xr-x. 4 hadoop hadoop   37 8月  28 16:51 .mozilla

[root@SeaFile ~]# ll -a /home/

总用量 12

drwxr-xr-x.  9 root      root    4096 8月  28 16:51 .

dr-xr-xr-x. 19 root      root    4096 8月  21 14:01 ..

drwxr-xr-x.  3 hadoop    hadoop    74 8月  28 16:51 hadoop

drwx------.  3 mageia    mageia    74 8月  21 02:43 linux

drwx------.  3      1005 distro    74 8月  21 02:41 mandriva

drwx------.  3 openstack clouds    74 8月  21 03:09 openstack

drwx------. 15 seafile   seafile 4096 8月  22 09:25 seafile

drwx------.  3 slackware distro    74 8月  21 02:52 slackware

drw-------.  3 tuser1    tuser1    74 8月  28 16:37 tuser1

[root@SeaFile ~]# chmod 600 -R /home/hadoop/

[root@SeaFile ~]# ll -a /home/

总用量 12

drwxr-xr-x.  9 root      root    4096 8月  28 16:51 .

dr-xr-xr-x. 19 root      root    4096 8月  21 14:01 ..

drw-------.  3 hadoop    hadoop    74 8月  28 16:51 hadoop

drwx------.  3 mageia    mageia    74 8月  21 02:43 linux

drwx------.  3      1005 distro    74 8月  21 02:41 mandriva

drwx------.  3 openstack clouds    74 8月  21 03:09 openstack

drwx------. 15 seafile   seafile 4096 8月  22 09:25 seafile

drwx------.  3 slackware distro    74 8月  21 02:52 slackware

drw-------.  3 tuser1    tuser1    74 8月  28 16:37 tuser1

[root@SeaFile ~]# ll -a /home/hadoop/

总用量 16

drw-------. 3 hadoop hadoop   74 8月  28 16:51 .

drwxr-xr-x. 9 root   root   4096 8月  28 16:51 ..

-rw-------. 1 hadoop hadoop   18 8月  28 16:51 .bash_logout

-rw-------. 1 hadoop hadoop  193 8月  28 16:51 .bash_profile

-rw-------. 1 hadoop hadoop  231 8月  28 16:51 .bashrc

drw-------. 4 hadoop hadoop   37 8月  28 16:51 .mozilla

[root@SeaFile ~]#


5、修改/home/hadoop目录及其内部所有文件的属主为hadoop,属组为hadoop。


[root@SeaFile ~]# chown hadoop:hadoop -R /home/hadoop/

[root@SeaFile ~]# ll -a /home/hadoop

总用量 16

drwxr-xr-x. 3 hadoop hadoop   74 8月  28 16:51 .

drwxr-xr-x. 9 root   root   4096 8月  28 16:51 ..

-rw-r--r--. 1 hadoop hadoop   18 8月  28 16:51 .bash_logout

-rw-r--r--. 1 hadoop hadoop  193 8月  28 16:51 .bash_profile

-rw-r--r--. 1 hadoop hadoop  231 8月  28 16:51 .bashrc

drwxr-xr-x. 4 hadoop hadoop   37 8月  28 16:51 .mozilla

[root@SeaFile ~]# ll -a /home/

总用量 12

drwxr-xr-x.  9 root      root    4096 8月  28 16:51 .

dr-xr-xr-x. 19 root      root    4096 8月  21 14:01 ..

drwxr-xr-x.  3 hadoop    hadoop    74 8月  28 16:51 hadoop

drwx------.  3 mageia    mageia    74 8月  21 02:43 linux

drwx------.  3      1005 distro    74 8月  21 02:41 mandriva

drwx------.  3 openstack clouds    74 8月  21 03:09 openstack

drwx------. 15 seafile   seafile 4096 8月  22 09:25 seafile

drwx------.  3 slackware distro    74 8月  21 02:52 slackware

drw-------.  3 tuser1    tuser1    74 8月  28 16:37 tuser1


6、显示/proc/meminfo文件中以大写或小写S开头的行;用两种方式;


[root@SeaFile ~]# more /proc/meminfo | grep -E ^[Ss]

SwapCached:            0 kB

SwapTotal:       2097148 kB

SwapFree:        2097148 kB

Shmem:             10016 kB

Slab:             362212 kB

SReclaimable:     259924 kB

SUnreclaim:       102288 kB

[root@SeaFile ~]# cat /proc/meminfo | grep ^[Ss]

SwapCached:            0 kB

SwapTotal:       2097148 kB

SwapFree:        2097148 kB

Shmem:             10016 kB

Slab:             362212 kB

SReclaimable:     259924 kB

SUnreclaim:       102288 kB

[root@SeaFile ~]#


7、显示/etc/passwd文件中其默认shell为非/sbin/nologin的用户;


[root@SeaFile ~]# cat /etc/passwd | grep -v "/sbin/nologin"

root:x:0:0:root:/root:/bin/bash

sync:x:5:0:sync:/sbin:/bin/sync

shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown

halt:x:7:0:halt:/sbin:/sbin/halt

seafile:x:1000:1000:seafile:/home/seafile:/bin/bash

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

slackware:x:2002:2016::/home/slackware:/bin/tcsh

openstack:x:3003:2019::/home/openstack:/bin/bash

tuser1:x:3004:3004::/home/tuser1:/bin/bash

hadoop:x:3005:3005::/home/hadoop:/bin/bash

[root@SeaFile ~]#


8、显示/etc/passwd文件中其默认shell为/bin/bash的用户;


[root@SeaFile ~]# cat /etc/passwd | grep '/bin/bash'

root:x:0:0:root:/root:/bin/bash

seafile:x:1000:1000:seafile:/home/seafile:/bin/bash

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

openstack:x:3003:2019::/home/openstack:/bin/bash

tuser1:x:3004:3004::/home/tuser1:/bin/bash

hadoop:x:3005:3005::/home/hadoop:/bin/bash

[root@SeaFile ~]#


9、找出/etc/passwd文件中的一位数或两位数;


[root@SeaFile ~]# cat /etc/passwd | grep x:'[0-9]\{1,2\}\>'

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin

adm:x:3:4:adm:/var/adm:/sbin/nologin

lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

sync:x:5:0:sync:/sbin:/bin/sync

shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown

halt:x:7:0:halt:/sbin:/sbin/halt

mail:x:8:12:mail:/var/spool/mail:/sbin/nologin

operator:x:11:0:operator:/root:/sbin/nologin

games:x:12:100:games:/usr/games:/sbin/nologin

ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

nobody:x:99:99:Nobody:/:/sbin/nologin

dbus:x:81:81:System message bus:/:/sbin/nologin

apache:x:48:48:Apache:/usr/share/httpd:/sbin/nologin

tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin

ntp:x:38:38::/etc/ntp:/sbin/nologin

rpc:x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologin

radvd:x:75:75:radvd user:/:/sbin/nologin

rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin

gdm:x:42:42::/var/lib/gdm:/sbin/nologin

avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin

postfix:x:89:89::/var/spool/postfix:/sbin/nologin

sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin

oprofile:x:16:16:Special user account to be used by OProfile:/var/lib/oprofile:/sbin/nologin

tcpdump:x:72:72::/:/sbin/nologin

[root@SeaFile ~]#



10、显示/boot/grub/grub.conf中以至少一个空白字符开头的行;


[root@cobber7 ~]# cat /boot/grub/grub.conf  | grep ^[[:space:]]

        root (hd0,0)

        kernel /vmlinuz-2.6.32-642.3.1.el6.x86_64 ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD rd_LVM_LV=VolGroup/lv_swap SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=VolGroup/lv_root  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet

        initrd /initramfs-2.6.32-642.3.1.el6.x86_64.img

        root (hd0,0)

        kernel /vmlinuz-2.6.32-431.el6.x86_64 ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD rd_LVM_LV=VolGroup/lv_swap SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=VolGroup/lv_root  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet

        initrd /initramfs-2.6.32-431.el6.x86_64.img

[root@cobber7 ~]#



11、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行;


[root@cobber7 ~]# cat /etc/rc.d/rc.sysinit  | grep -E ^#[[:space:]][[:graph:]]+*

# /etc/rc.d/rc.sysinit - run once at boot time

# Taken in part from Miquel van Smoorenburg's bcheckrc.

# Check SELinux status

# Print a text banner.

# Only read this once.

# Initialize hardware

# Set default affinity

# Load other user-defined modules

# Load modules (for backward compatibility with VARs)

# Configure kernel parameters

# Set the hostname.

# Sync waiting for storage.

# Device mapper & related initialization

# Start any MD RAID arrays that haven't been started yet

# Remount the root filesystem read-write.

# Clean up SELinux labels

# If relabeling, relabel mount points.

# Mount all other filesystems (except for NFS and /proc, which is already

# mounted). Contrary to standard usage,

# filesystems are NOT unmounted in single user mode.

# The 'no' applies to all listed filesystem types. See mount(8).

# Check to see if a full relabel is needed

# Update quotas if necessary

# Initialize pseudo-random number generator

# Configure machine if necessary.

# Clean out /.

# Do we need (w|u)tmpx files? We don't set them up, but the sysadmin might...

# Clean up /var.

# Clean up utmp/wtmp

# Clean up various /tmp bits

# Make ICE directory

# Start up swapping.

# Set up binfmt_misc

# Boot time profiles. Yes, this should be somewhere else.

# Now that we have all of our basic modules loaded and the kernel going,

# let's dump the syslog ring somewhere so we can find it later

# create the crash indicator flag to warn on crashes, offer fsck with timeout

# Let rhgb know that we're leaving rc.sysinit

[root@cobber7 ~]#


12、打出netstat -tan命令执行结果中以‘LISTEN’,后或跟空白字符结尾的行;


[root@cobber7 ~]# netstat -tan |grep LISTEN[[:space:]]*

tcp        0      0 127.0.0.1:25151             0.0.0.0:*                   LISTEN

tcp        0      0 0.0.0.0:111                 0.0.0.0:*                   LISTEN

tcp        0      0 0.0.0.0:53905               0.0.0.0:*                   LISTEN

tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN

tcp        0      0 127.0.0.1:631               0.0.0.0:*                   LISTEN

tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN

tcp        0      0 :::41575                    :::*                        LISTEN

tcp        0      0 :::873                      :::*                        LISTEN

tcp        0      0 :::111                      :::*                        LISTEN

tcp        0      0 :::80                       :::*                        LISTEN

tcp        0      0 :::22                       :::*                        LISTEN

tcp        0      0 ::1:631                     :::*                        LISTEN

tcp        0      0 :::443                      :::*                        LISTEN

[root@cobber7 ~]#


13、添加用户bash, testbash, basher, nologin (此一个用户的shell为/sbin/nologin),而后找出当前系统上其用户名和默认shell相同的用户的信息;


[root@SeaFile ~]# grep  "\(bash\):.*\1"  /etc/passwd

bash:x:3006:3006::/home/bash:/bin/bash

testbash:x:3007:3007::/home/testbash:/bin/bash

[root@SeaFile ~]#

还要继续学习啊。