日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > linux >内容正文

linux

「面试必背」Linux面试题(2022最新版)

發(fā)布時(shí)間:2023/12/10 linux 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 「面试必背」Linux面试题(2022最新版) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

作為 Java 的從業(yè)者,在找工作的時(shí)候,一定會(huì)被問(wèn)及關(guān)于Linux 相關(guān)的知識(shí)。Linux知識(shí)的掌握程度,在很多面試官眼里是候選人技術(shù)深度的一個(gè)重要評(píng)判標(biāo)準(zhǔn)。在這里我們將詳細(xì)的整理常見(jiàn)的Linux面試題目, 提供給大家學(xué)習(xí)參考。

1. 什么是Linux

Linux是一套免費(fèi)使用和自由傳播的類似Unix操作系統(tǒng),一般的WEB項(xiàng)目都是部署都是放在Linux操作系統(tǒng)上面。 Linux是一個(gè)基于POSIX和Unix的多用戶、多任務(wù)、支持多線程和多CPU的操作系統(tǒng)。它能運(yùn)行主要的Unix工具軟件、應(yīng)用程序和網(wǎng)絡(luò)協(xié)議。它支持32位和64位硬件。Linux繼承了Unix以網(wǎng)絡(luò)為核心的設(shè)計(jì)思想,是一個(gè)性能穩(wěn)定的多用戶網(wǎng)絡(luò)操作系統(tǒng)。

2. Windows和Linux的區(qū)別

  • Windows是微軟開(kāi)發(fā)的操作系統(tǒng),民用操作系統(tǒng),可用于娛樂(lè)、影音、上網(wǎng)。 Windows操作系統(tǒng)具有強(qiáng)大的日志記錄系統(tǒng)和強(qiáng)大的桌面應(yīng)用。好處是它可以幫我們實(shí)現(xiàn)非常多絢麗多彩的效果,可以非常方便去進(jìn)行娛樂(lè)、影音、上網(wǎng)。
  • Linux的應(yīng)用相對(duì)單純很多,沒(méi)有什么絢麗多彩的效果,因此Linux的性能是非常出色的,可以完全針對(duì)機(jī)器的配置有針對(duì)性的優(yōu)化,
  • 簡(jiǎn)單來(lái)說(shuō)Windows適合普通用戶進(jìn)行娛樂(lè)辦公使用,Linux適合軟件開(kāi)發(fā)部署

3. Unix和Linux有什么區(qū)別?

4. 什么是 Linux 內(nèi)核?

Linux 系統(tǒng)的核心是內(nèi)核。內(nèi)核控制著計(jì)算機(jī)系統(tǒng)上的所有硬件和軟件,在必要時(shí)分配硬件,并根據(jù)需要執(zhí)行軟件。

  • 系統(tǒng)內(nèi)存管理
  • 應(yīng)用程序管理
  • 硬件設(shè)備管理
  • 文件系統(tǒng)管理

5. Linux的基本組件是什么?

就像任何其他典型的操作系統(tǒng)一樣,Linux擁有所有這些組件:內(nèi)核,shell和GUI,系統(tǒng)實(shí)用程序和應(yīng)用程序。Linux比其他操作系統(tǒng)更具優(yōu)勢(shì)的是每個(gè)方面都附帶其他功能,所有代碼都可以免費(fèi)下載。

6. Linux 的體系結(jié)構(gòu)

從大的方面講,Linux 體系結(jié)構(gòu)可以分為兩塊:

7. BASH和DOS之間的基本區(qū)別是什么?

8. Linux 開(kāi)機(jī)啟動(dòng)過(guò)程?

  • 1、主機(jī)加電自檢,加載 BIOS 硬件信息。
  • 2、讀取 MBR 的引導(dǎo)文件(GRUB、LILO)。
  • 3、引導(dǎo) Linux 內(nèi)核。
  • 4、運(yùn)行第一個(gè)進(jìn)程 init (進(jìn)程號(hào)永遠(yuǎn)為 1 )。
  • 5、進(jìn)入相應(yīng)的運(yùn)行級(jí)別。
  • 6、運(yùn)行終端,輸入用戶名和密碼。

