安裝及命令
要求:
1.掌握linux安裝
2.掌握分區及引導程序的安裝
3.掌握整個安裝的過程
分區要求:
1.至少要兩個分區【swap和根分區】
2.最好四個分區【外加home和boot】
分區規劃:
\ |
swap |
\home |
\boot |
硬盤總大小減去swap減去\home減去\boot |
RAM爲1G時,swap分1G。RAM爲1G以上時,swap爲2xRAM |
根據個人使用情況 |
存放內核和bootloader。 <=100MB |
Ubuntu特性:
1.對於初學者屏蔽了root用戶使用
2.使用sudo更加安全
3.對於文件系統,ext3更加安全高效
查看分區情況:
1.使用root,#fdisk -l 查看
Disk /dev/sda: 17.1 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 2088 16667437+ 8e Linux LVM
2.使用普通用戶$cat /proc/partitions查看
major minor #blocks name
8 0 16777216 sda
8 1 104391 sda1
8 2 16667437 sda2
253 0 14614528 dm-0
253 1 2031616 dm-1
安裝系統:
安裝系統引導方式:
一、使用USB啓動盤安裝系統
二、使用電腦硬盤引導安裝系統
準備工作:下載iso包和EasyBCD軟件,虛擬光驅(好壓軟件自帶)
步驟:
①.
然後就會出現一個menu.lst文件
我們要編輯這個文件 因爲系統就是這個文件找到我們的ubuntu的。
把下面的四行復制進去,把原來的全覆蓋掉
title Install Ubuntu
root (hd0,0)
kernel (hd0,0)/vmlinuz boot=casper iso-scan/filename=/ubuntu-11.10-i386.iso ro quiet splash locale=zh_CN.UTF-8【此處接上一句,ubuntu-11.10-i386.iso爲你的iso文件名】
initrd (hd0,0)/initrd.lz
如:
上面出現了3次hd(0,0)
左邊的0表示hda, 1表示hdb
右邊的0表示hd*1,1表示hd*2
保存上面操作之後,c盤根目錄下就會創建一個NeoGrub文件。
②.
把準備好的iso用虛擬光驅打開,找到casper文件夾,複製initrd.lz和vmlinuz到C盤,然後在把iso也拷貝到C盤【hd(0,0)的情況下】。
③.重啓後,在開機啓動項裏選擇NeoGrub。進入linux後,在進入安裝之前 要按Ctrl+Alt+T 打開終端,輸入代碼:sudo umount -l /isodevice這一命令取消掉對光盤所在驅動器的掛載,否則分區界面找不到分區。【-l 選項是延緩卸載,等iso驅動不忙時卸載iso】
1.建分區
參考附錄一《各種linux分區步驟.doc》
分區注意事項:
boot 和 swap(交換分區)是主分區,其他的掛載點,都是邏輯分區。
分區大小適中,按照各個目錄對空間大小的要求進行劃分。
Linux命令操作
目標:
熟練掌握linux操作
掌握目錄結構和基本操作命令
名詞解釋:
管道:
將上一次查詢結果做爲下一次查詢的源材料
內部命令:內核自帶的,不需要路徑,直接使用
外部命令:由c,shell腳本等源程序實現
任務:
將各項常用命令的功能,使用實例書寫出來。
附錄二《作業.doc》
附錄一《各種linux分區步驟.doc》
Ubuntu 硬盤“分區”圖文教程(用於光盤,U盤安裝Ubuntu)
大家都看到了,我一直是給“分區”,加了引號,因爲在任何的“類Linux”系統裏(比如紅旗,紅帽子,Ubuntu),他們並沒有硬盤分區這個概念,這個和Windows是有本質區別的。
一.掛載點
在Linux系統裏面,“分區”,被稱作“掛載點”,簡單明瞭的說,“掛載點”意思就是:把一部分硬盤容量,“分”成一個文件夾的形式,用來幹什麼事情。這個文件夾的名字,就叫做:“掛載點”。所以,和Windows有着本質上的超級大的區別,你在任何linux發行版系統裏面,絕對不會看到C盤,D盤,E盤這樣的,你能看到的,只有“文件夾”形式存在的“掛載點”。
在Linux 系統裏面,有一些已經定義好,用來幹一些事情的掛載點,常見的“掛載點”有:
1. Boot
大家應該很常見這個英文,是引導的意思。對於Linux來講,一部分容量,用來“掛載”Boot,就是用於存儲系統的引導文件
2. / 或者 /ROOT
就一個符號,是Linux系統特有的,是“根目錄”的意思。根目錄,用來存儲用戶的一些基本配置文件,軟件設置文件等等很多
3. home
“家”的意思,在Linux系統裏面,它是用來存儲用戶的程序,文件,文檔等等所有資源。因此,進行“分區”操作的時候,它是要分的很大很大很大的。
4. SWAP
這個,是Linux和Windows最大的區別了。Windows沒這個東西,只有Linux纔有。其實它也不是一個“掛載點”,爲了菜鳥們理解方便,我這裏姑且把它當作一種掛載點。SWAP分區,是讓“內存”臨時存儲文件的專用空間。
小知識:對於大部分常見的Linux核心的系統,上述的 2,4.有它們2個“掛載點”,就夠了。當然,Linux下還有其他很多“掛載點”,可以進行詳細的設置,我說的2和4,只是必須的,一定要有的,最最基礎的!沒有它們2個掛載點,根本不能繼續安裝系統的!
5. usr
用來存放系統自帶的,或者通過更新安裝的軟件的地方。
6. tmp
臨時文件存儲地方,大家可以理解爲Windows下的:C:\Documents and Settings\Administrator\Local Settings\Temp 目錄。^_^
7. 自行設置“掛載點”
咱們在Windows裏面,可以通過“新建文件夾”來存儲一類東西,當然在Linux下也行。除了這個方法,你也可以在“分區”的時候,自己設置一個“掛載點”(其實功能就等於建立個專門的地方,存放專門的東西”)
其他,還有很多很多。我不一一細說了,下面有張圖,裏面有各個文件夾對應的功能,存貯的東西。大家都可以在“分區”的過程中,手動“掛載”,設置具體容量。
二.Linux系統下,硬盤光驅等設備的命名規則
Linux 好像很喜歡“另類”,它對硬盤設備的命名方法,也和Windows有很大區別。在Linux系統裏面,你的硬盤設備信息,是專門存儲在“dev”這個掛載點裏面的。上面我沒有提到這個掛載點,大家知道就行了。後面會見到。它的硬盤命名方法是:
1. IDE 接口的硬盤,Linux下稱爲(或者說是顯示爲):HD
2. SATA 硬盤或者 SCSI硬盤,稱爲: SD
3. 光驅,就是 CDROM 了。如果有多個光驅,是按數字命名排列的,比如:CDROM0,CDROM1,CDROM2
4. 硬盤裏面的 Windows下的分區
以Ubuntu 8.04以上爲例,它已經很好很好的支持 Windows分區類型(FAT32,FAT,NTFS)的讀寫操作了。你係統安裝好後,它就能自動識別這些Windows分區。它們會以“該分區的容量大小+分區卷標”,來標明,比如: 22.5G GAME, 30G System^^^這樣。在你係統的“位置”裏面,就能看到的。
5. 如果你有多硬盤………………
剛纔說了,在Linux裏面,硬盤被分爲:HD 和 SD,那麼,根據英文26個字母的順序。第一塊硬盤,就是 hda,那麼,這塊硬盤的第一個掛載點,就是 hda1,以此類推 hda2,hda3^^^
剛纔說了,多塊硬盤,是根據26個字母順序排的,那麼, hdb就是第二塊硬盤了。這個應該很容易理解吧?它的“分區”,自然就是:hdb1,hdb2,hdb3……………………同樣道理,大家應該能知道, sdb3,是什麼意思了吧?
三.關於常見掛載點的容量設置
每個人的硬盤大小都不同,自然也沒有“定論”了,我大致說下,大家可以根據自己實際情況,酌情考慮
1. boot
Linux系統,它的引導文件很小很小,這個boot掛載點,大家分 100M,就足夠了(這個基本上能算是定論!不管你硬盤多大,就分這麼多,足夠足夠了!等你安裝完了系統,去看看它,其實就佔 45M——50M)
小知識:BOOT掛載點,並不是必須的。但是個人建議,如果你要做雙系統,最好是單獨分出來,等你安裝grub引導器的時候,把它安裝到boot上,就是雙系統了,這樣做,目的就是更明確,更方便。
2. / (有些linux發行版,這個也寫做:/root,功能道理是一樣的)
剛纔說過了,得大點,至少5G以上
3. home
剛纔也說了,是要求最大最大最大的。。。。。。你就儘量分吧。嘿嘿!網上常見的,80的硬盤,分給它 70G的都有………………
4. SWAP
有一個不成文的小規律: 電腦內存,小於 1G的,SWAP分 512M;內存大於 1G的,分 1G就行。
5. TMP
臨時存放些垃圾的,自己看着吧了。大不了用滿了清理唄。
小知識:linux和windows不一樣,垃圾很少很少,可以說是幾乎沒有,所以,在linux系統下,你完全不用考慮,系統垃圾文件的問題喔!所以,用linux,自然就不用天天吵着:我怎麼清理垃圾阿!
6. usr
佔你整個容量的 15%差不多吧。呵呵,自己酌情考慮,其實你不“掛載”這個都行的。
Linux的分區,之所以讓大家頭疼,就是因爲它並不是給每個分區,分配一個“字母盤符”,而是通過具體的文件夾名字,來進行“掛載”,進行功能的區分。其實,大家在潛意識裏,明白這些掛載點的意思,就行了。別非想着Windows,分區就得有個盤符。。。。。。。^_^想用Linux,很多觀念都必須要改變滴~
四.實戰 Ubuntu 8.04.1 硬盤分區
基礎知識說完了,該進入正題了,以:Ubuntu 爲例,來一步一步的圖文說明分區過程。
硬盤“分區”,是Ubuntu系統安裝過程的:第三步,前兩步我實在覺得沒必要說了。
1. 系統語言選擇—— 都知道選擇中文(簡體)吧?而且默認就是,直接回車即可!
2. 選擇時區 —— 默認就是 (SHANGHAI),會拼音的都明白。中國上海。直接回車
3. 開始頭疼的硬盤分區
首先出現的是這個界面,我們選擇“手動”
⑴ 這裏,就是Ubuntu系統的“分區”軟件界面了。每種Linux系統,都自帶分區軟件,他們的界面和使用方法,也大致相同,菜鳥們學會一種,就完全可以應付所有的了。雖然網上也有很多專門給Linux系統“分區”的第三方軟件,但我個人還是推薦大家用系統自帶的,方便,直接,快捷~
如圖,下面列出了我的硬盤設備:dev/sda ,還用解釋麼?sda:“sata接口第一塊硬盤”
⑵我們選中下面的“空閒空間”行,就能點擊“新的分區”了。
⑶點擊“新的分區”,我們來創建掛載點。界面如圖,我逐個解釋
★新分區的類型
boot 和 swap(交換分區)是主,其他的掛載點,都是邏輯。這個不解釋了。當然不是定論
★新建分區容量: 自己填寫吧
★新分區位置: 默認就行,選擇“開始”
★用於
Linux的“分區”,也有很多種類,就像是Windows包括NTFS,FAT32。 現在這個時代,建議大家選擇 Ext3 日誌文件系統就行了。還有一種 R...FS,具體名字忘了,^_^,也可以。不過我都用Ext3,實質存放檔案的分割區。事實上除了ext3外,GNU/Linux可以使用ext2、xfs、reiser及jfs等檔案系統存放檔案,每個檔案系統都有其長短處,不過初學者先使用ext3。
一會兒要建立SWAP掛載點,就是在這裏選擇!別忘了!
★ 掛載點
不解釋了,前面開始時候就介紹了,“分區”軟件裏面羅列了常見的:boot, /, home,usr,temp
看看,這裏面已經提供瞭如下這些掛載點,大家直接選擇就行了:
⑷第一步,建立 BOOT 掛載點的“分區”,看圖吧,最直接
⑸第二步:建立 SWAP ,交換空間
⑹建立 /,根目錄掛載點
⑺建立 HOME,用戶掛載點
⑻到這裏,最基本的,就建立忘了,教程裏面,我就建立這幾個,其他的,大家想建立,可以照貓畫虎就行了,應該這個本事都具備吧?^_^ 看下面的圖,是已經都掛載好的硬盤了。
4. 填寫個人信息:用戶名,密碼(輸入2遍),填寫計算機名稱
5. 開始“全自動”安裝。。。。。。。。。
6. 最後重啓,就裝完系統拉!
我覺得寫的夠簡單了,給菜鳥看應該足夠了。有什麼具體問題,帖子上提吧。能解決的,儘量幫大家解決。至於裝完系統後的操作,那就不是一句話兩句話,甚至幾千字能說清楚的了。。。。。。。。。。。真有心學的話,可以去書店買書。。。。。或者學生兄弟們,直接去“坐穿”圖書館吧。我那時候就是圖書館借了3本書,回來研究了幾個月。
五.其他linux發行版系統的“分區”
剛纔說過了,大家通過這篇文章,至少應該能知道,linux的“掛載點”的知識,linux對於硬件(硬盤,光驅)的命名方法,常見掛載點的用途、大致容量劃分。
這些知識,對於任何一個linux發行版系統,都是完全徹底通用的,意思就是:不管你用什麼發行版,redhat,紅旗,麒麟,fedora,opensuse等等,它們的“分區”,都是按照:新建——選擇格式(ext3之類的)——設置掛載點——填寫容量,這個步驟進行的。不同的是,嘿嘿,它們自帶的安裝程序,到了分區那個步驟,界面圖形(背景顏色拉,按鈕擺放位置拉)稍有不同罷了
1.首先,是Fedora linux 的“分區”那個步驟的圖:
差不多吧?新建,編輯,刪除,空閒的空間。掛載點,文件系統,“指定的大小”。。。。。。。我覺得大部分人應該會照貓畫虎吧?
2. Open Suse linux
這個麻煩點,都是英文的,Creat(創建),Edit(編輯),Delete(刪除),Resize(調整容量大小),format(格式化),file system(文件系統),Mount Point(掛載點)
suse“分區”這裏,容量稍微有點“麻煩”,它是以“段”來計算的,就是:cylinder,正如圖裏表示的, 1 cylinder =7.64M,下面的2行,就是:啓示段 和 結束段的“位置”
咱們舉個例子好了,剛開始的時候,肯定是從 0 開始。我們首先分個 100M的boot。
1段=7.64M,我們要分100M,那應該是到多少段呢?(初中數學,自己算去吧,嘿嘿!)
Suse的分區,就是這裏麻煩,還得自己計算。其他的沒什麼區別的。
3. Red Flag 國產紅旗linux
和ubuntu類似吧,就是背景是銀色的,新建,編輯刪除什麼的都有,中文的,不說了。
4. Red Hat 紅帽子,linux
也差不多吧?各個按鈕都是一樣的,背景灰色的而已
附錄二《作業.doc》
文件處理命令
Ls:
顯示目錄文件【list】
-a 顯示所有文件,包括隱藏文件
-l 顯示詳細信息
-d 查看目錄屬性
Cd:
切換目錄 【change directory】
Pwd:
顯示當前目錄【print working directory】
Touch
創建空文件
Mkdir
創建目錄【make directoiries】
Cp
複製文件或目錄
-r 複製目錄
Mv
移動文件【move】
可用於重命名
Rm
刪除文件目錄【romve】
-r 刪除目錄
-f 不詢問是否確定要刪除
Rmdir:刪除空目錄
Cat
顯示文件內容【concatenate and display files】
只能顯示最後一大頁
More
分頁顯示文件
空格或f 顯示下一頁
回車 顯示下一行
Q或q 退出
Head
查看文件前幾行
-num 顯示文件前num行,默認爲10行
Tail
查看文件後幾行
-num
-f動態顯示後幾行【實時顯示日誌信息】
Ln
產生鏈接文件【link】
硬鏈接,相似於cp -p【保留原時間值】,但是同時更新
-s 軟鏈接【權限都是lrwxrwxrwx】
相當快捷方式
Ls -i
I節點i-inode內核處理任何東西都要有一個數字標記
硬鏈接和源文件擁有同一個i節點
不能跨文件系統【不同分區】硬鏈接
File
查看文件信息
權限處理
Chmod
改變文件目錄權限【change the permissions mode of a file】
Chmod 【xxx】
U所有者G 所屬組O 其他用戶
+-=
R=4 w=2 x=1
文件:
R:cat,more,head,tail
W: echo,vi,
X:是命令或腳本
目錄:
R:ls,
W:touch,mkdir,rm在目錄內創建刪除文件
X:cd
Chown
改變文件所有者【change file ownership】
#Chown nobody filel[noboby是默認賬戶]
Chgrp
改變所屬組
Umask
顯示和設置文件的缺省權限
默認爲數字顯示
0022:0-特殊權限位,022-用戶權限位,權限掩碼值777
-S 直觀字符顯示
Linux權限規則:缺省創建的文件不能授予可執行x權限
修改缺省權限爲750步驟
777 - 750 = 027
#Umask 027
Which
顯示系統命令所在目錄
可以提供別名信息
Whereis
顯示系統命令所在目錄
可以提供幫助文件存放位置
Find
查找文件目錄
$find 【路徑】 【關鍵字】
根據文件名查找:
$find /etc -name init
避免在/中查找,會佔用龐大的系統資源
* 匹配任意字符(包括0個)【init*;*init*】
? 匹配單個字符【in??】
根據大小查找:
$find /etc -size +204800[查找大於100MB文件]
Block = 512字節
100MB = 100*1024*2 Block
大於 +204800
小於 -204800
等於 204800[少用]
根據所有者查找
$find /etc -user root
根據時間組查找
$find /etc
-ctime 【change】文件屬性被修改過(ls看到的:所有者,所屬組,權限)
-atime 【access】文件被瀏覽過(cat,vi)
-mtime 【modify】文件內容被修改過
以天爲單位
-cmin -amin -mmin 以分鐘爲單位
-time_val 之內
+time_val 超過
$find /etc -mmin -120 查找在兩個小時之內被修改內容的文件
連接符
-a and 邏輯與
-o or 邏輯或
$find /etc -size +163840 -a -size -204800 查找大於80MB小於100MB的文件
-type f 只顯示普通文件
-type l 只顯示軟鏈接文件
-type d 只顯示目錄
連接執行符
$find .....-exec 命令 {} \;
{} 表示find查詢的結果
\ 表示轉義符,使符號和命令使用本身的意思【rm是rm -i的別名,如果使用$\rm file 則直接刪除file不詢問是否刪除】
; 表示結束
$find /etc -name file -exec rm {} \;查找到file後直接刪除
$find /etc -user admin -exec rm -rf{} \;查找到admin所有文件和目錄後直接刪除
-OK
會詢問確認
$find /etc -name file -ok rm {} \;查找到file後詢問是否刪除
$find /etc -name ini* -a -type f -exec ls -l {} \;
根據i節點查找
Linux中能創建“a b”和“--a--b”等不規則文件名文件
使用 ls -i 查看所有i節點文件
$find . -inum 16 -exec rm {}\;查找i節點爲16的文件並刪除
Locate
尋找文件或目錄【list files in databases】
$locate file 列出有跟file相關的文件,速度比find快,在實時數據庫中查找,不用指定路徑。Uinux中沒有。
updatedb
建立整個系統目錄文件的數據庫【update the slocate database】
這是linux定期執行任務的指令,執行權限:root
Grep
在文件中搜尋字符串匹配的行並輸出
$grep ftp /etc/services
Man
獲取命令或配置文件的幫助信息【manual】
若有同名的命令和配置文件,優先查看命令
命令優先級爲1
配置文件優先級爲5
Passwd爲同名文件:
man passwd 查看passwd命令
Man -5 passwd查看passwd配置文件
Info
查看幫助信息【information】
Uinux中沒有
Whatis
只顯示命令的描述(基本用途)【whatis apropos makewhaits】
--help
只顯示選項信息.
Apropos:
只查看配置文件信息 相當於man -k
Makewhatis
建立whatis和apropos搜索使用的數據庫,當使用這兩個命令發生錯誤時,就是whatis database沒有建立。
Help
查看shell內置命令的幫助
壓縮解壓命令
Gzip
壓縮文件【GNU zip】
壓縮後文件格式:.gz
特性:
1.只能壓縮文件,不能壓縮
2.不保留原文件
Gunzip:
解壓縮
解包後不保留包
Gzip -d也行
Tar:
打包目錄
-c : 產生.tar打包文件
-v : 顯示詳細信息
-f : 指定壓縮後的文件名
-z : 打包同時壓縮
解包
-x : 解包
-f : 指定壓縮後的文件名
格式: .tar.gz
$tar -zvcf dir1.tar.gz dir1
Uinux老版本可能不支持,需要分開做:先打包,再壓縮。
Zip
壓縮文件或目錄
格式:.zip(win和linux默認格式)
-r :壓縮目錄
$zip -r dir.zip dir/
Unzip
解壓縮
Bzip2
壓縮文件【適合大文件壓縮,壓縮比非常高】
格式: .bz2
-k 產生壓縮文件保留原文件
$bzip2 -k file
Bunzip2
解壓縮 .bz2文件。
網絡通信指令
Write:
想另外一個用戶發信息,用ctrl+D結束
$write admin
實時通信,不能留言。
Wall
向在線所有用戶廣播信息
Ping
測試網絡連通性
-c 指定ping次數 ping -c 3 192.168.1.100
-s 指定包的大小 ping -s 6000 192.168.1.100 最大65507
網線的質量會影響丟包率
丟包率嚴重會影響很多東西
若ping自己ip可以,卻ping不同其他主機,可能不是本機問題。
若ping自己ip不通,就ping迴環地址。
若ping迴環地址ping不通,則tcp協議安裝有問題。沒網卡也能ping通。
Ping不通不一定網絡有問題,防火牆之類的限制
Ifconfig
查看網絡設置信息
-a 顯示所有的網卡信息
系統關機命令
Shutdown:
關機
#shutdown -h now
Reboot
系統重啓
Shell應用技巧
命令別名
$alias 查看所有命令別名
$alias copy = cp 將copy定義爲cp的別名
$aliss xrm = “rm -r” 命令是個組合時,要括起來
$unalias copy 取消別名
輸入輸出重定向
同標準I/O一樣,shell對於每一個進程預先定義3個文件描述字:
0:stdin標準輸入
1:stdout標準輸出
2:stderr標準錯誤輸出
>或>> 輸出重定向[將屏幕輸出結果保存到一個文件內]
Ls -l /temp > /temp.msg 會覆蓋temp.msg;
>>可以追加
< 輸入重定向
$wall < /etc/motd
2> 錯誤輸出重定向
$cp -R /usr/backup/usr.bak 2> /bak.error
> 和 >> 實質是 0> 和 0>>
< 實質是 1<
>用於錯誤輸出重定向的話會和第一個衝突,所以用2>
管道
將一個命令的輸出傳送給另一個命令,作爲另一個命令的輸入
命令連接符
; 用;間隔各個命令按順序依次執行
&&只有前面命令執行成功後,後面的命令才執行
|| 前面命令執行失敗後,後面的命令才執行;前面命令執行成功後,後面的命令不執行。只執行一個。
命令替換符
將一個命令2的輸出作爲命令1的參數
格式爲:命令1 `命令2`
如:ls -l `which touch`