亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Windows轉向UNIX的一些困惑

瀏覽:4日期:2024-02-01 13:23:37

相信很多朋友Windows已經用得相當熟悉了,由于種種原因,想試試Unix。無奈Windows的思想根深蒂固,這給學習UNIX造成很多困惑,經常四處碰壁。于是抱怨UNIX太難學,拋在一邊眼不見為凈,繼續用著Windows。當然如果你只是普通用戶,聽聽歌玩玩游戲灌灌水,那大可不必裝什么UNIX,因為你根本沒必要去跟UNIX瞎折騰。Windows那么方便,用著多舒服,何必自找麻煩,去弄那難配置又“莫名其妙的UNIX?說到這里,很多人可以不用看這篇文章了。這篇文章是為想學UNIX的跟我一樣菜的新手寫的,目的是為了在學習過程中少走一些彎路。就從我個人的經歷來說吧!

最初聽說UNIX,大概是在大一的時候。當時對這個系統超級崇拜,認為能駕馭這個系統的一定是絕頂大牛。某天偶然聽說一個叫做Linux的系統,據說跟UNIX很像,而且還有一個叫做RedHat的東西。因為我有刻錄機,于是在校網的某處下了三個ISO,刻成了盤,但一直不敢試,因為根本不知道怎么把它“放到硬盤上去。也就是說,它有沒有分區?有分區的話怎么弄?因為一直擔心把Windows損壞,所以這幾張盤就被我擱到了一邊,這一擱就是一年。

大二了,Windows已經玩得相當熟了,這時對分區之類的也算挺了解了吧,于是又從抽屜的角落里找到那幾張盤,打算試試。具體怎么樣我也記不清了,反正是安裝成功了,不過刷新率非常低,眼睛根本受不了,所以沒多久又被我刪了,還是繼續我的Windows……說出來不怕笑話,到這時我還不知道Linux有好多發行版本,以為RedHat“就是Linux。

大二的暑假,Windows我已經玩得不想再玩了,而且隨著對UNIX的漸漸了解,我開始對這東西有了點好感。于是在網上搜了一通,由于當初對Linux的感覺相當糟糕,所以我沒把目光放在Linux上,而是放到了BSD上。BSD有三個分支——FreeBSD、NetBSD和OpenBSD。當時看著NetBSD和OpenBSD感覺不大舒服(呵呵,其實看著Linux這幾個字也不怎么舒服,這也是我當時不選Linux的原因之一,不過現在不會了),于是自然而然地選擇了FreeBSD。

然而,對于我這個有著很深的Windows思維的人來說,想一下子適應FreeBSD真的很不容易。還是回到分區。FreeBSD的“分區是怎么樣的?這讓我怵了好久,直到從圖書館借到《FreeBSD使用大全》的時候才有點眉目。不過,當時并不知道這本書其實不大適合初學者。但那時在家里只能看這本書了,花了十幾天吧,把這本書看了個大概。

回到學校后就開始了學FreeBSD,但也是斷斷續續,沒有當初學Windows那么大的好奇心。不過,雖然進展緩慢,收獲多多少少還是有一些的。在這當中逛了好多論壇(ChinaUnix,FreeBSDChina等),看了好多文章,說實話感覺還真的挺不錯。現在就稍微總結一下吧,以下僅以FreeBSD為例,因為我到現在為止,經過一些比較,還是認為FreeBSD最適合我的性格:) 嗯,不再瞎扯了,切入正題,呵呵。

