shell基础练习题讲解

1037774765 克隆

1.创建一个用户redhat,其ID号为1001,基本组为like(组ID为2002),附近租为linux。

groupadd -g 2002 like
groupadd linux
useradd -u 1001 -g 2002 -G linux redhat

2.创建一个用户fedora,其注释信息为Fedora Commuity,默认shell为sh

man useradd 查看到-c是注释

useradd -c "Fedora Commuity" -s /bin/sh fedora
tail -l /etc/passwd

3.修改redhat的ID号为3003,基本组为linux,附加组为like和fedora

groupadd fedora
usermod -u 3003 -g linux -G like,fedora redhat

id redhat
id -u redhat

4.给fedora加密码123.com之后锁定fedora账号,然后再解锁fadora账号

usermod -L redhat 锁定
usermod -U redhat 解锁

5.讲123.com 作为redhat的密码,并且不需要进行交互(既不给你提示新旧密码,并让你输入密码)
passwd redhat

下面的方法是不需要输入旧的密码
passwd --stdin redhat 除上面那种方法外,这个可以输入一次设置密码成功

下面的方法也可以
echo -e "123.com\n123.com" -e的意思讲\n转变成回车的功能
echo -e "123.com\n123.com" |passwd redhat

同理
echo -e "123.com |passwd --stdin redhat

6.添加系统用户hbase,并不允许登陆

useradd -r -s /sbin/nologin hbase r代表系统用户

grep hbase /etc/passwd


7.新建一个没有家目录的用户apache

useradd -M apache

8.复制/etc/skel的内容到/home/apache中
9.改变/home/apache及其内部文件的熟悉属组均为apache

mkdir /home/apache
chown apache:apache /home/apache/
cp /etc/skel/.bash* /home/apache/
ls -la /home/apache/ 这里会看到有root的组是不对的,还需要下面
chown -R apache:apache /home/apache/

 

10.改变/home/apache及内部的文件的权限属性,属组和其他用户没有
任何访问权限,查看apache的账号属性
11./etc/passwd的文件描述的是什么信息?每行内容各个字段的意义是什么?

12.sudo的配置文件是什么?如何对配置文件进行编辑
ls /etc/sudoers
visudo 这个就可以打开这个配置文件

13.简述inode是什么?
存一下目录,文件的属性信息的,包括属主,属组和三个time,还包括他在磁盘具体的哪个块

14.发现磁盘空间不足的原因有两个,是磁盘空间不够,或者是inode满了
du -h 查看空间
du -i 查看inode


15.fdisk -l /dev/sda 列出磁盘所有的分区*代表引导分区

16.blkid 查看UUID
mount UUID="复制粘贴" /mnt/ 使用uuid挂载


19.怎样将你的cdrom开机自动挂载到/mnt/cdrom目录下?

vim /etc/fstab


20.mount -t vfat /dev/sdd1 定义U盘的文件系统,如果不可以识别U盘


21.查看网卡的运行状态
mii-tool eth0

在CentOS下可以使用mkpasswd命令自动生成密码,安装包名称为expect
mkpasswd -l 20 定义密码长度为20

mkpasswd -l 20 -d 数字有多少个


mkpasswd -l 20 -d -C 5 -c 8 -s 0 C是大写字母,c是小写,s特殊字符

find . -type f -size -4k |xargs du -sh 查找大小为4k的文件

find . maxdepth 1 -type f -size -4k 在当前目录下第一层目录下查找

find . maxdepth 1 -type f -size -4k |xargs -i mv {} /tmp/

mv `find . maxdepth 1 -type f -size -4k` /tmp/ 和上面的意思一样
``这个符号的意思是,里面的结果作为前面那个命令的参数


for c in a b c d e f g;do echo $c; done 按顺序输出


for c in a b c d e f g;do tar czvf install.log.$c.tar.gz install.log ; done

for c in {a..g}; do echo $c; done 和上面的一样


seq 1 10 列数字的

for i in {1..10}; do echo $i; done


===
修改远程连接端口
vi /etc/ssh/sshd_config 在里面找到Port修改也可以添加

netstat -lnp 查看监听的端口


srvice sshd status 查看他的状态

grub-md5-crypt md5生成的密码

posted @ 2015-10-04 20:54  chenshoubiao  阅读(270)  评论(0编辑  收藏  举报