Skip to content

Instantly share code, notes, and snippets.

@simbalinux
simbalinux / stat_compare
Created July 13, 2018 17:19
stat compare on directory
#!/usr/bin/env bash
DIR_TO_CHECK='./'
OLD_STAT_FILE='./old_stat.txt'
if [ -e $OLD_STAT_FILE ]
then
OLD_STAT=$(cat $OLD_STAT_FILE)
else
@simbalinux
simbalinux / haproxy.cfg
Created July 14, 2018 18:38
HAproxy frontend/backend configuration
#---------------------------------------------------------------------
# FrontEnd Configuration
#---------------------------------------------------------------------
frontend http
bind *:80
option http-server-close
option forwardfor
default_backend backend
frontend https
@simbalinux
simbalinux / lamp_7ssl
Last active September 23, 2018 16:52
LAMP PHP 7 w/ ssl provision script
#!/usr/bin/bash
set -x
#enable ssh to the host
sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config
#disable selinux
sed -i 's/enforcing/disabled/g' /etc/selinux/config /etc/selinux/config
# check hostname
hostname -f
# update and install Apache
@simbalinux
simbalinux / haproxy_setup
Last active September 23, 2018 16:51
provision script for haproxy
#!/usr/bin/bash
# use this script to provision/configure haproxy when CM is not setup or applicable
set -x
#enable ssh
sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config
#disable selinux
sed -i 's/enforcing/disabled/g' /etc/selinux/config /etc/selinux/config
if [ ! $(command -v haproxy) ]; then
@simbalinux
simbalinux / find_examples
Last active November 3, 2021 01:56
using find command in linux
#!/usr/bin/env bash
# different ways to use the linux find command preferred choice typically.
find . -exec grep chrome {} +
#find will execute grep and will substitute {} with the filename(s) found. The difference between ; and + #is that with ; a single grep command for each file is executed whereas with + as many files as possible #are given as parameters to grep at once.
#If you use the \; ending construct grep is passed one file at a time, so it doesn't display the file name by default, only the matched lines. To get a file list instead add use grep -ls inside of the find construct.
@simbalinux
simbalinux / check_keys
Last active September 23, 2018 16:50
Verify ssh keys exist || create new ones without password
#!/usr/bin/env bash
# check if ssh keys exist else create keys with no password automatically no prompting, ideal for shell scripts and automation
if [ -f $HOME/.ssh/id_rsa ]; then
echo rsa key installed
else
ssh-keygen -f /root/.ssh/id_rsa -t rsa -N ''
fi
@simbalinux
simbalinux / jq_array
Last active September 23, 2018 16:49
parsing json using jq and bash arrays
#!/usr/bin/env bash
## use this to parse json and extract what you need and place in BASH as array with unique elements, if you need this to be a single "string" remove the \n in the print statement below.
echo '
{
"devDependencies": {
"babel-cli": "^6.26.0",
"babel-preset-env": "^1.7.0",
"babel-plugin-lodash": "^3.3.4",
"eslint": "^5.4.0",
@simbalinux
simbalinux / swapoff
Created October 1, 2018 19:50
Turn off swap
#!/usr/bin/env bash
# turn off swap
swapoff -a
sed -i '/ swap / s/^/#/' /etc/fstab
# reboot
@simbalinux
simbalinux / install_vagrant
Last active October 29, 2018 21:02
Centos7 Vagrant && VirtualBox-5.2
#!/usr/bin/env bash
# enable debug mode
set -x
# 1. deploy new install of Centos 7 minimal
# 2. ensure that "secure boot" is disabled otherwise you get the following error: (see below)
#######
# vboxdrv.sh: failed: modprobe vboxdrv failed. Please use 'dmesg' to find out why.
# update & upgrade system
yum -y update && yum -y upgrade
@simbalinux
simbalinux / api_download
Last active November 1, 2018 16:10
pcfdev setup
#!/usr/bin/env bash
set -e
source config
sleep 10
export PIVNET_TOKEN="$token"
export LOCAL_FILE_NAME=pcfdev-v0.30.0+PCF1.11.0-linux.zip
export DOWNLOAD_URL=https://network.pivotal.io/api/v2/products/pcfdev/releases/88478/product_files/125612/download
#export OPSMGR_HOST=localhost
export OPSMGR_USER="$useraccount"
export OPSMGR_PASSWORD="$password"