LINUX環(huán)境高級編程(一)_第1頁
LINUX環(huán)境高級編程(一)_第2頁
LINUX環(huán)境高級編程(一)_第3頁
LINUX環(huán)境高級編程(一)_第4頁
LINUX環(huán)境高級編程(一)_第5頁
已閱讀5頁,還剩40頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

LINUX環(huán)境高級編程中國地質(zhì)大學(xué)(武漢)計算機學(xué)院朱靜中國地質(zhì)大學(xué)(武漢)計算機學(xué)院第一講linux環(huán)境編程基礎(chǔ)VI簡介Linux文件系統(tǒng)和庫管理Linux操作Linux簡介課程簡介中國地質(zhì)大學(xué)(武漢)計算機學(xué)院課程簡介課程內(nèi)容Linux系統(tǒng)原理及應(yīng)用Shell編程C編譯環(huán)境Linux系統(tǒng)調(diào)用網(wǎng)絡(luò)通信編程多線程GUI簡介

中國地質(zhì)大學(xué)(武漢)計算機學(xué)院課程簡介參考教材《Linux程序設(shè)計》(第4版)NeilMatthew,RichardStones人民郵電出版社《UNIX環(huán)境高級編程》(第2版)機械工業(yè)出版社電子資源////

中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux簡介Linux發(fā)展Belllabs(AT&T)BSD(BerkeleySoftwareDistribution)FreeBSDOpenBSDNetBSDMacOSXGNU/LinuxHP-UXSunSolarisIBMAIXNetStepSunOSGNUSRV5BSDfamily1970198019902000WearehereUNIX家族中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux簡介Linux發(fā)展GNU=GNUisnotUNIX1984年gcc,make,emacs,glibcGPL(GNUGeneralPublicLicense)GNU通用公共許可證LinusTorvalds于1991年編寫,使用GNU組件,GNU/LinuxLinux是一個與UNIX兼容的系統(tǒng),與UNIX遵循同樣的POSIX標(biāo)準(zhǔn),(PortableOperatingSystemInterface)但代碼完全不同版本眾多,內(nèi)核下載地址:

當(dāng)前最新版4.2中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux簡介Linux內(nèi)核版本

major.minor.patchlevel主版本

1.0,2.0,2.2,2.4,2.6穩(wěn)定版

2.0.40,2.2.12,2.4.18,3.16.2,4.1.6開發(fā)版

2.1.1,2.3.1,2.5.1,2.5.9主版本號次版本號修訂次數(shù)中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux簡介Linux發(fā)行版本RedHatLinux,F(xiàn)edora,SUSE,Ubantu,OpenLinux,Debian,TurboLinux,中科紅旗Linux,…

rpm的開發(fā),使RedHatLinux成為最流行的發(fā)行版,F(xiàn)edora是Redhat與開源社區(qū)合作的桌面版本。中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux簡介RedhatLinux版本2003年redhatlinux9.0之后只發(fā)布redhatenterpriselinux(rhel,收費版)

redhatlinux9.0以后redhat和開源社區(qū)合作啟動了fedoraproject,免費Linux發(fā)行版。

rhel源代碼重新編譯的免費版本CentOS,去掉rhel版本的商業(yè)軟件和一些注冊商標(biāo),基本上和rhel同時發(fā)布。

中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux簡介Linux安裝安裝單系統(tǒng)安裝雙(多)引導(dǎo)系統(tǒng)虛擬機中安裝中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux簡介Linux的運行級別0—停機,關(guān)機(initdefault不能設(shè)置為0)1—單用戶模式2—多用戶模式,但沒有NFS3—完全多用戶模式4—未定義5—X11圖形模式(initdefault)6—系統(tǒng)重啟(initdefault不能設(shè)置為6)中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux簡介Linux的優(yōu)勢功能齊全,穩(wěn)定—尤其在連續(xù)工作的服務(wù)器上表現(xiàn)明顯;開源—對政府,軍事,金融等領(lǐng)域,更安全可靠;內(nèi)核可定制—可移植性,兼容性強;GUI可選—有GUI,也有純文本模式;便于遠(yuǎn)程管理—真正的多用戶操作系統(tǒng);中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux操作超級用戶和普通用戶超級用戶的系統(tǒng)提示符為#普通用戶的系統(tǒng)提示符為$超級用戶作為系統(tǒng)管理員擁有一切權(quán)限。成為超級用戶的方法:

