Linuxdoc Sgml/Tips-HOWTO
<!doctype linuxdoc system>
<article>
<title>The Linux Tips HOWTO
<author>Paul Anderson, <url url="mailto:paul@geeky1.ebtech.net" name="paul@geeky1.ebtech.net">
<date> v2.4, 12 October 1996
<abstract>
ÀÌ ÇÏ¿ìÅõ ¹®¼´Â »ç¶÷µéÀÌ Àß ¸ð¸£´Â ÈùÆ®¿Í ¸®´ª½º¸¦ Á» ´õ Æí¸®ÇÏ°Ô ¸¸µå´Â Á¶Á¤¹ýÀ» ¼³¸íÇϰí ÀÖ´Ù.
(¹ø¿ªÅõÀÇ ¹®ÀåÀ» Çѱ¹¾î½Ä Ç¥ÇöÀ¸·Î °íÄ¡´Â ÀÛ¾÷ÀÌ ÇÊ¿äÇÒ°Í °°½À´Ï´Ù.)
</abstract>
<toc>
<sect>¼Ò °³
<p>
¸®´ª½º¸¦ Á»´õ Àç¹Õ°Ô ¸¸µé¾îÁÖ´Â ÁÁÀº Æ®¸¯°ú ÃÖÀûÈ ¹æ¹ýÀÇ ¸®½ºÆ®ÀÎ
¸®´ª½º ÆÁ ÇÏ¿ìÅõ ¹®¼¿¡ ¿Â °ÍÀ» ȯ¿µÇÑ´Ù. ³»°¡ ¿©±â¿¡ ±â·ÏÇØ
³õÀº °ÍÀº ¸ðµÎ ³» ¸Ó¸®¼Ó¿¡¼ ³ª¿Â ÆÁµé°ú ¿¹ÀüÀÇ ÆÁ-ÇÏ¿ìÅõ
¹®¼¿¡ ÀÖ´ø °ÍµéÀÌ´Ù. ¿©·¯ºÐÀÌ ÁÁ¾ÆÇÏ´Â ÈùÆ®³ª ÆÁÀÌ ÀÖ´Ù¸é
´ÙÀ½ ¹öÀüÀÇ ÆÁ-ÇÏ¿ìÅõ¿¡ ³ÖÀ»¼ö ÀÖµµ·Ï ³ª¿¡°Ô º¸³»ÁÖ±æ ¹Ù¶õ´Ù.
Paul Anderson Maintainer--Linux TIPS HOWTO
<url url="mailto:panderso@ebtech.net" name="panderso@ebtech.net">
</p>
<sect> °£´ÜÇÑ ÆÁµé
<sect1> °£´ÜÇÑ Syslog Æ®¸¯ (Paul Anderson, Tips-HOWTO maintainer)
<p>
/etc/syslog.conf¸¦ ¼öÁ¤ÇÏ¿© ´ÙÀ½ ¶óÀÎÀ» Ãß°¡ÇÕ´Ï´Ù:
<verb>
# ¸ðµç °ÍÀ» tty8¿¡ ¾²±â
*.* /dev/tty8
</verb>
°æ°í : syslog.conf ÆÄÀÏ¿¡¼´Â ½ºÆäÀ̽º ´ë½Å ÅÇÀ» »ç¿ëÇϽʽÿÀ.
</p>
<sect1> Core ÆÄÀϵéÀ» Áö¿ì±â À§ÇÑ °£´ÜÇÑ ½ºÅ©¸³Æ®
<p>
<url url="mailto:ohammers@cu-online.com" name="ohammers@cu-online.com">
Core ÆÄÀÏÀ» Áö¿ì±â À§ÇÑ °£´ÜÇÑ ½ºÅ©¸³Æ®
´ÙÀ½°ú °°ÀÌ rmcores¶õ À̸§ÀÇ ÆÄÀÏÀ» ¸¸µå½Ê½Ã¿À. (À̸§Àº »ó°ü ¾øÁö¸¸ ¿©±â¼´Â handle-cores¶ó°í ÇßÀ½):
<code>
#!/bin/sh
USAGE="$0 <directory> <message-file>"
if [ $# != 2 ] ; then
echo $USAGE
exit
fi
echo Deleting...
find $1 -name core -atime 7 -print -exec rm {} \;
echo e-mailing
for name in `find $1 -name core -exec ls -l {} \; | cut
-c16-24`
do
echo $name
cat $2 | mail $name
done
</code>
cron¿¡ µî·Ï½ÃÄѼ ÁÖ±âÀûÀ¸·Î ½ÇÇà½ÃŰ½Ê½Ã¿À.
</p>
<sect1> ÆÄÀÏ ½Ã½ºÅÛ°£ µð·ºÅ丮 ¿Å±â±â
<p>
Alan Cox,<url url="mailto:A.Cox@swansea.ac.uk" name="A.Cox@swansea.ac.uk">
ÇÑ µð½ºÅ©·ÎºÎÅÍ ´Ù¸¥ µð½ºÅ©·Î ÆÄÀÏ Æ®¸® Àüü¸¦ ºü¸£°Ô ¿Å±â´Â ¹æ¹ý
<verb>
(cd /source/directory && tar cf - . ) | (cd /dest/directory
&& tar xvfp -)
</verb>
¹®Á¦°¡ ÀÖÀ» °æ¿ì µð·ºÅ丮°¡ ±úÁö´Â °ÍÀ» ¸·±â À§Çؼ cd /source/directory; tar...etc ¿´´ø °ÍÀ» ¼öÁ¤Çß½À´Ï´Ù. (By Jim Dennis <url url="mailto:jadestar@rahul.net" name="jadestar@rahul.net">)
</p>
<sect1> ¾î¶² µð·ºÅ丮°¡ °¡Àå Å«Áö ¾Ë¾Æ³»±â.
<p>
<url url="mailto:mghazey@miso.lowdown.com" name="mghazey@miso.lowdown.com">
¿©·¯ºÐÀÇ ÄÄÇ»ÅÍ¿¡¼ °¡Àå Å« µð·ºÅ丮°¡ ±Ã±àÇϽʴϱî? ¿©±â¿¡ ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù.
<verb>
du -S | sort -n
</verb>
</p>
<sect1> The Linux Gazette
<p>
Linux GazetteÀÇ Ã¢½ÃÀÚÀÎ John Fisk¿¡°Ô °¨»çÀÇ ¸»À» ÀüÇÕ´Ï´Ù. À̰ÍÀº ²Ï ³î¶ó¿î ¿Â¶óÀÎ ÀâÁöÀÌ¸ç ¹«·áÀÔ´Ï´Ù! À̰÷¿¡¼ È®ÀÎÇϽñ⠹ٶø´Ï´Ù.
<url url="http://linuxgazette.net/" name="http://linuxgazette.net/">
ÀÌ »çÀÌÆ®¿¡¼ John Fisk¿¡°Ô ¿Â¶óÀÎ ÀâÁö Linux Gazette¿¡ °üÇÑ ¸Þ¸ð¸¦ ³²°Ü ÁֽʽÿÀ.
</p>
<sect1>Pointer to patch for GNU Make 3.70 to change VPATH behavor.
<p>
Ted Stern,<url url="mailto:stern@amath.washington.edu" name="stern@amath.washington.edu"> Pointer to patch for
GNU Make 3.70 to change VPATH behavor.
¸¹Àº »ç¶÷µéÀÌ ÀÌ·¯ÇÑ ¹®Á¦Á¡À» Áö´Ï°í ÀÖ´ÂÁö´Â ¾Ë¼ö¾øÁö¸¸, ³»°¡ ÁÁ
¾ÆÇÏÁö ¾Ê´Â 3.70 ¹öÀüÀÇ GNU makeÀÇ Æ¯Â¡ÀÌ ÀÖ´Ù. ±×°ÍÀº Àý´ë °æ
·Î¸¦ ÁÙ °æ¿ì VPATH°¡ Àç¹ÌÀÖ´Â ÇൿÀ» ÇÑ´Ù´Â °ÍÀÌ´Ù. À̰ÍÀ» ¼öÁ¤
ÇÏ´Â Àý´ëÀûÀ¸·Î ¹ÏÀ»¸¸ÇÑ ÆÐÄ¡°¡ Àִµ¥, Paul
Smith<<url url="mailto:psmith@wellfleet.com" name="psmith@wellfleet.com">>À¸·ÎºÎÅÍ ±×°ÍÀ» ±¸ÇÒ ¼ö ÀÖ´Ù. ¶Ç ±×´Â
¾ÕÀ¸·ÎÀÇ ¸ðµç »õ·Î¿î ¹öÀüÀÇ makeÀÇ ¹®¼¿Í ÆÐÄ¡¸¦ ´º½º±×·ì
|gnu.utils.bug|¿¡ ¿Ã·Á³õÀ» °ÍÀÌ´Ù.
ÀϹÝÀûÀ¸·Î, ³ª´Â ³»°¡ ¾ï¼¼½ºÇÏ´Â ¸ðµç ½Ã½ºÅÛ¿¡ ÀÌ ÆÐÄ¡¸¦ Àû¿ëÇϰí
gmake¸¦ ´Ù½Ã ÄÄÆÄÀÏÇÑ´Ù.
</p>
<sect1>
ºÎÆÃÇÒ ¶§¸¶´Ù fsck ÇÏ´Â °Í ¸·±â
<p>
Dale Lutz, <url url="mailto:dal@wimsey.com" name="dal@wimsey.com">
Q: ¸Å¹ø ºÎÆÃÇÒ¶§¸¶´Ù e2fsck°¡ µð½ºÅ© °Ë»çÇÏ´Â °ÍÀ» ¸·À» ¼ö ÀÖ½À´Ï±î?
A: Ä¿³ÎÀ» ´Ù½Ã ºÒ·¯¿Ã ¶§, ÆÄÀϽýºÅÛÀº 'dirty'·Î ±â·ÏµË´Ï´Ù. ±×·¡¼ ºÎÆÃ ¶§¸¶´Ù µð½ºÅ© °Ë»ç¸¦ ÇÏ´Â °ÍÀ̸ç, À̰ÍÀ» ¹æÁöÇÏ·Á¸é ´ÙÀ½°ú °°ÀÌ ÇϽʽÿÀ:
<verb>
rdev -R /zImage 1
</verb>
À̰ÍÀº ÆÄÀϽýºÅÛÀÌ 'dirty'·Î ±â·ÏµÇÁö ¾Êµµ·Ï Ä¿³ÎÀ» ¼öÁ¤ÇÕ´Ï´Ù.
¸Þ¸ð : lilo¸¦ »ç¿ëÇÑ´Ù¸é lilo config file ³»ÀÇ ¸®´ª½º ¼³Á¤¿¡ read-only¸¦ Ãß°¡ÇÕ´Ï´Ù. (ÈçÈ÷ /etc/lilo.conf)
</p>
<sect1>ºÎÆ®½Ã¿¡ "device busy"¿¡ ÀÇÇØ ¾ß±âµÇ´Â fscks ÇÇÇϱâ.
<p>
Jon Tombs, <url url="mailto:jon@gtex02.us.es" name="jon@gtex02.us.es">
¸®ºÎÆÃÇÒ ¶§ filesystemÀÌ fscks¸¦ ÇÊ¿ä·Î ÇÏ°Ô ¸¸µå´Â ¼Ë´Ù¿î½ÃÀÇ
device busy ¿¡·¯¸¦ Á¾Á¾ ¸¸³´Ù¸é, ¿©±â °£´ÜÇÑ ÇØ°áÃ¥ÀÌ ÀÖ´Ù:
/etc/rc.d/init.d/halt ȤÀº /etc/rc.d/rc.0¿¡ ´ÙÀ½ÀÇ ¶óÀÎÀ» Ãß°¡ÇÑ´Ù.
mount -o remount,ro /mount.dir
·çÆ® '/'¸¦ Á¦¿ÜÇÑ ¸ðµç ¸¶¿îÆ® µÈ filesystem¿¡ ÀÖ¾î¼ umount -a¸¦
È£ÃâÇϱâ Àü¿¡ ÀÌ·¯ÇÑ Ã³¸®¸¦ ÇØÁØ´Ù. À̰ÍÀº ¸î°¡Áö ÀÌÀ¯¿¡ ÀÖ¾î¼
shutdownÀÌ ¸ðµç ÇÁ·Î¼¼½º¸¦ Á×ÀÌ°í µð½ºÅ©¸¦ umount Çϴµ¥ ½ÇÆÐÇÏ
´õ¶óµµ rebootÇÒ ¶§ ¿©ÀüÈ÷ 'clean'ÇÒ °ÍÀ» ÀǹÌÇÑ´Ù. ³ªÀÇ °æ¿ì¿¡´Â
rebootÇÒ ¶§ »ó´çÇÑ ½Ã°£À» Àý¾àÇØÁØ´Ù.
</p>
<sect1>Çϵåµð½ºÅ© »ó¿¡¼ °¡Àå Å« ÆÄÀÏ ¾Ë¾Æ³»±â
<p>
Simon Amor, <url url="mailto:simon@foobar.co.uk" name="simon@foobar.co.uk">
<verb>
ls -l | sort +4n
</verb>
¶Ç´Â Çϵåµð½ºÅ©°¡ °ø°£»óÀÇ ¹®Á¦°¡ ÀÖ´Ù¸é À̰ÍÀº ½Ã°£Àº °É¸®Áö¸¸
Àß ÈǸ¢È÷ µ¿ÀÛÇÒ °ÍÀÌ´Ù.
<verb>
cd /
ls -lR | sort +4n
</verb>
</p>
<sect1>How to print pages with a margin for hole punching.
<p>
Mike Dickey,
<url url="mailto:mdickey@thorplus.lib.perdue.edu" name="mdickey@thorplus.lib.perdue.edu">
<code>
#!/bin/sh
# /usr/local/bin/print
# a simple formatted printout, to enable someone to
# 3-hole punch the output and put it in a binder
cat $1 | pr -t -o 5 -w 85 | lpr
</code>
</p>
<sect1>ÆÄÀÏ Æ®¸® Àüü¿¡ °ÉÃÄ Æ¯Á¤ Á¤±ÔÇ¥Çö½Ä °Ë»öÇϱâ.
<p>
Raul Deluth Miller, <url url="mailto:rockwell@nova.umd.edu" name="rockwell@nova.umd.edu"> ÆÄÀÏ Æ®¸® Àüü¿¡ °ÉÃÄ Æ¯Á¤ Á¤±ÔÇ¥Çö½Ä °Ë»öÇϱâ
³» 'forall' ½ºÅ©¸³Æ®ÀÌ´Ù. ÀÌ·¸°Ô »ç¿ëÇØ¶ó:
<verb>
forall /usr/include grep -i ioctl
forall /usr/man grep ioctl
</verb>
forallÀº ´ÙÀ½°ú °°´Ù:
<code>
#!/bin/sh
if [ 1 = `expr 2 \> $#` ]
then
echo Usage: $0 dir cmd [optargs]
exit 1
fi
dir=$1
shift
find $dir -type f -print | xargs "$@"
</code>
</p>
<sect1>ÀÚµ¿ ¼¼À̺곪 ¹é¾÷ ÆÄÀÏÀ» ¸¸µå´Â ÇÁ·Î±×·¥À» »ç¿ëÇÑ µÚÀÇ Ã»¼Ò¸¦ À§ÇÑ ½ºÅ©¸³Æ®.
<p>
Barry Tolnas, <url url="mailto:tolnas@nestor.engr.utk.edu" name="tolnas@nestor.engr.utk.edu"> ÀÚµ¿ ¼¼À̺곪 ¹é¾÷ fileÀ» ¸¸µå´Â ÇÁ·Î±×·¥.
¿©±â µð·ºÅ丮 °èÃþ±¸Á¶¸¦ Ÿ°í ³»·Á°¡¸é¼ emacsÀÇ ÀÚµ¿-¼¼À̺ê(#)¿Í
¹é¾÷(~) file°ú .o file ±×¸®°í TEX.log ÆÄÀϵéÀ» »èÁ¦ÇÏ´Â °£´ÜÇÑ
µÎÁÙÂ¥¸®°¡ ÀÖ´Ù. À̰ÍÀº ¶ÇÇÑ .tex¿Í README fileÀ» ¾ÐÃàÇÏ´Â ±â´Éµµ
ÇÑ´Ù. ³ª´Â À̰ÍÀ» 'sqeeze'¶ó À̸§Áö¾ú´Ù.
<code>
#!/bin/sh
#SQUEEZE removes unnecessary files and compresses .tex
and README files
#By Barry tolnas, tolnas@sun1.engr.utk.edu
#
echo squeezing $PWD
find $PWD \( -name \*~ -or -name \*.o -or -name \*.log
-or -name \*\#\) -exec
rm -f {} \;
find $PWD \( -name \*.tex -or -name \*README\* -or
-name \*readme\* \) -exec gzip -9 {} \;
</code>
</p>
<sect1>¾î¶² ÇÁ·Î¼¼½º°¡ ¸Þ¸ð¸®¸¦ °¡Àå ¸¹ÀÌ Àâ¾Æ¸Ô°í ÀÖ´ÂÁö ¾Ë¾Æ³»±â
<p>
<url url="mailto:simon@foobar.co.uk" name="simon@foobar.co.uk"> ¾î¶² ÇÁ·Î¼¼½º°¡ ¸Þ¸ð¸®¸¦ °¡Àå ¸¹ÀÌ Àâ¾Æ¸Ô°í ÀÖ´ÂÁö ¾Ë¾Æ³»±â
<verb>
ps -aux | sort +4n
-OR-
ps -aux | sort +5n
</verb>
</p>
<sect> ¼¼ºÎÀûÀÎ tip
<sect1>Linux¿Í windows¿¡¼ swap ÆÄƼ¼Ç °øÀ¯Çϱâ.
<p>
Tony acero,
<url url="mailto:ace3@midway.uchicagi.edu" name="ace3@midway.uchicagi.edu">
<enum>
<item>ÇØ´ç ÆÄƼ¼ÇÀ» µµ½º ÆÄƼ¼ÇÀ¸·Î Æ÷¸ËÇϰí, °Å±â¿¡ À©µµ¿ì swap file
À» »ý¼ºÇÑ µÚ ¾ÆÁ÷ À©µµ¿ì¸¦ ½ÇÇàÇÏÁö´Â ¸»¾Æ¶ó. ( ¿©·¯ºÐÀº ¿ì¼±Àº
swap fileÀÌ ¿ÏÀüÈ÷ ºñ¾îÀÖ´Â »óÅ·Πº¸Á¸µÇ±â¸¦ ¹Ù¶ö °ÍÀ̰í, ±×·¯¹Ç
·Î ±×°ÍÀº Àß ¾ÐÃàµÈ´Ù.)
<item>Linux·Î ºÎÆÃÇѵڿ¡ ±× ÆÄƼ¼ÇÀ» file·Î ÀúÀåÇÑ´Ù. ¿¹¸¦µé¾î ÆÄƼ¼Ç
ÀÌ /dev/hda8À̾ú´Ù¸é
<verb>
dd if=/dev/hda8 of=/etc/dosswap
</verb>
<item>±× µµ½º swap fileÀ» ¾ÐÃàÇÑ´Ù. ±×°ÍÀº °¡»óÀûÀ¸·Î ¸ðµÎ 0À̱⠶§¹®
¿¡ ¸Å¿ì Àß ¾ÐÃàµÉ °ÍÀÌ´Ù.
<verb>
gzip -9 /etc/dosswap
</verb>
<item>Linux¿¡ swap °ø°£À» ÁغñÇÏ°í ¼³Ä¡ÇϱâÀ§ÇØ /etc/rc file¿¡ ´ÙÀ½ÀÇ
¶óÀÎÀ» Ãß°¡ÇÑ´Ù.
<verb>
xxxxx´Â swap ÆÄƼ¼ÇÀÇ block °³¼öÀÌ´Ù.
mkswap /dev/hda8 XXXXX
swapon -av
</verb>
/etc/fstab file¿¡ swap ÆÄƼ¼ÇÀ» À§ÇÑ ¿£Æ®¸®¸¦ Ãß°¡ÇßÀ½À» È®ÀÎÇ϶ó.
<item> init/reboot ÆÐŰÁö°¡ /etc/brc ȤÀº /sbin/brc¸¦ Áö¿øÇÑ´Ù¸é ´ÙÀ½À»
/etc/brc¿¡ Ãß°¡Çϰí, ±×·¸Áö ¾ÊÀº °æ¿ì dos | os/2·Î ºÎÆÃÇÏ°í ½ÍÀ» ¶§
±×¸®°í swap ÆÄƼ¼ÇÀ» dos/windows ¹öÀüÀ¸·Î ¹Ù²Ù°í ½ÍÀ» ¶§ À̰ÍÀ»
¼ÕÀ¸·Î ÇØÁÖ¾î¶ó.
<verb>
swapoff -av
zcat /etc/dosswap.gz | dd of=/dev/hda8 bs=1k count=100
</verb>
# À̰ÍÀº ¿ÀÁ÷ óÀ½ÀÇ 100 ºí·Ï ¸¸À» ÆÄƼ¼Ç¿¡ ±â·ÏÇÔÀ» ¾Ë¾ÆµÎ¾î¶ó.
³ª´Â °æÇèÀûÀ¸·Î 100 À̸é ÃæºÐÇÔÀ» ¾Ë¾Æ³»¾ú´Ù.
>> À̰ÍÀÇ ÀåÁ¡°ú ´ÜÁ¡Àº ¹«¾ùÀΰ¡.
ÀåÁ¡ : »ó´çÇÑ ¾çÀÇ µð½ºÅ© ½ºÆäÀ̽º¸¦ Àý¾àÇÒ ¼ö ÀÖ´Ù.
´ÜÁ¡ : step 5°¡ ÀÚµ¿ÀûÀ¸·Î ÀÌ·ç¾îÁöÁö ¾ÊÀ» °æ¿ì, ¿©·¯ºÐÀº ±×°ÍÀ» Á÷Á¢ ÇØÁÖ¾î¾ß ÇÔÀ» ±â
¾ïÇØ¾ß Çϸç, reboot ÇÁ·Î¼¼½º°¡ Á¶±Ý ´À·ÁÁø´Ù.
</enum>
</p>
<sect1>º¯°æµÇÁö ¾Ê´Â flag »ç¿ëÇϱâ.
<p>
Jim Dennis, <url url="mailto:jadestar@rahul.net" name="jadestar@rahul.net">
º¯°æµÇÁö ¾Ê´Â flag »ç¿ëÇϱâ
¿©·¯ºÐÀÇ ½Ã½ºÅÛÀ» ¼³Ä¡Çϰí ȯ°æÀ» ¼³Á¤ÇÑ ¹Ù·Î µÚ¿¡ /bin, /sbin,
/usr/bin, and /usr/lib ±×¸®°í ´Ù¸¥ usual suspects·Î °£ µÚ 'chattr +i
command'¸¦ ÀÚÀ¯·ÎÀÌ »ç¿ëÇ϶ó. ¶ÇÇÑ ±×°ÍÀ» rootÀÇ Ä¿³Î file¿¡ Ãß°¡
ÇØ¶ó. ÀÌÁ¦ 'mkdir /etc/.dist/'¸¦ Çϰí /etc ÀÇ ¸ðµç °ÍÀ» ±× µð·ºÅ丮
·Î º¹»çÇØ¶ó. (³ª´Â recursionÀ» ÇÇÇϱâÀ§ÇØ À̰ÍÀ» /tmp/etcdist.tar¸¦
»ç¿ëÇÏ´Â µÎ stepÀ» »ç¿ëÇÑ´Ù.) (¿É¼ÇÀ¸·Î ´ç½ÅÀº /etc/.dist.tar.gzÀ» ¸¸
µé¼öµµ ÀÖ´Ù)-- ±×¸®°í ±×°ÍÀ» º¯°æµÇÁö ¾Êµµ·Ï ¸¸µç´Ù. ÀÌ·±ÀÏÀ» ÇÏ
´Â ÀÌÀ¯´Â root·Î ·Î±×ÀÎ ÇßÀ» ¶§ ´çÇÒ¼ö ÀÖ´Â ÇÇÇØ¸¦ ÁÙÀ̱â À§Çؼ
ÀÌ´Ù. ´ç½ÅÀº stray redirection ¿ÀÆÛ·¹À̼ÇÀ¸·Î ¿À¹ö¶óÀÌÆ®¸¦ ÇÏÁö ¾Ê
À» °ÍÀ̸ç, 'rm -rf' ¸í·ÉÀ» »ç¿ëÇÒ ¶§ ½Ã½ºÅÛÀ» »ç¿ëºÒ°¡´ÉÇÏ°Ô ÇÏ´Â
ÀÏÀÌ ¾øÀ» °ÍÀÌ´Ù. (¿©·¯ºÐÀº ¿©ÀüÈ÷ ¸¹Àº ÇÇÇØ¸¦ ÀÔ°ÚÁö¸¸, libs¿Í
bins´Â Á»´õ ¾ÈÀüÇØÁú °ÍÀÌ´Ù)
À̰ÍÀº ´Ù¾çÇÑ º¸¾È°ú denial of service exploits¸¦ ºÒ°¡´ÉÇÏ°Ô È¤Àº
´õ¿í ¾î·Æ°Ô ¸¸µé °ÍÀÌ´Ù. ( ±×µéÀÇ ¸¹Àº ºÎºÐÀÌ µ¶ÀÚÀûÀÎ shellÀ» Á¦
°øÇÏÁö ¾Ê´Â SUID ÇÁ·Î±×·¥ÀÇ È°µ¿À» ÅëÇØ fileÀ» overwrite Çϴµ¥
ÀÇÁ¸Çϱ⠶§¹®ÀÌ´Ù)
À̰ÍÀÇ ¿ÀÁ÷ ÇѰ¡Áö ºÒÆíÇÑ Á¡Àº ´Ù¾çÇÑ Á¾·ùÀÇ ½Ã½ºÅÛ ¹ÙÀ̳ʸ®µéÀ»
'make install' ÇÒ ¶§ÀÌ´Ù. ¹Ý¸é¿¡ ±×°ÍÀº ¶ÇÇÑ 'make install'ÀÌ fileÀ»
overwriteÇÏÁö ¾Êµµ·Ï ÇØÁØ´Ù. ¿©·¯ºÐÀÌ MakefileÀ» Àд °ÍÀ» ±ô¹Ú ÀØ
°í ´Ù½Ã ±â·ÏµÉ fileµéÀ» chattr -i ÇÒ ¶§(±×¸®°í ´ç½ÅÀÌ fileÀ» Ç®¾î³õ
À» µð·ºÅ丮µµ), make´Â ½ÇÆÐÇϸç, chattr ¸í·ÉÀ» »ç¿ëÇÏ¿© ±×°ÍÀ» ´Ù
½Ã ½ÇÇàÇØ¾ß ÇÑ´Ù. ´ç½ÅÀº ÀÚ½ÅÀÇ ±âÁ¸ÀÇ bins, libs, ȤÀº ¹«¾ùÀÌ´ø°£
¿¡ .old/ µð·ºÅ丮·Î ¿Å±æ ±âȸ¸¦ ¾ò°ÔµÈ´Ù. ¶Ç´Â ±×°ÍµéÀ» ¸®³×ÀÓÇϰÅ
³ª tar·Î ¾ÐÃàµûÀ§¸¦ ÇÒ¼öµµ ÀÖ´Ù.
</p>
<sect1>»õ·Î¿î stuff¸¦ ¾îµð¿¡ ³ÖÀ»°ÍÀΰ¡¿¡ ´ëÇÑ Á¦¾È
<p>
Jim dennis, <url url="mailto:jadestar@rahul.net" name="jadestar@rahul.net"> »õ·Î¿î stuff¸¦ ¾îµð¿¡ ³ÖÀ»°ÍÀΰ¡¿¡ ´ëÇÑ Á¦¾È
¸ðµç »õ·Î¿î stuffµéÀº /usr/local ȤÀº /usr/local/'hostname'¿¡¼ ½ÃÀÛ
ÇÑ´Ù. ´ç½ÅÀÇ ¹èÆ÷º»ÀÌ /usr/localÀ» ºñ¿ö³õ´Â °ÍÁßÀÇ Çϳª¶ó¸é
/usr/local/src, /usr/local/bin µîÀ» ¸¸µé°í ±×°ÍÀ» »ç¿ëÇØ¶ó. ¸¸¾à ´ç½Å
ÀÇ ¹èÆ÷º»ÀÌ /usr/local Æ®¸®¿¡ ¹º°¡¸¦ Áý¾î³Ö´Â´Ù¸é, ´ç½ÅÀº 'mkdir
/usr/local/'hostname''À» ÇÏ°í ±×°Í¿¡ 'wheel' ±×·ì +w¸¦ ºÎ¿©ÇÏ°í ½Í
À»Áö ¸ð¸¥´Ù. (³ª´Â wheel ±×·ìÀÇ ¸ðµç ¸â¹öµéÀÌ ±× ¾Æ·¡¿¡¼ ¿ÀÁ÷ ±×
µé ÀÚ½ÅÀÇ file¸¸À» ´Ù·çµµ·Ï, ±×¸®°í »ý¼ºµÇ´Â ¸ðµç fileÀÌ 'wheel' ±×
·ì¿¡ ¼ÓÇϵµ·Ï SUID¿Í SGIDµµ ¸¸µé¾ú´Ù)
ÀÌÁ¦ »õ·Î¿î ÆÐŰÁöµéÀ»
/usr/local/src/.from/$WHEREVER_I_GOT_IT¿¡ Áý¾î³Öµµ·Ï Ç×»ó ÀÚ
½ÅÀ» ÈÆ·Ã½ÃÄѶó. ±×¸®°í ±×µéÀ» /usr/local/src¿¡¼(ȤÀº
.../$HOSTNAME¿¡¼) build ÇØ¶ó. ±×°ÍÀÌ ·ÎÄÃÀÇ heirarchy ¾Æ·¡¿¡ ¼³
Ä¡µÇ¾úÀ½À» È®ÀÎÇØ¶ó. ¸¸¾à ±×°ÍÀÌ Àý´ëÀûÀ¸·Î /bin ¶Ç´Â /sbin ¾Æ·¡¿¡
¼³Ä¡°¡ µÇ¾ß ÇÑ´Ù¸é, ¾îµò°¡¿¡ Á¸ÀçÇÒ ¶§ ·ÎÄÃÀÇ heirarchy·ÎºÎÅÍ °¢°¢
ÀÇ ¿¤¸®¸ÕÆ®·ÎÀÇ ½Éº¼¸¯ ¸µÅ©¸¦ ¸¸µé¾î¶ó.
ÀÌ·¸°Ô ÇÏ´Â ÀÌÀ¯´Â -- ±×°ÍÀÌ ¹ø°Å·Î¿î ÀÏÀÓ¿¡µµ ºÒ±¸Çϰí -- ¸¸ÀÏ
ÀÇ °æ¿ì¿¡ ¹é¾÷µÇ°í, ¸®½ºÅä¾îµÇ°í ¹èÆ÷º»À¸·ÎºÎÅÍ ¿ÏÀúÈ÷ ´Ù½Ã¼³Ä¡ÇÏ
´Â °Í µîÀ» ¸·´Âµ¥ µµ¿òÀ» Áֱ⠶§¹®ÀÌ´Ù. /usr/local/.from µð·ºÅ丮¸¦
»ç¿ëÇÔÀ¸·Î½á, ¼Ò½º°¡ ³ª¿Â°÷ÀÇ ºñ°ø½ÄÀû log¸¦ À¯ÁöÇÒ¼öµµ ÀÖ´Ù --ÀÌ
°ÍÀº »õ·Î¿î ¾÷µ¥ÀÌÆ® »çÇ×À» ãÀ» ¶§ µµ¿òÀ» ÁØ´Ù -- . ¶Ç security
announcement ¸®½ºÆ®¸¦ ¸ð´ÏÅ͸µ ÇÒ ¶§ Áß¿äÇÒ¼öµµ ÀÖ´Ù.
Áý¿¡ ÀÖ´Â ³ªÀÇ ½Ã½ºÅÛÁß Çϳª´Â ³» ÀÚ½ÅÀÌ ÀÌ·¯ÇÑ ¹æÃ¥À» Àû¿ë½Ã۱â
Àü¿¡ ±¸¼ºµÈ´Ù. ³ª´Â ¿©ÀüÈ÷ ±×°ÍÀÌ ¼³Ä¡µÈ ½Ã½ºÅÛÀ¸·Î¼ÀÇ stock°ú
´Ù¸¥Á¡ÀÌ ¹«¾ùÀÎÁö¸¦ ¸ð¸¥´Ù. À̰ÍÀº ³» ÁýÀÇ ½Ã½ºÅÛ¿¡ °ÅÀÇ ¼³Á¤À»
ÇÏÁö ¾Ê¾Ò´Ù´Â Á¡°ú, ³»°¡ ±×°ÍÀ» »ç¿ëÇÏ´Â À¯ÀÏÇÑ »ç¶÷À̶ó´Â »ç½ÇÀ»
¹«½ÃÇÑ °ÍÀÌ´Ù.
¹Ý´ë·Î ³»°¡ Á÷Àå¿¡¼ ¼³Á¤ ÇØ³õÀº ½Ã½ºÅÛ(³»°Ô ±×°÷ÀÇ ½Ã½ºÅÛ °ü¸®ÀÚ
·Î¼ÀÇ ÀÓ¹«°¡ ¸Ã°ÜÁ³À» °æ¿ì)Àº ¸ðµÎ ÀÌ·±½ÄÀ¸·Î ¼³Á¤µÇ¾î ÀÖ°í, ¸¹
Àº ûºÎÀΰú ´Ù¸¥ MIS »ç¶÷µé¿¡ ÀÇÇØ °ü¸®µÇ¾î ¿ÔÀ¸¸ç, ¼ö¸¹Àº ¾÷±×
·¹À̵å¿Í ÆÐŰÁö ¼³Ä¡°¡ ÀÌ·ç¾îÁ³´Ù. ±×·³¿¡µµ ³ª¿¡°Ô´Â ÃʱâÀÇ ¼³Ä¡
¿Í ¼³Á¤ÀÌ ³¡³µÚ¿¡ Áý¾î ³Ö°ÔµÉ Áß¿äÇÑ ¿¤¸®¸ÕÆ®µé¿¡ ´ëÇÑ ÁÁÀº ¾ÆÀÌ
µð¾î°¡ ÀÖ´Ù.
</p>
<sect1>½Ã½ºÅÛ°ü¸®ÀÚ¸¦ À§ÇÑ ¸î°¡Áö ÆÁ.
<p>
Jim Dennis, <url url="mailto:jadestar@rahul.net" name="jadestar@rahul.net"> ½Ã½ºÅÛ°ü¸®ÀÚ¸¦ À§ÇÑ ¸î°¡Áö ÆÁ.
/README.'hostname'°ú /etc/README.'hostname'À» ¸¸µé°í °ü¸®ÇØ
¶ó. ȤÀº /usr/local/etc/README.'hostname'µµ °¡´ÉÇÏ´Ù.
Àý´ëÀûÀ¸·Î, ½Ã½ºÅÛ °ü¸®¸¦ ½ÃÀÛÇÑ Ã¹³¯·ÎºÎÅÍ ¿Â¶óÀÎ ·Î±× file³»¿¡
±â·ÏÀ» ÇØ¶ó. rootÀÇ /bash_logout¿¡ | vi /README.$(hostname) | °ú
°°Àº ¶óÀÎÀ» Àû¾îµµ ÁÁ´Ù. À̰ÍÀ» ÇÏ´Â ¶Ç ´Ù¸¥ ¹æ¹ýÀº su³ª sudo¿¡
´ÙÀ½°ú °°Àº ÀÏÀ» ÇÏ´Â ½ºÅ©¸³Æ®¸¦ ±â·ÏÇÏ´Â °ÍÀÌ´Ù.
<verb>
function exit \
{ unset exit; exit; \
cat ~/tmp/session.$(date +%y%m%d) \
>> /README.$(hostname) && \
vi /README.$(hostname)
}
script -a ~/tmp/session.$(date +%y%m%d)
/bin/su.org -
</verb>
(session log¸¦ ¸¸µé±â À§ÇØ typescript¸¦ »ç¿ëÇϰí, ÀÚµ¿À¸·Î log¸¦
appending°ú updatingÀ» ÇÒ ÇÔ¼ö¸¦ ¸¸µç´Ù).
³ª´Â ³»°¡ ÀÌ ¹æ½ÄÀÇ ÀÚµ¿È µµ±¸¸¦ ¸¸µéÁö ¾Ê¾ÒÀ½À» ÀÎÁ¤ÇÒ °ÍÀÌ´Ù
-- ³ª´Â ´ÜÁö ¿©Áö²¯ ½º½º·ÎÀÇ ÈÆ·Ã¿¡ ÀÇÁ¸ÇØ ¿ÔÀ» »ÓÀÌ´Ù. ±×·¯³ª ³ª
´Â Àå³»ï¾Æ ±×·± ¾ÆÀ̵ð¾î¸¦ »ý°¢ÇØ ¿Ô¾ú´Ù. (½ÉÁö¾î´Â ÀÌ¹Ì º» ½º
Å©¸³Æ®ÀÇ ÇÁ·ÎÅäŸÀÔÀ̳ª shell ±â´ÉÀÇ ¹®Á¦¿¡¼ Á¶Â÷µµ.) À̰ÍÀ¸·Î ³ª
¸¦ ´Ù½Ã ºÙµå´Â °ÍÀº 'script' ¸í·É ±× ÀÚüÀÌ´Ù. ³ª´Â À̰ÍÀ» »ç¿ëÇϱâ
Àü¿¡ ¼Ò½º¸¦ ÀÔ¼öÇÏ°í ¸î°¡Áö Ä¿¸Çµå ¶óÀÎ ÆÄ¶ó¸ÞÅ͸¦ Ãß°¡Çؾ߰ڴٰí
»ý°¢ÇÑ´Ù(Ä¿¸Çµå ¶óÀÎÀ¸·ÎºÎÅÍ ½ºÅ©¸³Æ®¸¦ Àá½ÃÁß´ÜÇϰųª Á¤Áö½Ã۱â
À§Çؼ).
³»°¡ ¸¶Áö¸·À¸·Î Á¦¾È ÇÏ´Â °ÍÀº : rootÀÇ 'PATH=/bin'À¸·Î ±¸¼ºµÇ¾ß
ÇÑ´Ù´Â Á¡ÀÌ´Ù. ¹Ù·Î ±×·¸´Ù. ´Ù¸¥ ¹«¾ùµµ rootÀÇ path¿¡ À̾ ¾È
µÈ´Ù. root°¡ ÇÏ´Â ¸ðµçÀÏÀº /binÀ¸·ÎºÎÅÍ È¤Àº alias³ª shell ÇÔ¼ö¿¡ ÀÇ
ÇØ¼ ½Éº¼¸¯ ¸µÅ©¸¦ ¹Þ´ø°¡ ¶Ç´Â ȤÀº /bin µð·ºÅ丮³»ÀÇ script³ª
binaryÀÌ´ø°¡ ¶Ç´Â ¶Ñ·ÇÇÑ ÆÐ½º·Î ŸÀԵǴ °ÍÀÌ´Ù. À̰ÍÀº ´©±º°¡°¡
binary¸¦ ¾ó¸¶³ª ½ÅÀÓÇÏ´ÂÁö¸¦ ÀνÄÇϰí root·Î¼ ½ÇÇàÇϵµ·Ï ¸¸µé¾î
ÁØ´Ù. ¸ÖƼ À¯Àú È£½ºÆ®ÀÇ Çö¸íÇÑ °ü¸®Àڴ ƯÁ¤ ÆÐÅÏÀ̳ª loopholeÀ»
ã¾Æ³»±â À§ÇØ ÀÚ½ÅÀÇ /bin°ú /*history¸¦ Á¤±âÀûÀ¸·Î »ìÆìº¼ °ÍÀÌ´Ù.
½ÇÁ¦·Î µ¿±â°¡ ºÎ¿©µÈ ¾îµå¹ÎÀº ÀÚµ¿È µÉ ¼öÀÖ´Â sequence¸¦ ¾Ë¾ÆÃ¤
°í, ¿ÂÀüÇÑ Ã¼Å©°¡ »ðÀ﵃ ¼ö Àִ°÷¿¡ À§Ä¡½Ã۸ç, rootÀÇ Æ¯±ÇÀ» ÀÏ
½ÃÀûÀ¸·Î »ï°¡±â À§ÇÑ ÀÛ¾÷µéÀ» ÇÑ´Ù(¿¡µðÅ͸¦ ¼³Ä¡Çϰí, Á¤±³ÇÑ ½ºÅ©
¸³Æ® ±¸Á¶¸¦ °¡Áø MTAÀÇ ¶Ç´Â ´Ù¸¥°÷ÀÇ Ä¿´Ù¶õ ÀÎÅÍ¾×Æ¼ºê ÇÁ·Î±×
·¥À» ¼³Ä¡ÇÑ´Ù. (±×µéÀ» ºÒ¸í¿¹½º·¯¿î vi ./.exrc ±×¸®°í emacs
./.emacs ±×¸®°í ±³È°ÇÑ $EXINIT ±×¸®°í ÀÓº£µùµÈ header/footer ¸ÅÅ©
·Îó·³ transparent³ª data file³»¿¡ ÀÓº£µùµÉ ¼öµµ ÀÖ´Ù. ´ç¿¬È÷ ´ÙÀ½
°ú °°Àº Á¾·ùÀÇ Ä¿¸Çµå°¡ ½ÇÇàµÉ ¼ö ÀÖ´Ù:
<verb>
cp $data $some_users_home/tmp
su -c $origcommand $whatever_switches
cp $some_users_home/tmp $data
</verb>
´ë°³ ¸¶Áö¸·ÀÇ ¿¹¹æÁ¶Ä¡´Â Ȩ ¶Ç´Â ½Ì±Û À¯Àú ¿öÅ©½ºÅ×ÀÌ¼Ç »ç¿ëÀÚ¿¡°Ô ÇØ´çÇÏ´Â °ÍÀÌ´Ù
-- ±×·¯³ª ±×°ÍÀº ¸ÖƼÀ¯Àú ½Ã½ºÅÛ, ƯÈ÷ ´ëÁß¿¡°Ô ³ëÃâµÇ¾î ÀÖ´Â ½Ã½ºÅÛÀÇ °ü¸®ÀÚ¿¡°Ô
µµ À¯¿ëÇÑ °ÍÀÌ´Ù.
</p>
<sect1>xdmÀÇ host ¼±ÅÃÀÚ¸¦ ¾î¶»°Ô ¼³Á¤ÇÒ°ÍÀΰ¡.
<p>
Arrigo Triiulzi,
<url url="mailto:a.triulzi@ic.ac.uk" name="a.triulzi@ic.ac.uk">
<enum>
<item>´ë°³ etc/rc/rc.6 ȤÀº /etc/rc.local¿¡ xdmÀ» ¼³Ä¡ÇÏ´Â fileÀ» xdm startup ¶óÀÎÀ» Æ÷ÇÔÇÏ
µµ·Ï ´ÙÀ½°ú °°Àº ¶óÀÎÀ» Ãß°¡Ç϶ó.
<verb>
/usr/bin/X11/xdm
exec /usr/bin/X11/X -indirect hostname
</verb>
<item>/usr/lib/X11/xdm/Xserver¸¦ ¼öÁ¤ÇÏ¿© ¿¹¸¦µé¾î starting 0¿Í °°ÀÌ ·ÎÄà ¸Ó½Å»ó¿¡¼ ¼¹ö
¸¦ ½ÃÀÛÇϰÔÇÏ´Â ´ÙÀ½°ú °°Àº ¶óÀÎÀ» ¾ð±ÞÇ϶ó.
<item>¸Ó½ÅÀ» ÀçºÎÆÃÇ϶ó. ±×·¯¸é you are home and away.(¹«½¼¶æÀÎÁö..^^;)
³»°¡ ±×°ÍÀ» ³ªÀÇ ¼ºê³Ý¿¡ ¸Â°Ô ¼³Á¤Çϱâ À§ÇØ ÇÊ»çÀûÀ¸·Î ³ë·ÂÇÏ´ø
¶§, ¸ðµç ¹®Á¦¸¦ Á¶»çÇϱâ À§Çؼ °ÅÀÇ ÀÏÁÖÀÏÀ̳ª °É·È±â ¶§¹®¿¡ ³ª
´Â À̰ÍÀ» Ãß°¡ÇÏ¿´´Ù.
</enum>
</p>
<p>
°æ°í : ¿¹ÀüÀÇ SLS(1.1.1)À» °¡Áö°í¼ ¸î°¡Áö ÀÌÀ¯ ¶§¹®¿¡ xdm ¶óÀÎ µÚ¿¡ -nodaemonÀ» ³²°Ü
³õÀ» ¼öµµ ÀÖ´Ù. À̰ÍÀº ÀÌÈÄÀÇ ¸±¸®Áî¿¡¼´Â µ¿ÀÛÇÏÁö ¾Ê´Â´Ù.
</p>
</article>
|
You will be successful in love. |