9. Linux系統(tǒng)缺省的運(yùn)行級(jí)別?

  • 關(guān)機(jī)。
  • 單機(jī)用戶模式。
  • 字符界面的多用戶模式(不支持網(wǎng)絡(luò))。
  • 字符界面的多用戶模式。
  • 未分配使用。
  • 圖形界面的多用戶模式。
  • 重啟。

10. Linux 使用的進(jìn)程間通信方式?

  • 1、管道(pipe)、流管道(s_pipe)、有名管道(FIFO)。
  • 2、信號(hào)(signal) 。
  • 3、消息隊(duì)列。
  • 4、共享內(nèi)存。
  • 5、信號(hào)量。
  • 6、套接字(socket) 。

11. Linux 有哪些系統(tǒng)日志文件?

比較重要的是 /var/log/messages 日志文件。

12. Linux系統(tǒng)安裝多個(gè)桌面環(huán)境有幫助嗎?

通常,一個(gè)桌面環(huán)境,如KDE或Gnome,足以在沒(méi)有問(wèn)題的情況下運(yùn)行。盡管系統(tǒng)允許從一個(gè)環(huán)境切換到另一個(gè)環(huán)境,但這對(duì)用戶來(lái)說(shuō)都是優(yōu)先考慮的問(wèn)題。有些程序在一個(gè)環(huán)境中工作而在另一個(gè)環(huán)境中無(wú)法工作,因此它也可以被視為選擇使用哪個(gè)環(huán)境的一個(gè)因素。

13. 什么是交換空間?

交換空間是Linux使用的一定空間,用于臨時(shí)保存一些并發(fā)運(yùn)行的程序。當(dāng)RAM沒(méi)有足夠的內(nèi)存來(lái)容納正在執(zhí)行的所有程序時(shí),就會(huì)發(fā)生這種情況。

14. 什么是root帳戶

root帳戶就像一個(gè)系統(tǒng)管理員帳戶,允許你完全控制系統(tǒng)。你可以在此處創(chuàng)建和維護(hù)用戶帳戶,為每個(gè)帳戶分配不同的權(quán)限。每次安裝Linux時(shí)都是默認(rèn)帳戶。

15. 什么是LILO?

LILO是Linux的引導(dǎo)加載程序。它主要用于將Linux操作系統(tǒng)加載到主內(nèi)存中,以便它可以開(kāi)始運(yùn)行。

16. 什么是BASH?

BASH是Bourne Again SHell的縮寫(xiě)。它由Steve Bourne編寫(xiě),作為原始Bourne Shell(由/ bin /sh表示)的替代品。它結(jié)合了原始版本的Bourne Shell的所有功能,以及其他功能,使其更容易使用。從那以后,它已被改編為運(yùn)行Linux的大多數(shù)系統(tǒng)的默認(rèn)shell。

17. 什么是CLI?

18. 什么是GUI?

19. 開(kāi)源的優(yōu)勢(shì)是什么?

開(kāi)源允許你將軟件(包括源代碼)免費(fèi)分發(fā)給任何感興趣的人。然后,人們可以添加功能,甚至可以調(diào)試和更正源代碼中的錯(cuò)誤。它們甚至可以讓它運(yùn)行得更好,然后再次自由地重新分配這些增強(qiáng)的源代碼。這最終使社區(qū)中的每個(gè)人受益。

20. GNU項(xiàng)目的重要性是什么?

這種所謂的自由軟件運(yùn)動(dòng)具有多種優(yōu)勢(shì),例如可以自由地運(yùn)行程序以及根據(jù)你的需要自由學(xué)習(xí)和修改程序。它還允許你將軟件副本重新分發(fā)給其他人,以及自由改進(jìn)軟件并將其發(fā)布給公眾。

21. 簡(jiǎn)單 Linux 文件系統(tǒng)?

