Linux 笔记 Linux note.doc

上传人:11****ws 文档编号:3179755 上传时间:2019-05-24 格式:DOC 页数:47 大小:121.71KB
下载 相关 举报
Linux 笔记 Linux note.doc_第1页
第1页 / 共47页
Linux 笔记 Linux note.doc_第2页
第2页 / 共47页
Linux 笔记 Linux note.doc_第3页
第3页 / 共47页
Linux 笔记 Linux note.doc_第4页
第4页 / 共47页
Linux 笔记 Linux note.doc_第5页
第5页 / 共47页
点击查看更多>>
资源描述

1、Linux 筆記 Linux noteLinux 源起1991 年的十月,有一個名為 Linus Torvalds 的芬蘭赫爾辛基的大學生在 comp.os.minix 這個新聞群組上發表了這樣一封內容不怎麼起眼的 POST: Hello everybody out there using minix -Im doing a (free) operation system(just a hobby, wont be big and professional like gnu)for 386(486) AT clones. 這個 Linus 的興趣(hobby)就是 Linux 核心程式 0.0

2、2 版的原始碼,當初還是個大學生的 Linus 大概完全沒想到當初被他視為個人興趣的程式,在幾年以後會有超過億萬個使用者,由他自己帶頭開發的作業系統現在已經在世界各地受到普遍的歡迎。 不同於比爾蓋茲寫程式賺錢,Torvalds 寫 Linux 的原始動機,是為了興趣和分享。 Linux 是一套 Unix-like 的作業系統,是 Unix 的一種,支援多人多工的作業系統,它控制整個系統基本服務的核心程式 (kernel) 是由 Linus 帶頭開發出來的,Linux 這個名稱便是以Linuss Minix來命名。Linux 是依 IEEE Std 1003.1-1900 (POSIX.1)及

3、IEEE 1003.2 (POSIX.2) 的標準所設計的,除此之外,Linux 也包合了許多其它 UNIX 系統標準的特色,例如 SVID (System V Interface Document) 以及 BSD (Berkeley Software Distribution) 的 UNIX。Linus 選擇用大眾公有版權 (GPL,General Public License)的方式來發行這份程式,這個版權允許任何人以任何形式複製與散佈 Linux 的原始程式,正因為此,所以,Linux 實際上是免費的,使用者在網路上就可以抓到 Linux 的原始程式碼,隨心所欲的複製與更改 Linux

4、的原始程式,在網際網路的日漸盛行以及 Linux 開放自由的版權之下,吸引了無數電腦高手投入開發、改善 Linux 的核心程式,使得 Linux 的功能日見強大,所以今日我們可以在網路上免費下載 Linux 使用,或者花很少費用就可以取得 Linux 光碟, 這都是因為 Linux 是 GPL 版權的緣故。 Linux 的吉祥物為一隻企鵝(Tux) ,是因為 Linus Torvalds 在逛澳洲動物園時被一隻小企鵝咬到,所以印象特別深刻喔。Linux 作業系統 Unix 系統的主要分支,1.BSD 系列(加州柏克萊大學) 2.System V 系列(AT Portable Operating

5、 System for unIX)的標準來開發,因此可與 現今的 System V 與 BSD 等 Unix like 系統相容。 Linux 系統對於大小寫字母是有區別的。 Linux 系統是多人多工的環境,有權限概念。自由軟體基金會自由軟體基金會(Free Software Foundation;FSF)是由 Richard Stallman(RMF)在 1984 年所創立,第一個計畫就是 GNU(GNUs Not Unix),目的在推動發展開放原始碼的自由軟體。網址:http:/www.fsf.org長久以來 GNU 在 GPL 的授權下發展了一堆 open 的工具,如 Emacs, G

6、CC, 標準的 C 函式庫等,但是最重要的核心卻一直難產,直到 Linux Torvalds 發展了 Linux 這個 Unix Like 的核心。因此我們應該稱為GNU/Linux 。General Public License (GPL )的精神 GPL 的授權之軟體,乃為自由軟體(Freeware),任何人皆可擁有他。 開發 GPL 的團體(或商業企業) 可以經由該軟體的服務來取得服務的費用。 經過 GPL 授權的軟體,其屬於 Open source 的情況,所以應該公布其原始碼。 任何人皆可修改經由 GPL 授權過的軟體,使符合自己的需求。 經過修改過後 Open source 應該回

