1

I have following bash script, I wanted to add few more things to it: (This script runs from root cronjob every 6 hours). Device is Raspberry Pi running raspberian.

#!/bin/bash # Script: temp_email.sh # ------------------------------------------------------- cpu=$(</sys/class/thermal/thermal_zone0/temp) echo "$(date) @ $(hostname)" echo "-------------------------------------------" echo "GPU => $(/opt/vc/bin/vcgencmd measure_temp)" echo "CPU => $((cpu/1000))'C" echo "-------------------------------------------" echo "" echo "" 

Following is the functionality I'd like to add to this:

I wanted to get current (at the time the script executes) status of apache2 web service. I have tried "service apache2 status" but the output is too long. I would like to get a simple running / stopped in case of the service status.

I would like get status of 2 drives which are mounted under /mount_folder/ . I have tried mount -l but again the information is too much. How do I get only the output for /dev/sd* devices?

Finally I would like for this script to start apache service if it is stopped and mount the devices under /dev/sd* to their respective mount point.

Could someone kindly guide me to it.

1 Answer 1

2

For the current state of apache2 you can use:

rpi ~$ systemctl list-units --no-legend apache2.service | cut -d' ' -f4 running rpi ~$ 

For the mount status of '/dev/sd*' you can use (example):

rpi ~$ lsblk -dlno NAME,MOUNTPOINT /dev/sd??* /dev/sda1 /boot /dev/sda2 /dev/sda5 /dev/sdb1 /mnt/disk rpi ~$ 

To start apache service you can use:

rpi ~$ sudo systemctl start apache2.service 

This will do nothing if the service is already started. For mounting the block devices you use the normal mount command, e.g.:

rpi ~$ sudo mount /dev/sdb1 /mount_folder/sdb1 rpi ~$ sudo mount /dev/sdb2 /mount_folder/sdb2 
6
  • @ParthManiar I'm glad to help you. May it be possible that you accept the answer (the tick on the left side)? This finishes your question and others can see in overviews that the question has an answer. Commented Nov 14, 2018 at 11:29
  • Done. Pardon me for missing out on that. Commented Nov 14, 2018 at 11:40
  • Can you guide me to have a loop in place for this? It should check for mount and service status and only start / mount in case it finds it off / unmounted. I know that starting apache in case it is already on has no effects but I would like to have this in a loop only to initiate if there's a failure. :) Commented Nov 14, 2018 at 11:46
  • @ParthManiar yes, no problem, but it's difficult to do it in this question. This is finished. Comments are not the right way to do it. The best is you make a new question. Commented Nov 14, 2018 at 11:53
  • @ParthManiar But I'm afraid that it can be voted to close (5 votes required) because it's not really belonging to Raspberry Pi. It is bash programming. Commented Nov 14, 2018 at 11:59

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.