首先,我必須讓你擺脫一些誤解。或許你會有這樣的不屑:UNIX那黑頭土臉的能算得上系統?能正常工作?能提供FTP和Web等服務?能受得了大負荷?ft,我才不相信,我才不用那破東西!如果你這么想,我可以很認真地告訴你,你錯了!知道么,世界使用量第一的Web服務器Apache最初是為UNIX開發的,超級數據庫Oracle最初也是為UNIX開發的,高端的服務器用的是什么操作系統?是UNIX!而不是你想象的Windows2003!當然,我用過2003,也用它架過相當多的服務,我知道2003的性能不錯。但請相信,世界上這么多大型站點使用的都是UNIX,你說他們的管理員難道就都那么笨?如果Windows2003性能真的比UNIX好,他們會不用這么好的東西?事實是,他們選擇了UNIX。不相信?好,你可以去這里看看:http://www.netcraft.com,隨便輸入幾個大型站點,如www.google.com,www.yahoo.com,www.baidu.com,看看OS部分寫的是什么?或者,你再看看這個網址:http://uptime.netcraft.com/up/today/top.avg.HTML,看看世界上運行時間最長的機器用的是什么系統?如果你還是執意認為Windows2003牛,那么OK,你可以把這篇“無聊的文章拋在一邊了:)

如果你繼續看下來了,那我繼續說,呵呵。我們知道,Windows上的服務器很多都是以GUI頁面和服務的方式存在的,但在Unix中,它們基本上是在命令行下以daemon的形式存在。你可能很困惑,命令行下也能運行服務?嗯,沒錯,正是。daemon在UNIX中的地位,有點像服務在Windows中的地位,但又不盡然。現在你可以把daemon就當成服務看待。

那么,UNIX下的文件是怎么樣的?UNIX跟Windows不同,它把所有的文件都當成一回事,不像Windows那樣以后綴名來區分不同類型的文件。可能你會很困惑,如果這樣的話,我怎么打開不同的文件?事實上,在UNIX系統中,文件只是存儲上硬盤上的單純的字節。UNIX下區分不同文件的方法是看這些字節的前幾個字符。當然,UNIX本身可不管你是什么文件,它只當你是一些字節。區分這些文件的工作由應用程序來負責,比如你有一個文件名為“diogin的文件,你想“打開它。怎么打開?我不知道它的文件格式!麻煩大了吧?不大。用file命令一看,這個文件是什么類型馬上出來了,雖然不一定準,但絕大多數情況下是沒錯的。好了,現在你知道它是個可執行文件,在shell下敲入./diogin后,程序執行了,打印出了“Hello, World!,呵呵……就這么簡單。

可是問題又來了,什么是shell?還有,UNIX沒有像Windows那樣的桌面嗎?shell,簡單地說,就是讓用戶與操作系統內核溝通的一個媒介,你在Windows下用過命令行吧,你可以把shell想象成命令行,但shell可比命令行強大多了,功能上根本不是一個數量級,這一點在你深入理解shell后肯定會感覺到。那桌面呢?這個可能是最讓人困惑的問題了,當時我就一直不理解這個X跟桌面到底是怎么回事,甚至一度抱怨Windows怎么這么霸道,把我的思想全禁錮住了。首先必須明確,X是圖形界面的基礎,X不是桌面的簡稱!X提供了一些圖形調用接口,至于怎么用這些接口,怎么顯示你想要的圖形,是你的事情,它可不管。那么,你應該用什么東西來控制自己想要顯示的圖形?答案是窗口管理器,典型的如fvwm。有了這兩個東西,應用程序就可以以特定的圖形窗口方式顯示了。現在你可能又會有問題了,不是說X是CS方式的架構嗎?這個架構是怎么回事?在我們通常的理解中,Server一般是有著高性能的機器,而ClIEnt是普通的客戶機。但這個理解卻不適合X,X中的Server,指的是有鍵盤鼠標有顯示器的機器,而Client則是指一些在X上運行的程序!這些程序,完全可以在另一臺機器上運行,通過網絡,向X服務器發送命令,X服務器收到這些命令后為這些程序顯示圖形。只要雙方遵循X協議,不管你的客戶程序在什么系統上運行,在哪運行,都無所謂。呃,說了半天,什么是桌面?桌面是在X和窗口管理器上集成了相當多的X應用軟件的一整套系統的合稱,它包括了底層的X,中間層的窗口管理器和上層的X應用程序。很簡單明了吧?事實上UNIX系統的運行根本不需要X,只當你想要圖形頁面的時候才需要安裝,它只是UNIX系統上運行的一個軟件而已。那Windows的桌面呢?Windows的桌面是跟Windows內核緊密結合在一起的,區分不開,你就把它跟系統當成一整套的東西吧,因為結合得太緊密了,我也分不開,呵呵。