7、饋給 Linux 社群。Linux 系統架構使用者應用程式系統軟體命令解譯器(Shell) 命令與工具核心(Kernel) 核心模組電腦硬體與週邊核心功能System Calls File Control Process Control Device Drivers Hardware Interface System call interface Process control Memory management File system management Device drivers Linux 擁有優異的資源管理與記憶體管理,使用 Preemptive Multitasking 的行程管

8、理 ,避免特定的行程強佔資源不放,記憶體保護方面分為使用者空間(user space)與核心空間(kernel space),程序的錯誤不會影響到核心的運作1. Linux 核心網址: http:/www.kernel.org 2. 核心的版本:uname -r 套件(Distribution)常見的版本有 Ubuntu, Mandriva , Fedora , Debian , SuSE , Slackware , Gentoo , Knoppix 等,Linux 所有的套件種 類可參考 DistroWatch , 若你無法抉擇使用哪一種套件,不妨利用 Linux Distribution

9、Chooser 為你決定。Ubuntu 2004 年 10 月首次發佈的 Linux 套件其衍生自 Debian 套件,安裝光碟具備 Live CD 方式開機功能,可在 Live CD 的作業環境下,立即將系統安裝到指定的硬碟。2006 年 6 月剛釋出最新的 6.06 LTS(Long-Term Support)版,即代號“Dapper Drake“的版本提供三年的桌面支援與五年的伺服器支援,並區分為桌上型電腦與伺服器等應用版本。桌上型版本採用 GNOME 桌面環境(使用 KDE 則以 Kubuntu 套件另外發布),伺服器版雖然使用文字介面,但核心卻經過效能的調整。Mandriva(原 M

10、andrake)以 RedHat 架構為藍本,Xwindow 改用 KDE 介面,並自行設計了許多圖形化的設定工具,收錄的軟體不但快也很新,是所有 套件中最具有親和力的一種。Fedora特色為安裝快速方便,由 RedHat 套件分離出來,使用的 package 管理系統 rpm(RedHat Package Manager)廣為流傳與使用。Debian大家公認結構最為嚴謹的套件,有自己的 package 管理系統 dpk(Debian Package)。SuSE德國發展的套件版本,現已為 Novell 收購。Slackware完全手工打造,建議老手使用。Gentoo Linux提供相當便利的

11、Portage 軟體套件管理系統。KNOPPIX Linux Live CD 一片活的 CD, 由 Debian 改裝而來 。Linux 安裝Mandrake 套件 9.2 的安裝步驟與畫面建議硬體 586CPU 256MB RAM 6G HD 知道螢幕的垂直與水平掃描頻率 顯示卡的晶片型號,記憶體大小 ,安裝套件發行前半年的卡較好 網路卡型號, 可用 realtek 的螃蟹卡 8139c安裝過程調整 BIOS 調整時間 調整開機順序 : 可從光碟開機安裝硬體設定一般 3 鍵滑鼠可選 MS intelliMouse儲存裝置代號 IDE 硬碟 /dev/hda-d SCSI 硬碟 /dev/sd

12、a-p 軟碟 /dev/fd0-1 印表機 /dev/lp0-2 光碟機 /dev/cdrom 滑鼠 /dev/mouse 網路卡 /dev/eth0-* SCSI 磁帶機 /dev/st0 IDE 磁帶機 /dev/ht0 磁碟陣列 /dev/md0PC 的 IDE 硬碟裝置代號 Master SlaveIDE 1 /dev/hda /dev/hdbIDE 2 /dev/hdc /dev/hdd磁碟分割 硬碟的分割區有主要分割區與延伸分割區 2 種,而一顆硬碟只能有四個分割區, 其中只能有一個延伸分割區,或者不劃分延伸分割區 ,但 因為邏輯分割只能在延伸分割區下切割使用 ,因此通常都會規劃一

