1. 程式人生 > >linux面試題-基礎題1

linux面試題-基礎題1

 

第1章 基礎題1

1.1 在裝系統建立Linux分割槽時,一般至少需要建立兩個分割槽( )

A.FAT、NTFS   B. /usr、swap    C. /boot、swap  D.swap、/

 

1.2 將當前目錄下檔案test.txt改名為oldboy.txt

mv test.txt oldboy.txt
rename test oldboy test.txt
 

 

1.3 用你所知的方法在test.txt檔案中寫入內容:“Tomorrow is another day.”

echo "Tomorrow is another day." >test.txt

cat >test.txt<<EOF Tomorrow is another day. EOF cat >test.txt Tomorrow is another day.#需要手動輸入這一行,再回車,再按ctrl+d結束操作
 

1.4 Linux 屬於哪種型別的作業系統?( )

A、多使用者  B、多工  C、多執行緒   D、以上都是   E、以上都不是

 

1.5 Linux 作業系統的核心是什麼?( )

A、Shell   B、Kernel  C、Scripts  D、Terminal

 

1.6 挑出來一個與眾不同的來( )

A、HP-UX   B、AIX     C、Solaris  D、SUSE      E、Mac OS

 

1.7 如何更改Linux主機名?

#臨時生效
hostname note1
#永久生效
# vim /etc/sysconfig/network
HOSTNAME=note1 #修改這一行
 

 

1.8 如何用yum安裝一個軟體包?例如這個軟體是lrzsz。

#利用yum安裝,安裝後記得檢查
yum install -y lrzsz
rpm -qa lrzsz
 

 

1.9 說出你所知的Linux基礎優化項(不低於10個)

1.關iptables
2.關selinux
3.設定開機執行級別為3
4.精簡開機自啟動服務(network、ssh、crond、rsyslog、sysstat)
5.增大檔案描述符ulimit
6.做定時任務時間同步
7.禁止ping
8.優化核心引數
9.優化sshd服務(改埠,禁止空密碼、root遠端登入,不做DNS解析等)
10.bash安全(超時時間,歷史記錄等)
11.給grub選單加密碼
12.清除多餘的系統虛擬帳號
13.sudo授權(普通使用者能遠端管理伺服器)
14.中文字符集
15.定時清理郵件服務臨時目錄垃圾檔案
16.鎖定關鍵系統檔案,防止提權篡改
17.隱藏linux版本資訊的顯示
18.升級具有典型漏洞的軟體版本
 

 

1.10 簡述buffer與cache的區別?

寫資料到記憶體裡,這個資料的記憶體空間稱為緩衝區(buffer)

從記憶體讀取資料,這個資料的記憶體空間稱為快取區(cache)

 

1.11 用你所知的方法輸出test.txt檔案中第4行到第14行內容。

sed -n '4,15p' test.txt
awk 'NR>3&&NR<16' test.txt
head -14 test.txt |tail -11
 

 

1.12 已知/tmp 下已經存在test.txt 檔案,如何執行命令才能把/mnt/test.txt 拷貝到/tmp 下覆蓋掉/tmp/test.txt,而讓系統不提示是否覆蓋(root 許可權下)。

touch /tmp/test.txt
touch /mnt/test.txt
\cp /mnt/test.txt /tmp/#1、在cp命令前加上反斜槓
/bin/cp /mnt/test.txt /tmp/#2、寫cp命令的全路徑

#出現這個提示的原因是cp命令已設定了別名 [[email protected] ~]# alias cp#忽略別名的方法是在命令前加反斜槓,或者寫命令的全路徑 alias cp='cp -i'
 

 

1.13 描述 linux 執行級別 0-6 的各自含義

[[email protected] ~]# tail /etc/inittab 
# Default runlevel. The runlevels used are:
# 0 - halt (Do NOT set initdefault to this)#關機 # 1 - Single user mode#單使用者模式,可以更改root的密碼 # 2 - Multiuser, without NFS (The same as 3, if you do not have networking) # 3 - Full multiuser mode#完整的多使用者模式 # 4 - unused#未使用 # 5 - X11#桌面 # 6 - reboot (Do NOT set initdefault to this)#重啟 # id:3:initdefault:#系統的預設執行級別為3
 

 

1.14 用sed修改selinux檔案關掉,並通過其它命令臨時關掉

sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config#永久生效
setenforce 0#臨時生效
getenforce#檢視selinux的狀態
 

 

1.15 調整檔案描述符為65535永久生效

# ulimit [after user logoff and use cmd: ulimit -n to checkout]
/bin/echo '*         -     nofile        65535' >>/etc/security/limits.conf
*用來做所有使用者的限制
用 - 就表明同時設定了 soft 和 hard 的值
nofile - 開啟檔案的最大數目
<value> 65535
 

 

1.16 只把rsyslog,crond,network,sshd,sysstat服務開啟,其他的都關掉

chkconfig |grep -vE "sshd|network|crond|rsyslog|sysstat"|awk '{print "chkcon-fig",$1,"off"}'|bash
 

 

1.17  32 位和 64 位系統的區別及如何選擇?

1、區別

64位系統的優點:
CPU運算速度更快
支援更大的記憶體,32位系統最大支援的記憶體小於4G
64位系統可以更大更好的發揮硬體的效能
32位系統與之相反。
 

2、如何檢視

# uname -m#檢視系統的版本
x86_64#64位系統
i386/i686#32位系統
 

 

3、如何選擇。首選64位,原因:

伺服器記憶體需要很大
伺服器高效能非常重要,不發揮硬體效能,則浪費錢
現在的主流是虛擬化,32位無法支援虛擬化
 

 

1.18 請說出你上家公司用的什麼伺服器品牌、型別、作業系統

 

1.19 請說出下列萬用字元的含義

*所有字元

單個字元

註釋

|管道符

~當前使用者的家目錄

-上一次所在的目錄

$反而加變數名,如echo $LANG

/根,目錄的分隔符

{}裡面可以接不同的命令區塊或者內容序列,如echo {1..10}

非,取反

&&與,命令執行成功後,才執行下一條命令

||或,命令執行失敗後,才執行下一條命令

..上一級目錄

.當前目錄,也可以使檔案生效,等價於source

1>標準輸出重定向

>>標準輸出追加重定向

<0標準輸入重定向

<<標準輸入追加重定向

''單引號,所見即所得

""雙引號,具有變數置換功能,和不加引號具有相同功效

``尖角號,裡面寫命令,可以執行裡面的命令

# echo `hostname`
note1
# echo $(hostname)
note1
 

 

1.20 怎麼把重要檔案加鎖並檢視是否已經鎖定?比

如/etc/passwd、/etc/shadow/、/etc/group、/etc/gshadow
# chattr +i /etc/{passwd,shadow,group,gshadow}
# lsattr /etc/{passwd,shadow,group,gshadow}
----i--------e- /etc/passwd
----i--------e- /etc/shadow
----i--------e- /etc/group
----i--------e- /etc/gshadow

#chattr常用引數
-i immutable(不可變的)#給檔案加鎖
-a append only#只能向檔案追加資料