他們說:“失敗是成功的關(guān)鍵; 每個(gè)錯(cuò)誤都會(huì)教給我們一些東西。“我希望你能從我的10個(gè)Linux或Unix命令行錯(cuò)誤中學(xué)到一些東西,以及讀者在下面發(fā)表的評(píng)論。
userdel命令
文件/etc/deluser.conf被配置為刪除主目錄(它是由以前的系統(tǒng)管理員完成的,這是我工作的第一天)以及要?jiǎng)h除的用戶的郵件緩沖池。我只想刪除用戶帳戶,最后刪除所有內(nèi)容(注意-r通過deluser.conf激活):
userdel foo
重新啟動(dòng)的Solaris Box
在Linux上,killall命令按名稱殺死進(jìn)程(killall httpd)。在Solaris上它會(huì)終止所有活動(dòng)進(jìn)程。以root身份殺死所有進(jìn)程,這是我們的主要Oracle數(shù)據(jù)庫框:
killall process-name
銷毀named.conf
我想追加一個(gè)新的區(qū)域到/var/named/chroot/etc/named.conf文件,但最終運(yùn)行:
./mkzone example.com > /var/named/chroot/etc/named.conf
使用Tar和Rsync銷毀工作備份(個(gè)人備份)
我只有一個(gè)我的QT項(xiàng)目的備份副本,我只想獲得一個(gè)名為functions的目錄。我最終刪除了整個(gè)備份(注意-c開關(guān)而不是-x):我沒有備份。同樣,我最終運(yùn)行rsync命令并通過覆蓋備份集中的文件(現(xiàn)在我已切換到rsnapshot)來刪除所有新文件。再次,我沒有備份。
cd /mnt/bacupusbharddisk
tar -zcvf project.tar.gz functions
rsync -av -delete /dest /src
刪除了Apache DocumentRoot
我有我的Web服務(wù)器docroot的sym鏈接(/ home / httpd / http被鏈接到/ www)。我忘記了符號(hào)鏈接問題。為了節(jié)省磁盤空間,我在http目錄上運(yùn)行rm -rf。幸運(yùn)的是,我有完整的備份集。
意外更改的主機(jī)名稱和觸發(fā)的錯(cuò)誤警報(bào)
無意中改變了我們的一個(gè)群集節(jié)點(diǎn)的當(dāng)前主機(jī)名(我想查看當(dāng)前的主機(jī)名設(shè)置)。在幾分鐘內(nèi),我收到了手機(jī)和電子郵件的警報(bào)消息。
hostname foo.example.com
公共網(wǎng)絡(luò)接口關(guān)閉
我想關(guān)閉VPN接口eth0,但最終在我通過SSH登錄時(shí)關(guān)閉了eth1:
ifconfig eth1 down
防火墻鎖定
我對(duì)sshd_config進(jìn)行了更改,并將ssh端口號(hào)從22更改為1022,但未能更新防火墻規(guī)則。在快速內(nèi)核升級(jí)之后,我重新啟動(dòng)了這個(gè)盒子。我不得不打電話給遠(yuǎn)程數(shù)據(jù)中心技術(shù)來重置防火墻設(shè)置。(現(xiàn)在我使用防火墻重置腳本來避免鎖定)。
在錯(cuò)誤的框中輸入U(xiǎn)NIX命令
我想關(guān)閉我的本地Fedora桌面系統(tǒng),但是我在遠(yuǎn)程服務(wù)器上發(fā)出暫停(我通過SSH登錄到遠(yuǎn)程框):
halt
service httpd stop
錯(cuò)誤的CNAME DNS條目
在example.com區(qū)域文件中創(chuàng)建了錯(cuò)誤的DNS CNAME條目。最終結(jié)果 - 一些訪問者轉(zhuǎn)到/ dev / null:
echo 'foo 86400 IN CNAME lb0.example.com' >> example.com && rndc reload
無法更新后綴RBL配置
2006年,ORDB停止運(yùn)行。但是,我沒有更新我的Postfix RBL設(shè)置。有一天,ORDB被重新激活,它將每個(gè)被查詢的IP地址作為黑名單返回。最終的結(jié)果是一場災(zāi)難。
結(jié)論
所有人都會(huì)犯錯(cuò)誤,但只有聰明人才會(huì)從錯(cuò)誤中學(xué)習(xí) - 溫斯頓丘吉爾。
從所有這些錯(cuò)誤中我都了解到:
您必須保留一套完整的備份。定期測(cè)試您的備份。
保存所有UNIX文件系統(tǒng)數(shù)據(jù)的明確選擇是轉(zhuǎn)儲(chǔ),這是保證所有條件下恢復(fù)的唯一工具。
切勿將rsync與單個(gè)備份目錄一起使用。使用rsync或rsnapshots創(chuàng)建快照。
使用CVS / git來存儲(chǔ)配置文件。
在命中[Enter]鍵之前,等待并讀取命令行兩次。
使用經(jīng)過良好測(cè)試的perl / shell腳本和開放源代碼配置管理軟件(如puppet,Ansible,Cfengine或Chef)來配置所有服務(wù)器。這也適用于今天的日常工作,如創(chuàng)建用戶等等。