summaryrefslogtreecommitdiff
path: root/target/device/valka/target_skeleton/etc/rc.d/nbd_swap
blob: b2a4a9c25cc74ba8ee0dccfdba3b40a4d210a548 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/bin/ash
. /etc/rc.subr

start() {
	echo -n " * Starting nbd swap: "
	 if [ ! -x ${nbd_swap_program} ]; then
		log_error "Missing 'nbd_client' program (${nbd_swap_program})"
		echo "Failed"
		return 1
	fi

	mknod ${nbd_swap_device} b 43 0
	${nbd_swap_program} ${nbd_swap_server} ${nbd_swap_port} ${nbd_swap_device} &
	pid=$!
	if [ "$?" -eq 0 ]; then
		echo "${pid}" > ${nbd_swap_pidfile}
		mkswap ${nbd_swap_device}
		swapon ${nbd_swap_device}
		echo "Ok"
	else
		echo "Failed"
	fi
}

stop() {
	echo " * Stopping nbd swap..."
	swapoff ${nbd_swap_device}
	killpid ${nbd_swap_pidfile}
}

rc_run_command "$1" "nbd_swap"