~upstart-devel/upstart/upstart-jobs

« back to all changes in this revision

Viewing changes to vivid/etc/init/readahead.conf

  • Committer: Dimitri John Ledkov
  • Date: 2014-11-19 12:58:41 UTC
  • Revision ID: dimitri.j.ledkov@intel.com-20141119125841-98dr37roy8dvcv3b
auto update

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# readahead - readahead
 
2
#
 
3
# Starts readahead
 
4
 
 
5
start on startup
 
6
 
 
7
stop on started rc RUNLEVEL=[016]
 
8
 
 
9
console output
 
10
 
 
11
script
 
12
        # do not exit on failed commands
 
13
        set +e
 
14
 
 
15
. /etc/sysconfig/readahead
 
16
. /etc/init.d/functions
 
17
cmdline=$(cat /proc/cmdline)
 
18
 
 
19
check_autorelabel()
 
20
{
 
21
        if [ -f  /.autorelabel ] || strstr "$cmdline" autorelabel; then         
 
22
                # Check SELinux status
 
23
                selinuxfs="$(fstab_decode_str `LC_ALL=C awk '/ selinuxfs / { print $2 }' /proc/mounts`)"
 
24
                SELINUX_STATE=
 
25
                if [ -n "$selinuxfs" ] && [ "`cat /proc/self/attr/current`" != "kernel" ]; then
 
26
                    if [ -r "$selinuxfs/enforce" ] ; then
 
27
                        SELINUX_STATE=`cat "$selinuxfs/enforce"`
 
28
                    else
 
29
                        # assume enforcing if you can't read it
 
30
                        SELINUX_STATE=1
 
31
                    fi
 
32
                fi
 
33
        
 
34
                if [ -n "$SELINUX_STATE" ]; then
 
35
                        return 0
 
36
                fi
 
37
        fi
 
38
        return 1
 
39
}
 
40
 
 
41
        [ -f /.autofsck ] && exit 0
 
42
        [ -f /forcefsck ] && exit 0
 
43
 
 
44
        [ "$READAHEAD" != "yes" ] && exit 0
 
45
        [ -f /var/lib/readahead/early.sorted ] || exit 0
 
46
 
 
47
        [ -f /.readahead_collect ] && exit 0
 
48
        if [ "$READAHEAD_COLLECT_ON_RPM" = "yes" ]; then
 
49
                [ /var/lib/readahead/early.sorted -nt /var/lib/rpm/Packages ] || exit 0
 
50
        fi
 
51
        
 
52
        # Check for enough memory
 
53
        read label val rest  < /proc/meminfo 
 
54
        [ "$rest" = "kB" -a $val -gt ${READAHEAD_MIN_MEM:-393216} ] || exit 0
 
55
 
 
56
        check_autorelabel && exit 0
 
57
 
 
58
        
 
59
        try=0
 
60
        while [ $try -lt 10 ]; do
 
61
                if test -d /usr/sbin; then
 
62
                        try=10
 
63
                else
 
64
                        try=$(($try+1))
 
65
                        sleep 1
 
66
                fi
 
67
        done
 
68
        echo "<6>readahead: starting" > /dev/kmsg
 
69
        exec /sbin/readahead --dont-sort /var/lib/readahead/early.sorted
 
70
end script
 
71