Subsections


1 Åv­­

GNU ©M Unix ¨t²Î¬O³Q³]¸m¬°¥i¥H¦h¤H¨Ï¥Î¦P¤@³¡¹q¸£¡A¦ý¥ç¯à§â¬Y¨ÇÀɮ׳]©w¬°¨p¤Hªº¡A©Î¬O¥i¥H¨Ï¬Y¨Ç¤H¤£¯à§ó§ï¬Y¨ÇÀɮסC±z¥i¥H¸Õ¤@¸Õ¥hÅçÃÒ¡C¥Î±z¦Û¤vªº½ã¸¹µn¤J¡A§Y¬O¤£­n¨Ï¥Î root¡C

whoami
³o­Ó«ü¥OÃÒ¹ê±z¤£¬O root¡C¸òµÛ¿é¤J¥H¤Uªº«ü¥O¡G

rm /etc/resolv.conf
±zÀ³·| ³Qĵ§i Permission denied¡]¨S¦³Åv­­¡^¡C/etc/resolv.conf ¬O¨t²Îªº¤@­Ó­«­nªº³]©wÀÉ¡A°£«D±z¬O root¡A±z¨S¦³¯à¤O§ó§ï©Î§R°£¥¦¡C³o¼Ë´N¯à¨¾¤î±z¤£·V§â¨t²Î§ËÃa¡C°²­Y¨º³¡¹q¸£¬O¤½²³¨Ï¥Îªº¡]¨Ò¦p¦b¿ì¤½«ÇùةξǮÕùØ¡^¡A³o¼Ë¥i¥H¨¾¤î¥ÎªÌ¨è·N§ËÃa¨t²Î¡C

²{¦b¿é¤J ls -l /etc/resolv.conf¡A

±z·|±o¨ìÃþ¦ü³o¼Ëªº¿é¥X¡G

-rw-r--r-- 1 root root 119 Feb 23 1997 /etc/resolv.conf

µ¹ ls ªº°Ñ¼Æ -l ¬O¥Î¨Ó¤Þ¥XÃB¥~ªº¸ê®Æ¡C¥kÃ䪺¸ê®Æ¤ñ¸û²³æ¡GÀɮתº¤j¤p¬O 119 ­Ó¦ì¤¸²Õ (bytes)¡AÀɮתº³Ì«á§ó§ï¤é´Á¬O¤@¤E¤E¤C¦~¤G¤ë¤G¤Q¤T¤é¡AÀɮצW¦r¬O /etc/resolv.conf¡C¥ªÃ䪺¸ê®Æ´N¤ñ¸û½ÆÂø¤F¡C

­º¥ý¡A¨Ó­Ó²µuªº§Þ³N©Ê¸ÑÄÀ¡G-rw-r--r-- ¬OÀɮתºª¬ºA¡A1 ¬O«üµÛ³o­ÓÀɮתºµw©Ê³sµ² (hard link)¡]©Î¬O¤@­Ó¥Ø¿ý¤¤ªºÀɮ׼ƥء^¡A¦Ó¨º¨â­Ó root ¬O¤À§O«ü¾Ö¦³³o­ÓÀɮתº¥Î¤á (user) ©M¸s²Õ (group)¡C

¬Oªº¡A³o¬O¦³ÂIÃø¥H²z¸Ñ¡A²{¦b´NÅý§Ú­ÌºCºC¦a¸ÑÄÀ§a¡C

1 ÀɮתþÄÝÅv (file ownership)

¨C¤@­ÓÀɮ׳£¦³¨â­Ó¾Ö¦³ªÌ¡G¥Î¤á©M¸s²Õ¡C¥ý«eªº¨º­Ó¨Ò¤l¦³ÂI²V²c¡A¦]¬°°£¤F¥Î¤á root ¤§¥~ÁÙ¦³¤@­Ó¸s²Õ¥s°µ root¡C¸s²Õ¥u¬O¤@¨Ç³Q¤@¦P®e³\¦s¨ú¨t²Î¬Y³¡¥÷ªº¥Î¤á¡Cgames ¸s²Õ´N¬O¤@­Ó¦n¨Ò¤l¡C

