12-03-2023
This commit is contained in:
215
apache_tools_v2.sh
Executable file
215
apache_tools_v2.sh
Executable file
@@ -0,0 +1,215 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
underline="\033[4m"
|
||||||
|
red="\033[1;31m"
|
||||||
|
green="\033[1;32m"
|
||||||
|
yellow="\033[1;33m"
|
||||||
|
bold="\033[1m"
|
||||||
|
reset="\033[0m"
|
||||||
|
|
||||||
|
homebrew_path=$(brew --prefix)
|
||||||
|
editeur=/usr/local/bin/bbedit
|
||||||
|
|
||||||
|
# apache
|
||||||
|
v_apache=$(apachectl -v | sed -n '1p' | awk -F":" '{print $2}' | xargs)
|
||||||
|
conf_apache=$(httpd -V | grep 'SERVER_CONFIG_FILE' | awk -F "\"" '{print $2}')
|
||||||
|
document_root=$(grep -e '^DocumentRoot' "$conf_apache" | awk '{print $2}' | sed 's/\"//g')
|
||||||
|
log_apa=$(grep -e '^ErrorLog' "$conf_apache" | awk -F "\"" '{print $2}')
|
||||||
|
access_apa=$(grep -e 'CustomLog' "$conf_apache" | grep -v "#" | awk -F "\"" '{print $2}')
|
||||||
|
vhost=$(grep -e 'httpd-vhosts.conf' "$conf_apache" | awk '{print $2}')
|
||||||
|
ssl=$(grep -e 'httpd-ssl.conf' "$conf_apache" | awk '{print $2}')
|
||||||
|
config_apache=()
|
||||||
|
config_apache+=("$conf_apache")
|
||||||
|
config_apache+=("$vhost")
|
||||||
|
config_apache+=("$ssl")
|
||||||
|
|
||||||
|
|
||||||
|
# PHP
|
||||||
|
declare -a additionnal=()
|
||||||
|
|
||||||
|
add_ini() {
|
||||||
|
|
||||||
|
# Current php version (from httpd.conf)
|
||||||
|
ip=$(grep -E SetHandler $conf_apache | grep -v \# | grep -E -o "([0-9]{1,3}[\.]){3}[0-9]{1,3}:[0-9]{4}")
|
||||||
|
x=${ip: -2}
|
||||||
|
current_simple_php_version="${x:0:1}.${x:1}"
|
||||||
|
current_php_version="php@${x:0:1}.${x:1}"
|
||||||
|
v_php=$($homebrew_path/opt/$current_php_version/bin/php -v)
|
||||||
|
|
||||||
|
php_ini="$homebrew_path/etc/php/$current_simple_php_version/php.ini"
|
||||||
|
|
||||||
|
conf_php=()
|
||||||
|
conf_php+=("$php_ini")
|
||||||
|
conf_php+=("$homebrew_path/etc/php/$current_simple_php_version/php-fpm.d/www.conf")
|
||||||
|
|
||||||
|
addconf_php=$(find "$homebrew_path/etc/php/$current_simple_php_version/conf.d" -name "*.ini" | sort -n)
|
||||||
|
|
||||||
|
z=0
|
||||||
|
additionnal=()
|
||||||
|
for i in $addconf_php
|
||||||
|
do
|
||||||
|
additionnal+=("$addconf_dir$i")
|
||||||
|
done
|
||||||
|
|
||||||
|
conf_php+=(${additionnal[@]})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# MySQL
|
||||||
|
my=$(mysql --help | grep -A1 'Default options' | grep '.my.cnf')
|
||||||
|
conf_mysql=($my)
|
||||||
|
v_mysql=$(mysql -V | awk -F"," '{print $1}' | xargs)
|
||||||
|
|
||||||
|
|
||||||
|
# Functions
|
||||||
|
error_log(){
|
||||||
|
tail -f "$log_apa" &
|
||||||
|
tailpid=$!
|
||||||
|
sleep 0.25
|
||||||
|
read -p "< Press Enter to quit tail ! >"
|
||||||
|
|
||||||
|
kill $tailpid
|
||||||
|
}
|
||||||
|
|
||||||
|
acces_log(){
|
||||||
|
tail -f "$access_apa" &
|
||||||
|
tailpid=$!
|
||||||
|
sleep 0.25
|
||||||
|
read -p "< Press Enter to quit tail ! >"
|
||||||
|
|
||||||
|
kill $tailpid
|
||||||
|
}
|
||||||
|
|
||||||
|
entete(){
|
||||||
|
v_php_short=$(echo "$v_php" | sed -n '1p' )
|
||||||
|
printf "Apache: %s\n" "$v_apache"
|
||||||
|
printf "PHP: %s\n" "$v_php_short"
|
||||||
|
printf "MySQL: %s\n" "$v_mysql"
|
||||||
|
echo ""
|
||||||
|
}
|
||||||
|
|
||||||
|
versions(){
|
||||||
|
echo -e "\n${underline}Apache/PHP/MySQL Version:${reset}\n"
|
||||||
|
|
||||||
|
apachectl -v
|
||||||
|
echo ""
|
||||||
|
$homebrew_path/opt/$current_php_version/bin/php -v
|
||||||
|
echo ""
|
||||||
|
mysql --version
|
||||||
|
echo ""
|
||||||
|
read -p "< Press Enter>"
|
||||||
|
}
|
||||||
|
|
||||||
|
conf_files(){
|
||||||
|
echo -e "\n${underline}Apache/PHP/MySQL Configuration files:${reset}\n"
|
||||||
|
|
||||||
|
echo -e "\033[4mApache:\033[0m " #&& echo $conf_apache
|
||||||
|
for line in "${config_apache[@]}"
|
||||||
|
do
|
||||||
|
echo -e " ● $line"
|
||||||
|
done
|
||||||
|
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo -e "\033[4mPHP:\033[0m " # && echo "$conf_php"
|
||||||
|
for line in "${conf_php[@]}"
|
||||||
|
do
|
||||||
|
echo -e " ● $line"
|
||||||
|
done
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo -e "\033[4mMySQL:\033[0m "
|
||||||
|
for line in "${conf_mysql[@]}"
|
||||||
|
do
|
||||||
|
echo -e " ● $line"
|
||||||
|
done
|
||||||
|
|
||||||
|
echo
|
||||||
|
read -p "< Press Enter>"
|
||||||
|
}
|
||||||
|
|
||||||
|
submenu(){
|
||||||
|
options2=("${additionnal[@]}" "(M)enu")
|
||||||
|
echo "Edit which file ?: "
|
||||||
|
select opt in "${options2[@]}"; do
|
||||||
|
[[ $opt == "(M)enu" ]] || [[ $REPLY == "m" ]] || [[ $REPLY == "M" ]] && menu;
|
||||||
|
[[ -z $opt ]] && echo "Wrong choice !"
|
||||||
|
[[ -n $opt ]] && "$editeur" "$opt";
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
switch_php(){
|
||||||
|
php_installed_array=()
|
||||||
|
|
||||||
|
for i in $(ls $homebrew_path/etc/php/); do
|
||||||
|
[[ -d "$homebrew_path/etc/php/$i" ]] && php_installed_array+=("$i");
|
||||||
|
done
|
||||||
|
php_installed_array+=("(M)enu" "Help")
|
||||||
|
|
||||||
|
echo -e "\nCurrent PHP: $current_simple_php_version"
|
||||||
|
echo "Switch to PHP: "
|
||||||
|
select version in "${php_installed_array[@]}"; do
|
||||||
|
[[ $version == "(M)enu" ]] || [[ $REPLY == "m" ]] || [[ $REPLY == "M" ]] && menu;
|
||||||
|
[[ $version == "Help" ]] && echo "Only currently PHP installed are displayed. To switch to another PHP version, install it before (brew install php@8.3) !";
|
||||||
|
[[ -z $version ]] && [ "$version" != "Help" ] && echo "Wrong choice !"
|
||||||
|
[[ -n $version ]] && [ "$version" != "Help" ] && echo "$version" | xargs -p -n 1 sphp && menu;
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# Main menu
|
||||||
|
menu(){
|
||||||
|
|
||||||
|
add_ini
|
||||||
|
|
||||||
|
options=(
|
||||||
|
"Apache (r)estart"
|
||||||
|
"(E)dit httpd.conf"
|
||||||
|
"Edit httpd-v(h)osts.conf"
|
||||||
|
"Edit httpd-(s)sl.conf"
|
||||||
|
"error_(l)og Apache"
|
||||||
|
"(a)ccess_log Apache"
|
||||||
|
"Edit (P)HP.ini"
|
||||||
|
"Edit additio(n)nals *.ini files"
|
||||||
|
"Open PHP (i)nfo page in browser"
|
||||||
|
"S(w)itch to PHP version"
|
||||||
|
"Apache/PHP/MySQL (V)ersion"
|
||||||
|
"Apache/PHP/MySQL (C)onfiguration files"
|
||||||
|
"(Q)uit"
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
# --> sphp:<--
|
||||||
|
# mod-php: https://gist.github.com/rhukster/f4c04f1bf59e0b74e335ee5d186a98e2/
|
||||||
|
# php-fpm: https://gist.github.com/rozsival/10289d1e2006c68009ace0478306ecd2/
|
||||||
|
# Brew PHP switcher
|
||||||
|
# https://github.com/philcook/brew-php-switcher#readme
|
||||||
|
|
||||||
|
|
||||||
|
echo -e "\n\033[1mApache Tools: \033[0m\n"
|
||||||
|
entete
|
||||||
|
|
||||||
|
select option in "${options[@]}"; do
|
||||||
|
case "$REPLY" in
|
||||||
|
1|r|R) sudo apachectl -k restart ; menu ;;
|
||||||
|
2|e|E) "$editeur" "$conf_apache" ;; # httpd.conf
|
||||||
|
3|h|H) "$editeur" "$vhost" ; menu ;; # httpd-vhost.conf
|
||||||
|
4|s|S) "$editeur" "$ssl" ; menu ;; # httpd-ssl.conf
|
||||||
|
5|l|L) command -v ttab >/dev/null 2>&1 && ttab tail -f "$log_apa" || error_log ; menu ;;
|
||||||
|
6|a|A) command -v ttab >/dev/null 2>&1 && ttab tail -f "$access_apa" || acces_log ; menu ;;
|
||||||
|
7|p|P) "$editeur" "$php_ini" ; menu ;; # php.ini
|
||||||
|
8|n|N) submenu ;;
|
||||||
|
9|i|I) echo '<?php echo phpinfo(); ?>' > $document_root/php-info.php && open 'http://localhost/php-info.php' ;;
|
||||||
|
10|w|W) switch_php; menu ;;
|
||||||
|
#read -e -n 3 -p "Which PHP version? (7.4/8.0/8.1/8.2/8.3): " choice
|
||||||
|
#if [[ "$choice" == "7.4" ]] || [[ "$choice" == "8.0" ]] || [[ "$choice" == "8.1" ]] || [[ "$choice" == "8.2" ]] || [[ "$choice" == "8.3" ]]; then echo "$choice" | xargs -p -n 1 sphp ; fi ; menu ;;
|
||||||
|
11|v|V) versions ; menu ;;
|
||||||
|
12|c|C) conf_files ; menu ;;
|
||||||
|
13|q|Q) exit 0 ;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
menu
|
||||||
|
|
||||||
5
bash_version.sh
Executable file
5
bash_version.sh
Executable file
@@ -0,0 +1,5 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# https://itnext.io/upgrading-bash-on-macos-7138bd1066ba
|
||||||
|
|
||||||
|
echo $BASH_VERSION
|
||||||
83
gitea.service
Normal file
83
gitea.service
Normal file
@@ -0,0 +1,83 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Gitea (Git with a cup of tea)
|
||||||
|
After=syslog.target
|
||||||
|
After=network.target
|
||||||
|
###
|
||||||
|
# Don't forget to add the database service dependencies
|
||||||
|
###
|
||||||
|
#
|
||||||
|
#Wants=mysql.service
|
||||||
|
#After=mysql.service
|
||||||
|
#
|
||||||
|
#Wants=mariadb.service
|
||||||
|
#After=mariadb.service
|
||||||
|
#
|
||||||
|
#Wants=postgresql.service
|
||||||
|
#After=postgresql.service
|
||||||
|
#
|
||||||
|
#Wants=memcached.service
|
||||||
|
#After=memcached.service
|
||||||
|
#
|
||||||
|
#Wants=redis.service
|
||||||
|
#After=redis.service
|
||||||
|
#
|
||||||
|
###
|
||||||
|
# If using socket activation for main http/s
|
||||||
|
###
|
||||||
|
#
|
||||||
|
#After=gitea.main.socket
|
||||||
|
#Requires=gitea.main.socket
|
||||||
|
#
|
||||||
|
###
|
||||||
|
# (You can also provide gitea an http fallback and/or ssh socket too)
|
||||||
|
#
|
||||||
|
# An example of /etc/systemd/system/gitea.main.socket
|
||||||
|
###
|
||||||
|
##
|
||||||
|
## [Unit]
|
||||||
|
## Description=Gitea Web Socket
|
||||||
|
## PartOf=gitea.service
|
||||||
|
##
|
||||||
|
## [Socket]
|
||||||
|
## Service=gitea.service
|
||||||
|
## ListenStream=<some_port>
|
||||||
|
## NoDelay=true
|
||||||
|
##
|
||||||
|
## [Install]
|
||||||
|
## WantedBy=sockets.target
|
||||||
|
##
|
||||||
|
###
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
# Modify these two values and uncomment them if you have
|
||||||
|
# repos with lots of files and get an HTTP error 500 because
|
||||||
|
# of that
|
||||||
|
###
|
||||||
|
#LimitMEMLOCK=infinity
|
||||||
|
#LimitNOFILE=65535
|
||||||
|
RestartSec=2s
|
||||||
|
Type=simple
|
||||||
|
User=git
|
||||||
|
Group=users
|
||||||
|
WorkingDirectory=/var/lib/gitea/
|
||||||
|
# If using Unix socket: tells systemd to create the /run/gitea folder, which will contain the gitea.sock file
|
||||||
|
# (manually creating /run/gitea doesn't work, because it would not persist across reboots)
|
||||||
|
#RuntimeDirectory=gitea
|
||||||
|
ExecStart=/usr/local/bin/gitea web --config /etc/gitea/app.ini
|
||||||
|
Restart=always
|
||||||
|
Environment=USER=git HOME=/home/git GITEA_WORK_DIR=/var/lib/gitea
|
||||||
|
# If you install Git to directory prefix other than default PATH (which happens
|
||||||
|
# for example if you install other versions of Git side-to-side with
|
||||||
|
# distribution version), uncomment below line and add that prefix to PATH
|
||||||
|
# Don't forget to place git-lfs binary on the PATH below if you want to enable
|
||||||
|
# Git LFS support
|
||||||
|
#Environment=PATH=/path/to/git/bin:/bin:/sbin:/usr/bin:/usr/sbin
|
||||||
|
# If you want to bind Gitea to a port below 1024, uncomment
|
||||||
|
# the two values below, or use socket activation to pass Gitea its ports as above
|
||||||
|
###
|
||||||
|
#CapabilityBoundingSet=CAP_NET_BIND_SERVICE
|
||||||
|
#AmbientCapabilities=CAP_NET_BIND_SERVICE
|
||||||
|
###
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
@@ -344,6 +344,7 @@ END_COMMENT
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# Move SRC file to trash
|
# Move SRC file to trash
|
||||||
|
parent_folder=${FILE%/*}
|
||||||
if [ "$trash" = true ] && [[ "$OSTYPE" == "darwin"* ]]; then
|
if [ "$trash" = true ] && [[ "$OSTYPE" == "darwin"* ]]; then
|
||||||
echo -e "\n${italic}Move ${filename} to trash...${reset}"
|
echo -e "\n${italic}Move ${filename} to trash...${reset}"
|
||||||
osascript -e "tell application \"Finder\" to delete POSIX file \"${FILE}\"" >/dev/null
|
osascript -e "tell application \"Finder\" to delete POSIX file \"${FILE}\"" >/dev/null
|
||||||
@@ -353,6 +354,7 @@ END_COMMENT
|
|||||||
gio trash "$FILE" >/dev/null
|
gio trash "$FILE" >/dev/null
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
[ "$(echo "${parent_folder}/"*)" = "${parent_folder}/*" ] && rm -rf "${parent_folder}";
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
((count++))
|
((count++))
|
||||||
|
|||||||
@@ -136,6 +136,8 @@ fi
|
|||||||
|
|
||||||
|
|
||||||
if nmap "${server3[server]}" -PN -p ${server3[port]} | grep open &>/dev/null; then
|
if nmap "${server3[server]}" -PN -p ${server3[port]} | grep open &>/dev/null; then
|
||||||
|
# Failed to resolve "ftp.cluster011.ovh.net".
|
||||||
|
# WARNING: No targets were specified, so 0 hosts scanned.
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
echo -e "${bold}********************************************"
|
echo -e "${bold}********************************************"
|
||||||
|
|||||||
171
photo_du_mois.sh
Executable file
171
photo_du_mois.sh
Executable file
@@ -0,0 +1,171 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
italic="\033[3m"
|
||||||
|
#underline="\033[4m"
|
||||||
|
#ita_under="\033[3;4m"
|
||||||
|
#bgd="\033[1;4;31m"
|
||||||
|
red="\033[1;31m"
|
||||||
|
green="\033[1;32m"
|
||||||
|
#yellow="\033[1;33m"
|
||||||
|
bold="\033[1m"
|
||||||
|
#box="\033[1;41m"
|
||||||
|
reset="\033[0m"
|
||||||
|
|
||||||
|
shopt -s globstar
|
||||||
|
|
||||||
|
|
||||||
|
# Source image folder
|
||||||
|
#ln -s ~/Sites/sls/photos/img ~/Pictures/Export/photos-du-mois
|
||||||
|
[[ "$input_path" == "" ]] && SRC="$HOME/Sites/sls/photos/img" || SRC="$input_path"
|
||||||
|
|
||||||
|
# Server
|
||||||
|
|
||||||
|
server=( "ftp.cluster011.ovh.net" "sur-le-sentier.fr" "clicclac.synology.me" )
|
||||||
|
user=( "funnymac" "sentier" "bruno" )
|
||||||
|
dest=( "www/zenphoto/albums/photos-du-mois/" "httpdocs/photos/img/" "/volume1/web/photos/img/" )
|
||||||
|
port=( "22" "22" "42666" )
|
||||||
|
|
||||||
|
|
||||||
|
: <<'END_COMMENT'
|
||||||
|
user=sentier
|
||||||
|
server="sur-le-sentier.fr"
|
||||||
|
path="httpdocs/photos/img/"
|
||||||
|
port=22 # ssh, scp
|
||||||
|
|
||||||
|
user=bruno
|
||||||
|
server="clicclac.synology.me"
|
||||||
|
path="/volume1/web/"
|
||||||
|
port=42666
|
||||||
|
|
||||||
|
user=funnymac
|
||||||
|
server=ftp.cluster011.ovh.net
|
||||||
|
path="www/zenphoto/albums/photos-du-mois/"
|
||||||
|
port=22
|
||||||
|
|
||||||
|
END_COMMENT
|
||||||
|
|
||||||
|
last_remote_files() {
|
||||||
|
current_year=$(date +"%Y")
|
||||||
|
last_year=$(( current_year-1 ))
|
||||||
|
|
||||||
|
for ((i=0 ; i<"${#server[@]}" ; i++))
|
||||||
|
do
|
||||||
|
#rsync sentier@sur-le-sentier.fr:httpdocs/photos/img/'*' | grep -E "$last_year.jpg|$current_year.jpg"
|
||||||
|
|
||||||
|
# rsync -e "/usr/bin/ssh -p 42666" --rsync-path=/bin/rsync -zarvh "bruno@clicclac.synology.me:/volume1/web/photos/img/*"
|
||||||
|
echo -e "${bold}${server[$i]}${reset}:${dest[$i]}"
|
||||||
|
|
||||||
|
if [ "${server[$i]}" == "clicclac.synology.me" ]; then
|
||||||
|
rsync -e "/usr/bin/ssh -p ${port[$i]}" --rsync-path=/bin/rsync -zarvh "${user[$i]}"@"${server[$i]}":"${dest[$i]}*" | grep -E "$last_year.jpg|$current_year.jpg"
|
||||||
|
else
|
||||||
|
rsync -zarvh -e "ssh -p ${port[$i]}" "${user[$i]}"@"${server[$i]}":"${dest[$i]}*" | grep -E "$last_year.jpg|$current_year.jpg"
|
||||||
|
fi
|
||||||
|
echo
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# 2022-12-31
|
||||||
|
REGEX="(([0-9]{4,}|[Y]{4,})-([0-9]{2,}|[M]{2,})-([0-9]{2,}|[D]{2,}))"
|
||||||
|
|
||||||
|
# http://patorjk.com/software/taag/#p=display&f=Calvin%20S&t=photo_du_mois.sh
|
||||||
|
|
||||||
|
echo -e "┌─┐┬ ┬┌─┐┌┬┐┌─┐ ┌┬┐┬ ┬ ┌┬┐┌─┐┬┌─┐ ┌─┐┬ ┬"
|
||||||
|
echo -e "├─┘├─┤│ │ │ │ │ │││ │ ││││ ││└─┐ └─┐├─┤"
|
||||||
|
echo -e "┴ ┴ ┴└─┘ ┴ └─┘─────┴┘└─┘────┴ ┴└─┘┴└─┘o└─┘┴ ┴"
|
||||||
|
echo
|
||||||
|
|
||||||
|
echo -e "\n${bold}0. Verify last uploads on remote servers ${reset}\n"
|
||||||
|
|
||||||
|
last_remote_files
|
||||||
|
|
||||||
|
echo -e "\n${bold}1. From Lightroom Classic, export ${italic}collection 'Photo du mois'${reset}${bold} => $SRC${reset}\n"
|
||||||
|
|
||||||
|
echo -e "Done ! <Press Enter>"
|
||||||
|
read -r -p ""
|
||||||
|
|
||||||
|
echo -e "\n${bold}2. Renaming Photos files...${reset}"
|
||||||
|
|
||||||
|
for FILE in "${SRC}"/**/*.{jpg,jpeg}
|
||||||
|
do
|
||||||
|
filename=$(basename "$FILE")
|
||||||
|
#extension=${filename##*.}
|
||||||
|
filename=${filename%.*}
|
||||||
|
if [[ $filename =~ $REGEX ]]; then
|
||||||
|
MATCH="${BASH_REMATCH[0]}"
|
||||||
|
y=$(echo "${MATCH}" | awk -F"-" '{print $1}')
|
||||||
|
m=$(echo "${MATCH}" | awk -F"-" '{print $2}')
|
||||||
|
if [ "${m:0:1}" = "0" ]; then m=${m:1:7}; fi
|
||||||
|
filepath=$(dirname "$FILE")
|
||||||
|
newname="$m"_"$y".jpg
|
||||||
|
newfilename="$filepath/$m"_"$y".jpg
|
||||||
|
|
||||||
|
echo -e "Rename ${bold}$filename${reset} to ${bold}$newname${reset}..."
|
||||||
|
mv "${FILE}" "$newfilename"
|
||||||
|
movies+=("${newfilename}")
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ "${#movies[@]}" -gt 0 ]; then
|
||||||
|
echo -e "\n${bold}${#movies[@]} new images found !${reset}\n"
|
||||||
|
else
|
||||||
|
echo -e "\n${bold}${red}No new images !${reset}"
|
||||||
|
echo -e "${bold}Quit.${reset}\n"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
for ((i=0 ; i<"${#server[@]}" ; i++))
|
||||||
|
do
|
||||||
|
|
||||||
|
echo -e "\n\n${bold}3. Transfert Photos files to ${italic}${server[$i]${reset}${bold}...${reset}"
|
||||||
|
|
||||||
|
if nmap "${server[$i]}" -PN -p "${port[$i]}" | grep open &>/dev/null; then
|
||||||
|
|
||||||
|
for new in "${movies[@]}"
|
||||||
|
do
|
||||||
|
echo -e "Transfering ${bold}$new${reset} to ${bold}${server[$i]}${reset}..."
|
||||||
|
filename=$(basename "$new")
|
||||||
|
#extension=${filename##*.}
|
||||||
|
filename=${filename%.*}
|
||||||
|
|
||||||
|
if [ "${server[$i]}" == "clicclac.synology.me" ]; then
|
||||||
|
scp -O -P "${port[$i]}" "$new" "${user[$i]}"@"${server[$i]}":"${dest[$i]}"
|
||||||
|
else
|
||||||
|
scp -P "${port[$i]}" "$new" "${user[$i]}"@"${server[$i]}":"${dest[$i]}"
|
||||||
|
fi
|
||||||
|
result=$?
|
||||||
|
[ "$result" -eq 0 ] && echo -e "${green}Successful transfert...${reset}\n" || echo -e "${red}Error during transfert !${reset}\n"
|
||||||
|
|
||||||
|
done
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# scp 5_2022_mozcjpeg.jpg sentier@sur-le-sentier.fr:httpdocs/photos/img/
|
||||||
|
# scp 1_2022.jpg funnymac@ftp.cluster011.ovh.net:www/zenphoto/albums/photos-du-mois/
|
||||||
|
|
||||||
|
if [ "${server[$i]}" == "clicclac.synology.me" ]; then
|
||||||
|
rsync -e "/usr/bin/ssh -p ${port[$i]}" --rsync-path=/bin/rsync --exclude-from="$HOME/.exclude-rsync.txt" -zarvh --stats --progress "$SRC/" "${user[$i]}"@"${server[$i]}":"${dest[$i]}"
|
||||||
|
else
|
||||||
|
rsync --exclude-from="$HOME/.exclude-rsync.txt" -zarvh --stats --progress "$SRC/" "${user[$i]}"@"${server[$i]}":"${dest[$i]}"
|
||||||
|
fi
|
||||||
|
#result=$?
|
||||||
|
#[ "$result" -eq 0 ] && echo -e "\n${green}Successful synchronization...${reset}" || echo -e "\n${red}Error during synchronization !${reset}"
|
||||||
|
|
||||||
|
#notification "MkDocs: sending Docs to ${server3[server]}..." "${server3[server]}" $result
|
||||||
|
|
||||||
|
if [ "$i" -eq 0 ]; then
|
||||||
|
# Dans zenphoto, mettre en cache les photos
|
||||||
|
echo -e "\n${bold}4. Go to ${italic}https://clicclac.info/zenphoto/${reset}${bold} and update cache manager...${reset}\n"
|
||||||
|
open https://clicclac.info/zenphoto/zp-core/zp-extensions/cacheManager/cacheImages.php?album=photos-du-mois
|
||||||
|
|
||||||
|
elif [ "$i" -eq 1 ]; then
|
||||||
|
echo -e "\n${bold}4. Open ${italic}https://${server[$i]}/insert_bdd.php${reset}${bold}...${reset}\n"
|
||||||
|
open https://"${server[$i]}"/insert_bdd.php
|
||||||
|
fi
|
||||||
|
|
||||||
|
else
|
||||||
|
echo -e "\n${bold}${red}Server ${server[$i]} down !${reset}\n"
|
||||||
|
fi
|
||||||
|
|
||||||
|
done
|
||||||
|
|
||||||
126
sphp_php-fpm.sh
Executable file
126
sphp_php-fpm.sh
Executable file
@@ -0,0 +1,126 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
underline="\033[4m"
|
||||||
|
red="\033[1;31m"
|
||||||
|
green="\033[1;32m"
|
||||||
|
yellow="\033[1;33m"
|
||||||
|
bold="\033[1m"
|
||||||
|
reset="\033[0m"
|
||||||
|
|
||||||
|
if [ "$1" == "-h" ]; then
|
||||||
|
echo -e "\\033[4msphp_php-fpm.sh \\033[0m"
|
||||||
|
echo "Change php version (php-fpm)"
|
||||||
|
echo
|
||||||
|
echo "USAGE: sphp_php-fpm.sh version (8.1 8.2 8.3)"
|
||||||
|
echo
|
||||||
|
echo " -h display this help"
|
||||||
|
echo
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
#
|
||||||
|
# mass_dns: warning: Unable to determine any DNS servers. Reverse DNS is disabled. Try using --system-dns or specify valid servers with --dns-servers
|
||||||
|
#
|
||||||
|
|
||||||
|
homebrew_path=$(brew --prefix)
|
||||||
|
brew_prefix=$(brew --prefix | sed 's#/#\\\/#g')
|
||||||
|
|
||||||
|
protocol="http"
|
||||||
|
apache_conf_path=$(httpd -V | grep 'SERVER_CONFIG_FILE' | awk -F '\"' '{print $2}')
|
||||||
|
document_root=$(grep -e '^DocumentRoot' "$apache_conf_path" | awk '{print $2}' | sed 's/\"//g')
|
||||||
|
server_name=$(grep -e '^ServerName' "$apache_conf_path" | awk '{print $2}')
|
||||||
|
h=$(hostname)
|
||||||
|
|
||||||
|
vhost_conf=$(grep -e 'httpd-vhosts.conf' $apache_conf_path | awk '{print $2}')
|
||||||
|
#ssl_conf=$(grep -e 'httpd-ssl.conf' $homebrew_path/etc/httpd/httpd.conf | awk '{print $2}')
|
||||||
|
ssl_conf=$(grep -e 'httpd-ssl.conf' $apache_conf_path | awk '{print $2}')
|
||||||
|
if [ -f "$ssl_conf" ]; then
|
||||||
|
apache_port=$(cat $ssl_conf | grep -e '^Listen' | awk '{print $2}')
|
||||||
|
a=$(nmap --script http-methods -p$apache_port --script-args http-methods.url-path=’/page’ $h | grep -A1 "^PORT" | tail -1 | awk '{print $3}')
|
||||||
|
if [[ "$a" == "http" ]] || [[ "$a" == "https" ]]; then protocol=$a; fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
brew_array=("8.1","8.2","8.3")
|
||||||
|
php_array=("php@8.1" "php@8.2" "php@8.3")
|
||||||
|
php_installed_array=()
|
||||||
|
php_version="php@$1"
|
||||||
|
php_opt_path="$brew_prefix\/opt\/"
|
||||||
|
|
||||||
|
simple_php_version=$(echo "$php_version" | sed 's/^php@//' | sed 's/\.//')
|
||||||
|
|
||||||
|
|
||||||
|
# Current php version (from httpd.conf)
|
||||||
|
ip=$(grep -E SetHandler $apache_conf_path | grep -v \# | grep -E -o "([0-9]{1,3}[\.]){3}[0-9]{1,3}:[0-9]{4}")
|
||||||
|
x=${ip: -2}
|
||||||
|
current__simple_php_version="$x"
|
||||||
|
current_php_version="php@${x:0:1}.${x:1}"
|
||||||
|
echo -e "${underline}Current${reset} php version: ${bold}$current_php_version${reset}"
|
||||||
|
|
||||||
|
# What versions of php are installed via brew
|
||||||
|
# /opt/homebrew/etc/php/8.0/php-fpm.d/www.conf - listen = 127.0.0.1:9081
|
||||||
|
echo -e "\nPHP version ${underline}installed${reset}:"
|
||||||
|
for i in ${php_array[*]}; do
|
||||||
|
version=$(echo "$i" | sed 's/^php@//')
|
||||||
|
if [[ -d "$homebrew_path/etc/php/$version" ]]; then
|
||||||
|
php_installed_array+=("$i")
|
||||||
|
#php_port=$(sed -n "/^listen/p" $homebrew_path/etc/php/$version/php-fpm.d/www.conf)
|
||||||
|
php_ipport=$(grep -E ^listen $homebrew_path/etc/php/$version/php-fpm.d/www.conf | awk -F" = " '{print $2}')
|
||||||
|
php_running=$(lsof -i -n -P | grep php-fpm | grep $php_ipport)
|
||||||
|
|
||||||
|
[ -n "$php_running" ] && echo -e " ● php-fpm version: ${bold}$i${reset} ($php_ipport)" "${green}Running...${reset}" || echo -e "php-fpm version: $version ($php_ipport)" "${red}Stopped.${reset}"
|
||||||
|
|
||||||
|
echo -e " ● php (cli): /opt/homebrew/opt/$i/bin/php"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
proxy_pass_match_string="ProxyPassMatch \"^/(.*\.php(/.*)?)$\" \"fcgi://127.0.0.1:90$simple_php_version/opt/homebrew/local/var/www/\$1\""
|
||||||
|
set_handler_string="SetHandler \"proxy:fcgi://127.0.0.1:90$simple_php_version\""
|
||||||
|
|
||||||
|
# Check that the requested version is supported
|
||||||
|
if [[ " ${php_array[*]} " == *"$php_version"* ]]; then
|
||||||
|
# Check that the requested version is installed
|
||||||
|
if [[ " ${php_installed_array[*]} " == *"$php_version"* ]]; then
|
||||||
|
|
||||||
|
if [[ "$php_version" == "$current_php_version" ]]; then
|
||||||
|
echo -e "\nPHP already running version ${bold}$php_version${reset} !"
|
||||||
|
echo "Exiting..."
|
||||||
|
exit 0
|
||||||
|
else
|
||||||
|
|
||||||
|
version=$(echo "$php_version" | sed 's/^php@//')
|
||||||
|
|
||||||
|
echo -e "\nSwitching to ${bold}$php_version${reset}..."
|
||||||
|
echo "Edit your Apache conf..."
|
||||||
|
|
||||||
|
#sed -i.bak "s/ProxyPassMatch.*/ProxyPassMatch \"^/(.*\.php(/.*)?)$\" \"fcgi:\/\/127.0.0.1:90$simple_php_version\/opt\/homebrew\/local\/var\/www\/\$1\"/" $apache_conf_path
|
||||||
|
#sed -i.bak "s/SetHandler \"proxy:fcgi.*/SetHandler \"proxy:fcgi:\/\/127.0.0.1:90$simple_php_version\"/" $apache_conf_path
|
||||||
|
|
||||||
|
sed -i.bak "s/fcgi:\/\/127.0.0.1:90$current__simple_php_version/fcgi:\/\/127.0.0.1:90$simple_php_version/" $apache_conf_path
|
||||||
|
|
||||||
|
echo "Restarting Apache server..."
|
||||||
|
|
||||||
|
#brew services restart httpd
|
||||||
|
sudo apachectl -k restart
|
||||||
|
|
||||||
|
echo "Loading PHP info..."
|
||||||
|
echo '<?php echo phpinfo(); ?>' > $document_root/php-info.php && open "$protocol://$server_name/php-info.php"
|
||||||
|
|
||||||
|
echo "All done!"
|
||||||
|
|
||||||
|
echo -e "\n${underline}Apache conf files:${reset}"
|
||||||
|
echo "$apache_conf_path"
|
||||||
|
echo "$vhost_conf"
|
||||||
|
echo "$ssl_conf"
|
||||||
|
echo -e "${underline}PHP conf files:${reset}"
|
||||||
|
echo "$homebrew_path/etc/php/$version/php.ini"
|
||||||
|
echo "$homebrew_path/etc/php/$version/php-fpm.d/www.conf"
|
||||||
|
find "$homebrew_path/etc/php/$version/conf.d" -name "*.ini" -print | sort -n
|
||||||
|
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo -e "\nSorry, but $php_version is not installed via brew. Install by running: brew install $php_version"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo -e "\nUnknown version of PHP. PHP Switcher can only handle arguments of:" ${brew_array[@]}
|
||||||
|
fi
|
||||||
|
|
||||||
Reference in New Issue
Block a user