编译内核怎么挂载文件
A. linux锷犺浇鍐呮牳妯″潡锻戒护linux锷犺浇鍐呮牳
linux涓嬫寕杞界佺洏镄勫懡浠ゆ槸浠涔堬纻
鎴戠殑锛歭inux涓嬫寕杞界佺洏镄勫懡浠ゆ槸mount銆
棣栧厛闇瑕佹湁鎸傝浇镣癸纴鎴栬呭彲浠ュ垱寤烘寕杞界偣銆
mkdir-p鐩褰曞悕
铹跺悗浣跨敤mount-t绫诲瀷/dev/sdbx锛堣惧囧悕锛/mnt/abc(鎸傝浇镣癸级
绫讳技杩欐牱镄勬搷浣滃幓鎸傝浇銆
铹跺悗浣跨敤mount锻戒护鎴栬卍f-Th铡绘煡鐪嬫寕杞芥儏鍐点
Linux涓嬬佺洏鎸傝浇锻戒护鏄痬ount,鍗歌浇锻戒护鏄痷mount銆
windows镞犳硶钖锷ㄦ庢牱锷犺浇鍐呮牳镓闇镄凞LL鏂囦欢锛
鐢佃剳寮链烘椂鍑虹幇鎻愮ず钬灭敱浜庝竴涓杞浠堕敊璇锛学INDOWS镞犳硶钖锷ㄣ傝锋姤锻婅繖涓闂棰桡细锷犺浇鍐呮牳镓闇镄凞LL鏂囦欢锛岃疯仈绯讳綘镄勬妧链浜哄憳銆傗濇晠闅滃师锲狅细绯荤粺鍐呮牳DLL鏂囦欢涓㈠け鎴栨崯鍧忋备慨澶嶆柟娉曪细鍏蜂綋淇澶嶆柟娉曡佷笅銆傦纸涓嬮溃浠XP绯荤粺涓轰緥锛岃繘琛岃存槑锛夈愮郴缁熷唴镙洼LL鏂囦欢涓㈠け鎴栨崯鍧忎慨澶嶆柟娉曘戯细鏂规硶1銆佹渶钖庝竴娆℃g‘閰岖疆鐢佃剳閲嶅惎锛屽紑链鸿嚜妫涓杩囷纴椹涓婃寜鎸塅8阌锛岄夋嫨钬沧渶钖庝竴娆℃g‘閰岖疆钬濄伞愮ず渚嬫埅锲俱戞柟娉2銆佸湪瀹夊叏妯″纺涓嬶纴杩涜屼慨澶嶃傜数鑴戦吨钖锛屽紑链鸿嚜妫涓杩囷纴椹涓婃寜鎸塅8阌锛岄夋嫨钬滃畨鍏ㄦā寮忊濄傝嫢鑳借繘瀹夊叏妯″纺锛屽彲鍦ㄥ畨鍏ㄦā寮忎笅锛岀敤绗涓夋柟鍑哄搧镄凞LL淇澶嶅伐鍏疯繘琛屼慨澶嶃伞愮ず渚嬫埅锲俱戞柟娉3銆佸湪甯﹀懡浠よ岀殑瀹夊叏妯″纺涓嬶纴浣跨敤DOS锻戒护锛岃繘琛屼慨澶嶃傛妸XP绯荤粺鐩樻斁鍦ㄥ厜椹遍噷銆傜数鑴戦吨钖锛屽紑链鸿嚜妫涓杩囷纴椹涓婃寜鎸塅8阌锛岄夋嫨钬滃甫锻戒护琛岀殑瀹夊叏妯″纺钬濄傚湪锻戒护鎻愮ず绗︿笅锛屼娇鐢―OS锻戒护锛屾妸鍏夌洏閲岀殑DLL鏂囦欢澶嶅埗鍒癈鐩橀噷镄刉INDOWS涓嬬殑SYSTEM鍜孲YSTEM32鏂囦欢澶归噷銆傝嗙洊宸叉崯鍧忕殑钖屽悕镄凞LL鏂囦欢鎴栬ˉ鍏ㄥ凡涓㈠け镄凞LL鏂囦欢銆备慨澶嶅畬姣曞悗锛岄吨钖鐢佃剳銆伞愮ず渚嬫埅锲俱戞柟娉4銆佷娇鐢║鐩桦惎锷ㄧ洏锛岃繘琛屼慨澶嶃傛妸U鐩桦惎锷ㄧ洏鎻掑叆鍏朵粬鑳芥e父钖锷ㄧ殑XP绯荤粺镄勭数鑴戜笂锛屾嫹璐滳:WINDOWS涓嬬殑SYSTEM鍜孲YSTEM32鏂囦欢澶广傜劧钖庯纴鎶奤鐩桦惎锷ㄧ洏鎻掑洖链链虹数鑴戯纴璁剧疆U鐩桦惎锷ㄥ紩瀵艰繘WinPE銆傚嶅埗U鐩橀噷镄凷YSTEM鍜孲YSTEM32鏂囦欢澶圭矘璐村埌C:WINDOWS鏂囦欢澶逛笅锛岃嗙洊宸叉崯鍧忕殑钖屽悕镄凞LL鏂囦欢鎴栬ˉ鍏ㄥ凡涓㈠け镄凞LL鏂囦欢銆傜劧钖庯纴閲嶅惎杩汢IOS锛屾敼锲炵‖鐩桦惎锷ㄣ傞吨钖鐢佃剳銆傛柟娉5銆佷娇鐢╔P铡熺増瀹夎呭厜鐩桡纴杩涘叆鎺у埗淇澶嶅彴锛岃繘琛屼慨澶嶃傗憼銆佸皢XP铡熺増瀹夎呭厜鐩樻彃鍏ュ厜椹憋纴閲嶅惎鐢佃剳锛屽彴寮忔満鎸塂EL阌锛堢玛璁版湰涓鑸鏄鎸塅2阌锛屽搧鐗屽拰链哄瀷涓嶅悓锛岃繘BIOS镄勬寜阌浼氭湁镓涓嶅悓銆傛敞镒忕湅寮链鸿嚜妫鎻愮ず鎴栨煡鐪嬬玛璁版湰璇存槑涔︺傦级杩汢IOS璁剧疆锛屾妸绗涓钖锷ㄩ”鐢辩‖鐩桡纸HDD锛夋敼涓哄厜椹憋纸CDROM锛夈备缭瀛樿剧疆锛岄吨钖鐢佃剳銆傗憽銆佷竴姝ユユ寜鎻愮ず镎崭綔锛岃繘鍏ユ带鍒朵慨澶嶅彴銆傚湪锻戒护鎻愮ず绗︹渃:windows>钬濅笅锛岃緭鍏ョ郴缁熷垎鍖虹洏绗︹啋C鈫掑洖杞︺傜劧钖庯纴杈揿叆瀵嗙爜銆傚傛灉鏄瀵嗙爜鏄绌虹殑锛岀洿鎺ユ寜锲炶溅璺宠繃銆备箣钖庯纴浼氩嚭鐜颁笅闱㈢殑锻戒护鎻愮ず绗︼细c:windows>杈揿叆浠ヤ笅锻戒护锛歝:windows>cdx:锛堟敞锛歺涓哄厜椹辩洏绗︼纴濡傦纴e锛氾级鈫掑洖杞e:>cdi386鈫掑洖杞e:i386>*.dllc:windowssystem鈫掑洖杞e:i386>*.dllc:windowssystem32鈫掑洖杞︾瓑寰呬慨澶岲LL瀹屾瘯锛岄吨璧风数鑴戙伞愮ず渚嬫埅锲俱
linux鍐呮牳镄勪富瑕佺粍鎴愰儴鍒嗘湁鍝浜涳纻
Linux绯荤粺涓鑸链4涓涓昏侀儴鍒嗭细鍐呮牳銆乻hell銆佹枃浠剁郴缁熷拰搴旂敤绋嫔簭銆傚唴镙搞乻hell鍜屾枃浠剁郴缁熶竴璧峰舰鎴愪简锘烘湰镄勬搷浣灭郴缁熺粨鏋勶纴瀹冧滑浣垮缑鐢ㄦ埛鍙浠ヨ繍琛岀▼搴忋佺$悊鏂囦欢骞朵娇鐢ㄧ郴缁熴备竴锛嶭inux鍐呮牳鍐呮牳鏄镎崭綔绯荤粺镄勬牳蹇冿纴鍏锋湁寰埚氭渶锘烘湰锷熻兘锛屽傝櫄𨰾熷唴瀛樸佸氢换锷°佸叡浜搴撱侀渶姹傚姞杞姐佸彲镓ц岀▼搴忓拰TCP/IP缃戠粶锷熻兘銆侺inux鍐呮牳镄勬ā鍧楀垎涓轰互涓嫔嚑涓閮ㄥ垎锛氩瓨鍌ㄧ$悊銆丆PU鍜岃繘绋嬬$悊銆佹枃浠剁郴缁熴佽惧囩$悊鍜岄┍锷ㄣ佺绣缁滈氢俊銆佺郴缁熺殑鍒濆嫔寲鍜岀郴缁熻皟鐢ㄧ瓑銆
浜岋紟Linuxshellshell鏄绯荤粺镄勭敤鎴风晫闱锛屾彁渚涗简鐢ㄦ埛涓庡唴镙歌繘琛屼氦浜掓搷浣灭殑涓绉嶆帴鍙c傚畠鎺ユ敹鐢ㄦ埛杈揿叆镄勫懡浠ゅ苟鎶婂畠阃佸叆鍐呮牳铡绘墽琛岋纴鏄涓涓锻戒护瑙i喷鍣ㄣ
鍙﹀栵纴shell缂栫▼璇瑷鍏锋湁鏅阃氱紪绋嬭瑷镄勫緢澶氱壒镣癸纴鐢ㄨ繖绉岖紪绋嬭瑷缂栧啓镄剆hell绋嫔簭涓庡叾浠栧簲鐢ㄧ▼搴忓叿链夊悓镙风殑鏁堟灉銆
涓夛紟Linux鏂囦欢绯荤粺鏂囦欢绯荤粺鏄鏂囦欢瀛樻斁鍦ㄧ佺洏绛夊瓨鍌ㄨ惧囦笂镄勭粍缁囨柟娉曘侺inux绯荤粺鑳芥敮鎸佸氱岖洰鍓嶆祦琛岀殑鏂囦欢绯荤粺锛屽侲XT2銆丒XT3銆丗AT銆丗AT32銆乂FAT鍜孖SO9660銆傚洓锛嶭inux搴旂敤绋嫔簭镙囧嗳镄凩inux绯荤粺涓鑸閮芥湁涓濂楅兘链夌О涓哄簲鐢ㄧ▼搴忕殑绋嫔簭闆嗭纴瀹冨寘𨰾鏂囨湰缂栬緫鍣ㄣ佺紪绋嬭瑷銆乆Window銆佸姙鍏濂椾欢銆両nternet宸ュ叿鍜屾暟鎹搴撶瓑銆
tunko鍐呮牳妯″潡镐庝箞锷犺浇锛
1.hello.c
#include
#include
MODULE_LICENSE("DualBSD/GPL");
MODULE_AUTHOR("MDAXIA");
staticint__inithello_init(void)
{
printk(KERN_ALERT"Helloworld!n");
return0;
}
staticvoid__exithello_exit(void)
{
printk(KERN_ALERT"Goodbye,cruelworld!");
}
mole_init(hello_init);
mole_exit(hello_exit);
2.Makefile
ifeq($(KERNELRELEASE),)
KDIR:=/lib/moles/$(shelluname-r)/build
PWD:=$(shellpwd)
moles:
$(MAKE)-C$(KDIR)M=$(PWD)moles
moles_install:
$(MAKE)-C$(KDIR)M=$(PWD)moles_install
clean:
rm-rf*.o*.ko.depend*.mod.o*.mod.cMole.*moles.*
.PHONY:molesmoles_installclean
else
obj-m:=hello.o
endif
3.缂栬疟妯″潡
#sudomake锛堣皟鐢ㄧ涓涓锻戒护default锛
杩欐椂锛屽湪hello.c镓鍦ㄦ枃浠跺す灏变细链塰ello.ko锛岃繖涓灏辨槸鎴戜滑闇瑕佺殑鍐呮牳妯″潡鍟
#sudomakeclean
娓呯悊缂栬疟鍨冨溇锛宧ello.ko涔熶细娓呯悊鎺夈
4.鎻掑叆妯″潡锛岃╁叾宸ヤ綔銆傛敞镒忓繀椤绘槸root𨱒冮檺
#sudoinsmod./hello.ko
鎴戜滑鐢╠mesg灏卞彲浠ョ湅鍒颁骇鐢熺殑鍐呮牳淇℃伅鍟︼纴Helloworld!
濡傛灉娌℃湁杈揿嚭"hellofromhelloworld"锛屽洜涓哄傛灉浣犲湪瀛楃︾粓绔钥屼笉鏄缁堢妯℃嫙鍣ㄤ笅杩愯岀殑璇濓纴灏变细杈揿嚭锛屽洜涓哄湪缁堢妯℃嫙鍣ㄤ笅镞朵细鎶婂唴镙告秷鎭杈揿嚭鍒版棩蹇楁枃浠/var/log/kern.log涓銆
#sudormmod./hello
鍐岖敤dmesg鍙浠ョ湅鍒痫yeworld!
镓╁𪾢阒呰伙细
绀轰緥涓灏嗗紑链轰俊鎭鍙戦偖浠
mandmesg鍐欓亾
.Insteadofingthemessagesbyhand,theuserneedonly:
dmesg>boot.messages
andmailtheboot..
#dmesg>boot.messages
#ls-lboot.messages
-rw-r--r--1rootroot1583812-0912begin_of_the_skype_highlighting1583812-0912鍏嶈垂end_of_the_skype_highlighting:55boot.messages
#mail-s"BootLogofLinuxServer"[email protected]
#
阃氲繃绠¢亾镆ユ垒
dmesg|grepworld
dmesg|tail
dmesg-a
dmesg-c镓揿嵃骞舵竻闄
linux椹卞姩绋嫔簭濡备綍璋幂敤锛
linux椹卞姩绋嫔簭鎸変互涓嬫柟娉曡皟鐢锛
1銆佽繘鍏ュ埌Ubuntu妗岄溃钖庯纴镓揿紑缁堢锛屽揩鎹烽敭涓篶trl+alt+T銆
2銆佺劧钖庡垱寤轰竴涓鏂囦欢澶规潵瀛樻斁缂栧啓镄勮剼链鏂囦欢銆
3銆佹垒鍒拌佹墦寮镄勬墽琛岀▼搴忕殑璺寰勶纴杩欓噷浠ョ伀镫愪负渚嬨傚湪/usr/bin涓嬫湁𨱔镫愮殑镓ц岀▼搴忋
4銆佽緭鍏cd/usr/local/myShell杩涘叆鍒氩垰鍒涘缓镄勬枃浠跺す銆
5銆佸傛灉浣犲笇链涚▼搴忔槸鍦ㄥ悗鍙版墽琛岋纴鍙浠ュ湪缁堢鎸塩trl+C阃鍑虹▼搴忥纴閲嶆柊杈揿叆./openFireFox.sh锛岃繖镙峰氨鑳藉湪钖庡彴杩愯岀▼搴忥纴缁堢涔熷彲浠ョ户缁浣跨敤銆
B. linux璁惧囨寕杞藉懡浠linux璁惧囨寕杞
linux镓璇寸殑鎸傝浇鏄浠涔堟剰镐濓纻
linux銆乽nix杩欑被镎崭綔绯荤粺灏嗙郴缁熶腑镄勪竴鍒囬兘浣滀负鏂囦欢𨱒ョ$悊銆傚湪windows涓鎴戜滑甯歌佺殑纭浠惰惧囥佺佺洏鍒嗗尯绛夛纴鍦╨inux銆乽nix涓閮借瑙嗕綔鏂囦欢锛屽硅惧囥佸垎鍖虹殑璁块梾灏辨槸璇诲啓瀵瑰簲镄勬枃浠躲
鎸傝浇镣瑰疄闄呬笂灏辨槸linux涓镄勭佺洏鏂囦欢绯荤粺镄勫叆鍙g洰褰曪纴绫讳技浜巜indows涓镄勭敤𨱒ヨ块梾涓嶅悓鍒嗗尯镄凛:銆丏:銆丒:绛夌洏绗︺
鍏跺疄winxp涔熸敮鎸佸皢涓涓纾佺洏鍒嗗尯鎸傚湪涓涓鏂囦欢澶逛笅闱锛屽彧鏄鎴戜滑C:銆丏:杩欐牱镄勭洏绗︽搷浣灭敤𨱍浜嗭纴涓鑸娌℃湁灏嗗垎鍖烘寕鍒版枃浠跺す銆
鍦╨inux涓涓轰粈涔堣佺敤mount杩涜屾寕杞斤纻
绠鍗曡翠笅锛屾瘆濡备綘鎻掑叆浜嗕竴涓猆鐩桡纴LINUX绯荤粺闇瑕佹墽琛屾寕杞藉懡浠わ纴鎸囧畾杩欎釜璁惧囩殑绫诲瀷锛屼互纭瀹氱敤浠涔堟柟寮忓幓璁块梾鍜屾带鍒躲备笉铹跺氨镀廤INDOWS98涓嶈兘镊锷ㄨ瘑鍒玌鐩树竴镙凤纴闇瑕佽嚜宸卞畨瑁匲SB椹卞姩銆备笉鎸傝浇LINUX绯荤粺灏辨棤娉曡块梾杩欎釜纾佺洏璁惧囥
鎸傝浇鐩稿綋浜庢槸鎶婅繖涓璁惧囨敞鍐屽埌绯荤粺镄勬枃浠舵爲涓锛岀劧钖庢湁浜呜繖涓璁惧囨枃浠讹纴绯荤粺镓嶅彲浠ュ瑰畠杩涜岀浉搴旂殑阃氱敤fopen,fclose绛夋搷浣溿
linux绯荤粺涓浣跨敤mount锻戒护鎸傝浇鏂囦欢绯荤粺镄勬牸寮忎腑璁惧囧悕鍜屽畨瑁呯偣鍒嗗埆鏄浠涔堬纻
1銆佹寕杞界偣蹇呴’鏄涓涓鐩褰曘
2銆佷竴涓鍒嗗尯鎸傝浇鍦ㄤ竴涓宸插瓨鍦ㄧ殑鐩褰曚笂锛岃繖涓鐩褰曞彲浠ヤ笉涓虹┖锛屼絾鎸傝浇钖庤繖涓鐩褰曚笅浠ュ墠镄勫唴瀹瑰皢涓嶅彲鐢ㄣ
瀵逛簬鍏朵粬镎崭綔绯荤粺寤虹珛镄勬枃浠剁郴缁熺殑鎸傝浇涔熸槸杩欐牱銆备絾鏄闇瑕佺悊瑙g殑鏄锛氩厜鐩樸佽蒋鐩樸佸叾浠栨搷浣灭郴缁熶娇鐢ㄧ殑鏂囦欢绯荤粺镄勬牸寮忎笌linux浣跨敤镄勬枃浠剁郴缁熸牸寮忔槸涓崭竴镙风殑銆傚厜鐩樻槸ISO9660锛涜蒋鐩樻槸fat16鎴杄xt2锛泈indowsNT鏄痜at16銆丯TFS锛泈indows98鏄痜at16銆乫at32锛泈indows2000鍜寃indowsXP鏄痜at16銆乫at32銆丯TFS銆傛寕杞藉墠瑕佷简瑙linux鏄钖︽敮鎸佹墍瑕佹寕杞界殑鏂囦欢绯荤粺镙煎纺銆
鎸傝浇镞朵娇鐢╩ount锻戒护锛
镙煎纺锛歮ount鍏朵腑甯哥敤镄勫弬鏁版湁
-t鏂囦欢绯荤粺绫诲瀷>鎸囧畾璁惧囩殑鏂囦欢绯荤粺绫诲瀷锛屽父瑙佺殑链夛细
minixlinux链镞╀娇鐢ㄧ殑鏂囦欢绯荤粺
ext2linux鐩鍓嶅父鐢ㄧ殑鏂囦欢绯荤粺
msdosMS-DOS镄刦at锛屽氨鏄痜at16
vfatwindows98甯哥敤镄刦at32
nfs缃戠粶鏂囦欢绯荤粺
iso9660CD-ROM鍏夌洏镙囧嗳鏂囦欢绯荤粺
ntfswindowsNT2000镄勬枃浠剁郴缁
hpfsOS/2鏂囦欢绯荤粺
auto镊锷ㄦ娴嬫枃浠剁郴缁
-o阃夐”>鎸囧畾鎸傝浇鏂囦欢绯荤粺镞剁殑阃夐”銆傛湁浜涗篃鍙鐢ㄥ湪/etc/fstab涓銆傚父鐢ㄧ殑链
codepage=XXX浠g爜椤
iocharset=XXX瀛楃﹂泦
ro浠ュ彧璇绘柟寮忔寕杞
rw浠ヨ诲啓鏂瑰纺鎸傝浇
nouser浣夸竴鑸鐢ㄦ埛镞犳硶鎸傝浇
user鍙浠ヨ╀竴鑸鐢ㄦ埛鎸傝浇璁惧囨彁阅掍竴涓嬶纴mount锻戒护娌℃湁寤虹珛鎸傝浇镣圭殑锷熻兘锛屽洜姝や綘搴旇ョ‘淇濇墽琛宫ount锻戒护镞讹纴鎸傝浇镣瑰凡缁忓瓨鍦ㄣ傦纸涓嶆哕锛熻寸槠浜嗙偣灏辨槸浣犺佹妸鏂囦欢绯荤粺鎸傝浇鍒板摢锛岄栧厛瑕佸厛寤轰笂涓鐩褰曘傝繖镙稯K锛燂级
渚嫔瓙锛归indows98瑁呭湪hda1鍒嗗尯锛屽悓镞惰$畻链轰笂杩樻湁杞鐩桦拰鍏夌洏闇瑕佹寕杞姐
#mk/mnt/winc
#mk/mnt/floppy
#mk/mnt/cdrom
#mount-tvfat/dev/hda1/mnt/winc
#mount-tmsdos/dev/fd0/mnt/floppy
#mount-tiso9660/dev/cdrom/mnt/cdrom
鐜板湪灏卞彲浠ヨ繘鍏/mnt/winc绛夌洰褰曡诲啓杩欎簺鏂囦欢绯荤粺浜嗐傝佷缭璇佹渶钖庝袱琛岀殑锻戒护涓嶅嚭阌欙纴瑕佺‘淇濊蒋椹卞拰鍏夐┍閲屾湁鐩樸傦纸瑕佹槸纭鐩樼殑纾佺洏鐗囦篃鍙浠ョ粡甯搁殢镞舵洿鎹㈢殑璇濓纴鎴戞兂灏变笉浼氱姱杩欐牱镄勯敊璇浜:->锛
濡傛灉浣犵殑windows98鐩褰曢噷链変腑鏂囨枃浠跺悕锛屼娇鐢ㄤ笂闱㈢殑锻戒护鎸傝浇钖庯纴鏄剧ず镄勬槸涓鍫嗕贡镰併傝繖灏辫佺敤鍒-o鍙傛暟閲岀殑codepageiocharset阃夐”銆俢odepage鎸囧畾鏂囦欢绯荤粺镄勪唬镰侀〉锛岀亩浣扑腑鏂囦腑鏂囦唬镰佹槸936锛沬ocharset鎸囧畾瀛楃﹂泦锛岀亩浣扑腑鏂囦竴鑸鐢╟p936鎴杇b2312銆
褰撴寕杞界殑鏂囦欢绯荤粺linux涓嶆敮鎸佹椂锛宫ount涓瀹氭姤阌欙纴濡倃indows2000镄刵tfs鏂囦欢绯荤粺銆傚彲浠ラ吨鏂扮紪璇憀inux鍐呮牳浠ヨ幏寰楀硅ユ枃浠剁郴缁熺殑鏀鎸併傚叧浜庨吨鏂扮紪璇憀inux鍐呮牳锛屽氨涓嶅湪杩欓噷璇翠简銆
锲涖佽嚜锷ㄦ寕杞
姣忔″紑链鸿块梾windows鍒嗗尯閮借佽繍琛宫ount锻戒护鏄剧劧澶鐑︾悙锛屼负浠涔堣块梾鍏朵粬镄刲inux鍒嗗尯涓岖敤浣跨敤mount锻戒护锻锛
鍏跺疄锛屾疮娆″紑链烘椂锛宭inux镊锷ㄥ皢闇瑕佹寕杞界殑linux鍒嗗尯鎸傝浇涓娄简銆傞偅涔堟垜浠鏄涓嶆槸鍙浠ヨ惧畾璁﹍inux鍦ㄥ惎锷ㄧ殑镞跺欎篃鎸傝浇鎴戜滑甯屾湜鎸傝浇镄勫垎鍖猴纴濡倃indows鍒嗗尯锛屼互瀹炵幇鏂囦欢绯荤粺镄勮嚜锷ㄦ寕杞藉憿锛
杩欐槸瀹屽叏鍙浠ョ殑銆傚湪/etc鐩褰曚笅链変釜fstab鏂囦欢锛屽畠閲岄溃鍒楀嚭浜唋inux寮链烘椂镊锷ㄦ寕杞界殑鏂囦欢绯荤粺镄勫垪琛ㄣ傛垜镄/etc/fstab鏂囦欢濡备笅锛/dev/hda2/ext3defaults11
/dev/hda1/bootext3defaults12
none/dev/ptsdevptsgid=5,mode=62000
none/procprocdefaults00
none/dev/shmtmpfsdefaults00
/dev/hda3swapswapdefaults00
/dev/cdrom/mnt/cdromiso9660noauto,codepage=936,iocharset=gb231200
/dev/fd0/mnt/floppyautonoauto,owner,kudzu00
/dev/hdb1/mnt/wincvfatdefaults,codepage=936,iocharset=cp93600
/dev/hda5/mnt/windvfatdefaults,codepage=936,iocharset=cp93600
鍦/etc/fstab鏂囦欢閲岋纴绗涓鍒楁槸鎸傝浇镄勬枃浠剁郴缁熺殑璁惧囧悕锛岀浜屽垪鏄鎸傝浇镣癸纴绗涓夊垪鏄鎸傝浇镄勬枃浠剁郴缁熺被鍨嬶纴绗锲涘垪鏄鎸傝浇镄勯夐”锛岄夐”闂寸敤阃楀彿鍒嗛殧銆傜浜斿叚鍒椾笉鐭ラ亾鏄浠涔堟剰镐濓纴杩樻湜楂樻坠鎸囩偣銆
鍦ㄦ渶钖庝袱琛屾槸鎴戞坠宸ユ坊锷犵殑windows涓嬬殑C锛汥鐩桡纴锷犱简codepage=936鍜宨ocharset=cp936鍙傛暟浠ユ敮鎸佷腑鏂囨枃浠跺悕銆傚弬鏁癫efaults瀹为檯涓婂寘钖浜嗕竴缁勯粯璁ゅ弬鏁帮细
rw浠ュ彲璇诲啓妯″纺鎸傝浇
suid寮钖鐢ㄦ埛ID鍜岀兢缁処D璁剧疆浣
dev鍙瑙h绘枃浠剁郴缁熶笂镄勫瓧绗︽垨鍖哄潡璁惧
exec鍙镓ц屼簩杩涘埗鏂囦欢
auto镊锷ㄦ寕杞
nouser浣夸竴鑸鐢ㄦ埛镞犳硶鎸傝浇
async浠ラ潪钖屾ユ柟寮忔墽琛屾枃浠剁郴缁熺殑杈揿叆杈揿嚭镎崭綔
鍦╨inux涓婂备綍鎸傝浇鏂板炲姞镄勭‖鐩桡纻
浠RHEL6涓轰緥
1銆侀氲繃fdisk-l镆ョ湅鐩鍓岖殑纭鐩树俊鎭锛岄粯璁ゆ槸浠巗da寮濮嬫帓锛屽炲姞绗浜屽潡纭鐩樼殑镞跺欙纴浼氭樉绀簊db锛屼互姝ょ被鎺
2銆佹帴涓嬫潵阃氲繃渚濇$偣鍑昏櫄𨰾熸満->璁剧疆->娣诲姞->纭鐩桡纴寮规嗘椂镣逛笅涓姝ワ纴鐩存帴鐢ㄩ粯璁よ剧疆锛屾垜浠涓虹郴缁熸坊锷犱竴鍧5G镄勭‖鐩樸
3銆侀吨钖绯荤粺锛屽啀娆¤緭鍏fdisk-l鍙浠ョ湅鍒板氢简涓涓狲db镙囱瘑5G澶у皬镄勭┖闂
4銆佺劧钖庯纴鎴戜滑涓鸿繖涓纭鐩桦垱寤哄垎鍖猴纴杈揿叆fdisk/dev/sdb锛屼緷娆¤緭鍏n锛宲锛1锛寃锛屽叾涓璶鍒嗗埆琛ㄧず鍒涘缓涓涓鏂板垎鍖猴纴p琛ㄧず鍒嗗尯绫诲瀷涓轰富鍒嗗尯锛1琛ㄧず鍒嗗尯缂栧彿鏄1锛寃琛ㄧず淇濆瓨
5銆佷笅涓姝ユ槸镙煎纺鍖栧垎鍖猴纴鎴戜滑杈揿叆mkfs.ext4/dev/sdb1锛1灏辨槸涓娄竴姝ョ殑鍒嗗尯缂栧彿锛夈
6銆佹垜浠杈揿叆mkdir/data锛屽湪镙圭洰褰曞垱寤/data浣滀负姝ゅ垎鍖虹殑鎸傝浇镣癸纴杈搈ount/dev/sdb1/data锛屽皢鍒嗗尯鎸傝浇鍒扮洰褰曚笅锛岄氲繃df-h,鍙浠ョ湅鍒版寕杞芥垚锷熴
7銆佷絾鏄鎸傝浇鏄涓存椂镄勶纴绯荤粺閲嶅惎钖庨渶瑕侀吨鏂版寕杞斤纴鎴戜滑甯屾湜涓嬫″惎锷ㄦ椂锛岃嚜锷ㄦ寕杞斤纴杈捣i/etc/fstab锛屽炲姞涓嫔浘绾㈡嗙殑閰岖疆锛/dev/sdb1鏄鍒嗗尯锛/data鏄鎸傝浇姝ゅ垎鍖虹殑鐩褰曪纴ext4鏄纾佺洏镙煎纺锛屽悗闱㈢殑镦ф妱涓婇溃涓涓琛岀殑淇℃伅銆
8銆侀吨钖钖庯纴杈揿叆df-h妫镆ヤ竴涓嬶纴鍒嗗尯镊锷ㄦ寕杞藉埌/data鐩褰曘傝呖姝わ纴鎸傝浇镎崭綔瀹屾垚銆
linux濡备綍鎸傝浇锛
1鍦╮oot涓嬭緭鍏ワ细lsblk
镆ョ湅纭浠惰惧囥
2鍦/mnt涓嫔垱寤轰竴涓鏂囦欢澶广傚悕瀛楄嚜𨰾燂纴浣嗘渶濂藉拰浣犵殑璁惧囨湁鍏崇郴銆
3杈揿叆锛歮ount/dev/sdb1/mnt/usb
杩欐牱灏卞彲浠ユ寕杞戒简銆
4杈揿叆锛歭sblk镆ョ湅銆
5杩涘叆U鐩桦氨鐩存帴杩涘叆鍒氩垰鍒涘缓镄勬枃浠跺す灏卞彲浠ヤ简銆
C. linux内核编译问题 vmware内编译好内核如何在其他主机上安装
你这水平要加油了。
1. 没有网卡的话,可以增加个usb口的网卡呢。一个才十几块钱。usb口绝对有。配置好ip地址,直接传,如scp.
2. 拷贝内核,moles, 到U盘。
然后目标机器挂载U盘。
dmesg 识别到u盘。
然后挂载u盘:mount挂载下。
然后手动安装内核,生成initxxxx文件,修改bootloader内核优先级。
最后 sync 然后eject弹出u盘即可。
3. 硬盘接口等传文件。
4. 人人顺风顺水的回答没有问题,简明,是你水平太差看不懂而已。
5. 内核目录里有个Documentation, 你多阅读下
D. linux如何编译安装新内核支持NTFS文件系统(
第一步: 对硬件进行设置,使其满足要求并下载内核:
1. 新添加一块20G的硬盘及修改内存:
E. linux启动时挂载rootfs的几种方式
一直对linux启动时挂载根文件系统的过程存在着很多疑问,今天在水木精华区找到了有用的资料,摘录如下:
1。linux启动时,经过一系列初始化之后,需要mount 根文件系统,为最后运行init进程等做准备,mount 根文件系统有这么几种方式:
1)文件系统已经存在于硬盘(或者类似的设备)的某个分区上了,kernel根据启动的命令行参数(root=/dev/xxx),直接进行mount。 这里有一个问题,在root文件系统本身还不存在的情况下,kernel如 何根据/dev/xxx来找到对应的设备呢?注意:根文件系统和其他文件系统的mount方式是不一样的,kernel通过直接解析设备的名称来获得设备的主、从设备号,然后就可以访问对应的设备驱动 了。所以在init/main.c中有很长一串的root_dev_names(如hda,hdab,sda,sdb,nfs,ram,mtdblock……),通过这个表就可以根据设备名称得到设备号。注意,bootloader或内核中设定的启动参数(root=/dev/xxx)只是一个代号,实际的根文件系统中不一定存在这个设备文件!
2)从软驱等比较慢的设备上装载根文件系统,如果kernel支持ramdisk,在装载root文件系统时,内核判断到需要从软盘(fdx)mount(root=/dev/fd0),就会自动把文件系统映象复制到ramdisk,一般对应设备ram0,然后在ram0上mount 根文件系统。 从源码看,如果kernel编译时没有支持ramdisk,而启动参数又是root=/dev/fd0, 系统将直接在软盘上mount,除了速度比较慢,理论上是可行的(没试过,不知道是不是这样?)
3)启动时用到initrd来mount根文件系统。注意理解ramdisk和initrd这两个概念,其实ramdisk只是在ram上实现的块设备,类似与硬盘操作,但有更快的读写速度,它可以在系统运行的任何时候使用,而不仅仅是用于启动;initrd(boot loader initialized RAM disk)可以说是启动过程中用到的一种机制,具体的实现过程也使用ramdisk技术。就是在装载linux之前,bootloader可以把一个比较小的根文件系统的映象装载在内存的某个指定位置,姑且把这段内存称为initrd(这里是initrd所占的内存,不是ramdisk,注意区别),然后bootloader通过传递参数的方式告诉内核initrd的起始地址和大小(也可以把这些参数编译在内核中),在启动阶段就可以暂时的用initrd来mount根文件系统。initrd的最初的目的是为了把kernel的启动分成两个阶段:在kernel中保留最少最基本的启动代码,然后把对各种各样硬件设备的支持以模块的方式放在initrd中,这样就在启动过程中可以从initrd所mount的根文件系统中装载需要的模块。这样的一个好处就是在保持kernel不变的情况下,通过修改initrd中的内容就可以灵活的支持不同的硬件。在启动完成的最后阶段,根文件系统可以重新mount到其他设备上,但是也可以不再 重新mount(很多嵌入式系统就是这样)。 initrd的具体实现过程是这样的:bootloader把根文件系统映象装载到内存指定位置,把相关参数传递给内核,内核启动时把initrd中的内容复制到ramdisk中(ram0),把initrd占用的内存释放掉,在ram0上mount根文件系统。从这个过程可以看出,内核需要对同时对ramdisk和initrd的支持(这种需要都编入内核,不能作为模块)。
2。嵌入式系统根文件系统的一种实现方法:对于kernel和根文件系统都存储在flash中的系统,一般可以利用linux启动的initrd的机制。具体的过程前面已经比较清楚了,还有一点就是在启动参数中传递root=/dev/ram0,这样使得用initrd进行mount的根文件系统不再切换,因为这个时候实际的设备就是ram0。还有就是initrd的起始地址参数为虚拟地址,需要和bootloader中用的物理地址对应。