13、個延伸分割區 硬碟分割區的代號從 1-4,如/dev/hda1-4, 邏輯分割區則不論是否切完 4 個分割, 其代號一律從 5 開始,如/dev/hda5 Linux 系統的的分割區有 2 種 o native:用來儲存實際檔案目錄資料的分割區o swap:虛擬記憶體資料交換使用的分割區(256512MB) 舊的版本需注意 BIOS 對 1024 磁柱(8.4GB) 的支援, 若未支援 1024 磁柱時,系統的核心需放置在1024 磁柱之前, /boot 目錄大約保留 500MB 以 spfdisk 作多重開機說明, swap partition id:82 native partition

14、id:83 linux 目錄規劃遵照 Linux 檔案系統階層式架構標準(Linux file system Hierarchy Standards:FHS) 軟體磁碟陣列 (Software RAID support) o linux 以軟體模擬磁碟陣列功能,也支援 IDE 硬碟喔, 只做出 RAID0,1,5的規格,必須在安裝時就指定使用 LVM(Logical Volume Management) o 當規劃的分割區空間不夠了,可加上一顆硬碟連結不夠的分割區, 方便管理者擴充空間 日誌式檔案系統 (安裝時就要選擇採用的檔案系統 ) :提供了錯誤復原與稽核的功能 o ReiserFSo E

15、xt3o JFSo XFSLinux 開機流程1. 載入 BIOS 的硬體資訊2. BIOS 從開機磁碟機的第 0 磁區、第 0 磁柱載入可供開機的磁區, 讀取 MBR 3. 自 MBR 載入 Kernel Loader (亦即是 lilo, grub, spfdisk 等等 )開機資訊4. 載入 Kernel 的作業系統核心資訊 (/boot/vmlinuz-xxxx)5. Kernel 執行第一支程式 /sbin/init 並依 /etc/inittab 來決定 不同的 run-level0-halt : 關機 1-single user mode : 單人模式 2-Multiuser,

16、with NFS : 3-Full multiuser mode : 文字模式 4-unsed : 目前未指定 5-X11 : X-Windows 6-reboot : 重新開機 6. init 執行第一支 script : /etc/rc.d/rc.sysinit 7. 啟動核心的外掛式模組 (/etc/modules.conf)8. init 執行 run-level 的各個批次檔( Scripts )9. init 執行 /etc/rc.d/rc.local 檔案10. getty 監測登入要求,登入前顯示/etc/issue 檔 案內容(telnet 顯示 )11. 執行 /bin/l

17、ogin 程式 , 根據輸入核對/etc/passwd, 登入後顯示 /etc/motd 檔案內容, 並將登入的訊息紀錄寫入/var/run/utmp 與/var/log/wtmp12. 登入之後開始以 Shell 控管主機步驟 讀取檔案 寫入檔案載入 BIOS 讀取 MBR 載入 Boot Loader(LILO / GRUB) 載入核心 /boot/vmlinuz-xxxx 核心執行/sbin/init 並由 /etc/inittab 取得系統登入狀態 /etc/inittab init 執行第一支 script : /etc/rc.d/rc.sysinit 啟動核心的外掛式模組 /etc

18、/modules.conf init 執行 run-level 的各個 scripts init 執行 /etc/rc.d/rc.local getty 監測登入 /etc/issue, /etc/ 登入程式 /bin/login /etc/passwd , /etc/motd /var/run/utmp, /var/log/wtmpshell 程式接管 /bin/bash 基本系統操作終端機切換一般的 Linux 套件皆預設提供了 6 個文字介面的終端機可供使用(tty1-6),可利用按鍵 Alt+F1Alt+F6, 若載入 Xwindow 後則增加 Alt+F7 用以切換,但在 Xwind

19、ow 下切換至文字介面的終端機則還要加上 Ctrl。登入,登出,關機登入 login登出 logout, exit, Ctrl+D 關機 halt, poweroff, shutdown -h now 重新啟動 reboot, shutdown -r now 觀看硬體資訊dmesg查看系統硬體的資訊。uname看主機資訊。Linux 的文件系統與資源線上手冊 (man pages)手冊位置:/usr/share/man/ 設定檔:/etc/man.conf man 分類號碼 選項指令名稱-k:尋找出現在哪幾頁以/usr/bin/less 檢視時的操作g:第一行1.使用者指令8.系統調整指令2.