當你開始使用Unix系統的時候,你會遇到很多驚訝的事情,最讓你驚訝的,可能就是重新編譯內核。天哪,這是什么東西?剛從Windows轉過來的用戶可能會嚇出一身冷汗。其實不用怕,編譯內核是學習UNIX系統必須經過的一關,而且也不像想象中那么神秘。簡單地說,就是改變系統最本質的部分,讓它適合你的機器和你的需要,換句話說,你可以用重新編譯內核來完全定制你的系統。最高級的系統都是能讓自己定制的,我不需要我用不著的東西。很好,那開始編譯吧!怎么入手?以FreeBSD操作系統為例,安裝的時候你選擇安裝系統內核源碼(呵呵,沒錯,是系統內核源碼,這個東西是最有價值含量的,但現在你可以完全免費得到它,而不是花幾千元去買一個完全保密的東西:)),這通常會安裝在/usr/src/sys目錄下,然后根據你的CPU架構(普通PC都是i386架構),選擇不同的目錄進入,里面會有內核配置文件。FreeBSD的內核配置文件為/usr/src/sys/i386/conf/GENERIC,即通用內核配置文件,適合大多數機器使用的內核配置文件。說到這里你可能明白了吧,默認安裝的時候使用的就是按這個配置文件編譯出來的內核,很明顯,為了讓大多數不同的電腦能用,里面肯定包含了很多你機器上沒有的東西。現在你的任務就是把這些東西全都去掉,同時加進去你想要的東西。用任何一個文本編輯器打開它,怎么編輯我就不說了,你可以查看手冊,里面有詳細的說明的。編譯的過程,會在某個目錄下產生新的內核源碼,你進入那個目錄后就可以開始編譯并安裝新系統了。我的機器,刪除沒用的東西后的內核非常精簡,256M的內存啟動后完全Free的內存有231M,也就是說在啟動過程中被“經歷過的內存區域只有25M,而且這不是活動內存,活動內存只有2650K!呵呵。跟Windows的上百兆內存占用相比……