³o¬O¤@­Ó¤ñ¸û¹ê»Úªº¨Ò¤l¡C¤Û·Q±z²{¦b¥¿¬°¤@©Ò¾Ç®Õ¬[³]¤@³¡¹q¸£¡A±z¥i¯à·Q³]¸m¬Y¨ÇÀɮ׬°¥u¥i¥HÅý¦Ñ®v¦s¨ú¡A¦Ó¾Ç¥Í¬O¤£¥i¥Hªº¡A¦]¦¹±z§â©Ò¦³ªº¦Ñ®v³£©ñ¨ì¦P¤@­Ó¸s²ÕùØ¥h¡C¸òµÛ±z«K§i¶D¨t²Î­þ¨ÇÀɮ׬OÄÝ©ó¸s²Õ teachers ªº¦¨­û¡A¦Ó¨ä¥L¤H´N¤£¯à±µÄ²¨ì³o¨ÇÀɮתº¡C

²{¦b´NÅý§Ú­Ì±´¯Á¤@¤U¨t²Î¤¤ªº¸s²Õ¡C­º¥ý¡A±z¥i¥H¦b shell prompt ¥Î«ü¥O groups¡A³o¼Ë·|Åã¥Ü±z©ÒÄݩ󪺸s²Õ¡C¨Ò¤l¦p¤U¡G

groups

username dialout cdrom floppy audio

«Ü¤j¾÷·|±z¥u¬O¤@­Ó¸s²Õªº¦¨­û¡A¦Ó¨º­Ó¸s²Õªº¦WºÙ©M±zªº¥Î¤á¦WºÙ¬O¤@¼Ëªº¡C¤£¹L¡Aroot ¥i¥H¥[±z¨ì§Oªº¸s²Õ¤¤¡C¥H¤Wªº¨Ò¤lªí¥Ü¨º­Ó¥ÎªÌ¬O¤­­Ó¸s²Õªº¦¨­û¡C

less /etc/group
³o­ÓÀɮצC¥X±zªº¨t²Î¤¤ªº¸s²Õ¡C­n¯d·Nªº¬O root ¸s²Õ¡]root ¬O³o­Ó¸s²Õªº°ß¤@¦¨­û¡^©M»P±zªº¥Î¤á¦WºÙ¤@¼Ëªº¨º­Ó¸s²Õ¡CÁÙ¦³¨ä¥¦ªº¸s²Õ¦p dialout¡]¯à°÷¨Ï¥Î modem ¥´¥Xªº¥Î¤á¡^©M floppy¡]¯à°÷¨Ï¥Î³nºÏ¤ù¾÷ªº¥Î¤á¡^¡C¤£¹L±zªº¨t²Î¦³¥i¯àÁÙ¥¼³]¸m¦¨§Q¥Î³o¨Ç¸s²Õ¡A©Ò¥H¡A«Ü¥i¯à²{¦b¥u¦³ root ¤~¯à¨Ï¥Î³nºÏ¤ù¾÷©M modem¡C¦³Ãö³o­ÓÀɮתº¸Ô±¡¡A½Ð°Ñ¾\ man group¡C

ls -l /home
³o­Ó©R¥OÅã¥Ü¡A©Ò¦³¥Î¤áªº¥Ø¿ý³£¬O¥Ñ¨º­Ó¥Î¤á¤Î¥L©ÒÄݪº¨p¤H¸s²Õ©Ò¾Ö¦³¡C
´£¥Ü¡G ¦pªG±z¬O­è¦w¸Ë Debian ªº¡A±z¥i¯à¬O°ß¤@ªº¥Î¤á¡C±z¥i¥H¨Ï¥Î adduser «ü¥O¨Ó¼W¥[¥Î¤á¡C

2 ª¬ºA (mode)

ÀɮשM¥Ø¿ý°£¤F¬O³Q¥Î¤á¤Î¸s²Õ©Ò¾Ö¦³¤§¥~¡A¥¦­ÌÁÙ¦³¤@­Óª¬ºA¡Cª¬ºA¨M©w½Ö¥i¥HŪ¡B¼g¡B©M°õ¦æ¨º­ÓÀɮס]¦pªG¥¦¬O¤@­Óµ{¦¡¡^¡C¨ä¹êÁÙ¦³¨ä¥¦ªºªF¦è¨M©wÀɮתºª¬ºA¡A¦ý³o¨Ç¬O¸û²`ªº½ÒÃD¡A©Ò¥H§Ú­Ì¥ç¤£·|¦b¦¹°Q½×¡C

¦b ls ªº¿é¥XùØ¡A§Ú­Ì¥i¥H¬Ý¨ìÀɮתºª¬ºA¬O¡G-rw-r--r--¡C§Ú­Ì·|§â¥¦¤À¦¨¤E³¡¥÷¨Ó¬Ý¡G¾Ö¦³Àɮתº¥Î¤á¡B¸s²Õ¡B©M¨ä¥L¥Î¤á¡]others¡A§Y¬O¨t²Îªº©Ò¦³¥Î¤á¡A¦³®É·|ºÙ³o­Ó¬°world¡^ªºÅª (read)¡A¼g (write)¡A¤Î°õ¦æ (execute) Åv­­¡C

¦bª¬ºA¤@¦æ¤¤¡A²Ä¤@­Ó¡u¤¸¯À¡v¬OÀɮ׺ØÃþ (file type)¡C³oùتº - ªí¥Ü³o¬O¤@­Ó´¶³qªºÀɮסC¦pªG¥¦¬O d¡A¨º»ò§Ú­Ì´N¬O¦bÀˬd¤@­Ó¥Ø¿ý¡CÁÙ¦³¨ä¥¦ªººØÃþ¡A¦]¤Ó½ÆÂø©Ò¥H¤£·|¦b³oùظѻ¡¡C¸Ô²Ó¸ê®Æ¥i¬Ý²Ä [*] ­¶ªº²Ä 13.2.2 ¸`¡C

³Ñ¤U¨Óªº¤E­Ó¤¸¯À¬O¥Î¨ÓÅã¥ÜÀɮתºª¬ºA¡A¨º¤E­Ó¦ì¡]¥Î¤á¡B¸s²Õ¡B©M¨ä¥L¥Î¤áªºÅª¡B¼g©M°õ¦æÅv¡^¬O¥Ñ¤T²Õ rwx ¨Óªí¥Ü¡C

©Ò¥H¦pªGÀɮשҦ³ªºÅv­­³£³Q³\¥i¡A¦Ó¥¦¤S¬O¤@­Ó´¶³qªºÀÉ¡Aª¬ºA±N·|¬OÃþ¦ü³o¼Ë¡G-rwxrwxrwx¡C¦pªG¥¦¬O¤@­Ó¥Ø¿ý¡A¦Ó©Ò¦³¨ä¥L¥Î¤áªºÅv­­³£³QÄÀ©ñ¡A¦ý¥Î¤á©M¸s²Õ³£³Q½á¤©©Ò¦³Åv­­¡A¨º»òª¬ºA±N·|¬O¡Gdrwxrwx---¡C


ªí: Linux ¤WªºÅv­­

½X ¦WºÙ ¹ï©óÀÉ®×¥i°µªº°Ê§@ ¹ï©ó¥Ø¿ý¥i°µªº°Ê§@
r Ū¨ú (read) ¹î¬ÝÀɮפº®e ¦C¤Þ¥Ø¿ýªº¤º®e
w ¼g¤J (write) §ó§ïÀÉ®× ¥[´î¥Ø¿ýùتºÀÉ®×
x °õ¦æ (execute) °õ¦æ¤@­Ó«ü¥O ¦s¨ú¥Ø¿ý¤ºªºÀÉ®×


ªí 7.1 §Î®e¹ï©óÀɮפΥؿýªºÅª¡B¼g¡B¤Î°õ¦æÅv­­ªº·N«ä¡C

¥Ø¿ýªºª¬ºAªº·N¸q¥i¯à¦³ÂI²V²c¡A©Ò¥H³oùئ³¤@¨Ç¨Ò¤l¥Î¨ÓÄÄ©ú¤£¦P²Õ¦Xªº®ÄªG¡G

r--
¥Î¤á¡B¸s²Õ¡B©M¨ä¥L¥Î¤á¦p¾Ö¦³³o­ÓÅv­­¡A«hªí¥Ü¥L­Ì¥i¥H¦C¥X¥Ø¿ýªº¤º®e¡A¦ý°£¦¹¤§¥~¤£¯à°µ¨ä¥¦ªº¨Æ¡C¥Ø¿ýùتºÀɮפ£¯à³QŪ¨ú¡B§ó§ï¡B§R°£¡B¥H¤Î¥ô¦ó¤è¦¡ªº³B²z¡C°ß¤@¥i¥H°µªº´N¬OŪ¨ú³o­Ó¥Ø¿ý¡A¥ç§Y¬OÆ[¬Ý¥¦¥]§tªº¤º®e¡C

rw-
¦b¨S¦³°õ¦æÅv­­ªº®É­Ô¡A¼g¤JÅv­­¬O¨S¦³§@¥Îªº¡A©Ò¥H³o­Óª¬ºA©M¤W­±ªº¨º­Ó¬O¤@¼Ëªº¡C

r-x
³o­Óª¬ºA¤¹³\¦C¦L¥Ø¿ý¤ºªºÀɮסA¥H¤Î¦s¨ú³o¨ÇÀɮסA¦ý¤£¥i¥H«Ø¥ß©Î§R°£ÀɮסC¦s¨úªº·N«ä¬O±z¥i¥HÆ[¬Ý¡A§ó§ï¡A¤Î°õ¦æ³o¨ÇÀɮס]¦pªGÀÉ®×¥»¨­ªºÅv­­¤¹³\±z³o¼Ë°µ¡^¡C

--x
¥Ø¿ý¤ºªºÀÉ®×¥i¥H³Q¦s¨ú¡A¦ý¥¦ªº¤º®e¤£¯à³Q¦C¦L¡A©Ò¥H±z¥²¶·¨Æ¥ýª¾¹D¥Ø¿ý¤¤Àɮתº¦WºÙ¡]°£«D±z®Æ¨Æ¦p¯«¡A¯à°÷²q¤¤¥¦­Ìªº¦W¦r¡^¡C±z¤£¯à«Ø¥ß©Î§R°£ÀɮסC

rwx
±z¥i¥H¹ï¥Ø¿ý¤ºªºÀÉ®×°µ¥ô¦ó¨Æ¡A¥u­nÀÉ®×¥»¨­ªºÅv­­¤¹³\±z³o»ò°µ¡C

¥Ø¿ýªº¼g¤JÅv­­¨M©w¤F±z¬O§_¥i¥H§R°£¥Ø¿ý¤¤ªºÀɮסA¦pªG±z¦³Åv¼g¤J¤@­Ó¥Ø¿ý¡A±z¥ç¥i¥H§â¤ºùتº¤@­Ó°ßŪÀÉ®×§R°£±¼¡FµM¦Ó±z¤£¥i¥H§R°£¤@­Ó°ßŪ¥Ø¿ý¤¤ªºÀɮסA´Nºâ±z¦³Åv§ó§ï¨º¨ÇÀɮסC

¥ç§Y¬O»¡¡A¦pªG±z¾Ö¦³¤@­Ó¥Ø¿ý¡A±z´N¤@©w¥i¥H§R°£¤ºùتºÀɮסA´Nºâ¨º¨ÇÀɮ׬OÄÝ©ó root ªº¡C

¥Ø¿ýªº°õ¦æÅv­­¨M©w±z¬O§_¦³Åv¦s¨úÀÉ®×¢w¢w¥ç¦]¦¹¨M©wÀÉ®×Åv­­ªº¥Î³B¡C¦pªG±z¾Ö¦³¤@­Ó¥Ø¿ýªº°õ¦æÅv­­¡A³o­Ó¥Ø¿ýÃþÀɮתºÅv­­´N·|Åܱo¦³Ãö«Y¤F¡A§_«h¡AÀÉ®×Åv­­¬O¤°»ò¤]¨S¦³©Ò¿×ªº¡A¦]¬°¤Ï¥¿±z¤]¤£¯à¦s¨ú±o¨ì¨º¨ÇÀɮסC