1,以root用戶名登陸;

2,使用su命令創(chuàng)建一個root用戶的子shell,享有超級用戶的權(quán)限;

3,使用sudo應(yīng)用程序作為超級用戶運行單個命令中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux操作Linux常用命令lsrmcpcatmvmkdirrmdircdheadtailechodatedfdukillchmodchownchgrpinfomanpwdifconfigwhowfindmounttreegrepawksed中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux操作man[section]命令名獲得聯(lián)機幫助(manual)man–k命令名幫助手冊一般有以下幾個主題:(1)用戶命令(2)系統(tǒng)調(diào)用(3)庫函數(shù)(4)特殊文件(5)文件格式(6)游戲(7)綜合(8)系統(tǒng)管理和特權(quán)命令(9)內(nèi)核接口(不是所有的linux發(fā)行版都包括)

中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux操作例:man2chmodman-kchmod列出手冊中所有包含chmod的條目其他獲得幫助的方法:1,info命令名2,命令名–help查看幫助信息時按q鍵退出查看狀態(tài)。ls顯示文件、目錄信息ls-adglsFGR文件名例:$ls–lsheart1–rw-r--r–1zjcs213Jan3100:12heart占用幾個磁盤塊文件類型和權(quán)限有幾個硬鏈接文件所有者的用戶名文件所有者所在的組名占用字節(jié)數(shù)日期時間文件名中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux操作中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux操作Linux主要文件類型:字符文件類型

-普通文件

d目錄

b塊文件(例如:磁盤驅(qū)動器)c字符文件(例如:終端)l鏈接文件

p管道

s套接字pwd顯示當(dāng)前路徑pwd例:$pwd/home/zj中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux操作cat/more/head/tail顯示文件內(nèi)容cat文件名顯示小文件more–f文件名查看大文件head–n文件名查看文件頭幾行tail–n文件名查看文件尾幾行例:$catheartIhearherbreathing,I’msurroundingbythesound,…中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux操作mv重命名文件mv–i舊文件名新文件名例:$mvheartheart.var1

$mv-iheartheart.var1提示是否覆蓋mkdir創(chuàng)建目錄mkdir–p新目錄名例:$mkdirmydictionary

中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux操作cd切換目錄cd目錄名例:$cd/home/mydictionarycp復(fù)制文件cp-ir源文件名目標(biāo)文件名例:$cpheart.var1heart.var2

中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux操作rm刪除文件rm-fir文件或目錄名例:$rmheart.var1刪除文件heart.var1$rm*刪除當(dāng)前目錄中所有文件

$rm–rlyrics刪除目錄lyricsrmdir刪除目錄rmdir目錄名例:$cmdirlyrics

中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux操作wc統(tǒng)計文件字?jǐn)?shù)wc-lwc文件名例:$wcheart.final943213heart.final-l統(tǒng)計行數(shù)-w統(tǒng)計字?jǐn)?shù)-c統(tǒng)計字符數(shù)不指定選項,則三項都統(tǒng)計time測試執(zhí)行時間time-p命令名或可執(zhí)行文件名例:$timelsreal0m0.07suser0m0.02ssys0m0.01s-p選項使結(jié)果以不同的顯示方式輸出

中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux操作chmod改變文件操作權(quán)限chmod-cfvR--help--versionmod

