Linux¸ùÎļþϵͳ½á¹¹ÔÙÈÏʶ
INTRO
¾¡¹ÜLinuxµÄ¸ùÎļþϵͳÔÚÐÎʽ±íÏÖÉÏÊÇÒ»ÌåµÄ£¨ËùÓÐÊý¾ÝĿ¼¾ùΪ¸ùĿ¼ÏµÄ×ÓĿ¼£©£¬µ«Êµ¼ÊËüÃÇÊǶà¸ö²»Í¬µÄ¡¾Âß¼Ö÷Ìå¡¿£¨ÎªÁËʵÏÖ²»Í¬µÄÂß¼¹¦ÄÜ£©×éºÏÔÚÒ»ÆðµÄ£¬²Î¼ûÏÂͼ¡£ÕâÒ²½âÊÍÁËΪʲôÓÐЩ½Úµã£¨Èç/var£©¿ÉÒÔ¹Ò½Óµ½²»Í¬´ÅÅÌ·ÖÇøÉÏ¡£»®·ÖÕâЩÂß¼²¿·Ö¶ÔÇåÎú°ÑÎÕ¸ùÎļþϵͳ½á¹¹£¬ÒÔ¼°Õû¸öϵͳµÄÐÐΪ¶¼ÓкܴóµÄºÃ´¦¡£ÔÚ»®·Ö֮ǰ£¬ÏÈ¿´¿´“Îļþϵͳ½á¹¹±ê×¼”¡£
Îļþϵͳ½á¹¹±ê×¼
Îļþϵͳ½á¹¹±ê×¼ £¨Filesystem Hierarchy Standard £¬Ï³ÆFHS£©¶¨Á¢µÄÄ¿±êÖ®Ò»ÊÇ£¬³ÌÐò¿É°´ÓÃ;ÐÔÖʱ»°²×°µ½Ö¸¶¨µÄλÖã¬Óû§Ò²ÄÜÔ¤Öª³ÌÐòµÄ°²×°µÄÎļþºÍĿ¼µÄλÖá£FHSͨ¹ý¶¨ÒåÎļþϵͳ¸÷²¿·ÖµÄºÒå¡¢ÓÃ;£¬ÔÙ¼ÓÉÏÁоÙËùÓеÄÌØÊâÇé¿ö£¬ÈçÀúÊ·ÒÅÁôÎÊÌ⣬´ïµ½ÁËÕâ¸öÄ¿±ê¡£
LINUXϵͳµÄÊý¾ÝÎļþ¿ÉÒÔ¸ù¾Ý¡¾Ë«Öرê×¼¡¿À´¶ÔËüÃÇ·ÖÀࣺ¹²ÏíµÄÓë¶ÀÏíµÄ£¨shareable vs. unshareable£©¡¢±ä»¯µÄºÍ¾²Ì¬µÄ£¨variable vs. static£©¡£Èç¹ûÊý¾ÝÎļþÎÞ·¨°´ÕÕË«Öرê×¼·ÖÀ࣬ËüÃDZØÐëÁíÆðĿ¼´æ·Å£¬ÕâÑù×öµÄÔÒòÊÇ¿ÉÒ԰Ѳ»Í¬¡¾Ê¹ÓÃÐÔÖÊ¡¿£¨usage characteristics£©µÄÊý¾ÝÎļþ·Ö¿ª²»Í¬Îļþϵͳ£¨´ÅÅÌ·ÖÇø£©´æ·Å¡£
“¹²ÏíµÄ” £¨Shareable£©ÊÇÖ¸Êý¾ÝÓëƽ̨²»Ïà¹ØµÄ£¬Èç/usr£»Ïà·´“¶ÀÏíµÄ”£¨Unshareable£©Ö¸Êý¾ÝÊÇƽ̨Ïà¹ØµÄ£¬ÈçÅäÖÃÊý¾Ý/etc¡£
“¾²Ì¬µÄ”Êý¾ÝÊÇÏà¶Ô·Ç¹ÜÀíÔ±Óû§¶øÑԵģ¬Ã»Óиü±äµÄȨÏÞ£»¶ø“±ä»¯µÄ”ÔòÏà·´¡£·Ö¸ô¾²Ì¬Ó붯̬Êý¾ÝµÄÄ¿µÄÊÇΪÁ˿ɰѾ²Ì¬Êý¾Ý°²×°µ½Ò»¸öµ¥¶ÀµÄÖ»¶ÁµÄ½éÖÊ£¨Îļþϵͳ£©ÖУ¬²»±ØÓ붯̬Êý¾ÝÒ»Æð×öƵ·±µÄÊÂÎñ¹ÜÀí£¬±ÈÈ綨ÆÚ±¸·Ý¡£
ÓëÊý¾ÝµÄ¡¾¾²¶¯Ì¬ÐÔ¡¿ÃæÏò“Óû§”²»Í¬£¬Êý¾ÝµÄ¡¾¹²ÏíרÓÃÐÔ¡¿ÊÇÃæÏò“Ö÷»ú”¶øÑÔ£¬Ò²¾ÍÊÇ˵£¬ÓÐЩÊý¾ÝÊDZ¾»úרÓõģ¬¶øÁíÍâһЩÊǶà¸öÖ÷»ú£¨¿ÉÊDZ¾µØµÄFHS¼æÈÝÖ÷»ú£¬¿ÉÒÔÊÇÔ¶³ÌÖ÷»ú£©¹²ÏíµÄ¡£±ÈÈç¸ùĿ¼·ÖÇøÊDZ¾»úרÓõģ¬¶ø/usrËùÔÚ·ÖÇø¿É¹²Ïí¸ø¶à¸öFHS¼æÈÝÖ÷»ú¡£
Ë«Öرê×¼ÊÇ·¢Õ¹¶øÀ´µÄ£¬±»ÄÉÈëFHS£¬ÎªÁËÖ§³ÖÕâ¸ö±ê×¼£¬¹ýȥĬÈÏ´æ·ÅÔÚ/usr ¡¢/var¡¢ /etc µÈĿ¼µÄÊý¾Ý¶¼×öÁËÏàÓ¦µÄµ÷Õû¡£
Linux¸ùÎļþϵͳÂß¼×é³É
²ÎÕÕFHS£¬Linuxϵͳ°´ÕÕÂß¼¹¦ÄÜ´óÖ·ÖΪÒÔÏÂĿ¼£¨ÒÔ¾ßÌåĿ¼±íÏÖÂß¼¹¦ÄÜ£¬ÓÐÒâ˼£©£º
/
/usr
/var
/opt
/home
P.S. ÒÔÉÏĿ¼¾ù¿Éµ¥¶À°²×°µ½Ò»¸ö·ÖÇøÉÏ£¬×îÖÕ¹Ò½ÓÈë¸ùÏ¡£
/ £¨×¨Óõľ²Ì¬µÄ£©
¸ùĿ¼µÄ¹¦ÄÜÓÉÆäÃû¿ÉÂÔÖª£¬¸ùĿ¼ÊÇϵͳµÄ¸ù±¾ËùÔÚ£¨Essential£©£¬ÊÇϵͳ֮ËùÒÔΪ±¾ÏµÍ³µÄÌØÕ÷
Ïà¹ØÎĵµ£º
ÔÚLinux²Ù×÷ϵͳÖУ¬ÓÐÒ»¸öϵͳÈí¼þ°ü£¬ËüµÄ¹¦ÄÜÀàËÆÓÚWindowsÀïÃæµÄ“Ìí¼Ó/ɾ³ý³ÌÐò”£¬µ«Êǹ¦ÄÜÓֱȓÌí¼Ó/ɾ³ý³ÌÐò”Ç¿ºÜ¶à£¬Ëü¾ÍÊÇRed Hat Package Manager(¼ò³ÆRPM)¡£´Ë¹¤¾ß°ü×îÏÈÊÇÓÉRed Hat¹«Ë¾ÍƳöµÄ£¬ºóÀ´±»ÆäËûLinux¿ª·¢ÉÌËù½èÓá£ÓÉÓÚËüΪLinuxʹÓÃÕßÊ¡È¥Á˺ܶàʱ¼ä£¬ËùÒÔ±»¹ã·ºÓ¦ÓÃÓÚÔÚLin ......
1¡¢ÒýÑÔ
ÔÚlinuxϵͳÏ£¬Èç¹ûÄãÏÂÔز¢°²×°ÁËÓ¦ÓóÌÐò£¬ºÜÓпÉÄÜÔÚ¼üÈëËüµÄÃû³Æʱ³öÏÖ“command not found”µÄÌáʾÄÚÈÝ¡£Èç¹ûÿ´Î¶¼µ½°²×°Ä¿±êÎļþ¼ÐÄÚ£¬ÕÒµ½¿ÉÖ´ÐÐÎļþÀ´½øÐвÙ×÷¾ÍÌ«·±ËöÁË¡£ÕâÉæ¼°µ½»·¾³±äÁ¿PATHµÄÉèÖÃÎÊÌ⣬¶øPATHµÄÉèÖÃÒ²ÊÇÔÚlinux϶¨ÖÆ»·¾³±äÁ¿µÄÒ»¸ö×é³É²¿·Ö¡£±¾ÎÄ» ......
Windows ºÍ Linux µÄIPC API¶ÔÓ¦±í
Table 1. Process mapping
Windows
Linux
Classification
CreateProcess()
CreateProcessAsUser()
fork()
setuid()
exec()
Mappable
TerminateProcess()
kill()
Mappable
SetThreadpriority()
GetThreadPriority()
Setpriority()
getPriority()
Mappa ......
ÐÞ¸ÄÏ̵߳ÄÊôÐÔ
¡¡¡¡ÔÚÉÏÒ»½ÚµÄÀý×ÓÀÎÒÃÇÓÃpthread_createº¯Êý´´½¨ÁËÒ»¸öỊ̈߳¬ÔÚÕâ¸öÏß³ÌÖУ¬ÎÒÃÇʹÓÃÁËĬÈϲÎÊý£¬¼´½«¸Ãº¯ÊýµÄµÚ¶þ¸ö²ÎÊýÉèΪNULL¡£µÄÈ·£¬¶Ô´ó¶àÊý³ÌÐòÀ´Ëµ£¬Ê¹ÓÃĬÈÏÊôÐԾ͹»ÁË£¬µ«ÎÒÃÇ»¹ÊÇÓбØÒªÀ´Á˽âÒ»ÏÂÏ̵߳ÄÓйØÊôÐÔ¡£
¡¡¡¡ÊôÐԽṹΪpthread_attr_t£¬ËüͬÑùÔÚÍ·Îļþ/usr/include/pthread.hÖÐ ......
tables=fuckme query=where fucktime > trunc(sysdate)-1 direct=y
on linux query=\"where fucktime \> trunc\(sysdate\)-1\" ҪתÒå·û һǰһºó Öм䶼Ҫ ·ûºÅλǰ
direct=N ¿Éϧ²»Ö§³ÖÖ±½Ó·¾¶µ¼³ö ......