22. Linux 的目錄結(jié)構(gòu)是怎樣的?

23. 什么是 inode ?

24. 什么是硬鏈接和軟鏈接?

25. RAID 是什么?

26. 一臺(tái) Linux 系統(tǒng)初始化環(huán)境后需要做一些什么安全工作?

27. 什么叫 CC 攻擊?什么叫 DDOS 攻擊?

28. 什么是網(wǎng)站數(shù)據(jù)庫(kù)注入?

29. Shell 腳本是什么?

一個(gè) Shell 腳本是一個(gè)文本文件,包含一個(gè)或多個(gè)命令。作為系統(tǒng)管理員,我們經(jīng)常需要使用多個(gè)命令來(lái)完成一項(xiàng)任務(wù),我們可以添加這些所有命令在一個(gè)文本文件(Shell 腳本)來(lái)完成這些日常工作任務(wù)。

30.如何選擇 Linux 操作系統(tǒng)版本?

31. 如何規(guī)劃一臺(tái) Linux 主機(jī),步驟是怎樣?

32. 請(qǐng)問(wèn)當(dāng)用戶反饋網(wǎng)站訪問(wèn)慢,你會(huì)如何處理?

33. Linux 性能調(diào)優(yōu)都有哪幾種方法?

34. 基本命令

  • cd (change directory:英文釋義是改變目錄)切換目錄
  • pwd (print working directory:顯示當(dāng)前工作目錄的絕對(duì)路徑)
  • ls (ls:list的縮寫(xiě),查看列表)查看當(dāng)前目錄下的所有文件夾(ls 只列出文件名或目錄名)
  • ll (ll:list的縮寫(xiě),查看列表詳情)查看當(dāng)前目錄下的所有詳細(xì)信息和文件夾(ll 結(jié)果是詳細(xì),有時(shí)間,是否可讀寫(xiě)等信息)
  • touch (touch:創(chuàng)建文件)創(chuàng)建文件
  • mkdir (mkdir:創(chuàng)建目錄) 創(chuàng)建目錄
  • cat (concatenate:顯示或把多個(gè)文本文件連接起來(lái))查看文件命令(可以快捷查看當(dāng)前文件的內(nèi)容)(不能快速定位到最后一頁(yè))
  • more (more:更多的意思)分頁(yè)查看文件命令(不能快速定位到最后一頁(yè))
  • tail(尾巴) 查看文件命令(看最后多少行)
  • cp(copy單詞縮寫(xiě),復(fù)制功能)
  • mv(move單詞縮寫(xiě),移動(dòng)功能,該文件名稱功能)
  • rm(remove:移除的意思)刪除文件,或文件夾
  • fifind (fifind:找到的意思)查找指定文件或目錄
  • 回車:向下n行,需要定義,默認(rèn)為1行。
  • 空格鍵:向下滾動(dòng)一屏或Ctrl+F
  • B:返回上一層或Ctrl+B
  • q:退出more
  • less -m 顯示類似于more命令的百分比。
  • less -N 顯示每行的行號(hào)。(大寫(xiě)的N)
  • 兩參數(shù)一起使用如:less -mN 文件名,如此可分頁(yè)并顯示行號(hào)。
  • 空格鍵:前下一頁(yè)或page down。
  • 回車:向下一行。
  • b:后退一頁(yè) 或 page up。
  • q:退出。
  • d:前進(jìn)半頁(yè)。
  • u:后退半頁(yè)
  • tail -10 ;文件名 看最后10行
  • cp /opt/java/java.log /opt/logs/ ;把java.log 復(fù)制到/opt/logs/下
  • cp /opt/java/java.log /opt/logs/aaa.log ;把java.log 復(fù)制到/opt/logs/下并且改名為
  • aaa.log
  • cp -r /opt/java /opt/logs ;把文件夾及內(nèi)容復(fù)制到logs文件中
  • mv /opt/java/java.log /opt/mysql/ ;移動(dòng)文件到mysql目錄下
  • mv java.log mysql.log ;把java.log改名為mysql.log
  • -f或--force 強(qiáng)制刪除文件或目錄。刪除文件不包括文件夾的文件
  • -r或-R或--recursive 遞歸處理,將指定目錄下的所有文件及子目錄一并刪除。
  • -rf 強(qiáng)制刪除文件夾及內(nèi)容
  • rm 文件名 ;安全刪除命令 (yes刪除 no取消)
  • rm -rf 強(qiáng)制刪除文件夾及內(nèi)容
  • rm -rf * 刪除當(dāng)前目錄下的所有內(nèi)容。
  • rm -rf /* 刪除Linux系統(tǒng)根目錄下所有的內(nèi)容。系統(tǒng)將完蛋。vi (VIsual:視覺(jué))文本編輯器 類似win的記事本 (操作類似于地下的vim命令,看底下vim 的操
  • 作)
  • vim (VI IMproved:改進(jìn)版視覺(jué))改進(jìn)版文本編輯器 (不管是文件查看還是文件編輯 按 Shift + 上或
  • 者下可以上下移動(dòng)查看視角)
  • | 管道命令(把多個(gè)命令組合起來(lái)使用)
  • * 表示0~多個(gè)任意字符。
  • find -name 文件名;按照指定名稱查找在當(dāng)前目錄下查找文件
  • find / -name 文件名按照指定名稱全局查找文件
  • find -name '*文件名' ;任意前綴加上文件名在當(dāng)前目錄下查找文件
  • find / -name '*文件名*' ;全局進(jìn)行模糊查詢帶文件名的文件
  • 輸入”vim 文件名” 打開(kāi)文件,剛剛時(shí)是”一般模式”。
  • 一般模式:可以瀏覽文件內(nèi)容,可以進(jìn)行文本快捷操作。如單行復(fù)制,多行復(fù)制,單行刪除,多行刪除,(退
  • 出)等。
  • 插入模式:可以編輯文件內(nèi)容。
  • 底行模式:可以進(jìn)行強(qiáng)制退出操作,不保存 :q!
  • 可以進(jìn)行保存并退出操作 :wq
  • 按下”i”或”a”或”o”鍵,從”一般模式”,進(jìn)入”插入模式(編輯模式)”。
  • 在編輯模式下按”Esc” 即可到一般模式
  • 在一般模式下按”:”,冒號(hào)進(jìn)入底行模式。
  • 在一般模式下的快捷鍵
  • dd ;刪除一整行
  • X ;向前刪除 等同于windowns系統(tǒng)中的刪除鍵
  • x ;向后刪除和大寫(xiě)x相反方向
  • Ctrl + f ;向后看一頁(yè)
  • Ctrl + b ;向前看一頁(yè)
  • u ;撤銷上一步操作
  • /word ;向下查找word關(guān)鍵字 輸入:n查找下一個(gè),N查找上一個(gè)(不管是哪個(gè)查找都是全局查找 只不過(guò)
  • n的方向相反)
  • ?log ;向上查找log關(guān)鍵字 輸入:n查找上一個(gè),N查找下一個(gè)
  • :1,90s/redis/Redis/g ;把1-90行的redis替換為Redis。語(yǔ)法n1,n2s/原關(guān)鍵字/新關(guān)鍵字/g,n1
  • 代表其實(shí)行,n2代表結(jié)尾行,g是必須要的
  • :0 ;光標(biāo)移動(dòng)到第一行
  • ?;光標(biāo)移動(dòng)到最后一行
  • :300 ;光標(biāo)移動(dòng)到300行,輸入多少數(shù)字移動(dòng)到多少行
  • :w ;保存
  • :w! ;強(qiáng)制保存
  • :q ;退出
  • :q! ;強(qiáng)制退出
  • 5dd ;刪除后面5行,打一個(gè)參數(shù)為自己填寫(xiě)
  • 5x ;刪除此光標(biāo)后面5個(gè)字符
  • d1G ;刪除此光標(biāo)之前的所有
  • d0 ;從光標(biāo)當(dāng)前位置刪除到此行的第一個(gè)位置
  • yy ;復(fù)制
  • p ;在光標(biāo)的下面進(jìn)行粘貼
  • P ;在光標(biāo)的上門(mén)進(jìn)行粘貼grep (grep :正則表達(dá)式)正則表達(dá)式,用于字符串的搜索工作(模糊查詢)。不懂可以先過(guò)
  • yum install -y lrzsz 命令(實(shí)現(xiàn)win到Linux文件互相簡(jiǎn)單上傳文件)
  • tar (解壓 壓縮 命令)
  • ps (process status:進(jìn)程狀態(tài),類似于windows的任務(wù)管理器)
  • 管道命令的語(yǔ)法:命令1 | 命令2 | 命令3。
  • 單獨(dú)使用:
  • grep String test.java ;在test.java文件中查找String的位置,返回整行
  • 一般此命令不會(huì)單獨(dú)使用下面列幾個(gè)常用的命令(地下通過(guò)管道命令組合起來(lái)使用)
  • ps aux|grep java ;查找?guī)ava關(guān)鍵字的進(jìn)程
  • ll |grep java ;查找?guī)ava關(guān)鍵字的文件夾及文件
  • (實(shí)際上就是在Linux系統(tǒng)中下載了一個(gè)插件)下了了此安裝包后就可以實(shí)現(xiàn)win系統(tǒng)到linux之間拉文件拉
  • 文件
  • 等待下載完了就可以輸入:
  • rz 從win系統(tǒng)中選擇文件上傳到Linux系統(tǒng)中
  • sz 文件名 選擇Linux系統(tǒng)的文件復(fù)制到win系統(tǒng)中
  • 常用的組合命令:
  • -z 是否需要用gzip壓縮。
  • -c 建立一個(gè)壓縮文件的參數(shù)指令(create) –壓縮
  • -x 解開(kāi)一個(gè)壓縮文件的參數(shù)指令(extract) –解壓
  • -v 壓縮的過(guò)程中顯示文件(verbose)
  • -f 使用檔名,在f之后要立即接檔中(file)
  • 常用解壓參數(shù)組合:zxvf
  • 常用壓縮參數(shù)組合:zcvf
  • 解壓命令:
  • tar -zxvf redis-3.2.8.tar.gz ;解壓到當(dāng)前文件夾
  • tar -zxvf redis-3.2.8.tar.gz -C /opt/java/ ;解壓到指定目錄
  • 壓縮命令:(注意 語(yǔ)法有點(diǎn)反了,我反正每次都搞反)
  • tar -zcvf redis-3.2.8.tar.gz redis-3.2.8/ ;語(yǔ)法 tar -zcvf 壓縮后的名稱 要壓縮的
  • 文件
  • tar -zcvf 壓縮后的文件(可指定目錄) 要壓縮的文件(可指定目錄)
  • 常用組合:ps -ef 標(biāo)準(zhǔn)的格式查看系統(tǒng)進(jìn)程
  • ps -aux BSD格式查看系統(tǒng)進(jìn)程
  • ps -aux|grep redis BSD格式查看進(jìn)程名稱帶有redis的系統(tǒng)進(jìn)程(常用技巧)
  • //顯示進(jìn)程的一些屬性,需要了解(ps aux)
  • USER //用戶名
  • PID //進(jìn)程ID號(hào),用來(lái)殺死進(jìn)程的
  • %CPU //進(jìn)程占用的CPU的百分比
  • %MEM //占用內(nèi)存的的百分比clear 清屏命令。(強(qiáng)迫癥患者使用)
  • ifconfifig命令
  • ping (用于檢測(cè)與目標(biāo)的連通性)語(yǔ)法:ping ip地址
  • free 命令 (顯示系統(tǒng)內(nèi)存)
  • top 命令
  • netstat 命令
  • VSZ //該進(jìn)程使用的虛擬內(nèi)存量(KB)
  • RSS //該進(jìn)程占用的固定內(nèi)存量(KB)
  • STAT //進(jìn)程的狀態(tài)
  • START //該進(jìn)程被觸發(fā)啟動(dòng)時(shí)間
  • TIME //該進(jìn)程實(shí)際使用CPU運(yùn)行的時(shí)間
  • kill 命令用來(lái)中止一個(gè)進(jìn)程。(要配合ps命令使用,配合pid關(guān)閉進(jìn)程)
  • (ps類似于打開(kāi)任務(wù)管理器,kill類似于關(guān)閉進(jìn)程)
  • kill -5 進(jìn)程的PID ;推薦,和平關(guān)閉進(jìn)程
  • kill -9 PID ;不推薦,強(qiáng)制殺死進(jìn)程
  • 用于查看和更改網(wǎng)絡(luò)接口的地址和參數(shù),包括IP地址、網(wǎng)絡(luò)掩碼、廣播地址,使用權(quán)限是超級(jí)用戶。(一般是用來(lái)查看的,很少更改)

35.Linux 中主要有哪幾種內(nèi)核鎖?

36.Linux 中的用戶模式和內(nèi)核模式是什么含意?

37.怎樣申請(qǐng)大塊內(nèi)核內(nèi)存?

38.用戶進(jìn)程間通信主要哪幾種方式?

39.通過(guò)伙伴系統(tǒng)申請(qǐng)內(nèi)核內(nèi)存的函數(shù)有哪些?

40.Linux 虛擬文件系統(tǒng)的關(guān)鍵數(shù)據(jù)結(jié)構(gòu)有哪些?(至少寫(xiě)出四個(gè))

41.對(duì)文件或設(shè)備的操作函數(shù)保存在那個(gè)數(shù)據(jù)結(jié)構(gòu)中?

42.Linux 中的文件包括哪些?

43.創(chuàng)建進(jìn)程的系統(tǒng)調(diào)用有那些?

44.調(diào)用 schedule()進(jìn)行進(jìn)程切換的方式有幾種?

45.Linux 調(diào)度程序是根據(jù)進(jìn)程的動(dòng)態(tài)優(yōu)先級(jí)還是靜態(tài)優(yōu)先級(jí)來(lái)調(diào)度進(jìn)程的?

46.進(jìn)程調(diào)度的核心數(shù)據(jù)結(jié)構(gòu)是哪個(gè)?

47.如何加載、卸載一個(gè)模塊?

48.模塊和應(yīng)用程序分別運(yùn)行在什么空間?

49.Linux 中的浮點(diǎn)運(yùn)算由應(yīng)用程序?qū)崿F(xiàn)還是內(nèi)核實(shí)現(xiàn)?

50.模塊程序能否使用可鏈接的庫(kù)函數(shù)?

51.TLB 中緩存的是什么內(nèi)容?

52.Linux 中有哪幾種設(shè)備?

53.字符設(shè)備驅(qū)動(dòng)程序的關(guān)鍵數(shù)據(jù)結(jié)構(gòu)是哪個(gè)?

54.設(shè)備驅(qū)動(dòng)程序包括哪些功能函數(shù)?

55.如何唯一標(biāo)識(shí)一個(gè)設(shè)備?

56.Linux 通過(guò)什么方式實(shí)現(xiàn)系統(tǒng)調(diào)用?

57.Linux 軟中斷和工作隊(duì)列的作用是什么?

感謝閱讀,由于篇幅有限以上面經(jīng)資料博主已經(jīng)整理打包好了,這些知識(shí)點(diǎn)的導(dǎo)圖和問(wèn)題的答案詳解的PDF文檔都可以免費(fèi)分享給大家,點(diǎn)贊收藏文章后,私信【資料】免費(fèi)領(lǐng)取!

總結(jié)

以上是生活随笔為你收集整理的「面试必背」Linux面试题(2022最新版)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。