文件名mod:權(quán)限設(shè)定字符串,格式為:[ugoa…][+-=][rwxX][…]u表示文件所有者;g表示屬于同一個group的所有用戶;o表示其他以外的用戶;a表示三者皆是+表示增加權(quán)限;-表示取消權(quán)限;=表示唯一設(shè)定權(quán)限r(nóng)表示可讀;w表示可寫;x表示可執(zhí)行;--help顯示輔助說明;--version顯示版本;

中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux操作例:$chmodugo+rfile1.txt$chmoda+rfile2.txt$chmodu+xex1.py$chmodug+w,o-wfile1.txtfile2.txt

用數(shù)字表示權(quán)限:

chmodabc文件名a,b,c各表示一個數(shù)字,分別表示user,group,other的權(quán)限r(nóng)=4,w=2,x=1則rwx4+2+1=7;rw-4+2=6;r-x4+1=5例:$chmod777file.txt$chmod771file.txt

中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux操作chown改變文件所有者chown-cfvR--help--versionuser[:group]

文件名user:新的文件擁有者的ID;group:新的擁有者的組;例:$chownjessie:usersfile.txt

將file.txt的所有權(quán)變更給users組中的用戶jessie

$chown–Rlamport:users*

將當(dāng)前目錄下所有文檔和子目錄都變更給users組中的擁護(hù)lamportgroups列出組groups[userID]例:$groups列出當(dāng)前用戶所在的組信息

$groupszj列出指定用戶zj所在的組信息

中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux操作tar壓縮與解壓縮tar-cfrtuvxz[tarFilename]filelistfilelist中可以包含目錄例:$tarczvf×××.tar.gz源文件目錄將源文件壓縮成.tar.gz文件

$tarzxvf×××.tar.gz目標(biāo)目錄將壓縮文件解壓到目標(biāo)目錄中

$tarcvf×××.tar源文件目錄將源文件打包ar歸檔模塊,組織和分組模塊①創(chuàng)建.a歸檔格式文件;②在歸檔文件中任意添加,刪除,替換,追加任意類型的文件;③獲得歸檔的內(nèi)容表;例:$arrstring.areverse.opalm.o$arrcslibname.afoo.obar.obz.o$ar–help

中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux操作Linux系統(tǒng)的文件目錄結(jié)構(gòu)(FHS)/fhs//bin;/usr/local/bin;常用命令文件,不能包含子目錄/sbin

保存系統(tǒng)管理員或root用戶使用的命令文件/boot

存放linux引導(dǎo)文件(主要是內(nèi)核)/dev

設(shè)備文件

/etc

大部分的系統(tǒng)配置文件

/etc/rc.d

運行腳本目錄/lib

系統(tǒng)的共享庫和內(nèi)核模塊文件/usr;/usr/local

存放不經(jīng)常變化的內(nèi)容。/usr/local經(jīng)常作為應(yīng)用程序安裝位置/proc

虛擬的文件系統(tǒng),該目錄中的文件是內(nèi)存中的映象,通過查看該目錄中的文件可以獲取有關(guān)系統(tǒng)硬件運行的詳細(xì)信息/home

系統(tǒng)各個用戶的主目錄/mnt

為設(shè)備提供掛載點,由用戶創(chuàng)建子目錄

中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux的文件系統(tǒng)及庫管理Linux系統(tǒng)支持的主要文件系統(tǒng)ext2

舊的linux文件系統(tǒng)類型,支持長達(dá)255個字符的文件名ext3

大部分linux默認(rèn)的文件系統(tǒng),在ext2的基礎(chǔ)上增加日志的功能reisefs

新型文件系統(tǒng),通過完全平衡樹來容納數(shù)據(jù)。支持海量磁盤和磁盤陣列jfsIBM提供的基于日志的字節(jié)級文件系統(tǒng)vfatwindows9x/NT/200x使用的擴展DOS文件系統(tǒng)ntfswindowsNT系列使用

