LINUX
初赛操作题汇总
一、用户和工作组相关设置。
1、
创建用户jack;
2、
指定jack1的用户目录为/var/jack;
3、
jack的用户ID为1400;
4、
jack的初始组属于bin;
答案:
useradd –d /var/jack –u 1400 –g bin jack
二、目录相关设置。
1、
创建目录/opt2;
2、
设置/opt2目录的工作组为sysadmin;
3、
设置/opt2目录的工作组可读、可写及可执行,而其他组无任何权限;
4、
在/opt2目录下生成一空文件empty,并设置该文件的所有者为jack。
答案:
1
、
mkdir /opt2
2
、
groupadd sysadmin #
如果没有此组就创建一个吧,然后
chgrp sysadmin /opt2
3
、
chmod 070 /opt2
或
chmod u-r-w-x g+r+w+x o-r-w-x /opt2
4
、
touch /opt2/empty
然后
chown jack /opt2/empty
三、编写shell脚本/exam.sh,实现以下几个功能。
1、
输出“Hello,my name is Peter.”;
2、
生成一新文件/hello,第一行为“Hello,my name is Peter.”;
3、
查找/etc/passwd文件中包含root字符串的行,保存在/hello的第二行;
4、
使/exam.sh可以执行,并执行该程序。
答案:
#
脚本
exam.sh
内容如下:
echo “Hello,my name is Peter.”
echo “Hello,my name is Peter.” > /hello
cat /etc/passwd |grep root >> /hello
#
Chmod u+x exam.sh
./exam.sh
四、软件安装和卸载。
1、
查询/bin/ls命令,属于哪些个rpm包,并将查询结果写到/project/rpm.txt文件中;
2、
查询zip软件中,安装到哪些目录及有哪些文件,并将查询结果追加写到/project/rpm.txt;
3、
查询/bin/rpm命令详细情况,如rpm命令的版本、软件包、安装时间、编译时间及协议等,并将查询结果追加写到/project/rpm.txt;
答案:
1
、
rpm –qf /bin/ls > /project/rpm.txt
2
、
rpm –ql zip >> /project/rpm.txt
3
、
rpm –qi rpm >>/project/rpm.txt
五、文件系统和磁盘管理。
1、
创建1个 800M 的分区,修改其分区ID号为LVM(8e);
2、
创建3个1000M的分区,使其分区ID号都为RAID(fd);
3、
创建1个500M的分区,修改其分区ID号为swap(82);
4、
将以上所有分区信息写入到内核,让其生效。
答案:
1
、
fdisk /dev/sdb,
此处
sdb
可能不同,看具体情况了
使用
n
选项,添加
1
个
800M
新分区,
3
个
1000M
新分区,
1
个
500M
使用
l
选项,修改这分区的
ID
,
最后
W
保存并退出
六、文件和目录相关设置。
1、
用find命令在/etc目录下,查找所有以.conf结尾的文件或目录,并将查询结果写入新文件/tmp/find.log;
2、
用which命令查找tail程序所在的路径,并将查询结果写入新文件/tmp/testwhich;
3、
用locate命令查找config字符串,只显示前10个满足条件的内容,并将查询结果写入新文件/tmp/testlocate。
答案:
find /etc –name “*.conf” > /tmp/find.log
which tail > /tmp/testwhich
locate –n 10 config > /tmp/testlocate
七、编写一个shell脚本。
1、
通过调用环境变量的方式,显示当前用户的用户名和主机名;
2、
查看/etc/passwd文件,显示当前登录用户的详细信息;
3、
查看当前用户的最后登录的时间及IP地址信息。
答案:
#
脚本内容如下
echo $LOGNAME
echo $HOSTNAME
cat /etc/passwd | grep $LOGNAME
who | grep $LOGNAME | cut –f11-20 –d “ ” | head –n 1
ifconfig | grep “inet addr”
#
八、用户和组的管理。
1、
建立工作组sysadmin;
2、
建立用户linuxfans,其基本组为sysadmin;
3、
linuxfans的默认shell为csh;
4、
linuxfans把mail作为其附属组。
答案:
groupadd sysadmin
useradd –g sysadmin –s /bin/csh –G mail linuxfans
九、Linux的系统引导。
1、
把系统引导的默认运行级别设置为运行级别3;
2、
禁止所有用户使用ctrl+alt+del键关闭系统;
3、
禁止xinetd服务,在任何运行级别,启动时自动运行;
4、
设置grub启动管理器的超时时间为30秒。
答案:
1、vi /etc/inittab,修改id:5:initdefault:中的5为3
2、同上修改/etc/inittab,将ca:ctrlaltdel:/sbin/shutdown –t3 –r -now用#号行注释掉
3、
chkconfig xinetd on
或
ntsysv --level 0123456
再选中
xinetd
即可
4、修改vi /boot/grub/grub.conf文件,timeout=30
十、为根分区创建磁盘配额。
1、
为根分区创建磁盘配额,并设置aa1-aa50等50个用户的磁盘配额的软配额为 1000M ,硬配额为2000M;
2、
设置aa1-aa50的i节点软限制为2000,硬限制为5000;
3、
并设置aa1-aa50用户的限制天数为5天。
答案:
1
、
vi /etc/fstab
在根分区的
defaults
选项后面加入
,usrquota,grpquota
选项
2
、重启挂载根分区;
mount -o remount /
成功后可采用
mount
命令查看,如果在根分区后面,有
usrquota,grpquota
这两个选项的话,就表示成功
3
、创建配额文件。
quotacheck -cuvgmf /
4
、创建配额用户。
for i in $(seq 1 50)
do
useradd aa$i
done
当然如果不会用
for
语句,就需要一条一条的创建了。
5
、创建用户配额
edquota -u aa1
内容如下。注意以磁盘限额是以
K
为单位。
1000000 2000000 2000 5000
6
、复制
aa1
配额到其它用户
for i in $(seq 2 50)
do
edquota -p aa1 aa$i
done
当然也可以采用
edquota -p aa1 aa2
edquota -p aa1 aa3
这项命令实现。
7
、设置配额的天数
edquota -t
将
7
天改为
5
天即可。
其中本题没有说一定要创建组的配额文件,所以创不创建组都是对的。