mirror of
				https://gitlab.alpinelinux.org/alpine/aports.git
				synced 2025-10-31 16:31:40 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			54 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| #!/sbin/openrc-run
 | |
| # Copyright 1999-2010 Gentoo Foundation
 | |
| # Distributed under the terms of the GNU General Public License v2
 | |
| # $Header: /var/cvsroot/gentoo-x86/sys-fs/cachefilesd/files/cachefilesd.init,v 1.2 2010/09/20 08:45:22 jlec Exp $
 | |
| 
 | |
| depend() {
 | |
| 	need localmount
 | |
| 	use logger
 | |
| 	before nfsmount
 | |
| }
 | |
| 
 | |
| checkxattr() {
 | |
| 	local testpath testfile ret
 | |
| 	testpath=$(awk '/^[[:space:]]*dir/ {print $2}' /etc/cachefilesd.conf)
 | |
| 	testfile="${testpath}/.tmp-xattr-test.cachefilesd"
 | |
| 	touch "${testfile}"
 | |
| 	# creates a file in the testpath and tries to set an attribute on it to check
 | |
| 	# if the support is available 
 | |
| 	attr -s test -V xattr "${testfile}" 2>&1 > /dev/null
 | |
| 	ret=$?
 | |
| 	rm -f "${testfile}"
 | |
| 	[ ${ret} -ne 0 ] && eerror "xattr support missing on the ${testpath} filesystem"
 | |
| 	return ${ret}
 | |
| }
 | |
| 
 | |
| start() {
 | |
| 	ebegin "Starting cachefilesd"
 | |
| 	checkxattr || return $? 
 | |
| 	# check if the cachefiles modules is loaded (or builtin)
 | |
| 	if [ ! -c /dev/cachefiles ] ; then
 | |
| 		local ret
 | |
| 		einfo "/dev/cachefiles doesn't exist, trying to modprobe cachefiles"
 | |
| 		modprobe cachefiles
 | |
| 		ret=$?
 | |
| 		if [ $ret -ne 0 ] ; then
 | |
| 			eerror "cachefiles modules cannot be loaded so cachefilesd "
 | |
| 			eerror 	"cannot be started, aborting. Did you build fscache in your "
 | |
| 			eerror	"kernel? Note that you need a 2.6.30 or better kernel"
 | |
| 			return $ret
 | |
| 		fi
 | |
| 	fi
 | |
| 	start-stop-daemon --start --pidfile /var/run/cachefilesd.pid --exec /usr/bin/cachefilesd -- ${OPTIONS}
 | |
| 	eend $? "Failed to start cachefilesd. Check the system log to see the error"
 | |
| 
 | |
| }
 | |
| 
 | |
| stop() {
 | |
| 	ebegin "Stopping cachefilesd"
 | |
| 	start-stop-daemon --stop --exec /usr/bin/cachefilesd --pidfile /var/run/cachefilesd.pid
 | |
| 	eend $? "Failed to stop cachefilesd"
 | |
| }
 | |
| 
 | |
| 
 |