中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux的文件系統(tǒng)及庫管理掛載文件系統(tǒng)mount文件只有經(jīng)過掛載才能被linux系統(tǒng)識別和訪問。文本模式下需手動掛載,窗口模式下可自動掛載。1,mount對象的文件系統(tǒng)類型$cat/proc/filesystemsFAT32:vfatNTFS:ntfsOS2:hpfslinux:ext2,ext3光盤:iso9660

中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux的文件系統(tǒng)及庫管理2,要mount的對象名稱$fdisk–l

顯示所有分區(qū)/dev/hda1/dev/hda2…h(huán)d*:表示硬盤,Harddisk/device;sd*:表示SCSIDevice;fd:floppydisk/device;一個IDE接口可以接4個硬盤hda,hdb,hdc,hdd,hda1,hda2,…表示硬盤had上的第n個分區(qū)

中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux的文件系統(tǒng)及庫管理3,要將對象mount到哪個目錄?在/mnt中建立掛載點/mnt/usb;/mnt/f;/mnt/floppy;/mnt/cdrom,…例:$mount–tvfat/dev/fd0/mnt/floppy$mount–tiso9660/dev/cdrom/mnt/cdrom

中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux的文件系統(tǒng)及庫管理4,在掛載FAT32文件系統(tǒng)的分區(qū)時正確顯示漢字$mount–tvfat–ocodepage=936,iocharset=gb2312/dev/hda5/mnt/e5,卸載(解掛)$umount/dev/usb$umount/dev/cdrom

中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux的文件系統(tǒng)及庫管理

外部應(yīng)用程序(mount,rpm,gcc等)shell

包括cd、pwd等內(nèi)部命令Linux內(nèi)核Linux應(yīng)用程序與命令的關(guān)系中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux的文件系統(tǒng)及庫管理用戶程序Linux應(yīng)用程序的組成可執(zhí)行程序庫文件配置文件幫助文件中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux的文件系統(tǒng)及庫管理靜態(tài)函數(shù)庫擴展名:libxxx.a編譯行為:這類函數(shù)庫在程序中使用的時候,整個函數(shù)庫的所有數(shù)據(jù)都整合到執(zhí)行文件中。即編譯時,函數(shù)庫會加入到執(zhí)行程序內(nèi),所以靜態(tài)函數(shù)庫編譯成的文件會稍大一些。獨立執(zhí)行狀態(tài):優(yōu)點是可以獨立執(zhí)行,而不需要在向外部要求讀取函數(shù)庫的內(nèi)容。升級難易度:函數(shù)庫升級后,需要重新編譯可執(zhí)行文件,才能將新的函數(shù)庫整合到執(zhí)行文件中。(缺點)

中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux的文件系統(tǒng)及庫管理動態(tài)函數(shù)庫擴展名:libxxx.so編譯行為:在編譯的時候,只有一個指向動態(tài)函數(shù)庫的位置(Pointer)。即動態(tài)函數(shù)庫的內(nèi)容沒有包含到執(zhí)行文件中,而是當(dāng)執(zhí)行文件要使用到函數(shù)庫時,程序才會去讀取函數(shù)庫。由于執(zhí)行文件中之只包含指向動態(tài)函數(shù)庫的指針,所以它編譯的可執(zhí)行文件稍小一些。獨立執(zhí)行狀態(tài):不能獨立執(zhí)行。(缺點)需要使用函數(shù)庫時,程序會依據(jù)指針去動態(tài)的讀取函數(shù)庫,所以函數(shù)庫必須要存在。升級難易度:函數(shù)庫升級后,可執(zhí)行文件不需要重新編譯,升級比較簡單。(優(yōu)點)

中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux的文件系統(tǒng)及庫管理靜態(tài)庫與動態(tài)庫類似WINDOWS中的LIB和DLL

中國地質(zhì)大學(xué)(武漢)計算機學(xué)院Linux的文件系統(tǒng)及庫管理動態(tài)函數(shù)庫的安裝與配置

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論