程序員對(duì)Linux系統(tǒng)應(yīng)該都有所耳聞,但是,許多程序員剛從大學(xué)畢業(yè)或已經(jīng)工作了幾年, 仍然沒(méi)有學(xué)Linux。 我個(gè)人認(rèn)為L(zhǎng)inux系統(tǒng)應(yīng)該是程序員必需的專(zhuān)業(yè)技能。 如果您在面試中或在工作中,了解Linux的人會(huì)有優(yōu)勢(shì)。 今天,我將分享一些有關(guān)Linux面試的常見(jiàn)問(wèn)題。
Linux面試題:
1、請(qǐng)問(wèn)Linux系統(tǒng)中比較常見(jiàn)命令是?
修改文件vi創(chuàng)建文件touch filename cat > filename查找日志cat xx.log | grep 'xxx' | more刪除文件rm -rf查看端口進(jìn)程netstat -nlp | grep :3306 kill pid解壓命令tar.gz tar -xzvf file.tar.gz
2、你是如何查找一個(gè)Java線程的資源耗用呢?
jps -lvm或者可以ps -ef | grep java查看當(dāng)前機(jī)器上運(yùn)行的Java程序員應(yīng)用進(jìn)行了jstack java應(yīng)用進(jìn)行ID | grep 線程ID的16進(jìn)制top -Hp pid可以查看進(jìn)程Java所有線程的資源耗用3、說(shuō)一下Load過(guò)高的可能性有哪些?
對(duì)于cpu load的飆升,有可能就是和full gc的次數(shù)增大有關(guān),還有就是可能和死循環(huán)有關(guān)。
4、如果你發(fā)現(xiàn)硬盤(pán)空間不夠,你是怎么快速找出占用空間最大的文件?
我們可以使用find -ytpe f -size +100M | xargs du -h | sort -nr5、硬鏈接和軟鏈接有何區(qū)別?
硬鏈接:加入我們刪除一個(gè)硬鏈接文件并不影響其他有相同文件inode號(hào)的文件,不能對(duì)目錄進(jìn)行創(chuàng)建,只能對(duì)文件創(chuàng)建的。軟鏈接:刪除軟連接并不影響被指定向的文件,但是我們刪除被指向文件,則相關(guān)軟鏈接就為死鏈接了,可以對(duì)目錄和文件夾使用。
6、你是如何排查Java線上服務(wù)問(wèn)題?
查看日志工具more或者less還有查看最新內(nèi)容tail -f filenamejvm常用的jps -v | grep keyword死鎖常用的jps -v和jstack -l pid線程block和線程數(shù)暴漲使用jstack -l pid | wc -l