testan a reboold \
This commit is contained in:
+78
-77
@@ -33,92 +33,93 @@ long_delay_seconds=$(($long_delay * 60))
|
||||
short_delay_seconds=$(($short_delay * 60))
|
||||
|
||||
reconfigure_full () {
|
||||
# make sure dir works
|
||||
if [ -z $1 ] || [ ! -d "$1" ]; then
|
||||
echo "usage bash reconfig_full.sh /path/to/config/dir"
|
||||
exit
|
||||
fi
|
||||
# make sure dir works
|
||||
if [ -z $1 ] || [ ! -d "$1" ]; then
|
||||
echo "usage bash reconfig_full.sh /path/to/config/dir"
|
||||
exit
|
||||
fi
|
||||
|
||||
# paths
|
||||
## place in system
|
||||
gpsd="/etc/default/gpsd"
|
||||
chrony="/etc/chrony/conf.d/precision_timekeeping.conf"
|
||||
grafana="/etc/grafana/grafana.ini"
|
||||
influxdb="/etc/influxdb/influxdb.conf"
|
||||
telegraf="/etc/telegraf/telegraf.conf"
|
||||
udev_rule="/etc/udev/rules.d/50-tty.rules"
|
||||
bootfirmwareconfig="/boot/firmware/config.txt"
|
||||
sudoers="/etc/sudoers"
|
||||
# hwclockset="/lib/udev/hwclock-set"
|
||||
# paths
|
||||
## place in system
|
||||
gpsd="/etc/default/gpsd"
|
||||
chrony="/etc/chrony/conf.d/precision_timekeeping.conf"
|
||||
grafana="/etc/grafana/grafana.ini"
|
||||
influxdb="/etc/influxdb/influxdb.conf"
|
||||
telegraf="/etc/telegraf/telegraf.conf"
|
||||
udev_rule="/etc/udev/rules.d/50-tty.rules"
|
||||
bootfirmwareconfig="/boot/firmware/config.txt"
|
||||
sudoers="/etc/sudoers"
|
||||
devnull="/dev/null"
|
||||
# hwclockset="/lib/udev/hwclock-set"
|
||||
|
||||
# new conf file paths
|
||||
gpsd_new=""$1/gpsd""
|
||||
chrony_new="$1/chrony.conf"
|
||||
grafana_new="$1/grafana.ini"
|
||||
influxdb_new="$1/influxdb.conf"
|
||||
telegraf_new="$1/telegraf.conf"
|
||||
udev_new="$1/50-tty.rules"
|
||||
bootfirmwareconfig_new="$1/boot-firmware-config.txt"
|
||||
crontab_new="$1/root-crontab"
|
||||
sudoers_new="$1/sudoers"
|
||||
# hwclockset_new="$1/hwclock-set"
|
||||
# new conf file paths
|
||||
gpsd_new=""$1/gpsd""
|
||||
chrony_new="$1/chrony.conf"
|
||||
grafana_new="$1/grafana.ini"
|
||||
influxdb_new="$1/influxdb.conf"
|
||||
telegraf_new="$1/telegraf.conf"
|
||||
udev_new="$1/50-tty.rules"
|
||||
bootfirmwareconfig_new="$1/boot-firmware-config.txt"
|
||||
crontab_new="$1/root-crontab"
|
||||
sudoers_new="$1/sudoers"
|
||||
# hwclockset_new="$1/hwclock-set"
|
||||
|
||||
# stop da services
|
||||
bash $git_dir/services.sh stop
|
||||
# stop da services
|
||||
bash $git_dir/services.sh stop
|
||||
|
||||
# backup conf
|
||||
bash $git_dir/dump_configs.sh
|
||||
# backup conf
|
||||
bash $git_dir/dump_configs.sh
|
||||
|
||||
# replace dem by truncation
|
||||
echo "Placing the new config files by truncation..."
|
||||
echo -e "\tConfiguring gpsd"
|
||||
sudo bash -c "cat $gpsd_new > $gpsd"
|
||||
echo -e "\tConfiguring chrony"
|
||||
sudo bash -c "cat $chrony_new > $chrony"
|
||||
echo -e "\tConfiguring grafana"
|
||||
sudo bash -c "cat $grafana_new > $grafana"
|
||||
echo -e "\tConfiguring influxdb"
|
||||
sudo bash -c "cat $influxdb_new > $influxdb"
|
||||
echo -e "\tConfiguring telegraf"
|
||||
sudo bash -c "cat $telegraf_new > $telegraf"
|
||||
echo -e "\tConfiguring udev"
|
||||
sudo bash -c "cat $udev_new > $udev_rule"
|
||||
# replace dem by truncation
|
||||
echo "Placing the new config files by truncation..."
|
||||
echo -e "\tConfiguring gpsd"
|
||||
sudo bash -c "cat $gpsd_new > $gpsd"
|
||||
echo -e "\tConfiguring chrony"
|
||||
sudo bash -c "cat $chrony_new > $chrony"
|
||||
echo -e "\tConfiguring grafana"
|
||||
sudo bash -c "cat $grafana_new > $grafana"
|
||||
echo -e "\tConfiguring influxdb"
|
||||
sudo bash -c "cat $influxdb_new > $influxdb"
|
||||
echo -e "\tConfiguring telegraf"
|
||||
sudo bash -c "cat $telegraf_new > $telegraf"
|
||||
echo -e "\tConfiguring udev"
|
||||
sudo bash -c "cat $udev_new > $udev_rule"
|
||||
|
||||
# setup and install root crontabs
|
||||
echo -e "\nInstalling root cronjobs\n"
|
||||
(sudo crontab -l 2>/dev/null && sudo cat $crontab_new) | sudo crontab -
|
||||
# setup and install root crontabs
|
||||
echo -e "\nInstalling root cronjobs\n"
|
||||
(sudo crontab -l 2>$devnull && sudo cat $crontab_new) | sudo crontab -
|
||||
|
||||
# set up passwordless sudo
|
||||
## backup first
|
||||
sudo cp $sudoers "$sudoers.bak"
|
||||
## replace sudoers with mine
|
||||
sudo bash -c "cat $sudoers_new > $sudoers"
|
||||
## test it
|
||||
sudo visudo -c
|
||||
# set up passwordless sudo
|
||||
## backup first
|
||||
sudo cp $sudoers "$sudoers.bak"
|
||||
## replace sudoers with mine
|
||||
sudo bash -c "cat $sudoers_new > $sudoers"
|
||||
## test it
|
||||
sudo visudo -c
|
||||
|
||||
# config hwclockset
|
||||
# echo -e "\tConfiguring hwclockset"
|
||||
# sudo bash -c "cat $hwclockset_new > $hwclockset"
|
||||
# config hwclockset
|
||||
# echo -e "\tConfiguring hwclockset"
|
||||
# sudo bash -c "cat $hwclockset_new > $hwclockset"
|
||||
|
||||
# check if /boot/firmware/config.txt is configured yet
|
||||
sudo grep -q -e "GPS PPS signals" $bootfirmwareconfig
|
||||
grepconfig=$?
|
||||
# check if /boot/firmware/config.txt is configured yet
|
||||
sudo grep -q -e "GPS PPS signals" $bootfirmwareconfig
|
||||
grepconfig=$?
|
||||
|
||||
# configure the overlay
|
||||
if [ $grepconfig -eq 0 ]; then # if config exists, skip
|
||||
echo "$bootfirmwareconfig already updated, skipping..."
|
||||
else
|
||||
# APPEND to /boot/firmware/config.txt
|
||||
echo "Appending configs to $bootfirmwareconfig"
|
||||
sudo bash -c "cat $bootfirmwareconfig_new >> $bootfirmwareconfig"
|
||||
echo $?
|
||||
fi
|
||||
# configure the overlay
|
||||
if [ $grepconfig -eq 0 ]; then # if config exists, skip
|
||||
echo "$bootfirmwareconfig already updated, skipping..."
|
||||
else
|
||||
# APPEND to /boot/firmware/config.txt
|
||||
echo "Appending configs to $bootfirmwareconfig"
|
||||
sudo bash -c "cat $bootfirmwareconfig_new >> $bootfirmwareconfig"
|
||||
echo $?
|
||||
fi
|
||||
|
||||
# finish the log
|
||||
echo "reconfig_full.sh complete" >> $status_log
|
||||
# finish the log
|
||||
echo "reconfig_full.sh complete" >> $status_log
|
||||
|
||||
# start da services
|
||||
bash $git_dir/services.sh start
|
||||
# start da services
|
||||
bash $git_dir/services.sh start
|
||||
}
|
||||
|
||||
phase_one () {
|
||||
@@ -226,7 +227,7 @@ phase_four () {
|
||||
echo -e "\nAdd Grafana repo...\n"
|
||||
sudo mkdir -p /etc/apt/keyrings/
|
||||
wget -q -O - https://apt.grafana.com/gpg.key | gpg --dearmor | sudo tee /etc/apt/keyrings/grafana.gpg
|
||||
echo "deb [signed-by=/etc/apt/keyrings/grafana.gpg] https://apt.grafana.com stable main" | sudo tee /etc/apt/sources.list.d/grafana.list >/dev/null # otherwisse get some stupid binary output to terminal
|
||||
echo "deb [signed-by=/etc/apt/keyrings/grafana.gpg] https://apt.grafana.com stable main" | sudo tee /etc/apt/sources.list.d/grafana.list >$devnull # otherwisse get some stupid binary output to terminal
|
||||
|
||||
# telegraf repo and install
|
||||
echo -e "\nAdd Telegraf repo...\n"
|
||||
@@ -237,7 +238,7 @@ phase_four () {
|
||||
| gpg --dearmor \
|
||||
| sudo tee /etc/apt/trusted.gpg.d/influxdata-archive.gpg \
|
||||
&& echo 'deb [signed-by=/etc/apt/trusted.gpg.d/influxdata-archive.gpg] https://repos.influxdata.com/debian stable main' \
|
||||
| sudo tee /etc/apt/sources.list.d/influxdata.list >/dev/null # otherwisse get some stupid binary output to terminal
|
||||
| sudo tee /etc/apt/sources.list.d/influxdata.list >$devnull # otherwisse get some stupid binary output to terminal
|
||||
|
||||
# remove dat key file thing
|
||||
if [ -f /home/$username/influxdata-archive.key ]; then
|
||||
@@ -351,7 +352,7 @@ phase_five () {
|
||||
# running (warn level)
|
||||
# bash ./reconfig_full.sh ./running-warn-level-conf
|
||||
# debug/dev mode
|
||||
bash $git_dir/reconfig_full.sh "$git_dir/info-level-conf-huawaii"
|
||||
reconfig_full "$git_dir/info-level-conf-huawaii"
|
||||
|
||||
# safety delay
|
||||
echo -e "\nSleeping 60 seconds to make sure its as stable as possible\n"
|
||||
|
||||
Reference in New Issue
Block a user