Skip to content

Instantly share code, notes, and snippets.

fragolinux

Block or report user

Report or block fragolinux

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View docker4buster
sudo apt -y update
sudo apt -y install apt-transport-https ca-certificates curl gnupg2 gnupg-agent software-properties-common
curl -sL get.docker.com | sudo sh
# if your default user is not "pi", change next line
sudo usermod -aG docker pi
sudo apt -y install docker-compose
# open new putty session, or logout and login again
docker -v && docker-compose -v
View nginxreverse4scargill
# run this AFTER this script: https://gist.github.com/fragolinux/7229c1785652e4598d0bb61e50aa9093#file-nginx4apache
# to add reverse proxy functionalities to same system... this way you'll have:
# grafana, from ip:3000 to ip/grafana
# nodered and its dashboard, from ip:1880 to ip/nodered and ip/ui
# chronograf, from ip:8888 to ip/chronograf
# if you change Nginx default port, all the above will change accordingly (example: web on http://ip:81 then nodered on http://ip:81/nodered)
# reverse proxy for grafana, from ip:3000 to ip/grafana
sudo sed -i -e 's#;root_url = http://localhost:3000#root_url = http://localhost:3000/grafana/#g' /etc/grafana/grafana.ini
sudo sed -i -e '71i\\n location /grafana/ {\n proxy_pass http://localhost:3000/;\n }\n' /etc/nginx/sites-enabled/default
View nginx4apache
# run this on a Debian Buster system setup by Peter Scargill's "The Script" to replace APACHE with NGINX, AFTER his script run...
# completely replace apache for nginx
sudo apt-get -y remove --purge *apache* *php*
sudo apt-get -y autoremove
sudo apt-get -y install nginx sqlite3 php php7.3-{common,cli,fpm,json,zip,gd,mbstring,curl,xml,pear,bcmath,sqlite3}
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/default.bak
sudo sed -i -e 's/index index.html/index index.php index.html/g' /etc/nginx/sites-enabled/default
sudo sed -i -e 's/#location ~ \\.php$ {/location ~ \\.php$ {/g' /etc/nginx/sites-enabled/default
sudo sed -i -e 's/#.*include snippets/ include snippets/g' /etc/nginx/sites-enabled/default
sudo sed -i -e 's/#.*fastcgi_pass unix/ fastcgi_pass unix/g' /etc/nginx/sites-enabled/default
@fragolinux
fragolinux / backup.sh
Last active Jul 29, 2019
simple but effective node-red setup backup script
View backup.sh
#!/bin/bash
cd
# useful vars
DATE=$(date +"%Y%m%d%H%M")
WHERE=~/backup/$DATE
# create dated backup folders
mkdir -p $WHERE/{sqlite,nodered,etc}
# safely backup sqlite db
sqlite3 ~/dbs/iot.db ".backup $WHERE/sqlite/iot.db"
# backup json and js files
@fragolinux
fragolinux / expand the root partition and then its filesystem
Last active May 28, 2017
expand the root partition and then its filesystem
View expand the root partition and then its filesystem
# first part, enlarge partition to 100%
sudo apt-get install -y -qq parted
ROOT_DISK=$(sudo lsblk -s|grep -A1 \/$|grep -v \/$|tr -d "└─"|cut -d\ -f 1)
PART_NUM=$(sudo parted -l $ROOT_DISK|grep ext4|sed "s/^[ \t]*//"|cut -d\ -f 1)
sudo parted -s /dev/$ROOT_DISK unit % resizepart $PART_NUM 100% || sudo parted /dev/$ROOT_DISK unit % resizepart $PART_NUM Yes 100%
touch /forcefsck
sudo reboot
# second part, enlarge inside filesystem
View json rsyslog
# create a conf file (/etc/rsyslog.d/10-mylog.conf) as follows
# then restart rsyslog: sudo /etc/init.d/rsyslog restart
# in this example, i search log entries for the word "sda"
# and log in text format in /var/log/hdt.log and in json in /var/log/hdj.log
module(load="mmjsonparse")
template(name="json-template"
type="list") {
constant(value="{")
@fragolinux
fragolinux / email from command line using gmail as smtp
Last active Jun 11, 2017
email from command line using gmail as smtp
View email from command line using gmail as smtp
# how to send emails, with attachments, from linux command line, using gmail as relay server
# you need to allow insecure apps: https://support.google.com/accounts/answer/6010255
sudo apt-get install -y libnss3-tools heirloom-mailx
mkdir ~/.certs
certutil -N --empty-password -d ~/.certs
echo -n | openssl s_client -connect smtp.gmail.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/gmail.crt
certutil -A -n "Google Internet Authority" -t "C,," -d ~/.certs -i ~/.certs/gmail.crt
# now create a new config file (example: nano $HOME/.mailrc) containing the following lines - change USER and PASSWORD as you need:
View watch-your-pi-0.3.sh
#!/bin/bash
#
# Watch your Pi! RPi foundation knows that Micro USB for DC-IN
# is sh*t but also doesn't give a sh*t. Voltage drops caused by
# average USB cables cause all sorts of instabilities and also
# data corruption but instead of fixing the problem they masked
# it in their 'firmware'. The main CPU on the Raspberry monitors
# voltage drops and then acts on accordingly. If heavy voltage
# drops directly after startup are monitored the firmware lowers
# the core voltage available to CPU cores and also caps CPU
View temp.sh
#!/bin/bash
# credits to DietPi
# to check it constantly, run: watch bash temp.sh
CPU_TEMP_CURRENT='Unknown'
CPU_TEMP_PRINT='Unknown'
ACTIVECORES=$(grep -c processor /proc/cpuinfo)
#Array to store possible locations for temp read.
aFP_TEMPERATURE=(
View beautysh
git clone https://github.com/bemeurer/beautysh
cd beautysh
sudo python setup.py install
cd
sudo rm -rf beautysh
beautysh -f script.sh
You can’t perform that action at this time.