今天我學習時,發現一個小問題,正在用secure-CRT遠程登錄着linux服務器(固然都是在虛擬機環境下的,我是個linux新手)若是是高手就能夠不用看了。linux
狀況描述:一開始是我在用visudo 編輯內容,不過中間不知爲何,S-CRT客戶端就死掉了。因而我從新登錄,由於vi編輯的文檔沒有退出,也有保存。因此在我再次運行visudo命令時。出現了下面的提示:注意紅色部分,我想可能不少朋友均可能會遇到,他就是我學習時的一個攔路虎,今天不解決他,說不定哪天他就又給我添麻煩,扯遠了,呵呵vim
這是個人操做記錄:windows
[root@******* ~]# visudo
E325: ATTENTION
Found a swap file by the name "/etc/.sudoers.tmp.swp"
owned by: root dated: Wed Apr 10 08:55:49 2013
file name: /etc/sudoers.tmp
modified: YES
user name: root host name: yuantingyong
process ID: 31468
While opening file "/etc/sudoers.tmp"
dated: Wed Apr 10 08:08:29 2013
(1) Another program may be editing the same file.
If this is the case, be careful not to end up with two
different instances of the same file when making changes.
Quit, or continue with caution.
(2) An edit session for this file crashed.
If this is the case, use ":recover" or "vim -r /etc/sudoers.tmp"
to recover the changes (see ":help recovery").
If you did this already, delete the swap file "/etc/.sudoers.tmp.swp"
to avoid this message.緩存
"/etc/sudoers.tmp" 100L, 3402C
…………
####這(1)的意思就是提示咱們注意咱們正在操做的文件已經有一個和這個相同的正在編輯,提示咱們注意是否是在編輯同一個文件,就像在windows下在兩個地方打開了同一個文件,都在同時修改主樣,服務器
我認爲重要的是(2)提示,2的提示意思若是咱們當前正在打開要編輯的文件若是和另外一箇中斷的是同一個文件,咱們能夠用命令:/vim -r /etc/sudoers.tmp 進入文件,而後進行修改和處理,而後正常保存退出,而後刪除另一個帶.swp,我是這麼理解的,sudoers.tmp和.sudoers.tmp.swp實際上是同一個文件,不過一個是在緩存文件,一個是原來的文件,咱們只要把其中一個把處理好,並保存好,就好了。就能夠把另外一個刪除了,也能夠把兩個文件分別處理,而後再比較這兩個文件,而後決定留哪一個文件,看哪一個是咱們須要的。
下面是個人處理辦法,僅供參考
[root@******* ~]# vim -r /etc/sudoers.tmp ##-->提示:我用vim -r恢復文件,修改好後保存
使用交換文件 "/etc/.sudoers.tmp.swp"
原始文件 "/etc/sudoers.tmp"
"/etc/sudoers.tmp" [新文件]
恢復完畢。請肯定一切正常。
(你可能想要將這個文件另存爲別的文件名
再運行 diff 與原文件比較以檢查是否有改變)
而後把 .swp 文件刪掉。
## Sudoers allows particular users to run various commands as
#………………………………中間省略了一些顯示的內容
# User_Alias ADMINS = jsmith, mikem
[root@******** ~]# rm /etc/.sudoers.tmp.swp ##-->刪除另外一個隱含的而且後綴加了.swp的文件
rm:是否刪除 通常文件 「/etc/.sudoers.tmp.swp」? ysession
就這樣我就把他搞定了。但願對有些朋友有幫助。若有轉載請註明出處。ide