Mercurial > vanilla
changeset 621:8776fbd72b2f
system/smartmontools: initial import, closes #1655
author | David Demelier <markand@malikania.fr> |
---|---|
date | Tue, 23 Jul 2019 21:05:00 +0200 |
parents | 80faeb51a8f7 |
children | e04beece0bd7 |
files | system/smartmontools/smartd system/smartmontools/smartmontools.sh system/smartmontools/smartmontools.sha1 |
diffstat | 3 files changed, 129 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/system/smartmontools/smartd Tue Jul 23 21:05:00 2019 +0200 @@ -0,0 +1,60 @@ +#!/bin/sh +# +# /etc/rc.d/smartd: run control script for smartd + +if [ -f /etc/rc.conf ]; then + . /etc/rc.conf +fi + +: ${SMARTD_CMD:=/usr/sbin/smartd} +: ${SMARTD_ARGS:=} +: ${SMARTD_PID:=/var/run/smartd.pid} + +smartd_start() +{ + echo "Starting smartd: $SMARTD_CMD $SMARTD_ARGS" + $SMARTD_CMD $SMARTD_ARGS -p $SMARTD_PID +} + +smartd_status() +{ + if [ -s $SMARTD_PID ]; then + echo "smartd is running with pid: `cat $SMARTD_PID`" + else + echo "smartd is not running" + fi +} + +smartd_stop() +{ + if [ -s $SMARTD_PID ]; then + echo "Stopping smartd." + kill -QUIT $(cat $SMARTD_PID) + rm -f $SMARTD_PID + fi +} + +smartd_restart() +{ + smartd_stop + sleep 3 + smartd_start +} + +case $1 in +start) + smartd_start + ;; +status) + smartd_status + ;; +stop) + smartd_stop + ;; +restart) + smartd_restart + ;; +*) + echo "usage: $(basename $0) restart|start|status|stop" + ;; +esac
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/system/smartmontools/smartmontools.sh Tue Jul 23 21:05:00 2019 +0200 @@ -0,0 +1,68 @@ +#!/bin/sh +# +# Copyright (c) 2019 David Demelier <markand@malikania.fr> +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +# + +PKGNAME=smartmontools +PKGVERSION=7.0 +PKGREVISION=1 +PKGLICENSE="GPLv2+" +PKGSUMMARY="utilities to control and monitor SMART on hard drives" +PKGDOWNLOAD="https://downloads.sourceforge.net/sourceforge/$PKGNAME/$PKGNAME-$PKGVERSION.tar.gz" +PKGOPTIONS="SELINUX" +PKGPROTECT="etc/smartd.conf + etc/smartd_warning.sh" + +: ${CHOST:=$(uname -m)-linux-musl} +: ${CBUILD:=$(uname -m)-linux-musl} +: ${CC:=clang} +: ${CFLAGS:=-O2} +: ${CXX:=clang++} +: ${CXXFLAGS:=-O2} +: ${LDFLAGS:=} +: ${LIBS:=} +: ${SELINUX:=no} + +if [ "$SELINUX" = "yes" ]; then + with_selinux="--with-selinux" +else + with_selinux="--without-selinux" +fi + +build() +{ + rm -rf $PKGNAME-$PKGVERSION + tar xvf $PKGNAME-$PKGVERSION.tar.gz + cd $PKGNAME-$PKGVERSION + + CC="$CC" \ + CFLAGS="$CFLAGS" \ + CXX="$CXX" \ + CXXFLAGS="$CXXFLAGS" \ + LDFLAGS="$LDFLAGS" \ + LIBS="$LIBS" \ + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix= \ + --sbindir=/bin \ + $with_selinux + make + make install DESTDIR=$DESTDIR + install -Dm0644 ../smartd $DESTDIR/etc/rc.d/smartd + + cd .. + rm -rf $PKGNAME-$PKGVERSION +}