Linux系統雖然因為其免費、不易受病毒工具等原因,逐漸在操作系統平台上,跟微軟的操作系統,可以進行分庭抗禮。但是,由於種種的限制,如有些軟件還必須在Windows平台下才能夠運行,例如財務部門的增值稅認證軟件、個人所得稅申報軟件、設計部門的產品設計軟件,所以,企業還是不能放棄Windows操作系統。故,Linux操作系統與Windows操作系統如何能夠友好共處,這就成為了Linux系統高級管理員所面臨的一個課題。
下面筆者結合自己多年的工作經驗,把自己在工作中遇到的Linux操作系統與Windows操作系統打架的地方一一列舉出來,希望這些內容能夠給廣大Linux的愛好者在實際工作中有所幫助。
一、 Windows操作系統中的中文文件名字在Linux下顯示為亂碼。
如經常有用戶向我反映,他們在Windows操作系統下建立的一個文件,如財務人員建立的一張員工工資卡號的EXCLE表格。但是,行政部門用的是Linux系統,當財務人員把這個文件發送給行政人員後,行政人員看到的是一個亂碼的文件名,而不是“員工工資卡號”這麼正常顯示。其實,這種問題在Linux操作系統與Windows操作系統共存的情況下,經常會碰到。那麼我們該如何解決這個問題呢?
解決方式:
這主要是Windows操作系統與Linux操作系統字符的編碼格式不同所造成的困擾。在Linux操作系統下,其采用的是UTF8編碼;而在Windows下,一般采用的則是GDK編碼。所以,在Windows操作環境下,可以正常顯示的文件名,但是在Linux操作系統下,卻無法正常顯示,顯示的是亂碼,而且其文件內容顯示的也會使亂碼。
遇到這種情況,我們需要用iconv命令對文件名字以及文件內容的編碼格式進行轉換。例如現在財務人員給行政人員的一個文件,“員工工資卡卡號.txt”的文件,在Linux系統下顯示的是亂碼,此時,我們可以在Linux操作系統的終端(也就是Windows操作系統所說的命令行)模式下,利用iconv格式進行轉換。
iconv –f gdk –t utf8 員工工資卡卡號.txt >員工工資卡卡號.txt.utf8
注意大小寫,在Linux操作系統下,利用終端進行命令操作的時候,大小寫是敏感的。這與Windows操作系統的命令行格式不一樣,Windows下的命令行模式是不區分大小寫,DIR與dir連個命令是等價的。但是,Linux終端模式下,LS與ls兩個命令則是不同的。
不過這只是一時之宜的方法,若每次都需要如此的轉換,那處理起來也太過麻煩。有沒有什麼一勞永逸的方法呢?筆者現在的做法是,在公司內部不使用OFFCIE的辦公軟件,而是采用OPEN OFFICE的開源文字處理軟件。這個軟件根OFFICE的功能非常相似,但是,其實開源的。最重要的是,其對Linux的支持非常的好。一般情況下,在Windows操作系統下,利用OPEN OFFICE建立的文件,在Linux操作系統下打開的話,是不會出現這些亂碼問題的。
二、 Windows操作系統如何訪問Linux分區下的文件?
筆者在一台主機上先後裝了Windows XP操作系統與Linux操作系統。有一天,Windows操作系統的空間已滿,為此,筆者打算把Linux的文件系統刪除掉,都改用Windows的分區格式。但是,現在遇到一個問題,就是筆者不知道Linux操作系統的分區中是否存有重要的文件。而現在我是采用XP的操作系統,又無法直接對Linux的操作系統的分區進行查看。我想不僅筆者遇到過這種情況,大部分的Linux系統管理員可能都遇到過類似的情形。遇到這種情況,我們該怎麼辦呢?
解決方案:
Windows可能對Linux系統不怎麼友好吧?所以,在現有的Windows操作系統版本中,都沒有工具可以直接對Linux分區進行訪問。筆者主要是通過第三方的工具對Linux分區進行訪問。下邊介紹兩款筆者常用的Windows操作系統下訪問Linux文件系統的工具。
一款只可以讀不可以修改Linux文件系統下文件的Explore2FS工具。這個工具現在是免費的,並且還提供了一些接口,以方便用戶的擴展使用。Explore2fs工具根微軟操作系統一樣,是一個圖形化的操作界面。這個工具目前支持Linux操作xiotng的EXT2與EXT3 格式的文件系統。這個工具主要提供兩種功能。一是可以對Linux文件系統下的文件進行查看、閱讀;二是可以把這個文件系統下的文件復制出來。當我們需要格式化Linux文件系統的話,我們就可以利用這個工具,先查看Linux分區下是否有重要的文件,若有的話,則可以直接拷貝出來。不過,這一款工具,有個缺陷,就是無法對Linux分區下的文件進行更新,如對文件進行刪除或者修改動作,都會提示錯誤信息。雖然這個產品的說明上,說有改寫的貢呢功能。但是,筆者在實際應用中,覺得這個功能根本不能用。可能這個改寫的功能正在開發中吧。
第二個工具是支持改寫操作的EXT2FSD工具。這是一個跟Linux操作系統一樣,也是一個開源的工具。這個工作原理跟上面那個工具有點區別。上面那個工具的話,是把Linux分區當作一個整體來看待。而這個工具則是把LINUX的各個分區當作獨立的、各不相關的磁盤空間。我們可以選擇訪問其中一個空間,也可以訪問全部空間。不過,要使用這個工具的話,那麼還必須要了解一個Linux下的mount命令。利用這個工具訪問Linux下的文件分區的話,先需要利用mount命令,在Windows操作系統下,把文件分區掛到Windows的操作系統下。這其實就有點像Windows操作系統下的磁盤映射的功能。默認情況下,這個工具是不支持對Linux下的文件進行寫操作的。若要支持寫操作,那麼我們必須手動的更改一些配置。如我們需要修改這個軟件的EXT2FSD.REG注冊表文件與EXT2FSD.inf配置文件。把前者的WritingSupport字段的值改為00000001;把後者的WritingSupport改為1。然後重新啟動該工具,就可以對Linux下的文件系統的文件進行修改了。
不過,筆者還是不同意在Windows操作系統下,直接對Linux下的文件進行修改,特別是對其系統文件進行修改。因為在Windows操作系統下,修改Linux下的系統文件的話,跳過了Linux操作系統本身的監測,如此的話,即使修改系統文件出錯了,Linux系統也監測不到,可以允許用戶進行保存。如此,就容易造成Linux操作系統的損壞,而下次無法再次正常啟動Linux系統。