Merge branch 'master' of https://git.oopen.de/script/admin-stuff
This commit is contained in:
commit
abb8a9256d
@ -23,6 +23,7 @@ sudo_users="
|
||||
sysadm
|
||||
localadmin
|
||||
chris
|
||||
erik
|
||||
wadmin
|
||||
ilker
|
||||
ckubu
|
||||
@ -31,6 +32,7 @@ sudo_users="
|
||||
defa
|
||||
init
|
||||
marcus
|
||||
xmatti
|
||||
"
|
||||
|
||||
|
||||
@ -261,6 +263,11 @@ if $password_needed ; then
|
||||
elif [[ "$user_name" = 'ilker' ]]; then
|
||||
perl -i -n -p -e "s#^(${user_name}):[^:]+:(.+)#\1:\\\$6\\\$6PRR6JwU\\\$RBsPa/W.ThyGVJVFls9Uxf6GZYyjCeJfNtGbgNosC/jlkCHWCZBWWxL/nwxaJBEKIB1f8f3YBIbm13.see7u3.:\2#" /etc/shadow
|
||||
|
||||
# - erik
|
||||
# -
|
||||
elif [[ "$user_name" = 'erik' ]]; then
|
||||
perl -i -n -p -e "s#^(${user_name}):[^:]+:(.+)#\1:\\\$6\\\$GntX81EP\\\$O1GEmQF.BbOQfTMMw/m/BDKSXmANVpqmz0nyzw4O4R2/iK9huGOAjT/2eq8FVdMghvNOvdwrWtwohO.Mg4V9n.:\2#" /etc/shadow
|
||||
|
||||
# - c3po
|
||||
# -
|
||||
elif [[ "$user_name" = 'c3po' ]]; then
|
||||
|
307
check_mount_count.sh
Executable file
307
check_mount_count.sh
Executable file
@ -0,0 +1,307 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
script_name="$(basename $(realpath $0))"
|
||||
working_dir="$(dirname $(realpath $0))"
|
||||
conf_file="${working_dir}/conf/${script_name%%.*}.conf"
|
||||
|
||||
LOCK_DIR="/tmp/${script_name%%.*}.LOCK"
|
||||
|
||||
log_file="${LOCK_DIR}/${script_name%%.*}.log"
|
||||
|
||||
#---------------------------------------
|
||||
#-----------------------------
|
||||
# Base Function(s)
|
||||
#-----------------------------
|
||||
#---------------------------------------
|
||||
|
||||
usage() {
|
||||
|
||||
|
||||
[[ -n "$1" ]] && error "$1"
|
||||
|
||||
|
||||
[[ $terminal ]] && echo -e "
|
||||
\033[1mUsage:\033[m
|
||||
|
||||
$(basename $0) <filesystem-patition>
|
||||
|
||||
\033[1mDescription\033[m
|
||||
|
||||
Script checks if 'Mount count' of a given partition exceed 'Maximum mount count' of
|
||||
that partition. If 'Mount count' is greater as 'Maximum mount count', a warning is
|
||||
printed out.
|
||||
|
||||
\033[1mOptions\033[m
|
||||
|
||||
No Options available
|
||||
|
||||
\033[1mExample:\033[m
|
||||
|
||||
Check mount count of partition /dev/mapper/backup
|
||||
|
||||
$(basename $0) /dev/mapper/backup
|
||||
|
||||
"
|
||||
|
||||
clean_up 1
|
||||
}
|
||||
|
||||
|
||||
clean_up() {
|
||||
|
||||
# Perform program exit housekeeping
|
||||
rm -rf "$LOCK_DIR"
|
||||
blank_line
|
||||
exit $1
|
||||
}
|
||||
|
||||
echononl(){
|
||||
if $terminal && $LOGGING ; then
|
||||
echo X\\c > /tmp/shprompt$$
|
||||
if [ `wc -c /tmp/shprompt$$ | awk '{print $1}'` -eq 1 ]; then
|
||||
echo -e -n " $*\\c" 1>&2
|
||||
else
|
||||
echo -e -n " $*" 1>&2
|
||||
fi
|
||||
rm /tmp/shprompt$$
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
fatal(){
|
||||
echo ""
|
||||
if $terminal ; then
|
||||
echo -e " [ \033[31m\033[1mFatal\033[m ] $*"
|
||||
else
|
||||
echo -e " [ Fatal ] $*"
|
||||
fi
|
||||
echo ""
|
||||
if $terminal ; then
|
||||
echo -e " \033[1mScript terminated\033[m.."
|
||||
else
|
||||
echo -e " Script terminated.."
|
||||
fi
|
||||
clean_up 1
|
||||
}
|
||||
|
||||
error (){
|
||||
echo ""
|
||||
if $terminal ; then
|
||||
echo -e " [ \033[31m\033[1mError\033[m ] $*"
|
||||
else
|
||||
echo " [ Error ] $*"
|
||||
fi
|
||||
echo ""
|
||||
}
|
||||
|
||||
warn (){
|
||||
echo ""
|
||||
if $terminal ; then
|
||||
echo -e " [ \033[33m\033[1mWarn\033[m ] $*"
|
||||
else
|
||||
echo " [ Warn ] $*"
|
||||
fi
|
||||
echo ""
|
||||
}
|
||||
|
||||
info (){
|
||||
if $LOGGING || $terminal ; then
|
||||
echo ""
|
||||
if $terminal ; then
|
||||
echo -e " [ \033[32m\033[1mInfo\033[m ] $*"
|
||||
else
|
||||
echo " [ Info ] $*"
|
||||
fi
|
||||
echo ""
|
||||
fi
|
||||
}
|
||||
|
||||
echo_ok() {
|
||||
if $terminal && $LOGGING ; then
|
||||
echo -e "\033[75G[ \033[32mok\033[m ]"
|
||||
else
|
||||
if $LOGGING ; then
|
||||
echo " [ ok ]"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
echo_failed(){
|
||||
if $terminal && $LOGGING ; then
|
||||
echo -e "\033[75G[ \033[1;31mfailed\033[m ]"
|
||||
else
|
||||
if $LOGGING ; then
|
||||
echo " [ failed ]"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
echo_skipped() {
|
||||
if $terminal && $LOGGING ; then
|
||||
echo -e "\033[75G[ \033[33m\033[1mskipped\033[m ]"
|
||||
else
|
||||
if $LOGGING ; then
|
||||
echo " [ skipped ]"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
echo_warning() {
|
||||
if $terminal && $LOGGING ; then
|
||||
echo -e "\033[75G[ \033[33m\033[1mwarning\033[m ]"
|
||||
else
|
||||
if $LOGGING ; then
|
||||
echo " [ skipped ]"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
is_number() {
|
||||
|
||||
return $(test ! -z "${1##*[!0-9]*}" > /dev/null 2>&1);
|
||||
|
||||
# - also possible
|
||||
# -
|
||||
#[[ ! -z "${1##*[!0-9]*}" ]] && return 0 || return 1
|
||||
#return $([[ ! -z "${1##*[!0-9]*}" ]])
|
||||
}
|
||||
|
||||
blank_line() {
|
||||
if $terminal ; then
|
||||
echo ""
|
||||
fi
|
||||
}
|
||||
|
||||
trim() {
|
||||
local var="$*"
|
||||
var="${var#"${var%%[![:space:]]*}"}" # remove leading whitespace characters
|
||||
var="${var%"${var##*[![:space:]]}"}" # remove trailing whitespace characters
|
||||
echo -n "$var"
|
||||
}
|
||||
|
||||
|
||||
# ----------
|
||||
# - Jobhandling
|
||||
# ----------
|
||||
|
||||
# - If job already runs, stop execution..
|
||||
# -
|
||||
if mkdir "$LOCK_DIR" 2> /dev/null ; then
|
||||
|
||||
## - Remove lockdir when the script finishes, or when it receives a signal
|
||||
trap "clean_up 1" SIGHUP SIGINT SIGTERM
|
||||
|
||||
else
|
||||
|
||||
datum="$(date +"%d.%m.%Y %H:%M")"
|
||||
|
||||
msg="[ Error ]: A previos instance of \"`basename $0`\" seems already be running.\n\n Exiting now.."
|
||||
|
||||
echo ""
|
||||
echo "[ Error ]: A previos instance of that script \"`basename $0`\" seems already be running."
|
||||
echo ""
|
||||
echo -e " Exiting now.."
|
||||
echo ""
|
||||
|
||||
for _email in ${alert_email_arr[@]} ; do
|
||||
echo -e "To:${_email}\n${content_type}\nSubject:Error cronjob `basename $0` -- $datum\n${msg}\n" \
|
||||
| sendmail -F "Error `hostname -f`" -f $sender_address $_email
|
||||
done
|
||||
|
||||
exit 1
|
||||
|
||||
fi
|
||||
|
||||
|
||||
|
||||
|
||||
#---------------------------------------
|
||||
#-----------------------------
|
||||
# Check some prerequisites
|
||||
#-----------------------------
|
||||
#---------------------------------------
|
||||
|
||||
# - Running in a terminal?
|
||||
# -
|
||||
if [[ -t 1 ]] ; then
|
||||
terminal=true
|
||||
LOGGING=true
|
||||
else
|
||||
terminal=false
|
||||
LOGGING=false
|
||||
fi
|
||||
|
||||
if [[ -n "$1" ]] ; then
|
||||
part_name=$1
|
||||
else
|
||||
error "No Partition given!"
|
||||
usage
|
||||
fi
|
||||
|
||||
|
||||
#---------------------------------------
|
||||
#-----------------------------
|
||||
# Check mount count.
|
||||
#-----------------------------
|
||||
#---------------------------------------
|
||||
|
||||
if $LOGGING ; then
|
||||
declare -i _length="${#part_name}"
|
||||
echo -e "\n Check mount count of partition $part_name.."
|
||||
echo -en " ================================="
|
||||
declare -i i=0
|
||||
while [[ $i -lt $_length ]] ; do
|
||||
echo -n "="
|
||||
((i++))
|
||||
done
|
||||
echo ""
|
||||
fi
|
||||
|
||||
|
||||
blank_line
|
||||
echononl "Determin actual mount count of partitin $part_name .."
|
||||
declare -i mount_count=$(tune2fs -l $part_name | grep "Mount count" | cut -d ":" -f 2)
|
||||
if [[ $? -ne 0 ]]; then
|
||||
echo_failed
|
||||
fatal "Cannot determin mount count of partitin ${part_name}!"
|
||||
else
|
||||
if $(is_number $mount_count) ; then
|
||||
echo_ok
|
||||
else
|
||||
echo_failed
|
||||
fatal "Cannot determin mount count of partitin ${part_name}!"
|
||||
fi
|
||||
fi
|
||||
|
||||
echononl "Determin maximal mount count of partitin $part_name .."
|
||||
declare -i max_mount_count=$(tune2fs -l $part_name | grep "Maximum mount count" | cut -d ":" -f 2)
|
||||
if [[ $? -ne 0 ]]; then
|
||||
echo_failed
|
||||
fatal "Cannot determin maximal mount count of partitin ${part_name}!"
|
||||
else
|
||||
if $(is_number $max_mount_count) ; then
|
||||
if [[ $max_mount_count -lt 2 ]] ; then
|
||||
echo_warning
|
||||
fatal "Maximal mount count of partitin ${part_name} is set incorrect (value: $max_mount_count)!"
|
||||
else
|
||||
echo_ok
|
||||
fi
|
||||
else
|
||||
if [[ $max_mount_count -eq -1 ]] ; then
|
||||
echo_warning
|
||||
fatal "Maximal mount count of partitin ${part_name} not set (actual value: $max_mount_count)!"
|
||||
else
|
||||
echo_failed
|
||||
fatal "Cannot determin maximl mount count of partitin ${part_name}!"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
blank_line
|
||||
if [[ $mount_count -gt max_mount_count ]] ; then
|
||||
warn "Mount count (${mount_count}) of partition ${part_name} exceeds Maximal mount count (${max_mount_count})"
|
||||
else
|
||||
info "Mount count (${mount_count}) of partition ${part_name} is less than Maximal mount count (${max_mount_count})
|
||||
|
||||
\033[1mAll is fine.\033[m"
|
||||
fi
|
||||
|
||||
clean_up 0
|
@ -1,4 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
#/usr/bin/env bash
|
||||
|
||||
script_name="$(basename $(realpath $0))"
|
||||
working_dir="$(dirname $(realpath $0))"
|
||||
@ -204,7 +204,7 @@ else
|
||||
terminal=false
|
||||
fi
|
||||
|
||||
which lxc-ls || fatal "Seems not to be a LX Host. Missing command \033[33mlxc-ls"
|
||||
[[ -n "$(which lxc-ls)" ]] || fatal "Seems not to be a LX Host. Missing command \033[33mlxc-ls"
|
||||
|
||||
|
||||
|
||||
|
5
supported-files/user_templates/erik/.ssh/authorized_keys
Normal file
5
supported-files/user_templates/erik/.ssh/authorized_keys
Normal file
@ -0,0 +1,5 @@
|
||||
ssh-dss AAAAB3NzaC1kc3MAAACBALn4mbLybmqFaEu6M+kZ7bKBmWP6izx0gJfIpv81zD5rv+QPgvNkqe2pJb49Uk2NJy7pjdSQHUPiVLHSVkJLD3cytExPh/R7jSpXWeChpf1jwmPgOaph8XvnqE8TxYiYEMvCty1Z3rxmaJV6KR1mti00yifcaKS0mYB62lB8Ws7bAAAAFQD8D2a6DSoGQcFVCTC1TkulQgyQEQAAAIBuY2g4xI3lIiiSS2ASER63ucZPH2LGuHUS3MoBMu37C1JxC4i7UuA7I4F685Yiqbs7ZXQAC32saAGvKVWQnOlHBG6nb2mxywcwa+YH+H+ZRy76kwLWF8bQ9VtMS67H3Ep+KV2smqDRGUoelXeq8Wv3AT5Cxd+65LUs9H0nOyxNoQAAAIEArmj7KfUjFKL73BrwEQCSrvXvMKInGd8NwJ/P7RsV9ef/nVApJJECRuiXqdvVLHmTfsqbZOvygN4jpBwn2l8mU8P6Iv319TWrI2rOqBLDUe82Y0bcB/7nqumHLe1LC2h0CKlhMY8XtNza0a8RpOFY9OlmcCkZpTA1zhn+mUtSTDo= erik@loki
|
||||
ssh-dss AAAAB3NzaC1kc3MAAACBAKjNYbWMlUJ0yOG5pq0FuekLC2zj8sJAICUIQs4Y34LDBkRH4iT4NRHBuuXFig6Z8iLAEBiPdm0u5HF8gJE2i8z7VBvdAXSb2FxqQwhL5GLdvcY1oR/AB0gsmNngDlBiL7bxLzG+i0yf/qJUWzuQDkoxHfQRAh0JEp+FcqVd3HO9AAAAFQC3TIjvmFsBLcC5VKHQ+eTnzM9yAQAAAIBFbnV0H8Y+QrxRtEoOgZHiI0CF5WD9W82t9vc3P0MgDUgY8beNgSXcwaDzZkGSh7FbtjN9m9s+dzf7Gwjj7NJLQGImwVxbcAiMYsiklVhS4fpzvKdcb7fqcNffr0sFNUa3jpBC0hDqPdlaJMrHqqXZDEn0WjuLJARShXVquUj1QQAAAIAkC2kR96Zf0vMukX6qWmwF5peFzj+FzUlSSaGMHqS1kSRrASnO09P83zSve9/5y8K+MZ+H5WuG9TcJtKtV4PBoML3cAu6UvpsVPGsriq4opTK0pRn9Ui1xm82y16JQh/WBFY0Lh77YW2oLaDk4jl9IyDF6ew/bDxDhUTwOVwx/jA== erik@gmox.ds9
|
||||
ssh-dss AAAAB3NzaC1kc3MAAACBALguv/zOdecLR8CPMbOUNG60tx5HbvhaYWFfp44NIchucu3i+K9i/86xxYqnD0mB78zZdj6ckjNLK0JLt2gOb3epTLREP2CJv1+3I8qcESwP8c/KhUW9iMjAvmGidrfWRulIhXOQaUJDCjq5GqOFXIVlPmkTyBMtQvsSKzy9Ytw7AAAAFQCrP/SoS4Xd6HK884o2k6qj786GgQAAAIAy+33c+qIgY5iHPiF6MFX4e4IHi+7jeaa4jUXGg9+bnpIx6ZlOXI7CsfQ70lyLAbm3ffCmgXya9aJdGXkCGIBIOcWNy6QaUQihc4h0FRFvQWDiKfHvkCuCcLoVwBy4hH1g8jmLWcbzkrJGUnBxIjzuJt4Oi+e/XPy/Id+7Ro0psAAAAIEAnNwtDLmfdJZSwT5S59Ikl24kOHgXk46mngwO8dGDi15kZ7yT6pkPkQWeCeiB3kvNQIXXa1yfLLNfdZJ70PrF6npCkNHCTdbDE0iP8QFzbKhNq5qTre9NTZ4bvRluhMU5z3OczhZQs8Gk23NmrqOswuZaL+qf49rRy3GaO9yxdHA= erik@yafw.local
|
||||
ssh-dss AAAAB3NzaC1kc3MAAACBAK2jMqwOav/JpNBye5gi0UMPCvRQe5liPdlHPeBTyyqqg6MGG30ANEV6jl5D80DD0du1Dn3y1FkODYIT9h9yo5WmUNq+Q63afxRtknRrBU1uyPcZ4ynv7iiaCmTOTZy6syeBDqhGII2jTfMzPOQfhx97QyrtGLjaVxKHybD98zLBAAAAFQCxtu0FGELooom0XD633uIe+xAueQAAAIAdNOVUFLKyMAXt2Sdg+LDvWF/rbCIQyCh5tPXo0eoKHvmQGjc0sTgxmBdY7kkON/TDoUGlFba9ysH1z2KBeiXgO2YQymGENAd6WYMWuk2YRmcKA7HkVHNaga0/ly5Rgi9+fShabDDDhGC5REI3VPbiZCJNLLLTU23P0GgIrNo5OwAAAIA0a3yZFt1VOSjVfQvCP73MXHC/o1zsz5NKaLYazNLpPqZctNmK465CMpC52Kv9niTRujz80oiD5A+K6yYAEES1+wFo625DU2L8duXTFMlSAqPuKuvsST1gok5rA2CUFkxD6AwEuuxACItRq908Rh3ReFZuT+nkhgCkTFGzwYIujg== erik.grziwotz@nokia.com
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIP6c9lnTkXLAbhiPVy6Y+0r27YDi+XOUyTpFqFrh5NAI erik@erik
|
@ -1,7 +1,6 @@
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIO90culn3sicU2chTHn40ytcTay0nUIHap0uF/5fVM6P chris@sol
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOQHMUKlDh2ufno5pZOhUY5xFljC1R5zQ/GjOHDkS58D root@sol
|
||||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCqy6ddUTgh5gbIBbu6WkO5Rm6wje1N+fEOmdNzBlfzpGngj0+94ONpR/dZyIECGFexz5ofizo8XdlGKMR97e9PLXrQXQ6CFO8+vFAwMx8Cs/T0Rx8B5tNl7UWiQ5bDmXPFForuDw7hJetWC5p0yK6+FHqhLDuYQ7qu/fQWneCiZDePmaLtxOaME6AAGJqwn+cqaRvfs0ZN1XRSH4KMk/S8re/+8txOB+uUIeTUkhz5LICcbeTdAWZdnGiNqudmKDGTOV4PZOmxqjtwK+aofqE/ua+x+08C58+Am0yClT0WFup/UmChnf50URApvnXwiJOmW3g+7k5tPRmEMnNglovksTurbKpKdTMVaTfwbVUe03//+/bI92PTH3fSIlmDpXAiolZ22WiGro6LVrx0e9E8a9b4MWOSYLUm19r7pL1gGagBNZcRssp2/9b2T/13SQ8qcFSpA1+B2C8jYgPUW2pxck5S+AK8KZ+nBDWmb44B8xecsmgu61jUTwLMsgjKck85IsVXlYWjHmfros9ni5Hj/0x+poqXB+g5Plww9Ua7iLhFOrz/zBOnUjcoC/dj3scJ9gFAcOV946lYdSQLUlc05mBSzejBbzN05UCSHX7MIcs8XcDFpLvPSzMyqscaS8CSRwbDFRScz6ArFTU9BJp8dYhbhHg6qufqwOy0KS9lPw== wadmin@wolf-x1
|
||||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDCUKGOmy5G56p/QlxQXUiHY7Q+Z//d0krczl+rcJhQrnbKcA6jpT2X9Al3Yrnvp5liz9DeliTCulZuI5xccC5kVSJqCXhN68ybBJhazBExVihLQkGxHrnnLl7n35EX1cmCN9H2p5HsxxFIJ1YfwK1/JmiuIK6BlnYtuns6iSg4bs1BqgL7x1T1ZeghX/us47L9DNmqLuZAaZUXGANo5X1x1vrQL9iMS7J8U1ljvk4PoxxVl3yWNkA16REFWnU8FrEUAEs5ReS5mXFFcKA8eBCpDs2aweaMxORjgct7wvzoT11VqW9Fgt8yRfRHEEi44T4YqjiPd0jeymdkBpnaGEX7W71M0Ifemcob9tPfRcvm36gVV2cACpwtLy+hslVEn7KvRdLTctGXTOzG95mBvZlggKeKwtsgc9OyxRxHb5DBKDE+2cvcM+LNbEpdCl/2Z03jZJbjl7hqt9O1mt4Fdwe+Cntq0g/NjrVN7envWL0M+5A8dh1QwPyGuk+pDqqbCZBFrT+SxsTLzgxXbmLA1LMZgFoszHsXBXhJvnsXF/SrQa+fw/U4uoIAoVmQ8Rh+qBAc7Ca4iENfcZHvB6OQ5WZXEiNQYxSGRSjvdQc8voXBuQBJwPTCScly3a7hpLqC5Qx70wKtRp4jvCVDb2sZiKOR8d/3ljmAPgYycH7DYUubMQ== wolle@wolf-mint
|
||||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDSwqi8XhpwFWjtxC99MyGbt6E41C92Tv3ZVZPZ5eFNuyGY+RzTAF3PYymBWOPcM6cPQYihNLzjWEGOJccA2qac4Vu0sPQKu2njuiydN7vfHUZ9lvQuita7/uuwCRYDbHyVF5mSeqEKC5bOMIyanMpYghkH975Uzm2LSGtgT8u3/wEfizt3WpthCcAfVO8kU7wiMoikJcW249kBUGJxIqKrs8zJZC+6/OmnRmkgc9JlNvBTdGi9zhCSLJ7pEbuOjFMmjFTHpDRYHR6XhYsfImAPM4N3GOfRn9Cx/jTEV9sO7IoFRXwMgE1obuEntCzWAfUQJC/8HGS7sGUVHUfE3loz wadmin@ga13wks03
|
||||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDU3CKlzfIIz78Yg9YBX/F0a3v1ku+VsAOxrFilpN8oRYOqLmwM02yUGIkyBuKha4PyiRqUjlwzKtG9IMs86IxHYJ/08Ky8BA0DSdep+7lxJkF4NDu11G7mfPlbyKwsM+m7uLqUklpZPc7AZ8MG6yUvNINJZ9LAvI5kivnJvornNHuXNSL/lCHKPvQmSrzOPoG/E0OitFYz/HIxAFYWaxaBeA/ucP/P4ClV5ti21Raux8U7U+vQnm4WUeVkeAFssBF/IRp+8GdWQETKgLd5skiDpTCZezQkjVjHtCIqMFDJzzGNGxr4XUEs0b944HdWo+oQgNtITVPi9JGCgr/syoEVWPJ/tYMfBtI8P+y4TKA814vJy6DG3ljNecg06vpLFTC7TyZbpekTfap+CXVWfX8sz88sn5Vz8XBNqK2jFNC8K8jRB5QOEj5HjkmCqUKhUWKU5YN8MqHDEIE6z9FBEUF0xTcSHkvWvc/qO9y7lfDUeSHxfp3N0mT1Mf99+1ZExsuObOsC3IEg8q7E1H/Ot2AQp8h0jLDXGnu/X+Bzra1+tYQ1m60L1Yevv2wRfIh9orjpnh9h6Vb9pQ5cklchJJepWMET9sYRBzbEjI9S2uiG26DAfDakrrZCeymmFmU5SGoRl1VCmqPRIcF/Kd59tVE8ezKcovwtQfSAZkn7+2PfQw== wadmin@ga-st-lsx1
|
||||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDURB9apq7KnPEAMEmCw02nzW6PeZe/Ve4K8RX0RpJEaDI7iwD82k6p7f8Vsl1xBJ8jfIwWEtxkg/P98m1UVoGuB/gVSLAUQrPInGv9EXRpyuy++daC6nKMtWSmLdSVVb5aaUzkloNiwbi+kz0xKjAIs3407VKuaGXLvi0xk5DO64QC34ZWYi2BvkWqEbmxK9yfCRKuP8zkeQO3kZKb2g3DzkXmZZKC0ueuUMvLjevrPAV4KVEwYTBwQgXMQIwP2omKQ/X1LJRJ6prq6DjOGBPddCOeCf+bJgmrk6t+ZmMpSGaUjt7TInyaVrs4vki9jBXJtk8YFNcOE5UVHB8RwjO3W7LG5S1IWg7Aj31OgxLXakr8tFJfCyK36nhRtxqFN62++0iXc0GVPLq8vRZN43QfoNwKGyQBCZVLC67XZ4gBDiZ0nHzqpBjnnO5zGhmv8hYIoGBSPpc433rliK2G8RGLzuQBo+gAmvNyNc9AfD2+v0Ucj7Y1w5uiH/N1IpKz9FQlL4+XGO59vRtrdYUdflTnlBiSF5vh4aL5P3kJPhUtupJ9/Qme6SAfvifwh1zH037wzo1zL+px6b6nLkUemD8gChCqOddJWwqjAbo5ILXJlUbhoIwtDM8ZYo28+/geEkEuD6CJLixqeLs1MgBidwX6W/RrTYU615gGXppcGFomOw== wadmin@ga-st-lsx1
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIF5GDIFA6/i6lzkr+EP/EZM9glrK0eSR0nmrEFgUJ4n8 wadmin@ga-st-lsx1
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAID17MN6fUg0D1dMSgVYIBpIy+sDBBmiaHmXRXU63TXJA wadmin@ga-st-li1303
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKtK8/rxHL1MKX5AHrgAzUYu0kV+1iYCmknpTQ7F0ham wadmin@wolf-debtest
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIcaDFxj0pYjOv/ohFVxVY2RKvy6ACZFPX9UkrUPHkbN wadmin@wolf-x1
|
||||
|
7
supported-files/user_templates/xmatti/.bash_logout
Normal file
7
supported-files/user_templates/xmatti/.bash_logout
Normal file
@ -0,0 +1,7 @@
|
||||
# ~/.bash_logout: executed by bash(1) when login shell exits.
|
||||
|
||||
# when leaving the console clear the screen to increase privacy
|
||||
|
||||
if [ "$SHLVL" = 1 ]; then
|
||||
[ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q
|
||||
fi
|
124
supported-files/user_templates/xmatti/.bashrc
Normal file
124
supported-files/user_templates/xmatti/.bashrc
Normal file
@ -0,0 +1,124 @@
|
||||
# ~/.bashrc: executed by bash(1) for non-login shells.
|
||||
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
|
||||
# for examples
|
||||
|
||||
# If not running interactively, don't do anything
|
||||
case $- in
|
||||
*i*) ;;
|
||||
*) return;;
|
||||
esac
|
||||
|
||||
# don't put duplicate lines or lines starting with space in the history.
|
||||
# See bash(1) for more options
|
||||
HISTCONTROL=ignoreboth
|
||||
|
||||
# append to the history file, don't overwrite it
|
||||
shopt -s histappend
|
||||
|
||||
# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
|
||||
HISTSIZE=1000
|
||||
HISTFILESIZE=2000
|
||||
|
||||
# check the window size after each command and, if necessary,
|
||||
# update the values of LINES and COLUMNS.
|
||||
shopt -s checkwinsize
|
||||
|
||||
# If set, the pattern "**" used in a pathname expansion context will
|
||||
# match all files and zero or more directories and subdirectories.
|
||||
#shopt -s globstar
|
||||
|
||||
# make less more friendly for non-text input files, see lesspipe(1)
|
||||
#[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
|
||||
|
||||
# set variable identifying the chroot you work in (used in the prompt below)
|
||||
if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then
|
||||
debian_chroot=$(cat /etc/debian_chroot)
|
||||
fi
|
||||
|
||||
# set a fancy prompt (non-color, unless we know we "want" color)
|
||||
case "$TERM" in
|
||||
xterm-color) color_prompt=yes;;
|
||||
esac
|
||||
|
||||
# uncomment for a colored prompt, if the terminal has the capability; turned
|
||||
# off by default to not distract the user: the focus in a terminal window
|
||||
# should be on the output of commands, not on the prompt
|
||||
#force_color_prompt=yes
|
||||
|
||||
if [ -n "$force_color_prompt" ]; then
|
||||
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
|
||||
# We have color support; assume it's compliant with Ecma-48
|
||||
# (ISO/IEC-6429). (Lack of such support is extremely rare, and such
|
||||
# a case would tend to support setf rather than setaf.)
|
||||
color_prompt=yes
|
||||
else
|
||||
color_prompt=
|
||||
fi
|
||||
fi
|
||||
__hostname="$(hostname -f)"
|
||||
__hostname="${__hostname%.*}"
|
||||
__hostname="${__hostname%.*}"
|
||||
if [ "$color_prompt" = yes ]; then
|
||||
#PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
|
||||
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@${__hostname}:\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
|
||||
else
|
||||
#PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
|
||||
PS1='${debian_chroot:+($debian_chroot)}\u@${__hostname}:\w\$ '
|
||||
fi
|
||||
unset color_prompt force_color_prompt
|
||||
|
||||
# If this is an xterm set the title to user@host:dir
|
||||
case "$TERM" in
|
||||
xterm*|rxvt*)
|
||||
PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
|
||||
# enable color support of ls and also add handy aliases
|
||||
if [ -x /usr/bin/dircolors ]; then
|
||||
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
|
||||
alias ls='ls --color=auto'
|
||||
#alias dir='dir --color=auto'
|
||||
#alias vdir='vdir --color=auto'
|
||||
|
||||
#alias grep='grep --color=auto'
|
||||
#alias fgrep='fgrep --color=auto'
|
||||
#alias egrep='egrep --color=auto'
|
||||
fi
|
||||
|
||||
# some more ls aliases
|
||||
alias ll='ls -l'
|
||||
alias la='ls -A'
|
||||
alias l='ls -CF'
|
||||
|
||||
alias ..='cd ..'
|
||||
alias ...='cd ../..'
|
||||
alias ....='cd ../../..'
|
||||
|
||||
# Alias definitions.
|
||||
# You may want to put all your additions into a separate file like
|
||||
# ~/.bash_aliases, instead of adding them here directly.
|
||||
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
|
||||
|
||||
if [ -f ~/.bash_aliases ]; then
|
||||
. ~/.bash_aliases
|
||||
fi
|
||||
|
||||
# enable programmable completion features (you don't need to enable
|
||||
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
|
||||
# sources /etc/bash.bashrc).
|
||||
if ! shopt -oq posix; then
|
||||
if [ -f /usr/share/bash-completion/bash_completion ]; then
|
||||
. /usr/share/bash-completion/bash_completion
|
||||
elif [ -f /etc/bash_completion ]; then
|
||||
. /etc/bash_completion
|
||||
fi
|
||||
fi
|
||||
|
||||
export EDITOR=vim
|
||||
|
||||
## - set beep more quiet
|
||||
## -
|
||||
#xset b 10 500 50
|
31
supported-files/user_templates/xmatti/.profile
Normal file
31
supported-files/user_templates/xmatti/.profile
Normal file
@ -0,0 +1,31 @@
|
||||
# ~/.profile: executed by the command interpreter for login shells.
|
||||
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
|
||||
# exists.
|
||||
# see /usr/share/doc/bash/examples/startup-files for examples.
|
||||
# the files are located in the bash-doc package.
|
||||
|
||||
# the default umask is set in /etc/profile; for setting the umask
|
||||
# for ssh logins, install and configure the libpam-umask package.
|
||||
#umask 022
|
||||
|
||||
# if running bash
|
||||
if [ -n "$BASH_VERSION" ]; then
|
||||
# include .bashrc if it exists
|
||||
if [ -f "$HOME/.bashrc" ]; then
|
||||
. "$HOME/.bashrc"
|
||||
fi
|
||||
fi
|
||||
|
||||
# set PATH so it includes user's private bin if it exists
|
||||
if [ -d "$HOME/bin" ] ; then
|
||||
PATH="$HOME/bin:$PATH"
|
||||
fi
|
||||
|
||||
# this is for the midnight-commander
|
||||
# to become the last directory the midnight commander was in
|
||||
# as the current directory when leaving the midnight commander
|
||||
#
|
||||
#. /usr/lib/mc/bin/mc.sh
|
||||
if [ -f "/usr/share/mc/bin/mc.sh" ]; then
|
||||
source /usr/share/mc/bin/mc.sh
|
||||
fi
|
@ -0,0 +1,2 @@
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIO90culn3sicU2chTHn40ytcTay0nUIHap0uF/5fVM6P chris@sol
|
||||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCZAWX2xF4msYC3Q8S2RopJW329LNaXSIClfh9Fuog5izi9hwQYZrACVQgWxU3OHn3o43DBvJORG0TMR5CDslFbtPc2uw8PupHNGYDT+F8zvYdLxm5lERIr44s8ymYk9/YVvDlbCHcIqaluMxBKBR/0lKWTCFhTM1lv4DPcn2Wdv9qgN8orrWbV0ADIk5lqZPmiSZwUYJ7FiJdGK43+Ps9luEsaPkF2bTiN5qp+TS1t2wFVws8RbkdAxfctRUv8VPFB78rxyp13m6N0czSiO+AHBOWQO3lVoumKDZmO4OS69fo6kEVvRJHqDbNnx61WnicVQhscSJkiNZF7/wfd6TRhBQ2kivQ/hwVN9pmJ+sqIUNIQB94PqjxEq7gpFQObJNQxJVqx+vEWDBaWWPVwfMWYl95kKPDGMt1QIrSCyk30gtIyfw4fw3ge/MBVs9mSau5AaopCK1VgPnWfoIn8OZjEg3jBXOPSYNabUIsdbEUFwTpXsKWiEEgOI0c5bxzyJIu977jHx4d73IRHYTrNI/SBUTim0qaSmpJwBl3Vu+GyEw+Raxz8EBjw4A/9gtLKPPD+kxNV7Ybb4+qvbbi4Q/teFLFx16NzuUOAgc7OfMY2OLBQvSSGExPTRW8AJK4IA4kKyqa4BE914bD0VsVDjLKGxn621opgbElUe6bE+Rmtsw== xmatti@posteo.de
|
173
supported-files/user_templates/xmatti/.vimrc
Normal file
173
supported-files/user_templates/xmatti/.vimrc
Normal file
@ -0,0 +1,173 @@
|
||||
" An example for a vimrc file.
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last change: 1999 Sep 09
|
||||
"
|
||||
" To use it, copy it to
|
||||
" for Unix and OS/2: ~/.vimrc
|
||||
" for Amiga: s:.vimrc
|
||||
" for MS-DOS and Win32: $VIM\_vimrc
|
||||
|
||||
" This line should not be removed as it ensures that various options are
|
||||
" properly set to work with the Vim-related packages available in Debian.
|
||||
runtime! debian.vim
|
||||
|
||||
set nocompatible " Use Vim defaults (much better!)
|
||||
set bs=2 " allow backspacing over everything in insert mode
|
||||
set ai " always set autoindenting on
|
||||
" set backup " keep a backup file
|
||||
"set viminfo='20,\"50 " read/write a .viminfo file, don't store more
|
||||
" than 50 lines of registers
|
||||
set viminfo='20,\"50,:20,%,n~/.viminfo
|
||||
set history=50 " keep 50 lines of command line history
|
||||
set ruler " show the cursor position all the time
|
||||
set ignorecase " suchen case-insenitiv
|
||||
set showmatch " zeige passende klammern
|
||||
set shell=/bin/bash " shell to start with !
|
||||
set expandtab " tabs --> blanks
|
||||
set showmode " anzeige INSERT/REPLACE/...
|
||||
|
||||
" set smartcase " Do smart case matching
|
||||
|
||||
set incsearch " Incremental search
|
||||
" Start searching when you type the first character of
|
||||
" the search string. As you type in more characters, the
|
||||
" search is refined.
|
||||
|
||||
set t_Co=256 " To enable 256 colors in vim, put this your .vimrc before setting the colorscheme
|
||||
|
||||
" einrueckung
|
||||
set shiftwidth=3
|
||||
set tabstop=3
|
||||
" Round indent to multiple of 'shiftwidth' for > and < commands
|
||||
set shiftround
|
||||
|
||||
" For Win32 GUI: remove 't' flag from 'guioptions': no tearoff menu entries
|
||||
" let &guioptions = substitute(&guioptions, "t", "", "g")
|
||||
|
||||
" Don't use Ex mode, use Q for formatting
|
||||
map Q gq
|
||||
|
||||
" Make p in isual Visual mode replace the selected text with the "" register.
|
||||
vnoremap p <Esc>:let current_reg = @"<CR>gvdi<C-R>=current_reg<CR><Esc>
|
||||
|
||||
" Switch syntax highlighting on, when the terminal has colors
|
||||
" Also switch on highlighting the last used search pattern.
|
||||
if &t_Co > 2 || has("gui_running")
|
||||
syntax on
|
||||
set hlsearch
|
||||
endif
|
||||
|
||||
" Only do this part when compiled with support for autocommands.
|
||||
if has("autocmd")
|
||||
|
||||
" In text files, always limit the width of text to 78 characters
|
||||
autocmd BufRead *.txt set tw=78
|
||||
|
||||
augroup cprog
|
||||
" Remove all cprog autocommands
|
||||
au!
|
||||
|
||||
" When starting to edit a file:
|
||||
" For C and C++ files set formatting of comments and set C-indenting on.
|
||||
" For other files switch it off.
|
||||
" Don't change the order, it's important that the line with * comes first.
|
||||
autocmd FileType * set formatoptions=tcql nocindent comments&
|
||||
autocmd FileType c,cpp set formatoptions=croql cindent comments=sr:/*,mb:*,el:*/,://
|
||||
augroup END
|
||||
|
||||
augroup gzip
|
||||
" Remove all gzip autocommands
|
||||
au!
|
||||
|
||||
" Enable editing of gzipped files
|
||||
" set binary mode before reading the file
|
||||
autocmd BufReadPre,FileReadPre *.gz,*.bz2 set bin
|
||||
autocmd BufReadPost,FileReadPost *.gz call GZIP_read("gunzip")
|
||||
autocmd BufReadPost,FileReadPost *.bz2 call GZIP_read("bunzip2")
|
||||
autocmd BufWritePost,FileWritePost *.gz call GZIP_write("gzip")
|
||||
autocmd BufWritePost,FileWritePost *.bz2 call GZIP_write("bzip2")
|
||||
autocmd FileAppendPre *.gz call GZIP_appre("gunzip")
|
||||
autocmd FileAppendPre *.bz2 call GZIP_appre("bunzip2")
|
||||
autocmd FileAppendPost *.gz call GZIP_write("gzip")
|
||||
autocmd FileAppendPost *.bz2 call GZIP_write("bzip2")
|
||||
|
||||
" After reading compressed file: Uncompress text in buffer with "cmd"
|
||||
fun! GZIP_read(cmd)
|
||||
let ch_save = &ch
|
||||
set ch=2
|
||||
execute "'[,']!" . a:cmd
|
||||
set nobin
|
||||
let &ch = ch_save
|
||||
execute ":doautocmd BufReadPost " . expand("%:r")
|
||||
endfun
|
||||
|
||||
" After writing compressed file: Compress written file with "cmd"
|
||||
fun! GZIP_write(cmd)
|
||||
if rename(expand("<afile>"), expand("<afile>:r")) == 0
|
||||
execute "!" . a:cmd . " <afile>:r"
|
||||
endif
|
||||
endfun
|
||||
|
||||
" Before appending to compressed file: Uncompress file with "cmd"
|
||||
fun! GZIP_appre(cmd)
|
||||
execute "!" . a:cmd . " <afile>"
|
||||
call rename(expand("<afile>:r"), expand("<afile>"))
|
||||
endfun
|
||||
|
||||
augroup END
|
||||
|
||||
" This is disabled, because it changes the jumplist. Can't use CTRL-O to go
|
||||
" back to positions in previous files more than once.
|
||||
if 0
|
||||
" When editing a file, always jump to the last cursor position.
|
||||
" This must be after the uncompress commands.
|
||||
autocmd BufReadPost * if line("'\"") && line("'\"") <= line("$") | exe "normal `\"" | endif
|
||||
endif
|
||||
|
||||
endif " has("autocmd")
|
||||
|
||||
" toggle syntax highlighting
|
||||
map <F12> :if exists("syntax_on") <Bar> syntax off <Bar> else <Bar> syntax on <Bar> endif <CR><ESC>
|
||||
map <F11> :nohls <CR>
|
||||
|
||||
" use <F6> to toggle line numbers
|
||||
nmap <silent> <F6> :set number!<CR>
|
||||
|
||||
|
||||
" If using a dark background within the editing area and syntax highlighting
|
||||
" turn on this option as well
|
||||
set background=dark
|
||||
|
||||
|
||||
" set color for search
|
||||
hi clear search
|
||||
hi search term=bold,reverse cterm=bold,reverse gui=bold,reverse
|
||||
|
||||
" set color for Comment
|
||||
hi clear Comment
|
||||
"highlight Comment term=bold cterm=bold ctermfg=LightBlue guifg=#80a0ff gui=bold
|
||||
"highlight Comment term=none cterm=none ctermfg=LightBlue guifg=#80a0ff gui=bold
|
||||
"highlight Comment term=bold cterm=bold ctermfg=grey guifg=#80a0ff gui=bold
|
||||
highlight Comment term=none cterm=none ctermfg=grey guifg=#80a0ff gui=bold
|
||||
"highlight Comment term=none cterm=none ctermfg=177 guifg=#80a0ff gui=bold
|
||||
"highlight Comment term=none cterm=none ctermfg=215 guifg=#80a0ff gui=bold
|
||||
|
||||
" Go back to the position the cursor was on the last time this file was edited
|
||||
au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$")|execute("normal `\"")|endif
|
||||
|
||||
" visual shifting (does not exit Visual mode)
|
||||
vnoremap < <gv
|
||||
vnoremap > >gv
|
||||
|
||||
" Scroll when cursor gets within 3 characters of top/bottom edge
|
||||
set scrolloff=3
|
||||
|
||||
" Show line, column number, and relative position within a file in the status line
|
||||
" set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [ASCII=\%03.3b]\ [HEX=\%02.2B]\ [POS=%04l,%04v][%p%%]\ [LEN=%L]
|
||||
"set statusline=\ %F\ %(\|\ flags:\ %R%M%H%W\ %)%(\|\ type:\ %Y\ %)%(\|\ format:\ %{&ff}\ %)%(\|\ syntax:\ %{synIDattr(synID(line('.'),col('.'),0),'name')}%)\ \ %=line:\ %l/%L\ \|\ column:\ %c%V\ \|\ relative\:\ %p%%\
|
||||
set statusline=\ %F\ %(\|\ flags:\ %R%M%H%W\ %)%(\|\ type:\ %Y\ %)%(\|\ format:\ %{&ff}\ %)\ \ %=line:\ %l/%L\ \|\ col:\ %c%V\ \|\ %p%%
|
||||
" Always show status line, even for one window
|
||||
set laststatus=2
|
||||
highlight StatusLine cterm=none ctermfg=white ctermbg=blue
|
||||
|
Loading…
Reference in New Issue
Block a user