linux 分区
Linux下硬盤分區基礎
什么是硬盤分區,分區用來做什么?
分區就是硬盤的“段落”。Windows分區有自己的盤符(C:,D:等等),這些分區看起來都好像是一個獨立的硬盤。
最簡單的情況下就是將整個硬盤作為一個唯一的分區。如果您購買了一臺已經預裝了window的機器,基本上都是這種情況。
如果您希望在機器上安裝更多的操作系統,將需要更多的分區。您更不能在這個單獨的分區里面再安裝linux。如果您要同時安裝Windows ME和 Windows2000,那么您將需要兩個分區。原因是不用的操作系統原則上采用不同的文件系統。如果幾個操作系統都支持相同的文件系統,通常為了避免在一個分區下有相同的系統目錄,也將他們安裝在不同的磁盤分區。
在Linux下是不同的情況,它本身又有更多的分區--比如,根分區 “/” 和交換分區“swap”。
提示:說的更清楚一點:您在安裝Linux時考慮的并不是windows分區下還有多少空間,因為windows分區下的空間Linux不能使用。您需要在Windows分區外建立新的分區。
分區類型
硬盤分區一共有三種:主分區,擴展分區和邏輯分區。
在一塊硬盤上最多只能有四個主分區。您可以另外建立一個擴展分區來代替四個主分區的其中一個,然后在擴展分區下您可以建立更多的邏輯分區。
擴展分區只不過是邏輯分區的“容器”。實際上只有主分區和邏輯分區進行數據存儲。
提示:Windows9x/ME下自帶的分區程序fdisk只能定義一個主分區。也就是說,在Windows9x/ME下您只能定義最多一個主分區,一個擴展分區和擴展分區下更多的邏輯分區。如果你想要使用更多的主分區,必須在Linux下進行分區。
分區和格式化
每個操作系統下都有自己的用來改變硬盤分區的工Windows9x/M下是非常有名的FDISK,在Windows NT/2000/XP中帶有一個非常方便的圖形界面的工具,他的位置在不同的Windows版本下也稍微有所不同(比如在2000下 控制面板—管理工具—計算機管理—磁盤管理)。在Linux下進行分區既可以使用FDISK,或者一個相同功能的圖形界面程序。
每個主分區和邏輯分區都回被存儲一個識別文件系統的附加信息。操作系統(Windows或者Linux等等)能通過這些信息非常容易的識別和確認,應該使用哪個分區。不能識別的操作系統分區將會被忽略。
通過分區當然不能產生任何文件系統。在分區之后只是對硬盤上的磁盤空間進行了保留,還不能直接使用。在此之后分區必須要進行格式化。在Windows下可以通過資源管理器下的文件菜單或者FOMATE程序來執行,在Linux下大多數情況下由mke2fs來完成。
提示:Linux支持不同的文件系統。應用最廣泛的是ext2。ext2就是有我們上面提到的mke2fs程序來建立的。Linux當然也支持reiserfs文件系統
注意:進行任何磁盤分區或大小的改動工作,都會丟失以前的數據。一次在分區直前一定要對數據進行備份。
Dos/Windows下的分區名稱
在Windows下操作系統使用的分區將用盤符來表示。A:和B:為軟驅保留,其他應盤上的主分區和邏輯分區將從C:開始依次排列。(擴展分區沒有任何盤符,而且是看不到的。在我indowsx下同樣也看不到Linux分區)
如果一臺機器有很多的硬盤,光驅,軟驅等,磁盤分區的命名將產生混亂。在這種情況下,第一塊硬盤上的主分區和邏輯分區將首先得到命名盤符;然后是第二塊,第三塊等等。比如您有三塊硬盤,每一快硬盤上同時又有一個主分區和兩個邏輯分區,那么第一塊硬盤的命名將是C:,F:,G:,第二塊為D:,H:,I:,第三塊為E:,J:,K:。
在WindowsNT/2000/XP下可以改變這些系統自動命名的名稱。比如你可以將一個光驅命名為X,這樣在添加新的分區的時候他的名稱就不會改變了。
陌生文件系統的分區將不會被命名,在大多數程序里面(比如資源管理器)是看不到的。、這些分區將只能在磁盤分區工具(Windows9x/ME下的FDISK,Win2000下的計算機管理-命令解釋器)下面顯示。
Linux下的分區名稱
Linux下的分區命名比Windows下面將更加清晰詳細,但是由此而來的名稱不容易記住。不同于Windows下的盤符,Linux通常采用設備-名稱(device-name)。一般的硬盤(比如IDE硬盤)將采用/dev/hdxy來命名。X表示硬盤(a是第一塊硬盤,b是第二塊硬盤,依次類推),y是分區的號碼(從0開始,1,2,3等等)。SCSI硬盤將用/dev/sdxy來命名。光驅(不管是IDE類型或者SCSI)將和硬盤一樣來命名。
提示:IDE(集成電路設備)和SCSI(小型計算機系統接口)是兩個目前最流行的連接計算機硬盤,光驅或者軟驅的系統。SCSI比IDE速度要快,但是同樣價錢也要貴一些。SCSI通常可以用于文件服務器和數據庫服務器。Linux支持這兩種系統(當然可以同時在一臺機器上擁有IDE和SCSI設備)
IDE硬盤和光驅設備將由內部連接來區分區定。/dev/hda表示第一個IDE信道的第一個設備(master),/dev/hdb表示第一個IDE信道的第二個設備(slave)。按照這個原則,/dev/hdc和/dev/hdd為第二個IDE信道的master和slave設備。被命名為/dev/had和/dev/hdc的兩個設備在理論上是同樣可以的,在這里不使用/dev/hdb。(這種情況下,設備被作為master連接在第一和第二個IDE信道上)
SCSI硬盤或者光驅設備依賴于設備的ID號碼,不考慮遺漏的ID號碼。比如三個SCSI設備的ID號碼分別是0,2,5,設備名稱分別是/dev/sda,/dev/sdb,/dev/sdc。如果現在再添加一個ID號碼為3的設備,那么這個設備將被以/dev/sdc來命名,ID號碼為5的設備將被稱為/dev/sdd。
分區的號碼不依賴于IDE或者SCSI設備的命名,號碼1到4位主分區或者擴展分區保留,從5開始才用來為邏輯分區命名。由于這個原因,經常會有號碼漏洞。(比如1,2,5,6,在這里3和4就是號碼漏洞)比如:第一塊硬盤的主分區為hda1,擴展分區為hda2,擴展分區下的一個邏輯分區為hda5。
下面還有一些例子幫助大家來理解
/dev/hda? ?? ? 表示整個IDE硬盤
/dev/hda1? ?? ?表示第一塊IDE硬盤的第一個主分區
/dev/hda2? ?? ?表示第一塊IDE硬盤的擴展分區
/dev/hda5? ?? ?表示第一塊IDE硬盤的第一個邏輯分區
/dev/hda8? ?? ?表示第一塊IDE硬盤的第四個邏輯分區
/dev/hdb? ?? ? 表示第二個IDE硬盤
/dev/hdb1? ?? ?表示第二塊IDE硬盤的第一個主分區
/dev/sda? ?? ???表示第一個SCSI硬盤
/dev/sda1? ?? ? 表示第一個SCSI硬盤的第一個主分區
/dev/sdd3? ?? ? 表示第四個SCSI硬盤的第三個主分區
下來你的首要問題是“我的機器有16G,分了一個C盤4G,兩個D,E盤各6G”我還想保留
C盤的windows,我能把Linux安裝到D盤或者E盤上么?呵呵,非常好,你知道Linux是
一個操作系統,可能要把windows弄掉,但是遺憾的是你對硬盤,分區的理解是錯誤的。
下篇文章會講硬盤分區的問題。
OK,要講硬盤分區了。在講這個問題之前,我先來講講概念問題,什么是概念
問題呢?你還記得第一次,絕對的第一次聽到A:盤,B:盤,C盤時候的感覺么?
在那之前自己也許知道計算機有個存儲數據的地方,因為在電視上或者廣告上
看到過磁帶機(我一直不知道為什么到了很久很久那種一個傻姑娘在一個磁帶
柜前面操作一個現在看來是垃圾的磁帶設備會不停的成為電視臺播放電腦題材
節目的缺省背景)或者硬盤的圖象。但是你并沒有一個概念計算機究竟怎么使
用這些設備,直到你第一次打出dir a:或者打開explorer看到A: C:字樣的目錄
樹。如果你還記得當時的感覺,恭喜你,這種感覺又回來了。
對于一般人,只需要知道計算機能做什么就行了,所以對于他們來說,什么東
西越簡單越好,越不需要他們去花時間學習理解越好,所以計算機從開始的打
孔到了后來的鍵盤屏幕,現在又往語音輸入智能交互方向發展。這很好,讓那
些把計算機當工具的人能更專注他們的工作(當然,他們會為此向我們--計算
機的建設者付出應有的報酬)。可以說,MS在這方面作的很好,沒有人會否認
windows是一個非常“好用”的操作系統。這是指從使用者而言,你不需要太多
的去理解機箱里面的知識,或者說盡可能不去理解,就能盡快讓計算機為你工
作。比如將本來很復雜的硬盤通過它在中間的操作搞成了C: D: E:盤這樣的東
西,讓一個只需要會打字的秘書MM也能知道怎么存儲文件(當然也會有笨的不
可救藥的)。但是這樣(MS替你打點一切)的做法的一個問題也是顯而易見
的:你沒有機會,或者說沒有被迫的機會去了解更深一層的知識。而且當你腦
子里只知道”C: D: E:“的時候,你就只有跟著windows走這一條路了。
OK,言歸正傳。安裝Linux的硬盤分區問題。這個問題說起來是每個Linux新
手,甚至到有一定水平的人都不敢說很清楚或者掌握的(包括我自己)。硬盤
是個很古怪的東西,它的基本脾氣是,一點搞不好,一大塊數據就要丟,而且
丟的干干凈凈。我已經不止一次看到某人的畢業論文之類東西在答辯之前三天
因為硬盤問題而丟失并且沒有備份!而安裝Linux是必須跟硬盤很底層的部分打
交道的,而不是win下面安裝個程序那么安全。所以我的第一個建議是,如果硬
盤上有重要數據,最好別貿然安裝Linux。比較好的一個辦法是找臺不重要的機
器,硬盤可以重新分區格式化的,多安裝幾次Linux,多試驗一下windows和
linux共同存在的各種情況。這樣以后心里就有底了。如果實在要安裝,一定要
備份重要數據,切記。
下來講Linux對于硬盤的概念。只考慮IDE硬盤。對于一個硬盤的操作分很多
層。我們需要知道的,是硬盤是由很多個512字節的扇區組成的。而這些扇區會
被組織成一個一個“分區”。這些對于每個操作系統都是一樣的,在這之上每
個操作系統自己去管理分給自己的分區。對于windows來說,它會把這些分區格
式化然后按照CDE盤來管理。而Linux則不同。所以呢,一個硬盤上分多個分
區,安裝多個操作系統比如windows,Linux,Solaris等是完全可以的。但是由于
每個操作系統對分區的操作不同,只能說把操作系統安裝到分區中而不存在把
操作系統安裝到CDE盤中(UMSDOS方式先不提)。
每個硬盤的第0個扇區是個特殊扇區,它不屬于任何分區。它存放的是兩個東
西:第一是一個很小的程序,它由計算機在啟動的時候運行,這個程序一般是
某個操作系統帶的啟動程序,它運行后會啟動某個操作系統或者給用戶選擇來
啟動某個操作系統。Windows的0扇區啟動程序很簡單,它就是把windows啟動
了,所以在這之前你是不會有多操作系統在一個硬盤上共存的概念的。而Linux
所帶的啟動程序可以讓你選擇啟動哪個操作系統,它叫做lilo。這個東西我們
以后會經常碰到它。0扇區還存放有另外一個重要數據:分區信息。前面講過,
硬盤是有分區的,那么到底怎么分的,這個信息是存在0扇區的。硬盤的分區規
則是這樣的:一個分區的所有扇區必須連續,硬盤可以有最多四個分區,這四
個分區可以是四個主分區或者三個主分區加一個擴展分區。在擴展分區里可以
再繼續分邏輯分區。舉一個例子,一個10G的硬盤,安裝windows,有C: D: E:
三個盤。那么它的分區情況可以是這樣的:
分區一:主分區 4G ,格式化為C:盤
分區二:擴展分區 4G 擴展分區不能格式化,它只能被再分區為邏輯分區
剩余空間(可以被分區三,四占用) 2G
在擴展分區中,建立兩個邏輯分區各為2G,格式化為D:E:盤。
那么在Linux看來又是怎么樣呢?注意我提到過,對于任何操作系統而言,分區
都是一樣的,盡管Linux不認同C D E盤,但是這些分區都是相同的。所以Linux
下看也是分區一,分區二等東西。但是它對這些分區的標志和解釋是不同的。
在Linux下,硬盤是一個設備,實際上Linux下什么都是設備。對于IDE硬盤而
言,Linux認為存在四個設備,對應于IDE的四個位置接的設備。如果裝過機器
我們知道主板上有兩個槽,IDE0和IDE1,每個槽上能掛兩個設備,主盤和從
盤,這些盤可以是硬盤可以是光驅。那么Linux是怎么認為這些設備的呢?在
Linux下,這些設備用/dev/hdx來標示。IDE0上的主盤就是/dev/hda,從盤就是
hdb,依此類推,如果可以有多個IDE槽就可以延續到hde hdf等。總之每條硬盤
線上接的設備都被Linux認為是一個/dev/hdx設備。如果你的機器是IDE0槽上的
主盤是硬盤,那它就是hda,如果IDE1的槽上主盤是一個光驅,那它就是hdc。
在windows下fdisk是對”硬盤1“,”硬盤2“進行操作,而linux下的fdisk就
是對/dev/hda,/dev/hdb等進行操作。這樣做很靈活,很直觀,不是么?
那么Linux下怎么看分區呢?Linux下的分區概念是,硬盤上的每個分區也是一
個設備(又來了)。他們的標志是/dev/hdxy,其中hdx根前面一樣表示哪個硬
盤,y表示第幾個分區。以hda為例。hda1就是第一個分區,hda4就是第四個分
區位置。邏輯分區從hda5開始。所以剛才那個例子中,Linux看來就是hda有
10G。hda1是主分區,格式是windows。hda2是擴展分區,在它上劃出了hda5和
hda6,格式是windows。hda還有2G剩余空間可以繼續建立hda3和hda4。注意因
為hda2空間已經被劃分完,所以無法再建立邏輯分區。
這些硬盤的東西很容易搞混,建議多實踐,多總結一下。可以參照一些有關書
籍,早期的DOS書在安裝部分講了一些。現在的linux安裝部分也都有不少。另
外還有網上的一些介紹資料。
明白了Linux對分區的處理。下來就是分區策略了。在用RH6.2的光盤啟動,一
直回車選擇缺省設置會到一個分區界面。這里你需要告訴linux安裝程序在硬盤
的什么地方安裝linux。你需要告訴它一些信息,其中包括,建立一個新的
Linux分區,多大,mount到哪里。這里需要介紹一下mount的概念。
我們知道硬盤是可以分成很多分區的,每個分區由各個操作系統格式化然后就
可以使用了。但是要使用必須有一種方法。windows,或者DOS的做法是將格式
化好的分區掛(或者說mount)成C: D: E:盤。盤符的分配是操作系統決定的
(到NT后可以用戶指定)。在Linux下某個分區怎么使用必須用戶自己指定。在
Linux下分區并不按照C: D: E分配,而是掛(mount)到一個目錄下。整個UNIX
的存儲空間結構是一個目錄樹(而不是每個C: D: E:下各有自己的目錄樹)。
最上一層是根目錄(用/表示,注意不是windows的反斜杠)在根低下有其它目
錄。首先需要有一個分區mount成/,然后再在根下面建立其它目錄然后把分區
mount到這些目錄上去。所以整體來看一個unix的存儲系統是一個目錄樹,但是
它可以包括很多分區,甚至其它存儲設備,比如光驅,內存盤,或者網絡磁盤
等。
在Linux安裝的時候除了/還有幾個目錄是預先建立的,我們需要知道的
是/usr,/home還有/root。先不管他們都做什么,一般而言我們需要分一個空
間,指定它為Linux Native類型,然后mount point是這幾個目錄之一。另外還
需要注意的是Linux分區有兩種類型,native是可以存儲文件建立目錄的那種,
還有一個linux swap,這個是linux的內存交換分區,在安裝RH的時候必須指定
一個。所以在安裝的時候最少需要分一個區,類型linux native,mount到/
上,然后一個分區類型linux swap,swap區不mount為任何目錄,系統對其進行
單獨處理。
下來是分區大小問題,安裝Linux一般而言1G空間為/就差不多了,初次安裝為
方便起見,可以建一個2G的分區mount point為/,然后一個swap。swap的大小
作的跟內存一樣大就是了,最大128M。以后再安裝的時候可以根據自己對硬盤
的要求建立其它分區來mount比如/home。
對于已經安裝了Windows的機器,可以在Linux安裝程序里刪除一個windows的分
區,一般而言是一個邏輯分區(你不會想刪除C:盤吧),然后在它的空間里建
立Linux的分區。
Linux的/可以是主分區可以是邏輯分區。但是需要注意的是8G的問題。我想你
也許聽說過8G,到底8G是什么呢?具體問題比較復雜,簡單說就是不能把Linux
的/分區mount到一個硬盤8G以后的分區上。所以如果你的硬盤有16G,前6G已經
分給C:盤,后里面是兩個5G的D: E:盤,納悶你就得把D盤分區刪除建立Linux分
區而不是E盤,因為E盤已經在8G以后了。8G以后安裝Linux是沒有問題的,只是
無法啟動。當然這個是有解決辦法的,但是在新手的狀態我還是建議盡量按照
最簡單情況作,將來熟了再練習其它。
分了區之后繼續安裝,你還被要求配置一些其它東西。包括root密碼,Lilo,
配置網絡,X等東西。其中Lilo是比較重要的一部分。你會被要求將lilo安裝到
MBR,分區啟動扇區,或者一張軟盤上。你需要選擇是是否安裝到MBR或者
floppy上。一般而言安裝到MBR上即可,為了保險起見可以做到軟盤上,這樣機
器用硬盤啟動還是windows那套,進入linux可以用軟盤啟動。注意你需要把
BIOS中的Virus Warning關閉,否則無法安裝到MBR上。
如果你的機器配置比較標準,網卡,聲卡,顯示卡等都能自動檢測出來的話,
一路回車,再啟動你就可以進入Linux了。如果運氣不好(大多數情況是)網卡
聲卡沒有在啟動的時候配好也無所謂,跟windows一樣將來可以再配置。總之這
些不會影響到你安裝。
OK,機器再啟動,跟以往不一樣的是沒有看到Starting MS Windows 98....而
是一個Lilo:的提示符。這說明Lilo已經正常安裝了。你現在按回車就可以進入
Linux了。如果要進入Windows可以打DOS然后回車。如果你指定了不同的
windows分區啟動標志符,可以用[TAB]鍵看一下你有哪些選擇。
這是一個很經常被問到的問題,這里說一下。出于某種原因你要刪除Linux,你
知道用DOS盤啟動然后fdisk刪除Linux分區或者重新安裝NT刪除Linux分區。但
是當你一切都安裝完了之后windows無法啟動,Lilo:這個符號總在那里,機器
死了一樣。別重新分區格式化都沒用。然后某個半瓶子醋可能告訴你“沒救
了,低格吧”。記住,除非硬件損壞,硬盤任何時候不需要低格。這種情況是
由于其它安裝程序并不重寫0扇區,即MBR造成的lilo無法刪除。解決辦法很簡
單,請牢牢記住:用一張DOS盤啟動,運行DOS的fdisk /MBR。這個命令就是重
寫0扇區的引導程序為MS的標準程序,即可以啟動DOS,Windows,WindowsNT,
Windows 2000的那個,而不會改變硬盤分區任何其它信息。所以它是絕對安全
的,絕對安全的,絕對安全的。當你碰到Lilo無法刪除的時候,記得fdisk
/MBR。
OK,你成功的啟動了Linux,進入了一個圖形或者字符界面要求登陸。下來你會
有成堆的問題要問。下來我會講怎么去問問題以及怎么尋找幫助。
”大夫,我痛,告訴我怎么辦吧”
“別著急,你先說你哪里怎么痛了“
”噢,哪里痛還不一樣治啊,我肚子痛,快告訴我怎么辦吧,我很著急的“
”別著急,再說說你昨天都干了些什么啊?“
”怎么跟昨天干什么還有關系?我昨天就干了我每天作的事情嘛,我覺得很正常,你怎么還不告訴我怎么辦?不想說就別說“。
”別著急,你再想想,昨天作了什么跟平時不同的事情?“
”不同?好多都不同啊,我昨天上班沒搭上公車打的的,上午沒人給我打電話,比較古怪...“
”不是這些,我是問你有關吃飯啊,運動啊之類的“
”噢,這個啊,昨天晚上我吃了餃子,很好吃的喔“
”噢,吃了多少個餃子啊“
”嗯,80多個吧,噢,對了,晚上肚子就疼,一直到現在“
”噢,那你是吃撐了“
以上是我記憶中BOB老師寫過的文章。如果你覺得這是個笑話的話,那我幾乎
每天都會經歷這類笑話。一個人會先問“我的Linux怎么xxx了,怎么辦”,到
最后一步一步的誘導問題直至答案揭曉。你下來會遇到很多問題,你不知道去
哪里找答案。你覺得網上都是高手,你覺得高手就是你一站到那里他就知道你
有什么問題。他無所不知,會告訴你一個”絕招“一下解決你的問題。所以你
什么都不必多說,一句話的標題加一個”無內容“的內容。就等高手給你”絕
招“了。
可惜這樣的事情從來沒有發生過。
如前所述,Linux相對于你也許很熟練掌握的windows系統來說有很多全新的概
念。好像微積分對一個只知道簡單代數的人來說一樣。在這種情況下,你用你
固有體系下的思維來試圖獲得答案顯然是困難的。舉一個例子,Linux下的圖
形界面X配置一向是新手必問的問題。你安裝了Linux但是屏幕卻是300X200,
16色的,你想知道怎么辦。從windows那里得來的經驗,你想應該有個辦法找
到”顯示屬性“這樣的菜單然后改變一下分辨率顏色深度,甚至掃描頻率就可
以了。所以你的提問多半是“我的X只有300X200,我在哪里可以改變它”,然
后你期望一個高手告訴你“在xxx地方鼠標右鍵點一下,就得到顯示屬性的菜
單啦”,然后你就可以象在windows里面一樣修改屏幕分辨率了。這里有什么
不對呢?不對的地方是,Linux下的X不是windows,它的顯示分辨率根本不是
在圖形界面里面調整,而是在進入X之前,更重要的是,能改變到更高分辨率
的前提條件是顯示卡的驅動要配置好。而這個又跟Linux的發布,版本等有關
系。這么多情況都不知道,高手絕對是沒有”絕招“告訴你的。對照前面那個
笑話,肚子統的原因很多,如果病人都能知道并且判斷出來,醫生還有什么用
?
那么當你有問題的時候,應當怎么做呢?第一,最好別問問題。Linux的安裝
配置本身就是個學習的過程,通過自己摸索解決一個問題也許比別人告訴你要
慢很多,但是解決問題的本身有助于你加深對Linux概念的理解。同時為了解
決一個問題也許能帶出很多其它問題。我記得我當初初學Linux的時候在一臺
破機器上把Linux和win98安裝了很多遍,最終明白了Linux分區DOS分區共存,
Lilo的配置的很多問題。當然一些關鍵地方自己摸索耗費時間太多而且沒有意
義,多交流也能達到大家共同提高的效果。關于如何去主動摸索尋找問題的答
案我后面會講,這里就假定你需要到BBS上問一個你無法解決的問題。
你碰到了一個問題,Lilo不啟動,顯示010101或者LI死機,或者不知道為什么
你的X屏幕只有300X200,或者不知道怎么配置網卡,或者不知道為什么書上講
的cd /usr/src/linux;make config返回錯誤信息,或者編譯了一個測試程序
gcc -o test test.c 然后運行test什么輸出都沒有。你手足無措。你想上網
問”大蝦“們來獲得答案。
問問題的第一點,是要明白,兩個字就能說明問題并且解決一個的事發生在在
一個大俠身上也許表現的很瀟灑,但是在你提問題的時候只能表現的很無知,
就好像那個說”我痛“的病人一樣。你必須詳細的描述一下幾個問題:你有什
么,你做了什么,你希望達到什么效果,你發現什么問題,具體的問題現象描
述。比如如果你網絡不通,你就需要先說你的Linux什么發布,什么版本,你
怎么安裝的,怎么配置的網絡,詳細到具體的命令,你的網絡情況,局域網廣
域網等。你也許會說很多廢話,但是要明白你是來問問題的,你不會知道究竟
問題出在哪里,所以你必須把你能想到的跟問題有關的事情都說出來才可能包
含具體出問題的地方。在這里你不是大俠,無關瀟灑不瀟灑的問題。我們的目
的是解決你的問題,并且通過解決問題獲得自身的提高,無它。
第二點,是不要自己做任何判斷。好像那個認為Linux也應當根windows一樣有
個地方點右鍵獲得“顯示屬性”的問題一樣。你事先根據自己在其它系統上的
經驗來自己做了問題的限定并且將回答問題的可能限制在一個很小的范圍內。
這樣做既限制了你自己的思維,也影響到你正確描述問題。事實是你的錯誤多
半是概念錯誤,開始走的方向就錯了,與其這樣不如把自己明白的似是而非的
東西拋開,仔仔細細的把那幾個問題(你有什么,你做了什么....)寫清楚,
看別人會怎么作判斷。
第三點,你是來提問題的,你覺得你應該受到幫助。且慢,這里已經不是教師
答疑了,你不再是一個有權力受到教育的大學生了。回答問題的人也不再是你
的老師或者助教了。他們對你沒有責任。大家無非是在一個地方相互交流共同
提高。如果有人回答你,絕對是在助人為樂幫助你。而當你的問題沒有人回答
的時候,多半是你的描述不夠詳細,別人不是醫生,不必一個一個問題誘導下
去。所以當你的問題沒有回答的時候,先對照前面一點再修改問題的描述,這
也是個思考的過程。實在不行,就自力更生吧,接著看下面的文章。
Linux的一個重要作用,我覺得,就是培養人自己探索的能力。回想我們的學
習過程,從小學中學到大學。讓人自己去探索的環境實在太少。所有的問題都
有一個標準答案,要么在老師那里,要么在參考書上。就連作文這樣無法量化
的東西也有個倒霉的“中心思想”。所謂“自學”也無非是猜測到底標準答案
是什么。如果要做大一點的課程項目(Class Project)也會定義的非常詳細
,老師恨不得把所有你能自我創造的細節都堵上,這樣可以方便他評卷。這樣
環境下教育出來的人,到了Linux下就會經常感到無所適從 -- 的確,沒有老
師的標準答案了,你做的對不對只有自己知道。
所以學習Linux,很重要的一點是有自己搜索知識,突破自己思想局限的能力
。遇到問題第一步不是想“誰有標準答案”然后去問人,而是先想”我怎么能
解決他“,不行就自己去尋找解決辦法,再考慮這個解決辦法為什么自己想不
出來,將來碰到類似問題應該往哪個方向去努力。最后再考慮自己是否能在這
個方向上作出改進。經歷過很多次這樣的事之后,人的創造力會有很大的提高
,而這個對于現在靠技術吃飯的人來說,就是10萬和2千的區別。
OK,你有一個問題,你不知道怎么解決,你怎么去尋找答案,怎么提高自己呢
?在有一個問題的時候,你首先要想,你是個新手,在你之前已經有無數個新
手了,你不會是個多特殊的新手。唯一的不同是你的知識面跟別人不同,而不
是你的問題有多特殊。比如你有個D-LINK 220網卡無法配置你覺得很困惑。實
際情況是有很多人已經困惑過了,他們問過這個問題并且都得到了答案。所以
你的第一步應當是明白”這個問題已經有根我一樣的人問過并且在某個地方有
答案了“。
那么,怎么找答案呢?在BBS上,你可以進入Linux版,然后想”已經有答案了
,在哪里呢“。首先你可以在從前的文章里找,這個可以用搜索標題的方法。
先想一下如果你要問這個問題要用什么關鍵字作標題,然后搜索這個關鍵字。
在BBS上搜索是輸入?號然后輸入關鍵字再回車。搜索中用什么關鍵字很講究,
比如你要找有關DLINK 530-TX卡的信息,那么你要想別人會怎么問。肯定標題
里有網卡型號,可是別人會怎么寫呢?也許是530TX,也許是530 TX,也許是
530-TX。所以但是肯定都包括530,所以你可以搜索530這個關鍵字,然后把搜
索到的文章都看一遍,基本上就有答案了。類似的可以搜索的問題還有DE 尤
220,810(Intel 810主板內置顯卡驅動)等。
其實BBS只是一個很小的地方,真正最新最全的知識在網絡上。幾乎所有的
Linux有關程序,常見問題都會有人整理出來放在網上。需要注意的是,一,
Linux不是microsoft,有專門公司維護文檔。Linux的文檔到處都有,質量不一,而且隨著Linux的不停升級會有各種版本。比如IPMASQ因為它隨Linux內核
升級版本更新很快,所以它的幫助(faq)也頻繁升級。看了老的faq會讓你更
糊涂。所以找文檔不要看到一個就盲從,要確認它的確有用,也許你找到的是
個舊版本呢?要知道一些講Linux的文章是5,6年前寫的,當時CDROM還是個稀
罕貨,你想從那里獲得如何用CDROM安裝Linux的問題,卻發現上面都是講怎么
用軟盤安裝,這個就不好了。另外還有有些講內核編譯的文檔都是說make
config,而且里面的選項也很舊,實際上現在內核編譯都用菜單方式的make
menuconfig了。所以文檔的新舊是個很需要注意的事。第二點是你無法逃避使
用英文,你必須強迫自己去理解英文文檔。的確有中文的文檔,但是那些的普
遍問題是缺乏維護,太舊了。
下來請你把這個網址寫在手背上:http://www.google.com/。以后對Linux有了問題,
就去上面搜索。google是我知道最好的搜索引擎,尤其是在Linux知識方面。
幾乎是我想知道什么就能搜出什么,從網卡驅動到并行計算機的配置。我希望
你以后在問問題之前在這上面搜過。搜索的主要技巧是選擇正確關鍵字,參考
前面講過的,搜索530-TX的驅動最好輸入Linux 530 driver字樣。有關搜索技
巧如果我有時間可以單獨寫一些東西。
轉載于:https://www.cnblogs.com/BlogNetSpace/archive/2012/03/20/1590730.html
總結
- 上一篇: java中去掉Sprit(arg0)中正
- 下一篇: 【原转】使用获取subview获取子vi