20、系統呼叫3.函式呼叫4.裝置5.檔案格式6.遊戲G:最後一行/:尋找q: 離開 7.其它9.核心內部GNU 製作的線上文件(infomation) info 指令名稱 一般而言,GNU 本身的工具會較完整查看相關的 man pages 中,包含指定關鍵字的文件 apropos 關鍵字與 man -k 相同 ,需先makewhatis 查看相關的 man pages 中,指令的分類 whatis 指令名稱 查看指令的位置與相關的 man pages whereis 指令名稱 一般指令的選項 (-help) ls -helpcat -help選項名稱大於 1 個字元者要加2 個-Linux 本身提

21、供之技術文件 /usr/share/doc/ 網路資源 Mailing List 郵件論壇News Groups 新聞論壇 LDP, Linux Online, Slashdot, CLDP , BBS檔案系統 檔案系統(File System ; FS)是作業系統(OS)用來儲存與管理檔案的標準。不同的作業系統通常都有自己的檔案系統,而 Linux 甚至於將硬體與周邊裝置都視為檔案,因此有必要 將 FS 徹底的瞭解一下 Linux 可使用非常多的檔案系統,如 Ext2, Ext3, RaiserFs, JFS, XFS 等,可到以下目錄看出支援的格式/lib/modules/uname -r

22、/kernel/fs 若需要將分割區於開機時自動掛載,則需修改/etc/fstab 檔 案 檔案與目錄的名稱最多可以有 255 個字元,且其中不可有空白/etc/fstab 系統開機會自動掛載那些 file system 或裝置,是紀錄在 /etc/fstab 這個檔案系統配置檔 。 自動掛載 vfat 的範例/dev/sda6 /mnt/hdd vfat iocharset=cp950 0 0 /etc/fstab 每一列包含六個欄位,以空格( 一個以上)、tab 或兩者同時用來分隔。 o 第一個欄位設定 分割區 的 位置(裝置的路徑) *可利用 fdisk -l 先觀察現有的分割情況o 第

23、二個欄位設定分割區要在哪個 掛載點 被 掛載 *這個掛載點必須事先被建立喔 o 第三個欄位設定分割區的 檔案系統 o 第四個欄位設定 mount 要掛載時所使用的 掛 載參數 。 因為不同的檔案系統有不同的參數,可查詢 manpage ( man mount ) 來取得完整的參數列表。 若有兩個以上的選項,需以用逗號分開 defaults 代表將自動 mount 該 partition 為可讀可寫 noauto 表示開機時不要自動掛載 iocharset=cp950 支援 codepage 950 功能,讓 vfat partition 可以看到中文長檔名 o 第五個欄位被 dump 用來決定

24、這個分割區需不需要被傾 印。有 0(不做),1(順位第一),2(順位第二)三種值,正常 root file system (/)順位第一,其他 ext3,ext2 檔案系統順位第二,其他檔案系統填 0 o 第六個欄位讓 fsck 決定當系統不正常的關機時,檔案系統要不要作系統 檢查 , 1 表示要,0 表示不要。 只有 ext3,ext2 等需要做 file system check ext3(Third Extended File System)若選擇將硬碟格式化為 ext3 格式之後,硬碟會分為 4 個部分boot blockext3 檔案系統中的第一個區塊(block) ,含有啟動程式,

25、負責載入核心super block負責記錄檔案系統的配置方式,例如:i-node 數量,可用區塊數量等data block 資料實際儲存的地方,大小為 512bytes 的倍數 ,預設為 4096bytes i-node(index-node) i-node 負責記錄一個檔案的資訊,但一個檔案可以有多個 i-node 來指向它,記錄的資訊有 檔案大小 使用者 id:UID 群組 id:GID 檔案存取模式:讀取、寫入、執行等 連結的數量:指向的檔案同時有多少個 i-node 也指向它 檔案最後修改時間 磁碟區塊位址:檔案實際存放的 data block 位址 間接區塊位址:檔案大小超過一個 i

