++++++++++++++++++++++++++++++++++++++++++++++++
¼¼Êõ×ÊÁϱ¸·Ý
++++++++++++++++++++++++++++++++++++++++++++++++
0¡¢¼ÜÉèSamba ·þÎñÆ÷µÄǰÌ᣻
LinuxÊÇÒ»¸ö¶àÓû§µÄ²Ù×÷ϵͳ£¬¶ÔÈκηþÎñÆ÷µÄ¼ÜÉèÓë¶¼Óû§¡¢Óû§×鼰ȨÏÞÏà¹Ø£¬ÕâÊDzÙ×÷µÄ»ù´¡¡£Samba·þÎñÆ÷Ò²²»ÀýÍ⣬¶ÔÕâЩ֪ʶµÄÕÆÎÕÒ²ÊǼ«ÎªÖØÒªµÄ¡£ÔÚWindowsϵͳÉÏËäȻҲÄܼܹ²ÏíÎļþ·þÎñÆ÷£¬µ«ËüµÄȨÏÞ¿ØÖÆÊµÔÚÁîÈ˲»¸Ò¹§Î¬¡£Èç¹ûÎÒÃÇÓÃWindowsϵͳÀ´¼ÜÍøÂç¹²ÏíÎļþϵͳ£¬¾ÍÊǵãÊó±êÒ²ÄܰÑÎÒÃǵãÃÔºýÁË¡£µ«ÔÚLinuxÖУ¬ÎÒÃÇ¿ÉÒÔÇáËɵĸÄÒ»¸ÄÅäÖÃÎļþ£¬²»µ½¼¸·ÖÖÓ¾ÍÄܽ¨ºÃ×Ô¼ºµÄSamba·þÎñÆ÷¡£Äĸö¸üÈÝÒ×£¬Ö»ÓÐÄãÖªµÀ£»
¶ÔÓÚSamba·þÎñÆ÷µÄ¼ÜÉ裬ÓеĵÜÐÖ¼òµ¥µÄÈÏΪ£¬Ö»Òª°Ñ¸ÄÒ»ÏÂÅäÖÃÎļþ£¬´´½¨ºÃÏàÓ¦µÄĿ¼¾ÍÐÐÁË¡£Æäʵ²¢²»ÊÇÕâÑùµÄ£¬»¹ÒªÉîÈëµÄ¹¤×÷£¬±ÈÈçĿ¼µÄȨÏ޺͹éÊô£¬Ò²¾ÍÊÇ˵ÄÜÈÃÄĸöÓû§ºÍÓû§×éÓжÁдȨ¡£Ö»ÓаÑÅäÖÃÎļþºÍ¹²ÏíĿ¼µÄȨÏÞ½áºÏÆðÀ´£¬²ÅÄܼܺÃSamba·þÎñÆ÷£»
ÏÂÃæÊdz£ÓõĻù´¡ÖªÊ¶£¬ÎÒÃÇÔÚ±¾ÎÄÖÐËùÉæ¼°µÄÄÚÈݶ¼¿ÉÒÔÔÚÏÂÃæµÄÁбíÖÐÕÒµ½ÏàÓ¦µÄ½âÊÍ£»
0.1 ²é¿´ÎļþÄÚÈݺͱà¼ÎļþµÄ¹¤¾ß£»
¡¶Linux ÎļþÄÚÈݲ鿴¹¤¾ß½éÉÜ¡·
¡¶Îļþ±à¼Æ÷ vi¡·
0.2 ¹ØÓÚÎļþºÍĿ¼Ïà¹Ø£»
¡¶Linux ÎļþÀàÐÍ ¼ ......
1.×î¼òµ¥µÄ°ì·¨ÐÞ¸Ä/etc/rc.d/rc.localÎļþ(Õâ¸ö·½·¨ÊÇÔÚ²»ÐèÒªloginµÄÇé¿öϾÍÄÜ×Ô¶¯ÔËÐеÄ)
2.»¹ÓÐÐ޸IJ»Í¬Óû§µÄÓû§Ä¿Â¼ÏµÄ.bashrcÎļþ¿ÉÒÔʵÏÖµ±¸ÃÓû§µÇ½µÄʱºò×Ô¶¯ÔËÐÐһЩ½Å±¾(¼ÇµÃ/etcÏÂÒ²ÓÐÒ»¸ö.bashrcÎļþ,Ð޸ĺó¿ÉÒÔÈÃÈκÎÓû§µÇ½¶¼×Ô¶¯Ö´ÐÐһЩ½Å±¾µÄ)
3.»¹ÓÐÒ»¸öºÜºÃµÄ·½·¨,×öÒ»¸öÊôÓÚ×Ô¼ºµÄrcÆô¶¯½Å±¾.
......
ÔÚLinuxÏÂдÁ˸öСµÄsocket³ÌÐò£¬·ÖΪ¿Í»§¶ËºÍ·þÎñÆ÷¶Ë£¬·þÎñ¶Ë¿ªÒ»¸ö¶Ë¿Ú(20000)£¬×öΪһ¸ödaemon£¬µÈ´ý¿Í»§µÄÁ¬½ÓÇëÇó¡£Ò»µ©Óпͻ§Á¬½Ó£¨¿Í»§¶ËµÄIPºÍ¶Ë¿ÚºÅÊDz»¹Ì¶¨µÄ£©£¬·þÎñÆ÷¶Ë´òÓ¡³ö¿Í»§¶ËµÄIPµØÖ·ºÍ¶Ë¿Ú£¬²¢ÇÒÏò¿Í»§¶Ë·¢ËÍ»¶ÓÐÅÏ¢ºÍʱ¼ä¡£
ÏÂÃæÊÇ·þÎñ¶ËµÄ´úÂë(tcpserver.c)£¬ÓÉÓÚÕâÖ»ÊǸö¼òµ¥µÄ³ÌÐò£¬ËùÒÔÖ»ÓÃÁ˵¥Ïß³ÌʵÏÖ£¡Ð½¨server.c£¬ÄÚÈÝÈçÏ£º
/**
* Tcp Server program, It is a simple example only.
* zhengsh 200520602061 2
* when client connect to server, send a welcome message and timestamp in server.
*/
#include <stdio.h>
#include <sys/socket.h>
#include <unistd.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <stdlib.h>
#include <time.h>
#define SERVER_PORT 20000 // define the defualt connect port id
#define LENGTH_OF_LISTEN_QUEUE 10 //length of listen queue in server
#define BUFFER_SIZE 255
#define WELCOME_MESSAGE "welcome to connect the ser ......
linuxÖÐtouchÃüÁî²ÎÊý²»³£Óã¬Ò»°ãÔÚʹÓÃmakeµÄʱºò¿ÉÄÜ»áÓõ½£¬ÓÃÀ´ÐÞ¸ÄÎļþʱ¼ä´Á£¬»òÕßн¨Ò»¸ö²»´æÔÚµÄÎļþ,ÒÔÏÂÊÇlinuxÖÐtouchÃüÁî²ÎÊýµÄʹÓ÷½·¨:
¡¡¡¡touch [-acm][-r ref_file(²ÎÕÕÎļþ)|-t time(ʱ¼äÖµ)] file(ÎļþÃû)
¡¡¡¡example:
¡¡¡¡touch file1.txt ¸üÐÂfile1.txtµÄ´æÈ¡ºÍÐÞ¸Äʱ¼ä
¡¡¡¡touch -c file1.txt Èç¹ûfile1.txt²»´æÔÚ£¬²»´´½¨Îļþ
¡¡¡¡touch -r ref_file file1.txt ¸üÐÂfile1.txtµÄʱ¼ä´ÁºÍref+fileÏàͬ
¡¡¡¡touch -t 0811142234.50 file1.txt É趨ÎļþµÄʱ¼ä´íΪ08Äê11ÔÂ14ÈÕ22µã34·Ö40Ãë
¡¡¡¡-a»ò--time=atime»ò--time=access»ò--time=use ¡¡Ö»¸ü¸Ä´æÈ¡Ê±¼ä¡£
¡¡¡¡-c»ò--no-create ¡¡²»½¨Á¢ÈκÎÎĵµ¡£
¡¡¡¡-d ¡¡Ê¹ÓÃÖ¸¶¨µÄÈÕÆÚʱ¼ä£¬¶ø·ÇÏÖÔÚµÄʱ¼ä¡£
¡¡¡¡-f ¡¡´Ë²ÎÊý½«ºöÂÔ²»Óè´¦Àí£¬½ö¸ºÔð½â¾öBSD°æ±¾touchÖ¸ÁîµÄ¼æÈÝÐÔÎÊÌâ¡£
¡¡¡¡-m»ò--time=mtime»ò--time=modify ¡¡Ö»¸ü¸Ä±ä¶¯Ê±¼ä¡£
¡¡¡¡-r ¡¡°ÑÖ¸¶¨Îĵµ»òĿ¼µÄÈÕÆÚʱ¼ä£¬Í³Í³Éè³ÉºÍ²Î¿¼Îĵµ»òĿ¼µÄÈÕÆÚʱ¼äÏàͬ¡£
¡¡¡¡-t time
¡¡¡¡Ê¹ÓÃÖ¸¶¨µÄʱ¼äÖµ time ×÷Ϊָ¶¨Îļþ file ÏàӦʱ¼ä´Á¼ÇµÄÐÂÖµ.´Ë´¦µÄ time ¹æ¶¨ÎªÈçÏÂÐÎʽµÄÊ®½øÖÆÊý¡Ã
¡¡¡¡[[CC]YY]MMDDhhmm[.SS]
¡¡¡¡ÕâÀï£ ......
ÓÐʱsystem.mapÎļþ¿ÉÒÔ°ïÖúÎÒÃÇÀí½âÄں˱àÒ룬Ëü¼Ç¼ÁËËùÓдúÂëµÄÔËÐеØÖ·¡£
system.mapÄÚÈݸñʽΪ£ºÏßÐÔµØÖ· ÀàÐÍ ·ûºÅ
¾ßÌåÄÚÈÝÈçÏ£º
00100000 A phys_startup_32
c0100000 T startup_32
c0100000 A _text ×¢:±íʾÄں˴úÂëµÚÒ»¸ö×ֽڵĵØÖ·
c01000c6 t checkCPUtype
c0100147 t is486
c010014e t is386
c0100199 t L6
c010019b t check_x87
c01001c2 t setup_idt
c01001df t rp_sidt
c01001ec t ignore_int
c0100220 t rest_init
c0100220 T stext
c0100220 T _stext
c0100252 t do_pre_smp_initcalls
c0100257 t run_init_process
c0100283 t init
c01003a8 t try_name
c0100529 T name_to_dev_t
c0100790 t calibrate_delay_direct
...
c02f95d7 T register_kretprobe
c02f96cd T unregister_kretprobe
c02f9760 t .text.lock.kprobes
c02f97b0 T __kprobes_text_end
c02f9abe t iret_exc
c02fa1af A _etext &nbs ......
Ò»¡¢Ê²Ã´ÊÇ modules£¿
¡¡¡¡modules µÄ×ÖÃæÒâ˼¾ÍÊÇÄ£¿é£¬ÔÚ´ËÖ¸µÄÊÇ kernel modules£»¼òµ¥À´Ëµ£¬ Ò»¸öÄ£¿éÌṩÁËÒ»¸ö¹¦ÄÜ£¬Èç isofs¡¢minix¡¢nfs¡¢lp µÈµÈ¡£´«Í³À´½²£¬Ä£¿é»¯ÓÐÁ½¸ö·½·¨½â¾ö£º Éè¼ÆÕß¿ÉÒ԰Ѹ÷ÏÄÜ·ÖÀëµ½µ¥¶ÀµÄ½Ð×öÏ̵߳Ĵ¦ÀíÖÐÈ¥£¬»òÕßÊǽ«ÄÚºËÒÔ°üº¬/ÅųýһЩ¹¦Äܵķ½Ê½ÖØÐ±àÒë¡£Èç¹û°Ñ¹¦ÄÜ·ÖÀëµ½Ïß³ÌÖÐÈ¥£¬ÄÇôÄں˾ͽÐ×ö“΢Äں˔(micro-kernel)£¬ÕâÖÖ½â¾ö·½·¨Ôö¼ÓÁËÏ̼߳äе÷¹¤×÷µÄͨÐÅ¿ªÏú¡£¾ÍÏóÃû×Ö°µÊ¾µÄÄÇÑù£¬ÕâÖÖ½â¾ö·½°¸µÄÓŵãÔÚÓÚÄں˵ĴóС¡£
¡¡¡¡linuxµÄ½â¾ö·½°¸Êǰüº¬ÄÚºËÄ£¿é£¬ÕâЩģ¿éÊÇ¿ÉÒÔ°´ÐèÒªËæÊ±×°ÈëºÍжϵġ£ÕâÑù×ö¿ÉÒÔʹµÃÄں˵ĴóСºÍͨÐÅÁ¿¶¼´ïµ½×îС¡£½«Ä£¿é´ÓÄÚºËÖжÀÁ¢³öÀ´£¬²»±ØÔ¤ÏÈ¡º°ó¡»ÔÚkernel codes ÖС£ÕâÑù×öÓÐÈýÖÖÓŵ㣺 µÚÒ»£¬½«À´ÐÞ¸Ä kernel ʱ£¬²»±ØÈ«²¿ÖØÐÂcompile£¬¿É½ÚÊ¡²»ÉÙʱ¼ä£»µÚ¶þ£¬ ÈôÐèÒª°²×°Ð嵀 modules £¬²»±ØÖØÐ compile kernel£¬Ö»Òª²åÈë(ͨ¹ýinsmodeÖ¸Áî) ¶ÔÓ¦µÄ modules ¼´¿É£»µÚÈý£¬¼õÉÙÄں˶Ôϵͳ×ÊÔ´µÄÕ¼Óã¬Äں˿ÉÒÔ¼¯Öо«Á¦×ö×î»ù±¾µÄÊÂÇ飬°ÑһЩÀ©Õ¹¹¦Äܶ¼½»ÓÉmodulesʵÏÖ¡£
¡¡¡¡Ä£¿éÒ²¿ÉÒÔÓÃÀ´³¢ÊÔеÄÄں˴úÂë¶ø²»ÐèҪÿ´Î¶¼´´½¨ºÍÖØ¼¤»îÄںˡ£µ«ÊÇ£¬ÕâÑù×ö´øÀ´µÄ ......