Codebase list atop / run/560d1cd7-55b2-4f99-8af5-c950b3e1b2a4/main atopacct.rc.openrc
run/560d1cd7-55b2-4f99-8af5-c950b3e1b2a4/main

Tree @run/560d1cd7-55b2-4f99-8af5-c950b3e1b2a4/main (Download .tar.gz)

atopacct.rc.openrc @run/560d1cd7-55b2-4f99-8af5-c950b3e1b2a4/mainraw · history · blame

#!/sbin/openrc-run
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

description="Resource-specific view of processes"
command="/usr/sbin/atopacctd"
lockfile="/var/lock/subsys/atopacctd"

start_pre() {
	# Check if process accounting already in use via psacct
        for PACCTFILE in /var/account/pacct /var/log/pacct ; do
                if [ -f "${PACCTFILE}" ] ; then
                        BEFORSIZE=$(stat -c %s "${PACCTFILE}")
                        AFTERSIZE=$(stat -c %s "${PACCTFILE}")

                        # verify if accounting file grows, so is in use
                        if [ ${BEFORSIZE} -lt ${AFTERSIZE} ] ; then
				ewarn "Process accounting already used by psacct!"
				return 1
			fi
		fi
	done

	checkpath -d -q ${lockfile%/*} || return 1
}

start() {
	ebegin "Starting atopacctd"
	start-stop-daemon --start --exec ${command}
	touch ${lockfile}
	eend $?
}

stop() {
	ebegin "Stopping atopacctd"
	start-stop-daemon --stop --exec ${command}
	rm ${lockfile}
	eend $?
}