forked from ~ljy/RK356X_SDK_RELEASE

hc
2023-02-13 e440ec23c5a540cdd3f7464e8779219be6fd3d95
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
#! /bin/sh
 
# smartmontools init file for smartd
# Copyright (C) 2002-8 Bruce Allen <smartmontools-support@lists.sourceforge.net>
# $Id: smartd.initd.in 3360 2011-06-06 19:25:36Z chrfranke $
 
# For RedHat and cousins:
# chkconfig: - 60 60
# description: Self Monitoring and Reporting Technology (SMART) Daemon
# processname: smartd 
 
# For SuSE and cousins
### BEGIN INIT INFO
# Provides:                   smartd
# Required-Start:             $syslog $remote_fs
# Should-Start:               sendmail
# Required-Stop:              $syslog $remote_fs
# Should-Stop:                sendmail
# Default-Start:              2 3 4 5
# Default-Stop:               0 1 6
# Short-Description:          Monitors disk and tape health via S.M.A.R.T.
# Description:                Start S.M.A.R.T. disk and tape monitor.
### END INIT INFO
 
# This program is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the Free
# Software Foundation; either version 2, or (at your option) any later
# version. 
# You should have received a copy of the GNU General Public License (for
# example COPYING); if not, write to the Free Software Foundation, Inc., 675
# Mass Ave, Cambridge, MA 02139, USA.
# This code was originally developed as a Senior Thesis by Michael Cornwell
# at the Concurrent Systems Laboratory (now part of the Storage Systems
# Research Center), Jack Baskin School of Engineering, University of
# California, Santa Cruz. http://ssrc.soe.ucsc.edu/.
 
# Uncomment the line below to pass options to smartd on startup. 
# Note that distribution specific configuration files like
# /etc/{default,sysconfig}/smartmontools might override these
#smartd_opts="--interval=1800"
 
SMARTD_BIN=/usr/sbin/smartd
SMARTDPID=/var/run/smartd.pid
[ -x $SMARTD_BIN ] || exit 0
RET=0
 
# source configuration file
[ -r /etc/default/rcS ] && . /etc/default/rcS
[ -r /etc/default/smartmontools ] && . /etc/default/smartmontools
 
smartd_opts="--pidfile $SMARTDPID $smartd_opts"
 
case "$1" in
   start)
       if [ "$start_smartd" != "yes" ]; then
           [ "$VERBOSE" != "no" ] && echo "Not starting S.M.A.R.T. daemon smartd, disabled via /etc/default/smartmontools"
           exit 0
       fi
       echo -n "Starting S.M.A.R.T. daemon: smartd"
       if start-stop-daemon --start --quiet --pidfile $SMARTDPID \
           --exec $SMARTD_BIN -- $smartd_opts; then
           echo "."
       else
           echo " (failed)"
           RET=1
       fi
       ;;
   stop)
       echo -n "Stopping S.M.A.R.T. daemon: smartd"
       start-stop-daemon --stop --quiet --oknodo --pidfile $SMARTDPID
       echo "."
       ;;
   restart)
       $0 stop
       $0 start
       ;;
   force-reload)
       $0 reload || $0 restart
       ;;
   reload)
       echo -n "Reload S.M.A.R.T. daemon: smartd"
       if start-stop-daemon --stop --quiet --signal 1 \
           --pidfile $SMARTDPID; then
           echo "."
       else
           echo " (failed)"
           RET=1
       fi
       ;;
   report)
       echo -n "Checking SMART devices now"
       if start-stop-daemon --stop --quiet --signal 10 \
           --pidfile $SMARTDPID; then
           echo "."
       else
           echo " (failed)"
           RET=1
       fi
       ;;
   status)
       if pidof $SMARTD_BIN >/dev/null; then
           echo "$SMARTD_BIN is running."
       else
           echo "$SMARTD_BIN is not running."
           RET=1
       fi
       ;;
   *)
       echo "Usage: $0 {start|stop|restart|force-reload|reload|report|status}"
       exit 1
esac
exit $RET