Mercurial > vanilla
annotate system/smartmontools/smartd @ 621:8776fbd72b2f
system/smartmontools: initial import, closes #1655
author | David Demelier <markand@malikania.fr> |
---|---|
date | Tue, 23 Jul 2019 21:05:00 +0200 |
parents | |
children | 657ee4987f4d |
rev | line source |
---|---|
621
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 #!/bin/sh |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
2 # |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 # /etc/rc.d/smartd: run control script for smartd |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
4 |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 if [ -f /etc/rc.conf ]; then |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 . /etc/rc.conf |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 fi |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
9 : ${SMARTD_CMD:=/usr/sbin/smartd} |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
10 : ${SMARTD_ARGS:=} |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
11 : ${SMARTD_PID:=/var/run/smartd.pid} |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
12 |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 smartd_start() |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 { |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 echo "Starting smartd: $SMARTD_CMD $SMARTD_ARGS" |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 $SMARTD_CMD $SMARTD_ARGS -p $SMARTD_PID |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 } |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
18 |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
19 smartd_status() |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
20 { |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
21 if [ -s $SMARTD_PID ]; then |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
22 echo "smartd is running with pid: `cat $SMARTD_PID`" |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
23 else |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
24 echo "smartd is not running" |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
25 fi |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
26 } |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
27 |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
28 smartd_stop() |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
29 { |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
30 if [ -s $SMARTD_PID ]; then |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
31 echo "Stopping smartd." |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
32 kill -QUIT $(cat $SMARTD_PID) |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
33 rm -f $SMARTD_PID |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
34 fi |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
35 } |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
36 |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
37 smartd_restart() |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
38 { |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
39 smartd_stop |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
40 sleep 3 |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
41 smartd_start |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
42 } |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
43 |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
44 case $1 in |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
45 start) |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
46 smartd_start |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
47 ;; |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
48 status) |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
49 smartd_status |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
50 ;; |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
51 stop) |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
52 smartd_stop |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
53 ;; |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
54 restart) |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
55 smartd_restart |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
56 ;; |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
57 *) |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
58 echo "usage: $(basename $0) restart|start|status|stop" |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
59 ;; |
8776fbd72b2f
system/smartmontools: initial import, closes #1655
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
60 esac |