LINUX
初赛操作题汇总
一、
用户和工作组相关设置。
1、
创建用户
jack
;
2、
指定
jack1
的用户目录为
/var/jack
;
3、
jack
的用户
ID
为
1400
;
4、
jack
的初始组属于
bin
;
答案:
useradd �Cd /var/jack �Cu 1400 �Cg 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 �Cqf /bin/ls > /project/rpm.txt
2
、
rpm �Cql zip >> /project/rpm.txt
3
、
rpm �Cqi 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 �Cname “*.conf” > /tmp/find.log
which tail > /tmp/testwhich
locate �Cn 10 config > /tmp/testlocate
七、
编写一个
shell
脚本。
1、
通过调用环境变量的方式,显示当前用户的用户名和主机名;
2、
查看
/etc/passwd
文件,显示当前登录用户的详细信息;
3、
查看当前用户的最后登录的时间及
IP
地址信息。
答案:
#
脚本内容如下
echo $LOGNAME
echo $HOSTNAME
cat /etc/passwd | grep $LOGNAME
who | grep $LOGNAME | cut �Cf11-20 �Cd “ ” | head �Cn 1
ifconfig | grep “inet addr”
#
八、
用户和组的管理。
1、
建立工作组
sysadmin
;
2、
建立用户
linuxfans
,其基本组为
sysadmin
;
3、
linuxfans
的默认
shell
为
csh
;
4、
linuxfans
把
mail
作为其附属组。
答案:
groupadd sysadmin
useradd �Cg sysadmin �Cs /bin/csh �CG 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 �Ct3 �Cr -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
天即可。
其中本题没有说一定要创建组的配额文件,所以创不创建组都是对的。