Subversion Repositories configs

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
3 - 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