要想正常搞定新內核是有點挑戰的,你需要對硬件相當熟悉。好了,接下來我講講文件安裝吧,這也是在使用Unix的過程中我感到挺困惑的一個問題。我們都知道,在Windows系統中,安裝一個軟件很簡單,下載文件壓縮包,解壓,雙擊setup.exe開始安裝,選擇一下路徑就OK了,很簡單吧!安裝好后,文件通常會寫注冊表,說實話這是很惡心的一件事情,當你重裝過系統后就知道了,你需要重新安裝一次這些軟件,很麻煩吧?于是在Windows下產生一些新名詞,典型的如“綠色軟件,意思是說不會寫注冊表,直接解壓后就能用的軟件。當這些思想深深地圈住你的時候,你接觸了UNIX,你也用這套思想給搬過來了,于是你去下了個軟件包,解壓,咦,安裝文件呢?找不到安裝文件怎么安裝?呵呵……我還是來簡要說明一下UNIX下的文件安裝吧,拿FreeBSD舉個例子,在這里我就先不說FreeBSD的ports軟件安裝機制和package軟件安裝機制了,這些是在你想學FreeBSD后才需要掌握的東西。首先,你下載了一個軟件包,這個軟件包里面可能是源碼,也可能是二進制軟件。如果是源碼,你解壓后,它會自動生成一個目錄。比如我假設這個軟件包是httpd-2.0.55.tar.gz,你用tar zxvf httpd-2.0.55.tar.gz命令將它解壓,在當前目錄下得到httpd-2.0.55目錄。cd httpd-2.0.55,進入這個目錄,里面就是源碼了,一般情況下會有一個Makefile的文件,這個是用來編譯軟件用的。現在只要做的,只是先做一下配置,./configure --help,會顯示出配置幫助,你可以根據自己的需要來定制,配置好后敲入make命令,make程序會自動從這些源碼編譯出二進制軟件,這個二進制軟件跟上面我說的二進制軟件基本一樣,區別只在于一些不同機器上編譯的一些細節,還有就是后者打過包而已。好了,現在你敲入make install來安裝這個軟件。那么,這個命令做了些什么東西呢?很簡單,它只是把編譯出來的軟件復制到它應該去的地方,其它什么都沒做!就這樣么?它不寫“注冊表么?對呀,寫什么啊,UNIX的軟件是靠它自己的配置文件來控制的!如果你想知道它詳細的動作,你可以去看看Makefile文件里的install部分,看它是怎么寫的,你就知道當你敲入這個命令后系統都做了些什么東西了。一個典型的UNIX軟件,可以看作組件、二進制程序和配置文件組成,而這些文件都是獨立的(當然除了某些必要的依賴軟件在這之前必須安裝外),當你知道這個軟件在另一個系統上是二進制兼容的時候,你把這個軟件所在的目錄完全拷貝到那個系統上,這個軟件可以立即正常工作!多自然的事情,還寫什么注冊表,塞什么“開始菜單啊,UNIX就是這么井然有序!那么卸載呢?就是把這個文件夾刪除!不會留下垃圾么?留什么垃圾啊,在Windows下的“綠色軟件不就是直接刪除么?呵呵,可以這樣說,UNIX下的軟件,都是“綠色軟件。

羅嗦了這么多,還是有兩個方面得講講的,就是Unix的目錄結構和進程。拿FreeBSD為例,安裝的時候會讓你創建“掛載點。可能你又有困惑了吧?可以這樣理解:Windows下不是有C:,D:等盤符么,UNIX下的“掛載點就相當于這個“盤符,下面掛著文件系統,不同的文件系統可以有不同的格式。好了,你現在創建了/、swap、/var、/tmp、/home和/usr這幾個“掛載點,你用Windows下的思考方式,將它們相像成C盤、頁面文件、D盤等等。其實沒什么大礙,這樣類比會讓你比較好接受。好了,你進入了系統,ls /一下,發現了好多東西,你可能又驚訝了:怎么這么亂啊?當你熟悉了之后,你就不會這么說了——如果你一開始學的就是UNIX,你會說亂么?事實上,一點也不亂,而且非常有秩序——這些可是經過了幾十年定格下來的目錄結構!除了/var,/tmp,/home和/usr,其它都是在/目錄下的文件或目錄,而且對一個系統來說,這些東西基本上不會變化。swap目錄是交換分區,相當于Windows下的頁面文件,/tmp目錄是臨時“垃圾場,當然里面的東西可不是“垃圾,都是軟件運行產生的臨時文件。/home是用戶的家目錄所在地,每個用戶(除了root)在登錄后都被定位在家目錄。/usr是使用頻率最高的一個目錄,因為絕大部分本地軟件都安裝在這里(/usr/local)。當然,你可以再自己建立新的“掛載點,如/ftp,來提供ftp服務,呵呵。