3 Åv­­ªº½m²ß

¦b³o¤@¸`§Ú­Ì·|¬Ý¬Ý¤@­Ó¥Ü½d«ç¼Ë¨Ï¥ÎÅv­­ªº¨Ò¤l¡A¥H¤U·|§Q¥Î¨ì chmod ³o­Ó«ü¥O¥h§ïÅÜÅv­­ªº¡C

cd; touch myfile
³oùئ³´X­Ó¦³½ìªº§Þ­Ç¡C²Ä¤@­Ó¡A¬O±z¥i¥H¥Î ; ¨Ó§â¨â­Ó©R¥O©ñ¦b¤@¦æ¤W¡C±z¥i¥H§â¤W­zªº©R¥O¥´¦¨¡G

cd 

touch myfile 

©Î¬O¡G

cd; touch myfile
µL½×¨ººØ¤èªk³£¯à¹F¨ì¦P¼Ë®ÄªG¡C

­Y±zÁÙ°O±o¡A¥Î cd ¥i¥H¥ß§Y¦^¨ì±z¦Û¤vªº home ¥Ø¿ý¡F touch ³q±`¬O¥Î¨Ó§âÀɮתº§ó·s¤é´Á (modification time) §ï¬°²{¦bªº®É¶¡¡C¦ý¥¦¦³¥t¤@­Ó¦³½ìªº¯SÂI¡G¦pªGÀɮפ£¦s¦b¡Atouch «K·|»s³y¥¦¡C©Ò¥H±z¬O¥Î¥¦¨Ó»s³y¤@­Ó§@½m²ß¥ÎªºÀɮסC¥Î ls -l ¨Ó½T©wÀɮׯuªº¤w³Q«Ø¥ß¡A¨Ã¥B°O¦í¥¦ªºÅv­­¼Òª¬ºA¡G

ls -l 

-rw-r--r-- 1 user user 0 Nov 18 22:04 myfile

·íµM¡A¦b±z¸Õªº®É­Ô¡A®É¶¡¤Î¥Î¤á¢A¸s²Õ³£·|¦³§O©ó¤W­zªº¡CÀɮתº¤j¤p¬O 0¡A¦]¬° touch «Ø¥ßªº¬O­ÓªÅªºÀɮסC-rw-r--r-- ¬O Debian ¤Wªº¹w³]Åv­­¡C

