LinuxÇý¶¯µÄ±àÒëÓë¼ÓÔØ
±àÒëºÍ¼ÓÔØ
±¾Õ¿ªÍ·µÄ "hello world" Àý×Ó°üº¬ÁËÒ»¸ö¼ò¶ÌµÄ½¨Á¢²¢¼ÓÔØÄ£¿éµ½ÏµÍ³ÖÐÈ¥µÄÑÝʾ. µ±È», Õû¸ö¹ý³Ì±ÈÎÒÃÇĿǰ¿´µ½µÄ¶à. ±¾½ÚÌṩÁ˸ü¶àϸ½Ú¹ØÓÚÒ»¸öÄ£¿é×÷ÕßÈçºÎ½«Ô´Âëת»»³ÉÄÚºËÖеÄÔËÐеÄ×Óϵͳ.
2.4.1. ±àÒëÄ£¿é
µÚÒ»²½, ÎÒÃÇÐèÒª¿´Ò»ÏÂÄ£¿éÈçºÎ±ØÐë±»½¨Á¢. Ä£¿éµÄ½¨Á¢¹ý³ÌÓëÓû§¿Õ¼äµÄÓ¦ÓóÌÐòµÄ½¨Á¢¹ý³ÌÓÐÏÔÖø²»Í¬; ÄÚºËÊÇÒ»¸ö´óµÄ, ¶ÀÁ¢µÄ³ÌÐò, ¶ÔÓÚËüµÄ¸÷¸ö²¿·ÖÈçºÎ×éºÏÔÚÒ»ÆðÓÐÏêϸµÄÃ÷È·µÄÒªÇó. ½¨Á¢¹ý³ÌÒ²ÓëÒÔǰ°æ±¾µÄÄں˵Ĺý³Ì²»Í¬; еĽ¨Á¢ÏµÍ³ÓÃÆðÀ´¸ü¼òµ¥²¢ÇÒ²úÉú¸üÕýÈ·µÄ½á¹û, µ«ÊÇËü¿´ÆðÀ´ÓëÒÔǰ·Ç³£²»Í¬. Äں˽¨Á¢ÏµÍ³ÊÇһͷ¸ºÔðµÄÒ°ÊÞ, ÎÒÃǾͿ´ËüһС²¿·Ö. ÔÚÄÚºËÔ´ÂëµÄ Document/kbuild Ŀ¼Ï·¢ÏÖµÄÎļþ, ÈκÎÏëÀí½â±íÃæÖ®ÏµÄÕæÊµÇé¿öµÄÈ˶¼ÒªÔĶÁÒ»ÏÂ.
Óм¸¸öǰÌá, Äã±ØÐëÔÚÄܽ¨Á¢ÄÚºËÄ£¿éǰ½â¾ö. µÚÒ»¸öÊDZ£Ö¤ÄãÓа汾×㹻еıàÒëÆ÷, Ä£¿é¹¤¾ß, ÒÔ¼°ÆäËû±ØÒª¹¤¾ß. ÔÚÄÚºËÎĵµÄ¿Â¼ÏµÄÎļþ Documentation/Changes Ò»Ö±ÁгöÁËÐèÒªµÄ¹¤¾ß°æ±¾; ÄãÓ¦µ±ÔÚÏòǰ×ß֮ǰ²Î¿¼Ò»ÏÂËü. ÊÔͼ½¨Á¢Ò»¸öÄÚºË(°üÀ¨ËüµÄÄ£¿é), ÓôíÎóµÄ¹¤¾ß°æ±¾, ¿ÉÄܵ¼Ö²»¾¡µÄÆæ¹ÖµÄÄÑÌâ. ×¢Òâ, ż¶ûµØ, ±àÒëÆ÷µÄ°æ±¾Ì«Ð¿ÉÄÜ»áÒýÆðºÍÌ«Àϵİ汾ÒýÆðµÄÒ»ÑùµÄÎÊÌâ. ÄÚºËÔ´Âë¶ÔÓÚ±àÒëÆ÷×öÁ˺ܴóµÄ¼ÙÉè, еķ¢Ðа汾ÓÐʱ»áһʱµØÆÆ»µ¶«Î÷.
Èç¹ûÄãÈÔȻûÓÐÒ»¸öÄÚºËÊ÷ÔÚÊÖ±ß, »òÕß»¹Ã»ÓÐÅäÖúͽ¨Á¢ÄÚºË, ÏÖÔÚÊÇʱ¼äÈ¥×öÁË. ûÓÐÔ´ÂëÊ÷ÔÚÄãµÄÎļþϵͳÉÏ, ÄãÎÞ·¨Îª 2.6 Äں˽¨Á¢¿É¼ÓÔØµÄÄ£¿é. ʵ¼ÊÔËÐÐΪÆä¶ø½¨Á¢µÄÄÚºËÒ²ÊÇÓаïÖúµÄ( ¾¡¹Ü²»ÊDZØÒªµÄ ).
Ò»µ©ÄãÒѽ¨Á¢ÆðËùÓж«Î÷, ¸øÄãµÄÄ£¿é´´½¨Ò»¸ö makefile ¾ÍÊÇÖ±½ØÁ˵±µÄ. ʵ¼ÊÉÏ, ¶ÔÓÚ±¾ÕÂÇ°ÃæÕ¹Ê¾µÄ" hello world" Àý×Ó, µ¥Ðо͹»ÁË:
obj-m := hello.o
ÊìϤ make , µ«ÊÇ¶Ô 2.6 Äں˽¨Á¢ÏµÍ³²»ÊìϤµÄ¶ÁÕß, ¿ÉÄÜÆæ¹ÖÕâ¸ö makefile ÈçºÎ¹¤×÷. ±Ï¾¹ÉÏÃæµÄÕâÒ»Ðв»ÊÇÒ»¸ö´«Í³µÄ makefile µÄÑù×Ó. ´ð°¸, µ±È», ÊÇÄں˽¨Á¢ÏµÍ³´¦ÀíÁËÓàÏµĹ¤×÷. ÉÏÃæµÄ°²ÅÅ( ËüÀûÓÃÁËÓÉ GNU make ÌṩµÄÀ©Õ¹Óï·¨ )±íÃ÷ÓÐÒ»¸öÄ£¿éÒª´ÓÄ¿±êÎļþ hello.o ½¨Á¢. ÔÚ´ÓÄ¿±êÎļþ½¨Á¢ºó½á¹ûÄ£¿éÃüÃûΪ hello.ko.
·´Ö®, Èç¹ûÄãÓÐÒ»¸öÄ£¿éÃûΪ module.ko, ÊÇÀ´×Ô 2 ¸öÔ´Îļþ( ¹ÃÇÒ³ÆÖ®Îª, file1.c ºÍ file2.c ), ÕýÈ·µÄÊéдӦµ±ÊÇ:
obj-m := module.o
module-objs := file1.o file2.o
¶ÔÓÚÒ»¸öÏóÉÏÃæÕ¹Ê¾µÄÒª¹¤×÷µÄ makefile, Ëü±ØÐëÔÚ¸ü´óµÄÄں˽¨Á¢ÏµÍ³µÄÉÏÏÂÎı»µ÷Ó
Ïà¹ØÎĵµ£º
×ÜÀÀ
ÓÃiptables -ADC À´Ö¸¶¨Á´µÄ¹æ
Ôò
£¬-AÌí¼Ó -Dɾ³ý -C ÐÞ¸Ä
iptables - [RI] chain rule num rule-specification[option]
ÓÃiptables - RI ͨ¹ý¹æÔòµÄ˳ÐòÖ¸¶¨
iptables -D chain rule num[option]
ɾ³ýÖ¸¶¨¹æÔò
iptables -[LFZ] [chain][option]
ÓÃiptables -LFZ Á´Ãû [Ñ¡Ïî]
iptables -[NX] chain
ÓÃ -NX ......
Ò». Æô¶¯,¹Ø»ú,µÇÈë,µÇ³öÏà¹ØÃüÁî
<login> 怬
<logout> µÇ³ö
<exit> µÇ³ö
<shutdown> ֹͣϵͳ
<halt> ֹͣϵͳ
<reboot> ÖØÆô¶¯
<poweroff> ÇжϵçÔ´
<sync> °ÑÄÚ´æÀïµÄÄÚÈÝдÈë´ÅÅÌ
<lilo> °²×°liloÆô¶¯¹ÜÀí³ÌÐò
<grub> °²×°liloÆô¶¯¹ÜÀí³ÌÐò ......
Ö¸ÁîÃû³Æ : chmod
ʹÓÃȨÏÞ : ËùÓÐʹÓÃÕß
ʹÓ÷½Ê½ : chmod [-cfvR] [--help] [--version] mode file...
˵Ã÷ : Linux/Unix µÄµµ°¸µ÷ÓÃȨÏÞ·ÖΪÈý¼¶ : µµ°¸ÓµÓÐÕß¡¢Èº×é¡¢ÆäËû¡£ÀûÓà chmod ¿ÉÒÔ½åÒÔ¿ØÖƵµ°¸ÈçºÎ±»ËûÈËËùµ÷Óá£
²ÎÊý :
mode : ȨÏÞÉ趨×Ö´®£¬¸ñʽÈçÏ : [ugoa...][[+-=][rwxX] ......
Linux 2.6.19.x Äں˱àÒëÅäÖÃÑ¡Ïî¼ò½é
×÷Õߣº½ð²½¹ú
°æÈ¨ÉùÃ÷
±¾ÎÄ×÷ÕßÊÇһλ×ÔÓÉÈí¼þ°®ºÃÕߣ¬ËùÒÔ±¾ÎÄËäÈ»²»ÊÇÈí¼þ£¬µ«ÊDZ¾×Å GPL µÄ¾«Éñ·¢²¼¡£ÈκÎÈ˶¼¿ÉÒÔ×ÔÓÉʹÓá¢×ªÔØ¡¢¸´ÖƺÍÔÙ·Ö·¢£¬µ«±ØÐë±£Áô×÷ÕßÊðÃû£¬Ò಻µÃ¶ÔÉùÃ÷ÖеÄÈκÎÌõ¿î×÷ÈκÎÐÎʽµÄÐ޸ģ¬Ò²²»µÃ¸½¼ÓÈÎºÎÆäËüÌõ¼þ¡£Äú¿ÉÒÔ×ÔÓÉÁ´½Ó¡¢ÏÂÔØ¡¢´«²¥´ËÎĵµ£¬ ......
access£¨ÅжÏÊÇ·ñ¾ßÓдæÈ¡ÎļþµÄȨÏÞ£©
¡¡¡¡Ïà¹Øº¯Êý stat£¬open£¬chmod£¬chown£¬setuid£¬setgid
¡¡¡¡±íÍ·Îļþ #include<unistd.h>
¡¡¡¡¶¨Ò庯Êý int access(const char * pathname,int mode);
¡¡¡¡º¯Êý˵Ã÷ access()»á¼ì²éÊÇ·ñ¿ÉÒÔ¶Á/дijһÒÑ´æÔÚµÄÎļþ¡£²ÎÊýmodeÓм¸ÖÖÇé¿ö×éºÏ£¬R_OK ......