~ubuntu-branches/ubuntu/maverick/partman-basicfilesystems/maverick

« back to all changes in this revision

Viewing changes to finish.d/check_basicfilesystems

  • Committer: Bazaar Package Importer
  • Author(s): Colin Watson
  • Date: 2007-02-20 19:08:28 UTC
  • Revision ID: james.westby@ubuntu.com-20070220190828-knqmulq9is0rlfrk
Tags: 51ubuntu2
* Move sanity-checking scripts from finish.d to check.d.
* Set maintainer to ubuntu-installer@lists.ubuntu.com.

Show diffs side-by-side

added added

removed removed

Lines of Context:
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