26、-node 時的儲存位址與分割相關的指令fdisk語法:fdisk /dev/hda-d範例:fdisk /dev/hdcfdisk 按鍵說明 p 看現有 partition l 看 partition system ID n 新增分割區 d 刪除分割區t 設定分割區的 system id a 設定分割區為可開機w 儲存分割的結果並離開 q 不儲存分割的結果直接離開常用的 Partition system ID FAT12 1 FAT1632M 6 FAT32 bFAT32(LBA) c FAT(LBA) eNTFS/HPFS 7 Extended 5Linux swap 82 Linux n

27、ative 83mkfs語法:mkfs -t ext3 /dev/hda-d 1-* 範例:mkfs -t ext3 /dev/hda5 階層式目錄架構Linux 檔案系統採用階層式(或稱樹狀式 )的目錄架構存放與管理檔案,結構的最上層為 root 以/來表示,其下有子目錄如 /etc/boot/usr等,不同的儲存裝置都視為檔案,掛(mount)在同一個目錄樹下,與 Windows 中不同的儲存裝置都有一個獨 立的目錄樹相當的不同。 Linux 子目錄的名稱可以隨意建立,但有些目錄的存在是有特殊功能或某些目錄的存在是慣例了的緣故,因此不可隨意更改其名稱,但 除了那些為人所知的目錄之外,存放檔

28、案是否有一套標準呢?為避免不同的套件發展後,在檔案系統的命名與習慣不統一,造成使用 Linux 的門檻,的確有一套 名為 FHS 的標準,目前最新的版本為 2.3,網址為http:/ file system Hierarchy Standards /lib 系統最基本的動態鏈結函式庫 /home 使用者家目錄 /usr 安裝的程式 ,文件,原始碼,字型等較靜態的檔案 o /usr/bin、/usr/sbin 一般使用者常用的程式o /usr/lib 一般使用者常用的程式所需的動態鏈結函式庫、靜態檔案庫o /usr/X11R6:X-Window 目錄o /usr/src:Linux 原始碼o /

29、usr/include:系統頭檔 /dev 裝置設備檔目錄 (device) /etc 系統組態設定檔,包含應用程式設定,網路組態設定等 /boot 開機相關檔案與核心,包括了開機管理程式的設定檔,核心檔案:vmlinuz /bin 一般使用者執行程式(binary) /sbin 系統管理員執行程式(binary) /var 紀錄,spool 佇列,mailbox,網頁,FTP /proc 為一虛擬目錄,是記憶體的映射,放置核心網路,行程資訊狀態 /mnt 固定裝置掛載點,一般是空的,用來臨時掛載別的檔系統 /media 移動裝置掛載點 /tmp 暫存目錄,可供所有使用者讀寫之用,系統將不定期

30、清除之 /root 管理者家目錄路徑目錄. 表示目前所在目錄. 表示上一層目錄 表示目前使用者家目錄 cduser 表示指定 user 的使用者家目錄/ 根目錄 亦可表示絕對路徑:以 / 開始表示連續的階層目錄開機片製作 DOS:rawite file.img a: Linux :dd if=file.img of=/dev/fd0 開機管理程式LILOGRUB grub 具有動態搜尋核心檔案的功能,它可以讓您在開機的時候,即時編輯開機設定檔案 grub 利用 BIOS 來決定硬碟,但無法判斷是 IDE 還是 SCSI,因此無法採用 Linux 中通用的裝置表示法,而有自己的定義,如(hd0)

31、,(hd1,1)等,與實際硬碟的對應要參考 /boot/grub/device.map 即可得知 grup 的設定檔為/boot/grub/menu.lst GRUB 預設將 Windows 系統設為 Other 製作 grub 開機片#mke2fs /dev/fd0 #mkdir /mnt/floppy #mount -t ext2 /dev/fd0 /mnt/floppy -o loop #mkdir -p /mnt/floppy/boot/grub#cd /boot/grub#cp device.map stage1 stage2 /mnt/floop/boot/grub#cat menu.lst default=0 timeout=10

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育教学资料库 > 精品笔记

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。