嗯,再談談進程,這東西也曾讓我困惑了一段時間。Windows2003下,我們可以把進程減小到開機12個左右,普通的應用基本上不超出30個進程。但當你進入UNIX后,看著幾十個上百個進程,是不是嚇了一跳?其實這跟UNIX當初的設計有關。舉個例子,apache在Windows下正常工作只顯示兩個進程,一個是主進程,另一個是服務進程。而在UNIX下,則視連接情況有不同的進程數。如果當前有50個連接,則會有51個進程,其中一個是主進程。也就是說,apache為每個連接啟動一個進程(假設使用的是prefork方式的多道處理機制)。這樣一來,進程數一下子就上去了,我們可以把它看成Windows下的線程(只是簡單的類比而已,事實上不是兩回事)。具體情況我就不多說了,打這么多字累死我了,_-_

最后順便講講FreeBSD的安裝吧!安裝的大致過程,在FreeBSD的手冊里已經有詳細的講解。需要注意的是,必須弄明白什么是主分區、什么是擴展分區和邏輯分區。對于玩熟了Windows的人來說,這一步沒什么問題。好,接下來我假設你已經有Windows系統在硬盤上了,而且你是把整個硬盤都給了Windows。現在你要劃出一部分空間出來裝FreeBSD。如果你的分區情況是:C盤為系統盤,占一個主分區;D、E、F盤為邏輯分區,在一個擴展分區上。注意,這個擴展分區也是主分區!接下來怎么辦呢?這里必須明確:FreeBSD必須安裝在主分區!所以你要從D,E,F這三個盤里分出空閑的空間,從哪里分?當然是F盤了,用什么分?請先準備一個軟件:partition manager。這是一個分區軟件,可以很容易地分區。怎么用這個軟件我就不說了,你不會的話先研究一下它的說明,相信你能搞定(我給點思路,不是用刪除,而是用壓縮第二個主分區的方法來擠掉F盤,這樣才會縮小第二個主分區,否則那部分空間還是第二個主分區的,等于白干)。于是,你把F盤騰了出來,得到了一個空閑空間。好了,現在準備工作做好了,插入盤開始安裝。選分區的時候你就可以把FreeBSD放到那塊空閑的硬盤區域上了。系統裝好后,去借幾本書開始認真學吧!只是FreeBSD方面的書實在太少,能在學校圖書館借到的就三本:《FreeBSD使用大全》、《FreeBSD技術內幕》和《FreeBSD手冊》。當然如果你能把這三本書都看透,水平肯定不低了,呵呵。我就不說了,因為我太菜……

嗯,一時也想不到還要什么要說了,就這樣吧,有問題google,上UNIX方面的論壇是王道,呵呵。

標簽: Windows系統
主站蜘蛛池模板: 国内自拍视频在线观看 | 欧美一级aa天码毛片 | 农村寡妇特一级毛片 | 亚洲精品久久久久久中文字幕小说 | 日本精品中文字幕在线播放 | 国产精品国产三级在线高清观看 | 精品91自产拍在线观看99re | 99久久精品国产一区二区成人 | 国产成人美女福利在线观看 | 国产4tube在线播放 | 国产亚洲精品综合在线网址 | 香蕉97超级碰碰碰免费公 | 亚洲欧美日韩不卡一区二区三区 | 亚洲综合色丁香麻豆 | 亚洲97i蜜桃网 | 欧美精品国产一区二区三区 | 日本亚洲色图 | 在线欧美日韩精品一区二区 | 中文偷拍视频在线观看 | 亚洲网站在线观看 | 欧洲美女粗暴交视频 | 日韩在线二区全免费 | 1024成人 | 精品久久国产老人久久综合 | 欧美激情片网站 | 美女视频大全美女视频黄 | www.成人网.com| 青青偷拍免费视频播放 | 亚洲一区二区三区夜色 | 欧美成人午夜不卡在线视频 | 免费在线播放黄色 | 欧美精品一区二区三区观 | 成在线人免费视频 | 国产91小视频在线观看 | 伊人丁香花久久爱综合 | aⅴ在线免费观看 | 亚洲欧洲精品国产二码 | 国产草莓视频入口免费网站 | 韩国一级毛片大全女教师 | 欧美 日韩 中字 国产 | 成人午夜网址 |