home *** CD-ROM | disk | FTP | other *** search
/ PC World 2000 February / PCWorld_2000-02_cd.bin / live / usr / sbin / shadowconfig < prev    next >
Text File  |  1998-07-17  |  1KB  |  68 lines

  1. #!/bin/bash
  2. # turn shadow passwords on or off on a Debian system
  3.  
  4. set -e
  5.  
  6. permfix () {
  7.     [ -f $1 ] || return 0
  8.     chown root:shadow $1
  9.     chmod 2755 $1
  10. }
  11. export -f permfix
  12.  
  13. shadowon () {
  14. bash<<- EOF
  15.     set -e
  16.  
  17.     permfix /usr/X11R6/bin/xlock
  18.     permfix /usr/X11R6/bin/xtrlock
  19.     permfix /bin/vlock
  20.  
  21.     pwck -q
  22.     grpck
  23.     pwconv
  24.     grpconv
  25.     cd /etc
  26.     chown root:root passwd group
  27.     chmod 644 passwd group
  28.     chown root:shadow shadow gshadow
  29.     chmod 640 shadow gshadow
  30. EOF
  31. }
  32.  
  33. shadowoff () {
  34. bash<<- EOF
  35.     set -e
  36.     pwck -q
  37.     grpck
  38.     pwunconv
  39.     grpunconv
  40.     cd /etc
  41.     # sometimes the passwd perms get munged
  42.     chown root:root passwd group
  43.     chmod 644 passwd group
  44. EOF
  45. }
  46.  
  47. case "$1" in
  48.     "on")
  49.     if shadowon ; then
  50.         echo Shadow passwords are now on.
  51.     else
  52.         echo Please correct the error and rerun \`$0 on\'
  53.         exit 1
  54.     fi
  55.     ;;
  56.     "off")
  57.     if shadowoff ; then
  58.         echo Shadow passwords are now off.
  59.     else
  60.         echo Please correct the error and rerun \`$0 off\'
  61.         exit 1
  62.     fi
  63.     ;;
  64.      *)
  65.     echo Usage: $0 on \| off
  66.     ;;
  67. esac
  68.