理論部分
請說出軟鏈接和硬鏈接的區(qū)別
概念:硬鏈接與源文件的inode節(jié)點號一樣和悦,而軟鏈接不一樣亦鳞,相當(dāng)于windows里的快捷方式坝冕。
分類:在linux中,分為硬鏈接和符號鏈接也就是軟鏈接
創(chuàng)建:ln命令默認(rèn)不帶參數(shù)創(chuàng)建的是硬鏈接,帶-s創(chuàng)建的是軟鏈接
特點:
A. 不能對目錄創(chuàng)建硬鏈接,但可以創(chuàng)建軟鏈接
B. 硬鏈接不可以跨文件系統(tǒng)褒傅,軟鏈接可以
C. 刪除硬鏈接支竹,對源文件和軟鏈接無影響
D. 刪除源文件目尖,對硬鏈接無影響
E. 刪除源文件和硬鏈接,軟鏈接失效
區(qū)域:硬鏈接用處不大,工作中主要是創(chuàng)建目錄的軟鏈接
描述ls-lhi輸出中掩浙,每一列的意義
33631870 –rw-r—r—root root 21 0ct 6 2020 oldboy.txt
第一列:索引節(jié)點
第二列:文件權(quán)限
第三列:屬主和屬組
第四列:大小
第五列:最后修改日期
第六列:文件名
- 什么是PATH環(huán)境變量遣蚀,它有什么作用
是命令所在的二進制文件。命令行的命令會從PATH路徑中查找玖喘,如果對應(yīng)的路徑找不到該命令就會報錯澎媒。
4.描述linux下文件刪除的原理
靜態(tài)文件:沒有進程或沒有程序運行的文件
所有硬鏈接數(shù)為0波桩,及所有硬鏈接被干掉戒努,包括自身储玫。
動態(tài)文件:有程序或進程運行的文件
i_link為0端礼,所有硬鏈接刪除喻括。
i_count為0腕侄,所有調(diào)用的進程或程序消除配喳。
- 企業(yè)故障案例2:往磁盤里寫入數(shù)據(jù)出現(xiàn) no space left on device 故障凳干,請寫出可能原因
磁盤滿的報錯晴裹,原因往往是inode被占滿了。df -i查看救赐,因為定時任務(wù)沒有加&>/dev/null涧团,定時任務(wù)執(zhí)行的時候把輸出給系統(tǒng)root發(fā)郵件。郵件服務(wù)默認(rèn)不開净响,這些給系統(tǒng)發(fā)的郵件就會堆在臨時目錄(大量小文件存在)。
- 企業(yè)故障案例3:tomcat服務(wù)器磁盤滿了喳瓣,臨時刪除對應(yīng)日志文件但是發(fā)現(xiàn)空間未釋放可能原因是馋贤?如何解決
可能的原因是有進程或程序正在運行或訪問,需要把所有調(diào)用的進程或程序消除i_count為0畏陕,所有硬鏈接刪除i_link為0配乓,然后再刪除源文件就可以釋放空間了
把日志文件刪除設(shè)置成定時任務(wù)并輸出到黑洞設(shè)備,不產(chǎn)生垃圾輸出惠毁。
- 企業(yè)故障案例4:定時任務(wù)的腳本手工可以執(zhí)行犹芹,但是放到定時任務(wù)里無法執(zhí)行,可能原因是什么
定時任務(wù)在執(zhí)行腳本的時候鞠绰,多數(shù)情況是沒有辦法加載環(huán)境變量腰埂,具體為cront執(zhí)行shell時只能識別為數(shù)不多的系統(tǒng)環(huán)境變量,普通的環(huán)境變量一般無法識別蜈膨,如果在編寫的腳本中執(zhí)行環(huán)境變量屿笼,最好使用export重新聲明下該變量牺荠,確保正常執(zhí)行。
- 如何快速查到ifconfig命令的全路徑(假如你不知道其路徑)
which ifconfig
- 查找/oldboy/目錄下所有文件驴一,并把文件中的[www.etiantian.org字符串替換成oldboydeu.com
find /oldboy/|sed “s#www.etiantian.org#oldboydeu.com”#g”
- 過濾出/etc/services文件包含3306或1521兩數(shù)據(jù)庫端口的行的內(nèi)容
cat /etc/services|egrep “3306|1521”
- 請將ifconfig eth0 和ip add結(jié)果中的eth0網(wǎng)卡對應(yīng)ip地址取出(不低于兩種方法)
ifconfig eth0|grep -o "10.0.0.200"
ifconfig eth0|awk -F'[ :]+' 'NR==2{print $3}'
ifconfig eth0|sed -n “/10.0.0.200/p”
ip add|grep -o "10.0.0.200"
ip add|awk -F'[ :/]+' 'NR==9{print $3}'
ip add|sed -n “/10.0.0.200/p”
11.某系統(tǒng)管理員需每天做一定的重復(fù)工作休雌,請按照下列要求,編寫一個解決方案肝断,請按步驟寫清楚每一步操作
(1) 在下午4:50刪除/abc目錄下的全部子目錄和全部文件
50 16 * * * /usr/bin/ rm -fr /abc/* &>/dev/null
(2) 每逢星期一下午五點將/data目錄下的所有目錄和文件歸檔壓縮為當(dāng)天日期命名的tar.gz結(jié)尾打包文件
00 17 * * */1 /uer/bin tar zcf /data/data_$(date +%F).tar.gz /data &>/dev/null
15.linux下通過mkdir命令創(chuàng)建一個/oldboy/ett,它的硬鏈接數(shù)是多少杈曲,為什么
如果在/oldboy/ett下面在創(chuàng)建一個目錄test,再問/oldboy/ett硬鏈接數(shù)是多少胸懈,為什么
2個担扑,每創(chuàng)建一個目錄都會有2個硬鏈接數(shù)(. ..)
3個
16.企業(yè)故障案例1:(參考問題9)
作為運維工程師,你在工作中遇到的一個實際問題箫荡,情況是:一個lnmp的服務(wù)器魁亦,站點目錄下所有的文件均被植入了如下內(nèi)容:
包括圖片文件也植入了,當(dāng)用戶打開網(wǎng)站就會調(diào)用這個網(wǎng)址羔挡,顯示一個廣告洁奈,請問你如何解決
1、 備份打包
2绞灼、 找到被修改的文件A
3利术、 批量刪除被修改的文件A
4、 找到被篡改的來源低矮,進行優(yōu)化調(diào)整印叁,修改文件權(quán)限
5、 寫故障總結(jié)和報告
17.請輸出當(dāng)前時期和時間军掂、三天前的日期轮蜕、未來10天的日期
date
date -d "-3 day" +%y%m%d
date -d "+10 day" +%y%m%d
18.請寫出10個以上linux命令行中特殊字符及對應(yīng)含義
模糊匹配:
- 表示所有
[abcd] 匹配里面任意一個字符
路徑和位置:
. .. ~ -
引號相關(guān):
‘’單引號,所見即所得
“”雙引號蝗锥,引用字符串 解析變量 命令
其他字符:
跃洛;命令分隔符
1.管理員提示符 2.注釋符號
$ 1.普通用戶提示符 2.調(diào)用變量使用
| 管道 前面的數(shù)據(jù)流交給后面處理
{} 生成序列
! 強制终议,取反
重定向 :
0<或< 標(biāo)準(zhǔn)輸入汇竭,清空已有內(nèi)容
0<<或<< 標(biāo)準(zhǔn)輸入追加 追加到內(nèi)容底部
1>或> 標(biāo)準(zhǔn)輸出,清空已有內(nèi)容
1>>或>> 標(biāo)準(zhǔn)輸出追 加穴张,追加到內(nèi)容底部
2> 標(biāo)準(zhǔn)錯誤輸出细燎,
2>> 標(biāo)準(zhǔn)錯誤輸出追加
19.問題:請問在一個命令上加什么參數(shù)可以實現(xiàn)下面命令的內(nèi)容在同一行輸出。
echo “oldboy”;echo “oldboy”
echo -n “oldboy” ;echo “oldboy”
20.如何取得/etc/hosts文件的權(quán)限對應(yīng)的數(shù)字內(nèi)容皂甘,如-rw-r—r—為644玻驻,要求使用民工行取得644這樣的數(shù)字(不低于2種辦法)
stat /etc/hosts|sed -nr "s#(^.: ()(.)(/-.*$)#\2#gp"
1.一個目錄中有很多文件(ls -l查看時好多屏),享用一條命令最快速度查看到最近更新的文件偿枕,如何看?
ls -lrt