*1、單選題(共20題,每題1分,共20分)linux
1.從後臺運行程序myprog,正確的命令是( D )
A、./myprog! B、./myprog C、./myprog@ D、./myprog&
2.當運行在多用戶模式下時,能夠切換多少虛擬用戶終端( B )
A、3 B、6 C、12 D、1
3.若要使用進程名來結束進程,應使用( D )命令。
A、ps -d B、psfree C、profree D、kill
4.若一臺計算機的內存爲128MB,則交換分區的大小一般是( C )
A、64MB B、128MB C、256MB D、512MB
5.當字符串用單引號括起來時,SHELL 將( C )
A、解釋引號內的特殊字符 B、執行引號中的命令
C、不解釋引號內的特殊字符 D、結束進程
6.用rm命令刪除非空目錄須要加上哪一個參數?( A )
A、r B、t C、c D、f
7.怎樣顯示當前目錄( A )
A、pwd B、cd C、who D、ls
8.下列哪個指令能夠用來切換至不一樣的 runlevels( B )
A、tel B、goto C、reboot D、telinit
9.下面說法中,錯誤的說法有( B )
①兩個用戶之間是獨立的,不管在任何條件下,均不可共用UID建立用戶
②在vi命令模式,能夠用yy複製當前行,並用p命令粘貼到須要的任意一行上
③硬盤分區後沒必要格式化、掛載也能使用
④Linux不能夠與MS-DOS、Windows等其餘操做系統共存於同一臺機器上
A、4 B、3 C、2 D、1
10.Redhat 9 不支持的安裝方式是( A )
A、經過Telnet進行網絡安裝 B、從本地硬盤驅動器進行安裝
C、經過NFS進行網絡安裝 D、經過HTTP進行網絡安裝
11.下列哪幾個符號是Linux通配符( B )
① # ② @ ③ ④ ? ⑤ &
A、①④⑤ B、③④ C、②④⑤ D、①③
12.欲查詢 bind 套件是否有安裝,可用下列那一指令( D )
A、rpm –ivh bind.rpm B、rpm -q bind.rpm
C、rpm -U bind.rpm D、rpm -q bind
13.Linux 文件系統的文件都按其做用分門別類地放在相關的目錄中,對於外部設備文件,通常應將其放在( A )目錄中
A、/dev B、/ect C、/bin D、/lib
14.下列( A )指令能夠用來顯示目前主機的路由表(routing table)
A、netstat -rn B、route C、 print route D、show ip route
15.在linux中觀看內存(物理內存、交換空間)的使用狀況的命令是( B )
A、top B、free C、last D、lastcomm
16.下面哪一個命令能夠分頁顯示大文本文件( C )
A、vi B、cat C、more D、tail
17.在從新啓動Linux 系統的同時把內存中的信息寫入硬盤,應使用( D )命令實現。
A、# reboot B、# halt C、# reboot D、# shutdown –r now
18.觀察系統當前進程的運行狀況的命令是( C )
A、free B、dmesg C、top D、last
19.如下哪一個命令是用來定義shell的全局變量( A )
A、export B、import C、set D、alias
20.Linux啓動的第一個進程init啓動的第一個腳本程序是( B )
A、/etc/fstab B、/etc/rc.d/init.d
C、/etc/inittab D、/etc/rc.d/rc.sysinit
2、判斷題(共1題,每題10分,共10分)
一、RedHat LINUX 安裝時自動建立了根用戶。 ( 正確 )
二、能改變用戶工做目錄到根目錄的命令是 cd . 。 ( 錯誤 )
三、Linux 中的超級用戶爲root,登錄時不須要口令。 ( 錯誤 )
四、cat filename.txt | more可實現分頁地查看一個大文件的內容。 ( 正確 )
五、命令 # echo \$HOME 能夠輸出用戶的家目錄。 ( 錯誤 )
6.、redhat 系統中,默認狀況下根口令沒有字符長短的的限制,可是必須把口令輸入兩次;若是兩次輸入的口令不同,安裝程序將會提示用戶從新輸入口令。 ( 錯誤 )
七、pwd命令可用於肯定當前目錄。 ( 正確 )
八、find命令中能夠複製查找到的文件到指定目錄。 ( 正確 )
九、RedHat Linux 使用 ls -all 命令將列出當前目錄中的文件和子目錄名。 ( 錯誤 )
十、Linux系統包括虛擬終端,圖形界面終端有 6 個。 ( 正確 )
得分 評卷人shell
3、填空題(共15題,每題1分,共15分)編程
一、某文件的權限爲:drw-r--r--,用數值形式表示該權限,則用八進制數表示爲 644 ,該文件屬性是 目錄文件 。
二、在Linux系統中,以 文件 方式訪問設備,用i節點來標識每一個文件。
三、在Linux中,用戶可經過ln命令來建立文件連接。連接有兩種,其中硬連接要求連接文件和被連接文件必須位於同一個文件系統中,而且不能連接目錄。而符號連接則不存在這一問題。
四、在Linux中,可以使用rmdir命令來刪除指定目錄。但它要求一個目錄被刪除以前必須是空的。而另外一刪除命令rm則無此限制。但操做者必須是對當前目錄有寫權限的全部使用者,並且刪除某目錄時也必須具備對該目錄的 父目錄 具備寫權限。
五、若是要禁止某個賬戶登陸,須要將文件/etc/passwd中對應賬號的 x 改成 。若是要爲用戶指定新的shell,最本質的作法就是修改 /etc/passwd 文件。
六、 /sbin 目錄用來存放系統管理員使用的管理程序。
七、查看硬盤的剩餘空間,可使用命令 df ,用於檢查磁盤分區和進行磁盤分區的命令則應使用 fdisk 。
八、用於檢查編譯器版本的命令是 gcc -v 。
九、下面命令實現的功能是:對命令中的兩個文件的行數、詞數、字符數進行統計 。
wc /usr/man/man1/ {test1.txt,testA.sh}
九、【答案】統計/usr/man/man目錄下的「test1.txt」文件和「testA.sh」文件的行數、詞數、字符數。
十、利用管道技術統計當前目錄下有多少個文件,該命令是 ls ./ | wc –w 。 bash
得分 評卷人網絡
4、簡答題(每小題5分,共20分)運維
請簡述Linux操做系統有什麼優勢?
答:Linux的主要優勢包括:
· 提供了先進的網絡支持:內置TCP/IP協議;
·真正意義上的多任務、多用戶做系統;
·與UNIX系統在源代碼級兼容,符合IEEE POSIX標準;
·支持數十種文件系統格式;
·開放源代碼,用戶能夠本身對系統進行改進;
·採用先進的內存管理機制,更加有效地利用物理內存。ide
3.簡述crontab的做用和概念。
答:指定使用者在固定時間執行程序,換句話說,即便用者的時程表。 -u user是指設定指定 user 的時程表,這個前提是你必需要有其權限(好比說是 root)纔可以指定他人的時程表。若是不使用 -u user 的話,就是表示設定本身的時程表。 函數
4.簡述在Linux系統中外部存儲設備的使用方法,若是要自動安裝文件系統,應修改什麼配置文件?
答:在Linux中,沒有盤符的概念,對於外部存儲設備,如附加的硬盤,光盤和u盤等,都要用mount掛載命令來爲存儲設備指定一個目錄做爲掛載點,而後經過該掛載點來使用存儲設備。當要自動掛載時,要修改文件/etc/fstab。ui
得分 評卷人操作系統
5、綜合編程題(共3小題,第1題10分,第2題10分,第3題15分,本大題共35分)
一、【應用編程1】編寫一個shell腳本,可以輸出Fibonacci序列。具體要求顯示序列中的前15個數字:0,1,1,2,3,5,8,13……,該序列的特色是前二個數之和等於第三個數的值。
應用編程1答案:
#! /bin/bash
n=0
echo -ne "$n\t"
m=1
echo -ne "$m\t"
t=1
a=2
while [ $a -lt 15 ]
do
t=$(expr $n + $m)
echo -ne "$t\t"
a=expr $a + 1
n=$m
m=$t
done
【應用編程2】用shell編寫一個能夠打印出九九乘法表(上三角形式)的程序,程序執行結果以下:(3分)
應用編程2答案:
#! /bin/bash
for((i=1;i<=9;++i))
do
for((j=1;j<=9;j++))
do
if [ $j -ge $i ];
then echo -ne "$((ij))\t"
else echo -ne "\t"
fi
done
echo
done
【應用編程3】編寫shell程序,該程序能接收用戶從鍵盤輸入的10個整數,而後求出其總和、最大值及最小值。(4分)
應用編程3答案:
#! /bin/bash
for i in seq 10
do
read -p "please ip put a number:" var
echo $var >> tempfile.tmp
done
echo "min number is :"sort -n tempfile.tmp | head -n 1
echo "max number is :"sort -rn tempfile.tmp | head -n 1
echo "sum of all number:"awk '{ a+=$0}END{ print a}' tempfile.tmp
echo "#############tempfile.tmp的內容################"
cat tempfile.tmp
rm tempfile.tmp
echo
二、【運維管理腳本編程1】先設計一個shell程序,實現「在每個月的第1天和第15天的18點30分對/etc目錄下的內容進行壓縮並備份」的功能。備份的文件存放在/root/bak目錄裏,命名格式爲:yymmddetc。其中yy爲年,mm爲月,dd爲日。shell程序fileback存放在/usr/bin目錄下。最後再寫出添加定時任務、運行任務定時器crontab的命令序列。
運維管理腳本編程1答案:
首先,編寫shell程序fileback:
#! /bin/bash
DIRNAME=ls /root | grep bak
if [ -z "$DIRNAME" ] ; then
mkdir /root/bak
cd /root/bak
fi
YY=date +%y
MM=date +%m
DD=date +%d
BACKETC=$YY$MM$DDetc.tar.gz
tar -zcvf $BACKETC /etc
echo 「fileback finished!」
以後再編寫任務定時器:
echo "30 18 1,15 /bin/bash /usr/bin/fileback" >> /root/etcbakcron
crontab /root/etcbakcron
或使用crontab -e 命令後,再添加定時任務,以下所示:
30 18 1,15 /bin/bash /usr/bin/fileback
【運維管理腳本編程2】請編寫shell程序,功能上實現自動生成100個用戶帳號的用戶信息並寫入文件useradd.txt,帳號名爲stud1至stud50,用戶號UID從550到599,假定GID是610。
運維管理腳本編程2答案:
#! /bin/bash
uid=550
i=1
while [ $i -le 50 ];do
echo stud$i:x:$uid:610::/home/stud$i:/bin/bash >> useradd.txt
uid=$(($uid+1))
i=$(($i+1))
done
3.【綜合編程】編寫1個彈出式菜單的shell程序並實現其簡單的菜單功能:
MENU 1.copy 2.rename 3.remove 4.find 5.exit
即用戶按下數字1,則提示用戶輸入源和目的文件名後執行復制;輸入數字2,則提示用戶輸入要改名的文件或目錄後執行改名操做;輸入數字3,則提示用戶輸入要刪除的文件並執行刪除操做;輸入數字4,則提示用戶輸入要查找的文件並執行查找操做;輸入數字5,則退出該菜單shell程序的執行。
【綜合編程參考程序】
#! /bin/bash
clear
while [ 0 ]; do
echo ""
echo " menu "
echo " 1.copy 2.rename "
echo " 3.remove 4.find "
echo " 5.exit "
echo ""
echo
echo -n " select:"
read choice
echo
case $choice in
1)
echo -n "source file:"
read src
echo
echo -n "destination fold:"
read des
cp -arf $src $des
if $?; then
echo "copy sucessful!"
else
echo " copy fail"
fi;;
2)
echo -n "the file to be renamed:" read src echo echo -n "the new file:" read des mv $src $des if $?; then echo "rename sucessful!" else echo "rename fail" fi;;
3)
echo -n "the file to be removed:"
read src
rm -rf $src
if $?; then
echo "remove sucessful!"
else
echo " remove fail"
fi;;
echo -n "the file to be found:" read src find $HOME -name $src;;
5) exit;;
) echo "Invalid option";;
esac
done
注:第4題亦可以使用函數實現,若代碼結構和語法正確,且在功能上能實現預期效果,此題可賦滿分。
*