chmod u+x myfile
³o­Ó«ü¥Oªº·N«ä¬O²K¥[ (+) °õ¦æ (x) Åv­­µ¹¾Ö¦³¸ÓÀɮתº¥Î¤á (u)¡C¥Î ls -l ¥h¬Ý¬Ý¥¦ªº®ÄªG¡C

chmod go-r myfile
³o¼Ë°µ·|±q¾Ö¦³¸ÓÀɮתº¸s²Õ (g) ¥H¤Î¨ä¥L¥Î¤á (others, o) ªº¤â¤¤¹Ü¥h (-) Ū¨úÅv­­ (r)¡C¦P¼Ë¦a¡A¨Ï¥Î ls -l ¥hÅçÃÒ¥¦ªº®ÄªG¡C

chmod ugo=rx myfile
³o¼Ë°µ·|§â¥Î¤á¡B¸s²Õ¡B©M¨ä¥L¥Î¤á³]¬°¾Ö¦³Åª¨ú¤Î°õ¦æªºÅv­­¡C³o­Ó³]©w¬O©M±z©Ò¿é¤Jªº¤@¼Ò¤@¼Ë¡A¤§«eªºÅv­­±N¤£·|«O¯d¡C©Ò¥H©Ò¦³ªº rx ³£·|³Q³]¸m¡A¦Ó©Ò¦³ªº w ³£·|³Q¨ú®ø¡C²{¦b¡A¥ô¦ó¤H¤]¤£¯à¼g¤J³o­ÓÀɮתº¤F¡C

