home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2007 September / PCWSEP07.iso / Software / Linux / Linux Mint 3.0 Light / LinuxMint-3.0-Light.iso / casper / filesystem.squashfs / lib / partman / check.d / 10check_basicfilesystems < prev    next >
Encoding:
Text File  |  2007-04-12  |  1.6 KB  |  52 lines

  1. #!/bin/sh
  2.  
  3. . /lib/partman/definitions.sh
  4.  
  5. for dev in $DEVICES/*; do
  6.     [ -d "$dev" ] || continue
  7.     cd $dev
  8.     partitions=
  9.     open_dialog PARTITIONS
  10.     while { read_line num id size type fs path name; [ "$id" ]; }; do
  11.     [ "$fs" != free ] || continue
  12.         partitions="$partitions $id,$num"
  13.     done
  14.     close_dialog
  15.     
  16.     for part in $partitions; do
  17.         id=${part%,*}
  18.         num=${part#*,}
  19.     [ -f $id/method -a ! -f $id/format \
  20.         -a -f $id/acting_filesystem ] || continue
  21.     filesystem=$(cat $id/acting_filesystem)
  22.     case $filesystem in
  23.         ext2|fat16|fat32)
  24.         log "Check the file system in $dev/$id"
  25.         template=partman-basicfilesystems/progress_checking
  26.                 RET=''
  27.                 db_metaget  partman/filesystem_short/"$filesystem" description || RET=''
  28.                 [ "$RET" ] || RET="$filesystem"
  29.         db_subst $template TYPE "$RET"
  30.         db_subst $template PARTITION "$num"
  31.         db_subst $template DEVICE $(humandev $(cat device))
  32.         name_progress_bar $template
  33.         open_dialog CHECK_FILE_SYSTEM $id
  34.         read_line status
  35.         close_dialog
  36.         if [ "$status" != good ]; then
  37.             db_subst partman-basicfilesystems/check_failed TYPE "$filesystem"
  38.             db_subst partman-basicfilesystems/check_failed PARTITION "$num"
  39.             db_subst partman-basicfilesystems/check_failed DEVICE $(humandev $(cat device))
  40.             db_set partman-basicfilesystems/check_failed 'true'
  41.             db_input critical partman-basicfilesystems/check_failed || true
  42.             db_go || true
  43.             db_get partman-basicfilesystems/check_failed
  44.             if [ "$RET" = 'true' ]; then
  45.             exit 1
  46.             fi
  47.         fi
  48.         ;;
  49.     esac
  50.     done
  51. done
  52.