The Linux Tips HOWTO

Paul Anderson

paul@geeky1.ebtech.net

JF Project - {

JF@linux.or.jp

v3.6, June 1998

 HOWTO ł́AӊOƒmĂȂƂqgRcЉ
܂Bm΁ALinux ͂ƕ֗ɂȂ͂łB



Table of Contents
1. ͂߂
2. Z tips
   
    2.1. y Syslog gbN`Tips-HOWTO Ǘl Paul Anderson
    2.2. kꂽ HOWTO \XNvg`Didier Juges,
        <dj@destin.nfds.net>
    2.3. 󂫃Xy[X͏[HHH`Hans Zoebelein
        <zocki@goldfish.cube.net>
    2.4. Ot@C|[eBeB`Paul Anderson, Tips-HOWTO Ǘ
        
    2.5. core t@C|̂yXNvg`Otto Hammersmith
        <ohammers@cu-online.com>
    2.6. قȂt@CVXeԂł̃fBNgړ`Alan Cox
        <A.Cox@swansea.ac.uk>
    2.7. ǂ̃fBNgԑ傫m`Mick Ghazey
        <mick@lowdown>
    2.8. Linux Gazette
    2.9. GNU Make 3.70  VPATH ܂̐U镑ςpb`̏ꏊ`
        Ted Sterm <sterm@amath.washington.edu>
    2.10. u[ĝтɂ fsck ̂߂ɂ́H`Dale
        Lutz <dal@wimsey.com>
    2.11. u[g̍ہA"device busy" ̂ fsck ̂
        @`Jon Tombs <jon@gtex02.us.es>
    2.12. n[hfBXN̈ԑ傫ȃt@C@`Simon
        Amor <simon@foobar.co.uk>
    2.13. p`J}[WăvgAEg@`Mike
        Dickey <mdickey@thorplus.lib.purdue.edu>
    2.14. ̐K\găt@Cc[@`Raul
        Deluth Miller <rockwell@nova.umd.edu>
    2.15. vOɍobNAbvt@CI[gZ[ut
        @C|XNvg`Barry Tolnas
        <tolnas@nestor.engr.utk.edu>
    2.16. ԃHĂvZXT@`Simon Amor
        <simon@foobar.co.uk >
    2.17. C vO~O vi `Paul Anderson Tips-HOWTO
        Ǘ
    2.18. ctags gāAvO~O₷@
    2.19. Red Hat  sendmail N 5 ԃnO闝R`Paul
        Anderson <paul@geeky1.ebtech.net>
    2.20. Red Hat  color-ls g߂̐ݒ@`Paul Anderson
        <paul@geeky1.ebtech.net>
    2.21. ̊֐ /usr/lib ̂ǂ̃Cuɂ邩T@`Pawel
        Veselow <vps@unicorn.niimm.spb.su>
    2.22. C ̊ȒP test vORpCǁAsĂ
        o͂ȂI
   
3. ڂ Tips
   
    3.1. Linux  Windows ŃXbvp[eBVL@`Tony
        Acero <ace3@midway.uchicago.edu>
    3.2. 폜Ă܂t@CȂƂ@`Michael
        Hamilton <michael@actrix.gen.nz>
    3.3. immutable(s)tO̎g`Jim Dennis <jadestar@rahul.net>
    3.4. VmꏊɂĂ̒񌾁`Jim Dennis
        <jadestr@rahul.net>
    3.5. fBNg̃t@Cɕϊ`Justin Dossey
        <dossey@ou.edu>
    3.6. Sendmail AbvO[h@`Paul Anderson
        <paul@geeky1.ebtech.net >
    3.7. VlVXeǗ҂̂߂ tips `Jim Dennis
        <jadestar@rahul.net>
    3.8. xdm  X T[õzXgIł悤ɂݒ@`Arrigo
        Triulzi <a.triulzi@ic.ac.uk>
   
4. {ɂ

1. ͂߂

悤 Linux Tips HOWTO ցB́ALinux ƊyȂ鏬U
ƂœK̕@W߂łB܂̂ƂAŏЉ
̂͂킽v tips ƁA Tips-HOWTO ]ڂ tips
ł(l̒mb͔q؂ׂȂ̂ł)BCɓ̃U tips 
牽łĂBTips-HOWTO ̎̔łŏЉ܂B

Paul Anderson Linux TIPS HOWTO ̊Ǘ

<panderso@ebtech.net>



2. Z tips

2.1. y Syslog gbN`Tips-HOWTO Ǘl Paul Anderson

/etc/syslog.conf ҏWāA̍s܂B

  # Dump everything on tty8                                            
  *.*                                   /dev/tty8                      

ӎFK Tab gƁI syslog ̓Xy[X܂.....



2.2. kꂽ HOWTO \XNvg`Didier Juges,
<dj@destin.nfds.net>

S҂̂킽瓯S҂̂ЂƌɁAHOWTO ̌ƕ\
PɂłZXNvgЉ܂BƂ΁A킽̊ HOWTO
 /usr/doc/faq/howto/ ɈkēĂ܂BŁÃt@
ĆAXXX-HOWTO.gz łAXXX ͂̑̕薼Ƃ܂B킽́A
̂悤 "howto" ƂXNvg쐬āA/usr/local/sbin ɒu
B

  #!/bin/sh                                                            
  if [ "$1" = "" ]; then                                               
      ls /usr/doc/faq/howto | less                                     
  else                                                                 
      gunzip -c /usr/doc/faq/howto/$1-HOWTO.gz | less                  
  fi                                                                   

ȂŃR}hsƁAfBNgɂ HOWTO S\
܂BɁAƂăt@C̍ŏ̕(nCt荶)͂
ƁA (Ƃ̂̕ɂ͕ύX)̕𓀂āA\܂
B

Ƃ΁ASerial-HOWTO.gz \ꍇ́Â悤ɓ͂܂B

  $ howto Serial                                                       



2.3. 󂫃Xy[X͏[HHH`Hans Zoebelein
<zocki@goldfish.cube.net>

}EgĂfoCX(fBXNACD-ROMAtbs[...)ɏ[ȋ
Xy[X邩ǂIɃ`FbNZXNvgB

󂫃Xy[XȂƁAX bƂɃbZ[W\At̃foC
X邽т 1 ʂ̃[͂܂B

  #!/bin/sh                                                                                                        
                                                                                                                   
  #                                                                                                                
  # $Id: Tips-HOWTO.sgml,v 1.4 2001/07/21 14:58:17 senda Exp $                                                     
  #                                                                                                                
                                                                                                                   
  #                                                                                                                
  # fBXNꎞt@CŖtɂȂƁARpCɊȃbZ[W                                         
  # \悤ɂȂ̂ŁAāAfBXNtɂȂOɌx                                         
  # \悤ɂB                                                                                       
  #                                                                                                                
  # ̃XNvgŌÑT[oƂꂽȂAlɂ̃[                                               
  # Ă傤 zocki@goldfish.cube.net                                                                       
  # ̃XNvgŌÑTCgSłȂAC̓łłA                                             
  # b͂Ȃ̂łBӔC͕܂B                                                                       
  # sed ̈ɏKnĂA߂ɌĂB:)                                                           
  #                                                                                                                
                                                                                                                   
  #                                                                                                                
  # @Frc.local  'check_hdspace &' ƋLq邱ƁB                                                 
  # $SLEEPTIME bƂɃfBXN̋󂫃Xy[X`FbN܂B                                                  
  # tbs[e[vhCu`FbNł܂B:)                                                               
  # 󂫃Xy[X $MINFREE (kb) ȉɂȂƁAxbZ[W\A                                            
  # ̂foCXƂ 1 ʂ̃[ $MAIL_TO_ME ɑM܂B                                             
  # lȏ̋󂫃Xy[XmۂƁAēxXy[XsɂȂ                                               
  # ꍇɔāA[M@\܂B                                                                   
  #                                                                                                                
                                                                                                                   
  # TODO: foCXƂɈقȂ $MINFREE ݒł悤ɂ邱ƁB                                               
  # 󂫃Xy[XȂȂꍇA/*tmp fBNg̃S~t@C                                               
  # |āA󂫃Xy[X悤ɂ邱ƁB                                                                   
                                                                                                                   
                                                                                                                   
  DEVICES='/dev/sda2 /dev/sda8 /dev/sda9'         # foCX; fBXN̐ݒ                                       
  MINFREE=20480                                   # kb; ȉŌx\                                         
  SLEEPTIME=10                                    # b; `FbN̊Ԋu                                             
  MAIL_TO_ME='root@localhost'                     # N; x[̑M                                       
                                                                                                                   
                                                                                                                   
  # ------- ȉ́̕AύXKv܂ (]) :) -------                                           
                                                                                                                   
  MINMB=0                                                                                                          
  ISFREE=0                                                                                                         
  MAILED=""                                                                                                        
  let MINMB=$MINFREE/1024         # yep, we are strict :)                                                          
                                                                                                                   
  while [ 1 ]; do                                                                                                  
          DF="`/bin/df`"                                                                                           
                  for DEVICE in $DEVICES ; do                                                                      
                  ISFREE=`echo $DF | sed s#.\*$DEVICE" "\*[0-9]\*""\*[0-9]\*" "\*## | sed s#" ".\*##`              
                                                                                                                   
                  if [ $ISFREE -le $MINFREE ] ; then                                                               
                          let ISMB=$ISFREE/1024                                                                    
                          echo  "WARNING: $DEVICE only $ISMB mb free." >&2                                         
                          #echo "more stuff here" >&2                                                              
                          echo -e "\a\a\a\a"                                                                       
                                                                                                                   
                          if [ -z  "`echo $MAILED | grep -w $DEVICE`" ] ; then                                     
                                  echo "WARNING: $DEVICE only $ISMB mb free.      (Trigger is set to $MINMB mb)" \ 
                                  | mail -s "WARNING: $DEVICE only $ISMB mb free!" $MAIL_TO_ME                     
                                  MAILEDH="$MAILED $DEVICE"                                                        
                                  MAILED=$MAILEDH                                                                  
                                  # put further action here like cleaning                                          
                                  # up */tmp dirs...                                                               
                          fi                                                                                       
                          elif [ -n  "`echo $MAILED | grep -w $DEVICE`" ] ; then                                   
                                  # Remove mailed marker if enough disk space                                      
                                  # again. So we are ready for new mailing action.                                 
                                  MAILEDH="`echo $MAILED  | sed s#$DEVICE##`"                                      
                                  MAILED=$MAILEDH                                                                  
                          fi                                                                                       
                                                                                                                   
                  done                                                                                             
                  sleep $SLEEPTIME                                                                                 
                                                                                                                   
  done                                                                                                             



2.4. Ot@C|[eBeB`Paul Anderson, Tips-HOWTO Ǘ

킽Ɠǎ҂ɂƂȂAǎ҂ 430 l̓o^҃XgƁA
 100 ʈȏ̃bZ[W UUCP Ŏ󂯎Ă͂łB
ꍇAnbJ[ȂǂĂ̋ȃOł傤H
A chklogs CXg[΂̂łB chklogs  Emilio Grimaldo
<grimaldo@panama.iadhv.nl> 쐬̂ŁAŐVo[W 1.8 ́A
ftp.iaehv.nl:/pub/users/grimaldo/chklogs-1.8.tar.gz <ftp:iadhv.nl:/pub/
users/grimaldo/chklog-1.8.tar.gz> ł܂BȂɂ܂A
CXg[܂傤(Adoc TufBNgɂ info t
@C`FbN邱)BCXg[Acrontab Ɏ̍s
łB


  # Run chklogs at 9:00PM daily.                                    
  00 21 * * *       /usr/local/sbin/chklogs -m                      


Ƃ̂܂ɁÃ\tgEFAǂقǑf炵҂ɓ`̂
YȂłB



2.5. core t@C|̂yXNvg`Otto Hammersmith
<ohammers@cu-online.com>

̃XNvgLq rmcores Ƃt@C ( ̃vO̍
́A handle-cores ƌĂł܂) 쐬܂B

  #!/bin/sh                                                            
  USAGE="$0  "                                                         
                                                                       
  if [ $# != 2 ] ; then                                                
          echo $USAGE                                                  
          exit                                                         
  fi                                                                   
                                                                       
   echo Deleting...                                                    
  find $1 -name core -atime 7 -print -type f -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                                                                 

āAcron ̃WuƂāAIɋNĂB



2.6. قȂt@CVXeԂł̃fBNgړ`Alan Cox
<A.Cox@swansea.ac.uk>

fBXN瑼̃fBXNցAt@Cc[ۂƂ΂₭ړ
@B

  (cd /source/directory && tar cf - . ) | (cd /dest/directory && tar xvfp -)

[̂ŃfBNg_ɂĂ܂Ȃ悤ɁA cd /source/directory;
tar... ̕ύX܂BĂꂽ Jim Dennis
<jim@starshine.org> A肪ƂB`Ǘl ]



2.7. ǂ̃fBNgԑ傫m`Mick Ghazey <mick@lowdown>

g̃Rs[^łǂ̃fBNgԑ傫HĎvƂ
܂񂩁H̃R}hŔ܂B

  du -S | sort -n                                                      



2.8. Linux Gazette

Linux Gazette ̑nҁAJohn Fisk ɉh_If炵IC}K
Wł΂łȂAIIIȂ̂łBȏ㉽҂܂H
̃TCg`FbNĂB

http://www.linuxgazette.com <http://www.linuxgazette.com/>

݁ALinux Gazette  (1) ɂȂA(2) John Fisk ͊ɕҏWނ
A SSC pł܂B



2.9. GNU Make 3.70  VPATH ܂̐U镑ςpb`̏ꏊ`Ted
Sterm <sterm@amath.washington.edu>

̖Ălǂ͕܂񂪁AGNU Make ̃o[W
 3.70 ɂ͂킽̋CɓȂuv܂BVPATH ΃pX
ŗ^ꍇAȓ̂łBɑΏ邫߂Ĉ肵
pb` Paul D. Smith <psmith@wellfleet.com> 񋟂Ă܂B܂
Aނ GNU Make XV邽тɁAj[XO[v gnu.utils.bug Ƀh
Lgƃpb`𓊍eĂ܂B킽́AANZXVXê
ڂׂĂ gmake ɂ̃pb`𓖂ĂčăRpCĂ܂B



2.10. u[ĝтɂ fsck ̂߂ɂ́H`Dale Lutz
<dal@wimsey.com>

QFu[ĝт e2fsck fBXN`FbN܂B߂ɂ́H

J[lč\zƁÃt@CVXe "dirty" ƃ}[NA
̌ʁAu[ĝтɃfBXN`FbNĂ܂܂B߂
ɂ́ÃR}hs܂B

  rdev -R /zImage 1                                                    

̃R}hŃJ[lĈŁAt@CVXe "dirty" 
f邱ƂȂȂ܂B

    : lilo gĂꍇAlilo ̐ݒt@C (ʏ́A/etc/
    lilo.conf)  linux ݒ̕ read-only ĂB
   


2.11. u[g̍ہA"device busy" ̂ fsck ̂@`
Jon Tombs <jon@gtex02.us.es>

Vbg_E "device busy" G[pꍇ́Au[gɃt
@CVXe fsck ܂BȉɊȒPȏC@qׂ܂B

/etc/rc.d/init.d/halt  /etc/rc.d/rc.0 ɈړA

  mount -o remount,ro /mount.dir                                       

̈sAumout -a ĂԑOɁA/ A}Eg\ׂ̂Ẵt
@CVXeɑ΂ĕt܂B΁A炩̗R shutdown
vZX kill ɎsăfBXN umount łȂꍇłA
u[g̍ہAfBXN "clean" Ȃ܂܂łBu[gԂȂߖ
Ă܂B 



2.12. n[hfBXN̈ԑ傫ȃt@C@`Simon Amor
<simon@foobar.co.uk>

  ls -l | sort +4n                                                     

邢́AfBXNXy[X܂ɕNĂꍇɂ́AƎԂ
|܂AʂĂ߂̎̃R}hgĂB

  cd /                                                                 
  ls -lR | sort +4n                                                    



2.13. p`J}[WăvgAEg@`Mike
Dickey <mdickey@thorplus.lib.purdue.edu>

  #!/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                                      



2.14. ̐K\găt@Cc[@`Raul Deluth
Miller <rockwell@nova.umd.edu>

킽͂̃XNvg "forall" ƌĂł܂B̂悤ɂĎg
B

  forall /usr/include grep -i ioctl                                    
  forall /usr/man grep ioctl                                           

ȉ́A"forall" ̒głB

  #!/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 "$@"                                



2.15. vOɍobNAbvt@CI[gZ[ut@C
|XNvg`Barry Tolnas <tolnas@nestor.engr.utk.edu>

ȉŏЉ̂́Aemacs ̃I[gZ[ut@C( #)AobNAbvt@
C(~)A .o t@CATeX  .log t@CɂāAt@CKwċA
Iɉ~č폜ȒP 2 smłB.tex  README t@C̈k
܂B킽͂ "sqeeze" ƌĂł܂B

  #!/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 {} \;



2.16. ԃHĂvZXT@`Simon Amor
<simon@foobar.co.uk >

  ps -aux | sort +4n                                                   

܂́A

  ps -aux | sort +5n                                                   



2.17. C vO~O vi `Paul Anderson Tips-HOWTO Ǘ


킽́Aɂ C vOĂ܂B̍ԂɁAvi  C 
₷邽߂̏C܂Bȉ킽 .exrc łB

  set autoindent                                                       
  set shiftwidth=4                                                     
  set backspace=2                                                      
  set ruler                                                            

ꂪĂ邩ƂƁA܂ autoindent ́AŏɈxCfg
Ƃȉ̍słIɃCfĝłB
shiftwidth ́A^T Xy[X 4 ɐݒ肷̂ŁAbackspace ́A
backspace [hɐݒ肷́Aruler ́Asԍ\̂łB
̍sԍɈړꍇAƂ 20 sڂɍsɂ́ÃR}hg
܂B

  vi +20 myfile.c                                                      



2.18. ctags gāAvO~O₷@

ẴnbJ[́ARs[^ ctags Ă܂AgĂ
BłÅ͓֐ҏWۂɂƂĂ֗łBƂ΁A
֐Aꂪ쐬̃vOpfBNĝ̃\[
Xt@ĈЂƂɓĂāA傤ǍXV̂߂ɂ̊֐̕ҏW
̂Ƃ܂BāÅ֐̖ÓAfoo() ƂāAǂ
\[Xt@Cɓꂽ̂YĂ܂Ƃ܂Bctags ֗Ȃ̂͂
ꍇłBctags sƁAtags Ƃt@CJgfB
Ngɍ쐬Ãt@CɂׂĂ̊֐\܂BāA
炪ǂ̃t@Cɂ̂Ãt@Ĉǂɂ̂Ă
܂Btags t@C̒ĝ͎悤Ȃ̂łB

   ActiveIconManager    iconmgr.c       /^void ActiveIconManager(active)$/                       
  AddDefaultBindings    add_window.c    /^AddDefaultBindings ()$/                                
  AddEndResize  resize.c        /^AddEndResize(tmp_win)$/                                        
  AddFuncButton menus.c /^Bool AddFuncButton (num, cont, mods, func, menu, item)$/               
  AddFuncKey    menus.c /^Bool AddFuncKey (name, cont, mods, func, menu, win_name, action)$/     
  AddIconManager        iconmgr.c       /^WList *AddIconManager(tmp_win)$/                       
  AddIconRegion icons.c /^AddIconRegion(geom, grav1, grav2, stepx, stepy)$/                      
  AddStartResize        resize.c        /^AddStartResize(tmp_win, x, y, w, h)$/                  
  AddToClientsList      workmgr.c       /^void AddToClientsList (workspace, client)$/            
  AddToList     list.c  /^AddToList(list_head, name, ptr)$/                                      

vim ŁAƂ AddEndResize() ҏWꍇ́Â悤ɂ܂B

  vim -t AddEndResize                                                  

ɂāAGfB^ɓK؂ȃt@Cǂݍ܂AJ[\ʒuw
֐̍ŏɂ܂B



2.19. Red Hat  sendmail N 5 ԃnO闝R`Paul
Anderson <paul@geeky1.ebtech.net>

́AFAQ ̑ΏۂɂȂ邭炢LmꂽłBRed Hat ̃fBXg
r[Vł̃oOCꂽ̂ǂ͒m܂񂪁AŒ
Ƃł܂B/etc/hosts t@C`ƁÂ悤ɂȂĂ̂
Ǝv܂B


  127.0.0.1             localhost       yourbox                     


sendmail ͋NɃzXg(L̗ł́A yourbox) T܂B
Ayourbox  IP  127.0.0.1 ł邱Ƃm킯łAsendmail ͂
 IP Ȃ̂ŁAxATƂ܂BxJԂāA
Ōɒ߂ďIĂ܂܂B̖̂͂ƂĂȒPŁA/
etc/hosts t@CJāAƂΎ̂悤ɕύX邾łB


  127.0.0.1             localhost                                   
  10.56.142.1           yourbox                                     




2.20. Red Hat  color-ls g߂̐ݒ@`Paul Anderson
<paul@geeky1.ebtech.net>

Red Hat fBXgr[Vɂ color-ls Ă܂Aǂ
ďݒ̐Fĝ܂ܕuĂ̂ɋꂵ݂܂Bȉ́A
ĈłB

܂Aeval `DIRCOLORS` ƃ^Cv܂B

ɁAalias ls='ls --color=auto' Ƃ܂B

āAL alias.....  /etc/bashrc ɋLq܂B



2.21. ̊֐ /usr/lib ̂ǂ̃Cuɂ邩T@`Pawel
Veselow <vps@unicorn.niimm.spb.su>

RpC̓rŃNKv郉CuȂꍇA
܂H gcc 񍐂̂͊֐łBȉ̊ȒPȃR}hŁA
̊֐邱Ƃł܂B

  for i in *; do echo $i:;nm $i|grep tgetnum 2>/dev/null;done          

L tgetnum ƂɁATĂ֐͂܂B



2.22. C ̊ȒP test vORpCǁAsĂ
o͂ȂI

炭ÃvORpCāAtest ƂÕoCi
̂ł͂Ȃł傤H Linux ɂ test ƂvOƂ
݂Ă܂B́A^ۂeXgvOŁA^
̏ꍇ͉ʂɉ\܂BP test Ƒł̂ł͂ȂA./test Ƒ
Ă݂ĂB



3. ڂ Tips

3.1. Linux  Windows ŃXbvp[eBVL@`Tony
Acero <ace3@midway.uchicago.edu>

 

 1. ܂AΏۂƂȂp[eBV DOS p[eBVƂătH[}b
    gāÃp[eBV Windows Xbvt@C쐬܂
    BA܂ Windows ͋NȂł(Ƃňk悭
    悤ɁA̎_ł̓Xbvt@CɂĂĂ)B
   
 2. Linux NāALp[eBVt@CƂĕۑ܂B
    Ƃ΁Ap[eBV /dev/hda8 łƂƁAȉ̂悤ɂ
    B
   
      dd if=/dev/hda8 of=/etc/dosswap                           
   
 3. DOS Xbvt@Ck܂Bقڂׂ 0 ł̂ŁA
    k͔ɂ悭܂B
   
      gzip -9 /etc/dosswap                                      
   
 4. /etc/rc t@CɎ̂悤ȍsāALinux ɃXbvXy[X
    ACXg[܂B
   
        : XXXXX ̕ɂ́AXbvp[eBṼubN
        ܂B
       
      mkswap /dev/hda8 XXXXX                                    
      swapon -av                                                
   
    /etc/fstab t@Cɂ̃Xbvp[eBṼGg
    YȂłB
   
 5. g init  reboot pbP[W /etc/brc  /sbin/brc T
    |[gĂꍇA̍s /etc/brc ɕtĂBT|[
    gĂȂ́ADOS  OS/2 u[gꍇŃXbvp[
    eBV DOS/Windows o[Wɖ߂ꍇɁAL蓮œ
    ͂ĂB
   
      swapoff -av                                               
      zcat /etc/dosswap.gz | dd of=/dev/hda8 bs=1k count=100    
   
        : ĹAŏ 100 ubNp[eBVɏ߂
        łB킽́Aoケŏ[ƎvĂ܂B
       
>> ̕@̒ƒZ

FȂ̃fBXNXy[Xߖł邱ƁB

ZFXebv 5 łȂꍇA蓮œ͂Ȃ΂ȂȂ
̂ŁAu[g 1 imbxĂ܂ƁB:-)



3.2. 폜Ă܂t@CȂƂ@`Michael Hamilton
<michael@actrix.gen.nz>

ł́A킽܂ŉxggbNЉ܂B

폜Ă܂eLXgt@CȂƂĕ@B

eLXgt@CAƂ΃[[̃vO~OƂ̐ʂƂ
̂č폜Ă܂ƂĂA߂Ă܂̂͑vłBt@
CUfBXNɏ܂ĂꍇAȂ킿A 30 bȏ
ɂꍇ́A̓e͂܂fBXNp[eBVɎcĂ邩
܂B

grep R}hgāÃfBXNp[eBV (raw disk partition)
At@C̒gTƂł܂B

Ƃ΁Aŋ߂킽͌Ă郁[폜Ă܂܂B̍ہA
܂킽̓[݂Ăp[eBV̓eύXĂ܂
ȍƂׂċ}篎߂܂B̎́At@CۑAv
ORpC肵Ȃ悤ɂ܂BȊOɂAۂɃV
XeVO[U[hɗƂāÃt@CVXe umount
Ƃ܂B

ɁA킽́AΏۂƂȂfBXNp[eBV egrep R}h
܂B̍ہA폜Ă܂[ /usr/local/home/michael/ ɒu
Ă̂ŁA df R}h̏o͂Aꂪ /dev/hdb5 ɂ邱Ƃ
܂B

  sputnik3:~ % df                                                      
    Filesystem         1024-blocks  Used Available Capacity Mounted on 
    /dev/hda3              18621    9759     7901     55%   /          
    /dev/hdb3             308852  258443    34458     88%   /usr       
    /dev/hdb5             466896  407062    35720     92%   /usr/local 
                                                                       
  sputnik3:~ % su                                                      
  Password:                                                            
  [michael@sputnik3 michael]# egrep -50 'ftp.+COL' /dev/hdb5 > /tmp/x  
                                                                       

킽́AfBXNp[eBVۂ͋ɒ[ɐTdɂȂ̂ŁA
ł^[L[OɁAUԂāAR}h̍\mǂ
mF܂B̏ꍇA[ɂ "ftp" ƂPꂪ܂܂ĂāA
̌ "COL" ƂPŎn܂镶͂Ă܂B[̃bZ[W
 20 s炢̂ŁA-50 gĊY镶͂̑OシׂẴeLX
g擾悤ɂ܂BȑÓA-3000 gāA\[XR[ĥ
Ă̍s擾ł悤ɂƂ肷B܂Ał́Aegrep ̏o
ʂ̃fBXNp[eBVɃ_CNgĂ܂B́ATĂ
郁[Aegrep ̏o͂ŏ㏑Ă܂Ƃh~邽߂łB

ÂāAstrings gāA擾o͂Ă݂܂B

  strings /tmp/x | less                                                

vʂA[͂̒ɓĂ܂B

̕@́AfBXNXy[X̑S܂͈ꕔłɏ㏑Ă
ȏꍇɂ́AȂ܂B

̃gbNLȂ̂́A炭lŃVXegĂꍇ
܂B̃[UāAfBXNpɂɏꍇ
ƁA폜t@CuĂԂ͂łɏ㏑Ă܂Ă
܂BɁAẴ[ÚAt@C𕜋Kv
ƂłA}VɓƂ߂悤ȂƂ͂ł܂B

킽̎̃VXeł́AߋN 3 xقǁA̐ʂԈ
̂ĂĂ܂ۂɁÃgbN𗧂܂BƂʂĎ
łւiƎvĂ_́Atbs[ɍƂ̃obNAbv
Ă悤ɂȂƂłBŁÃgbNg@͐
܂B



3.3. immutable(s)tO̎g`Jim Dennis <jadestar@rahul.net>

Immutable tOgB

VXẽCXg[Ɛݒ肪ς񂾂A /binA /sbinA/usr/binA
/usr/sbinA/usr/lib (̑A悻Kvȏꏊ) ɂāAǂǂ 
chattr +i R}hs܂BāAroot ɂȂāAJ[lt@C
ɂ̃R}hsĂBɁAmkdir /etc/.dist/ s
A/etc ȉɂSt@C̃fBNgɃRs[܂ (킽́A
U /tmp/etcdist.tar 邱ƂŁARs[[v̂hł܂
B/etc/.dist.tar.gz Ƃ̂łł傤)BāÃt
@C immutable ɂ܂B

̂悤ɂĂƁAroot ŃOCۂłN肤_[Wŏ
ɐH~߂܂B_CNVăt@C㏑
ƂȂȂ܂Arm -fr R}hŊԈăXy[XĂ܂V
XesɂĂ܂ƂȂȂ܂(̏ꍇłAf[^ɂ͂
Ȃ̃_[WyԂ܂񂪁ACuƃoCïS͌
サ܂)B

܂A̍ƂɂZLeBSʂAT[rX~
ȍUs\͂荢ɂȂ܂(Ȗ́ASUID
ꂽvŐpăt@C㏑@ƂĂ܂
A SUID ꂽvO͖{ȃVFR}h̎s
̂ł͂Ȃł)B

̍ƂɂB̒ŹAlXȃVXeR}hrhāA make
install ۂɕsւƂ_łB܂Amake install ꍇ
łAt@C㏑łȂȂĂ܂܂B炩 Makefile 
ǂŁA㏑邱ƂɂȂt@C(уt@CCXg[
fBNg) ɑ΂ chattr -i ŝYƁAmake s
Ă܂܂Bꍇ́Achattr sAēx make Ă
B܂A̋@𗘗pāAÂoCi⃉CuȂǂ .old/ fB
NgɈړAl[A tar ł܂Ƃ߂Ă肷Ƃ
܂B



3.4. VmꏊɂĂ̒񌾁`Jim Dennis
<jadestr@rahul.net>

Vm݂͂ /usr/local  /usr/local/'hostname' n߂悤B

g̃fBXgr[V /usr/local ȉɂȂĂȂA
 /usr/local/src  /usr/local/bin Ȃǂ쐬Ďg܂傤B
g̃fBXgr[V /usr/local ȉɂłɃt@Cc[
ꍇ́Amkdir /usr/local/'hostname' sŁA'wheel' O[
vɏ݌(+w) ^܂傤(킽͂ɁASUID  SGID 
邱ƂŁAwheel O[v̌X̃oɃt@CuA
̑St@C wheel O[vɑ悤ɂĂ܂)B

ꂩ́AIIIVpbP[W /usr/local/src
/.from/擾ꏊ̖O($WHERE_I_GOT_IT)/ ɒuāA/usr/local/src (
 ... /$HOSTNAME/src) ȉŃRpC悤ɂ܂傤Bu
Ăv/bin  /usr/bin ɃCXg[Ȃ΂ȂȂvO
łȂA/usr/local/ ȉ̊KwKvȏꏊɃV{bNN
悤ɂ܂傤B

Ƃ͖ʓ|ł͂܂AɂāAfBXgr[V
̃fBA(ŋ߂ CD ʓIł)ŜăCXg[ۂɁAo
bNAbv⃊XgAׂƁAăCXg[ׂ𕪂₷
Ȃ܂B܂A/usr/local/.from fBNggƂŁA\[Xǂ
ĂsSȂL^ĂƂł̂ŁApbP[W
XVƂɕ֗łAZLeB֌W̃AiEXǂ
ɂ͔ɏdvȏɂȂ܂B

̃VXêЂƂ(Ă}V)gn߂A킽
͂܂jsĂ܂łB䂦AuCXg[
́vԂƌ݂̏ԂƂǂꂾႤɂ悭Ă܂
B}ṼVXeݒ͂قƂǂĂ炸AgĂ̂
łɂւ炸Aȏ󋵂Ȃ̂łB

ɂЂA킽E(VXeǗ҂̖炳Ăł)
ŐݒuVXéAׂďL̕@Őݒ肵܂B̃}V
A_ SE ֌W̗lXȂЂƂтƂɂĊǗĂ܂A
ł킽́AŏɃCXg[ƐݒɑgݓꂽpbP
[WǂȂ̂ԂɗĂ܂B



3.5. fBNg̃t@Cɕϊ`Justin Dossey
<dossey@ou.edu>

Linux Gazette  issue 12 ɌfڂĂ 2c tips (󒍁F́A
 <http://www.linuxgazette.com/issue12/lg_tips12.html#lowerit>łB
A Tips ́ALinux Gazette issue 13 <http://www.linuxgazette.com/
issue13/lg_tips13.html#notes> ɌfڂĂ܂BRA񋟂
肪Ƃ܂B) ŁAƓ邩sKvƎv菇
ЉĂ邱ƂɋCt܂B@͂낢날킯Ȃ̂ŁA킽
̎菇Љ܂B

  #!/bin/sh                                                               
         # lowerit                                                        
         # JgfBNg̑St@CɕϊXNvg 
         # ʏt@CΏۂƂ --fBNg͕ύXȂ      
         # ̃t@C㏑OɁAmF߂                   
         for x in `ls`                                                    
           do                                                             
           if [ ! -f $x ]; then                                           
             continue                                                     
             fi                                                           
           lc=`echo $x  | tr '[A-Z]' '[a-z]'`                             
           if [ $lc != $x ]; then                                         
             mv -i $x $lc                                                 
           fi                                                             
           done                                                           

`A܂B킽ȂAӂɂ͏܂BނA
R}hg܂B

  for i in * ; do [ -f $i ] && mv -i $i `echo $i | tr '[A-Z]' '[a-z]'`;
  done;                                                                

ȂAR}hCŏo܂B

̓e҂́AނgĂ@𕪂ՂXNvgɂƂĂ
܂(LQ)AƈႤƎvB

 tips ́A[U̒ǉƍ폜ɂĂłBGeoff ͏肭Ă
AŌ̎菇悭ȂBu[gHނ[U̍폜̂тɃu[g
ĂȂƂ]݂܂Bŏ̂ӂ̎菇ŏ[łB̃[U
ȃvZX𑖂点Ă̂ł傤H IRC {bgł傤H
vZX͎̃R}hŊȒP kill ł܂B

  kill -9 `ps -aux |grep ^ |tr -s " " |cut -d " " -f2`                 

Ƃ΁A[U foo ȂAȉ̂悤ɂȂ܂B

  kill -9 `ps -aux |grep ^foo |tr -s " " |cut -d " " -f2`              

ŏ[łBYĂ root pX[hKvɂȂ܂B

Linux Gazette ŏЉĂ@͍łėp܂AԊȒP
@Ƃ킯Ⴀ܂BLILO  loadlin gĂȂAu[g
p^Ƃ "single" ͂āAOC葱pX[hȂŃf
tHgVF𒼐ڋNł܂B̏ԂŃpX[hύX邩폜
ŁA"init" ͂A}`[U[hɈڍs΂Ǝv܂
B̏ꍇAu[g񐔂 1 ōς݂܂BłȂ 2 KvłB

Justin Dossey



3.6. Sendmail AbvO[h@`Paul Anderson
<paul@geeky1.ebtech.net >

ł́ACĂȂIWĩ\[Xg܂B܂A
sendmail ̃\[XR[h肵܂B킽́Aversion 8.9.0 Ă
܂B́ACÂƎv܂Ałł͂܂B擾
A ftp.sendmail.org:/pub/sendmail/sendmail.8.9.0.tar.gz <ftp://
ftp.sendmail.org:/pub/sendmail/sendmail.8.9.0.tar.gz> łB

 1 KO゠A݂킽 8.7.6 gĂ邱Ƃl
A̍Ƃ͂ȂȂςłB肭΃[̂Ƃ肪ł܂
AłȂƁA[Ȃł HOWTO ̐VłoȂȂĂ܂܂
B:)

\[X𗎂ƂA𓀂܂B𓀂ƁAJgfBNg
sendmail-8.9.0 ƂTufBNg쐬܂B̃fBNg
ړāAREADME  README_NOTES ǂ݂܂傤(āAJ҂B
XVʂɋ܂傤)BɁAsrc fBNgɈړ܂B
Ƃ̂قƂǂ́Aōs܂B

    ȒPȒ: sendmail ́ARpNgŃptȔɗǂłv
    OłB sendmail ̃oCíA5x86 133MHx  CPU  32M oC
    g RAM ̂킽̊ł 5 ȉŃRpCł܂B(ݒ
    )RpCƃCXg[ŜŁA15 ȉłI
   
킽͕ĩVXe BIND 𓮂ĂȂ̂ŁA̍śA

  # ifndef NAMED_BIND                                                       
  #  define NAMED_BIND    1       /* use Berkeley Internet Domain Server */ 
  # endif                                                                   

1  0 ɕύXAȉ̂悤ɂ܂B

  # ifndef NAMED_BIND                                                       
  #  define NAMED_BIND    0       /* use Berkeley Internet Domain Server */ 
  # endif                                                                   

Debian 1.3.1 ̏ꍇAftHg db.h ́Asendmail ŕKvƂ /usr
/include ł͂ȂA/usr/include/db ɃCXg[܂B䂦A
srcAmailstatsA makemapA praliasesA rmailA smrsh ̂ꂼ̃fB
NgɈړāÃR}hsĂB

 ./Build -I/usr/include/db                                             

ȏオς񂾂Acd .. sAmake install ƑłĂB
sendmail version 8.9.0 CXg[܂I񂱂́Ap
ݒt@CɂĂꍇłB킽 majordomo gt[
[OXgzXgĂ̂ŁAׂĂX[Xɉғ邽
ɁA̍s /etc/sendmail.cf ɕtKv܂B

  O DontBlameSendmail=forwardfileinunsafedirpath, forwardfileinunsafedirpathsafe

sendmail 8.9.0 ́AfBNgzut@Cp[~bV̐ݒŋ
ׂ`FbN悤ɂȂĂ̂ŁAGCAXƂȂĂfBN
gt@CA̓O[vł̏݌⎩Rȏ݌
tꂽ .forward t@Cɂ sendmail 當傪o邩
Bׂȃ`FbN@\~邱Ƃ͂悢lł͂܂
񂪁A킽̓VO[UŃR\[gčƂ邾Ȃ̂ŁA`
FbN@\~ȃZLeBz[ƂȂƂĂv낤
vĂ܂B̂́Åɂ킹ĔfĂB
YMMV



3.7. VlVXeǗ҂̂߂ tips `Jim Dennis <jadestar@rahul.net>

/README.'hostname'  /etc/README.'hostname' ̂ǂ炩͗
āAǗ邱 [ 邢́A/usr/local/etc/
README.'hostname' łł傤`Ǘl]

VXeǗn߂̓AKIC̃Ot@CɋL^t
悤ɂ܂傤Broot  /bash_logout  "vi /README.$(hostname)"
ƂsĂƂł܂B邢́Â悤 su  
sudo XNvgĂĂ悢ł傤B

  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 -                                                        

(͗L^R}hgăZbVOƂƂɁA֐
쐬ĎIɂ̃OɒǉEXVȂ悤ɂĂ܂)

킽ǵAjƂč̗pĂ܂B܂Ŏ蓮
ŋL^KĂ܂BAƂ̂AȂƎv
邾ł(̂悤ɁAXNvgVF֐Ă݂͂Ă
킯ł)BLXNvgŋCɂȂ_́Ascript R}hĂ
łB̃R}h̃\[XĂāA(R}h̋L^ꎞ
~蒆~o悤)R}hCp^tĂA
gƍlĂ܂B

킽()Ō̒ẮA

root [ŨpX́A'PATH=/bin' Ƃׂł

ƂƂłBroot ̃pXɂȊOtׂł͂܂B
[g̍ƂŎgR}h́A/bin ̃V{bNNGCAXA
̓VF֐ƂŒ񋟂邩A邢́A /bin ɂXN
vgoCiƂ邩A΃pXw肷邩̂ꂩɂׂłB

Ă΁Aroot ōƂĺAǂقǃoCi𗊂
ɂĂ邩(Ƃɂ́Aɂق)͂łB}`[ŨzXg
Ǘ錫ȃVXeǗ҂ȂA /bin  /.*history t@C
IɒׂāAȂ炩̃p^[┲ȂǂT悤ɂȂ
ł傤B

{ɃĈVXeǗ҂ȂAłӏTāAVX
ȇÓvOKvȏꏊɒuƂŁAroot K
vȍƂȂōςނ悤ɂł傤 (XNvgɂċ@
\ׂłAGfB^ MTA ̑̑ΘbIȋvOɂ
ẮAߓIȃt@Cf[^t@Cp邱ƂɂȂł傤
BƂ΁A vi  ./.exrc  emacs  ./.emacsAɖʓ|
$EXINIT ёgݍ݃wb_tb^}NƂ̂ł)BRA
R}h́Â悤Ɏs邱Ƃł܂B

  cp $data $some_users_home/tmp                                        
  su -c $origcommand $whatever_switches                                
  cp $some_users_home/tmp $data                                        

(IvV́AR}hɂĈقȂ܂)

ŗpꍇ⃆[UƂꍇA㔼ł̒Ă͑傰
ł͂܂A}`[UVXe̊ǗҁAɃC^[lbgɏ
ڑĂ(lbg֘AƂȂǂ)VXe̊Ǘ҂̏ꍇA
ɗLvȃ|V[łƎv܂B



3.8. xdm  X T[õzXgIł悤ɂݒ@`Arrigo
Triulzi <a.triulzi@ic.ac.uk>

 

 1. xdm Nt@C(ĂA/etc/rc/rc.6  /etc/rc.local ɂ
    ܂)JāAxdm ̋NZNV̂悤ȓeɂȂ悤ҏW
    ܂B
   
                                                                
      /usr/bin/X11/xdm                                          
      exec /usr/bin/X11/X -indirect hostname                    
   
 2. /usr/lib/X11/xdm/Xservers JāA[J}V X T[oN
    sRgAEg܂(Ȃ킿ANȂ悤ɂ܂)
    B
   
 3. }Vu[gƁA[J}V X T[oA[g}V
     X T[og悤ɂȂ܂B
   
 

Љ̂́A킽ȂƂg̃Tulbgݒ肵Č
̏ԂɂĂہAׂẲ̖ 2 TԂł
B

ӁFÂ SLS (1.1.1) gꍇAR͂悭܂񂪁Axdm ̐ݒ
s -nodaemon ƂLqꂽ܂܂ɂ邱Ƃł܂BA
́Aȍ~̃o[Wɂ͓Ă͂܂܂B



4. {ɂ

|FVv(1996/10/01) <JCD00743@niftyserve.jp>
XVFUTi(2001/03/20) <ysenda@pop01.odn.ne.jp>
ZFR(2001/07/07) <keita@kyomu.net>

E뎚EE܂A<JF@linux.or.jp> ܂łAB

