Example Common
example_common.1492685868.txt.gz | Хозяин: | Изменен: 20.05.2019 15:18 admin Черновик
Есть неутвержденный черновик!!!
Это старая версия документа.
#--help #--help утилита помощи и примеров #--help Usage: carbon_help sed #--help Usage: carbon_help bash substring #iptables #mtu Настроить mtu в FORWARD/INPUT/OUTPUT, важно для vpn и tunnel #iptables #mtu iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu #iptables #mtu iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 1350 #tcpdump tcpdump -c 1000 -nni any | while read t t ip1 t ip2 t; do echo $\{ip2%%:*\}; done | sort | uniq -c | sort -n ### кто съел весь трафик #openvz как пробросить устройство #openvz vzctl set VEID --devices b|c:major:minor|all:[r|w|rw|none] #openvz vzctl set [VEID] --devnodes ttyUSB0:rw --save #openvz vzctl set [VEID] --devices c:189:all:rw --save #openvz vi /etc/pve/openvz/[VEID].conf DEVNODES="ttyUSB1:rw " DEVNODES="c:189:all:rw " #openvz проброс X firewall tun/tap ### https://habrahabr.ru/post/210460/ #yum #yum yum list installed | awk '{print $1}' ### список установленных пакетов #yum yum search php ### поиск пакета #yum yum install php -y ### установка пакета #yum yum install epel-release -y; yum install smbldap-tools --enablerepo=epel -y ### установка и использование epel #bash #bash date -d "1970-01-01 UTC 1458515485 sec" +%Y-%m-%d ### перевод из unixtime в стандартную дату #bash #bash #string ### форматированный вывод #bash #string printf "%-7s %-7s %-11s %-12s %-10s %-8s %-11s %s" "vz: $vz_count" "kvm: $kvm_count" "mem: ${freemem}M" "space: ${freespace}G" "load: $loadavg" "hit: ${hit}%" "skip: ${skip}K" #bash #bash #string подстрока substring #bash #string str=123456789 #bash #string echo ${str:0:3} = 123 ### взять слева с нулевого символа 3 символа #bash #string echo ${a: -4:3} = 678 ### взять справа от -4 символа 3 символа. Внимание! пробел перед " -4" обязателен #bash #string a="${a//$'\n'/ }" ### заменить переводы строк на пробелы #bash #bash #script ### Удалить все файлы кроме 10 последних по дате модификации, полезно для бекапов и логов #bash #script [ `ls -1 | wc -l` -gt 10 ] && ls -1t | tail -n +10 | xargs -x /bin/echo rm #bash #script ### Удалить все файлы кроме 10 последних по имени файла вида 09.07.15_15-40.sql.bz2, полезно для бекапов и логов #bash #script [ `ls -1 | wc -l` -gt 10 ] && ls -1 | sort | head -n 2 | xargs -x /bin/echo rm #bash bashrc ### Удобный bash history #bash bashrc export HISTSIZE=10000 #bash bashrc export HISTCONTROL="ignoreboth" #bash bashrc shopt -s histappend #bash bashrc shopt -s cmdhist #bash bashrc export HISTTIMEFORMAT="%F %T " #bash bashrc function prompt_cmd(){ #bash bashrc history -a &>/dev/null; #bash bashrc if ! tail -n 1 ~/.bash_history | grep -qm1 "${SSH_CLIENT%% *}"; then #bash bashrc echo -e "#$(date +%s)\n ${SSH_CLIENT%% *}" >>~/.bash_history; #bash bashrc fi #bash bashrc } #bash bashrc PROMPT_COMMAND=prompt_cmd #bash #bash ### Пример удобного логирования #bash log echo "$(date +'%Y-%m-%d %H:%M:%S') $HOSTNAME ${0##*/}[$$]: $@" #linux #selinux ### отключить selinux #linux #selinux echo 0 > /selinux/enforce #linux #selinux vi /etc/selinux/config #linux #selinux SELINUX=disabled #linux #selinux SELINUXTYPE=targeted #linux #selinux SETLOCALDEFS=0 #linux #linux #tuning ### оптимизация и тюнинг #linux #tuning vi /etc/resolv.conf #linux #tuning nameserver 10.90.1.3 #linux #tuning nameserver 8.8.8.8 #linux #tuning options single-request #linux #tuning sudo apt-get install nscd && sudo service nscd restart #kvm echo 0 > /proc/sys/kernel/hung_task_timeout_secs #mount mount -o errors=remount-ro,noatime,nodiratime,noauto_da_alloc /dev/mapper/$FLASHCACHE /mnt/$STORAGE #linux #proc cat /proc/meminfo | grep 'Dirty|Buffers' ### Посмотреть сколько не сброшено на диск данных #linux #proc echo 3 > /proc/sys/vm/drop_caches ### очистка кеша #linux hdparm -t /dev/hda1 ### скорость диска #mdadm mdadm --detail --scan --verbose #mdadm mdadm --create --metadata=0.90 --verbose -c 128 /dev/md0 --level=0 --raid-devices=2 /dev/sda7 /dev/sdb7 #mdadm mdadm --examine --scan >> /etc/mdadm.conf #mdadm mdadm --create /dev/md10 --level=1 --raid-devices=2 /dev/sdc1 /dev/sdd1 --assume-clean #mdadm mdadm --create /dev/md50 --level=1 --auto=no --assume-clean --raid-devices=2 /dev/sdc2 /dev/sdd2 #mdadm mdadm --create /dev/md100 --level=10 --auto=no --assume-clean --chunk=512K --raid-devices=4 --layout=f2 /dev/sda1 missing /dev/sdd1 missing #mdadm mkfs.ext4 /dev/md100 -E stride=128,stripe_width=256 #mdadm echo AUTO +imsm +1.x -all > /etc/mdadm.conf #mdadm mdadm --detail --scan >> /etc/mdadm.conf #rsync ### со сжатием и правами rsync -avz --compress-level=1 --progress --inplace --partial /var/lib/libvirt/images/git.qcow2 /var/lib/libvirt/images/git45.img 10.90.1.100:/mnt/voffice #ssh ### доступ по ssh без пароля #ssh ssh-gen ssh-keygen ### создать ключ #ssh ### скопировать открытый ключ на удаленный сервер для доступа без пароля #ssh /usr/bin/ssh-copy-id -i ~/.ssh/id_rsa.pub 10.120.177.33 #ssh cat ~/.ssh/id_rsa.pub | ssh 10.120.177.33 "cat >> ~/.ssh/authorized_keys" #sed sed -i 's/что_менять/на_что_менять/' /path/to/files/* ### Заменить во всех файлах слова #git GIT_DIR/info/attributes можно решать переносы делать indent и прочее фишко #git for-each-ref --format="%(refname) %(objectname) %(objecttype)" refs/heads/ ### показть список всех heads #git git ls-tree -r HEAD ### показать список всех файлов в памяти git #git git blame ### узнать кто сломал конкретную строчку кода #git git cherry-pick ### внести измененния новым коммитом с новым хешем из коммита другой ветки без merge #git git log --pretty=oneline #git git log --pretty=short #git git log --pretty=full/fuller #git git log --pretty=format:'FORMAT' #git git log --graph #git git log --all --pretty=format:'%H %s %aD' >/tmp/a #git git status --porcelain | sed -r -e 's/...(.*)/git checkout --theirs .\/\1/' >../tmp #git git format-patch HEAD^1..HEAD #git git apply --stat 0001-Fix-build-on-4.x-kernel.patch #git git apply --check 0001-Fix-build-on-4.x-kernel.patch #git git apply 0001-Fix-build-on-4.x-kernel.patch #git git am #git path #git diff -- #git git diff --name-only <хеш коммита>..HEAD ### показать измененные файлы
Обсуждение