chmod a-x myfile
a ¬O ugo¡A©Î ``all'' ªºÂ²¼g¡C¦]¦¹¡A©Ò¦³ªº x Åv­­³£·|³Q¹Ü¥h¡C

rm myfile
¥Î³o­Ó«ü¥O¨Ó§R°£ÀɮסA¦ý¦]¬°±z¨S¦³¼g¤JªºÅv­­¡A©Ò¥H rm ·|¸ß°Ý¥H¤Uªº°ÝÃD¨Ó½T©w±z¬O§_¯uªº­n³o¼Ë°µ¡G

rm: remove `myfile', overriding mode 0444?
±zÀ³¦^µª y¡A¦A«ö Enter¡C³o­Ó¬O rm ªº¯SÂI¡A¨Ã¤£Ãö¥GÅv­­ªº°ÝÃD¡C¯à§_§R°£Àɮרú¨M©ó¥¦©Ò¦bªº¥Ø¿ýªºÅv­­¡C±z¾Ö¦³¼g¤J¥Ø¿ýªºÅv­­¡A¦ý rm µoı±z¤£·Q§ï¨º­ÓÀɮס]¦]¬°±z¤w²¾¥h¤F¼g¤JÅv­­¡^¡A©Ò¥H¥¦»{¬°±z¤]¤£§Æ±æ§âÀÉ®×§R°£¡A¦]¦¹¥¦´N¶¶«K¸ß°Ý±z¥H½T©w¡C

¦ý¦b°ÝÃDùØ¥X²{ªº¨º­Ó 0444 ¨s³º¬O¤°»ò©O¡H¨ä¹êÅv­­¬O¥Ñ¤@­Ó 12 ­Ó¦ìªº¤G¶i¨î¼Æ¦r©Ò²Õ¦¨¡A¦p 000100100100¡C044 ´N¬O³o­Ó¤G¶i¨î¼Æ¦rªº¤K¶i¨î¼gªk¡A¤K¶i¨î¬O¶ñ¼gª¬ºAªººD¥Î¼gªk¡C©Ò¥H°£¤F¿é¤J chmod ugo=r myfile ¤§¥~¡A±zÁÙ¥i¥HÁä¤J chmod 444 myfile¡C


John Goerzen / Ossama Othman / Debian ¤¤¤å­p¹º