Архив рубрики: centos

1C postgresql резервные копии, регламентные операции и восстановление

Скрипт создания бекапа и выполнения регламентных операций с базой

/root/backup.sh

 

#!/bin/sh

# Устанавливаем дату
DATA=`date +"%Y-%m-%d_%H-%M"`

# Записываем информацию в лог с секундами
echo "`date +"%Y-%m-%d_%H-%M-%S"` Start backup Cloud_ka_2" >> /root/service_bkp.log

# Бэкапим базу данных base1c и сразу сжимаем
/usr/bin/pg_dump -U postgres Cloud_KA_2 | pigz > /root/backup/$DATA-Cloud_KA_2.sql.gz

echo "`date +"%Y-%m-%d_%H-%M-%S"` End backup Cloud_ka_2" >> /root/service_bkp.log

sleep 2

# Записываем информацию в лог
echo "`date +"%Y-%m-%d_%H-%M-%S"` Start vacuum Cloud_KA_2" >> /root/service_bkp.log
# Выполняем очистку и анализ базы данных
/usr/bin/vacuumdb --full --analyze --username postgres --dbname Cloud_KA_2
echo "`date +"%Y-%m-%d_%H-%M-%S"` End vacuum Cloud_KA_2" >> /root/service_bkp.log

sleep 2

echo "`date +"%Y-%m-%d_%H-%M-%S"` Start reindex Cloud_KA_2" >> /root/service_bkp.log
# Переиндексирвоать базу
/usr/bin/reindexdb --username postgres --dbname Cloud_KA_2
echo "`date +"%Y-%m-%d_%H-%M-%S"` End reindex Cloud_KA_2" >> /root/service_bkp.log


# Удаляем в папке с бэкапами архивы старше 7-х дней
/usr/bin/find /root/backup -type f -mtime +7 -exec rm -rf {} \;

Читать далее

django + nginx + postgresql + gunicorn настройка сервера с нуля

apt-get install sudo ssh openssh-server
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install python-virtualenv
sudo apt-get install libpq-dev python-dev
sudo apt-get install postgresql postgresql-contrib
sudo apt-get install nginx

Читать далее

Переход на постоянное зимнее время 26.10.2014 Centos/Debian/Ubuntu/Windows/Cisco… etc

Собственно актуально.

В соответствии с постановлением главы нашего государства переход на зимнее время состоится в ночь на 26 октября 2014 года

Ман по переходу на различных версиях ОС ниже.

Windows (2008 R2)

wusa.exe \\FS\setup$\Windows6.1-KB2998527-x64.msu /quiet /norestart
tzutil /s "Russian Standard Time"

Freebsd

[root@eis /home/lexit/tzdata] zdump -v /etc/localtime | grep 2014

#fetch ftp://ftp.iana.org/tz/tzdata-latest.tar.gz
#mkdir tzdata 
#cd tzdata
#tar xzf ../tzdata-latest.tar.gz
#zic europe
#tzdata
[x]Europe [x] Russian Federation][x] Moscow

# zdump -v /etc/localtime | grep 2014
/etc/localtime Sat Oct 25 21:59:59 2014 UTC = Sun Oct 26 01:59:59 2014 MSK isdst=0 gmtoff=14400
/etc/localtime Sat Oct 25 22:00:00 2014 UTC = Sun Oct 26 01:00:00 2014 MSK isdst=0 gmtoff=10800

Centos

Вариант 1. ( для продакт сред может принести лишний геморой)   yum update && yum upgrade

Вариант 2.

# yum update tzdata
# rm -rf /etc/localtime
# ln -s /usr/share/zoneinfo/Europe/Moscow /etc/localtime

Debian / Ubuntu / + (java)

Вариант 1. ( для продакт сред может принести лишний геморой) apt-get update && apt-get upgrade

Вариант 2.

wget http://ftp.ru.debian.org/debian/pool/main/t/tzdata/tzdata_2014h-2_all.deb 
dpkg -i tzdata_2014h-2_all.deb 

#JAVA
wget http://ftp.ru.debian.org/debian/pool/main/t/tzdata/tzdata-java_2014h-2_all.deb
dpkg -i tzdata-java_2014h-2_all.deb

#check
zdump -v /etc/localtime | grep 2014

Java (Windows)

 

http://www.oracle.com/technetwork/java/javase/downloads/tzupdater-download-513681.html

c:\Install>java -jar tzupdater.jar -u -v
java.home: C:\Program Files\Java\jre7
java.vendor: Oracle Corporation
java.version: 1.7.0_71
JRE time zone data version: tzdata2014c
Embedded time zone data version: tzdata2014h
Extracting files... done.
Renaming directories... done.
Validating the new time zone data... done.
Time zone data update is complete.

Exchange

Exchange Server meetings in Russian time zones as well as names of time zones are incorrect after October 26, 2014

http://support2.microsoft.com/kb/3004235

Cisco

clock timezone MSK 3
ntp master 3
ntp server 192.168.0.2

Asterisk 11 Centos 6.5 Установка

Образ используемый для установки
CentOS-6.5-x86_64-minimal.iso   md5 0d9dc37b5dd4befa1c440d2174e88a87

VM под астериск
IP 192.168.0.33/24
GW 192.168.0.1
DNS 192.168.0.2,192.168.0.22
Суффиксы DNS поиска iamroot.ru

[root@ast-01 ~]# uname -r
2.6.32-431.el6.x86_64
[root@ast-01 ~]# yum update –y
[root@ast-01 ~]# sed -i s/SELINUX=enforcing/SELINUX=disabled/g /etc/selinux/config
[root@ast-01 ~]# yum install -y make wget openssl-devel ncurses-devel newt-devel libxml2-devel kernel-devel gcc gcc-c++ sqlite-devel libuuid-devel nano perl
[root@ast-01 jansson-2.5]# cd ../
[root@ast-01 src]# wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz
[root@ast-01 src]# wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-1.4-current.tar.gz
[root@ast-01 src]# wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-11-current.tar.gz
[root@ast-01 src]# tar zxvf dahdi-linux-complete*
[root@ast-01 src]# tar zxvf libpri*
[root@ast-01 src]# tar zxvf asterisk*
[root@ast-01 src]# reboot
[root@ast-01 src]# cd /usr/src/dahdi-linux-complete* && make && make install && makeconfig
[root@ast-01 src]# chkconfig --add dahdi
[root@ast-01 src]# cd /usr/src/libpri* && make && make install
[root@ast-01 libpri-1.4.14]# cd /usr/src/asterisk*
[root@ast-01 asterisk-11.7.0]#./configure --libdir=/usr/lib64 && make menuselect && make && make install
[root@ast-01 asterisk-11.7.0]# make samples
[root@ast-01 asterisk-11.7.0]# yum install doxygen -y && make progdocs
[root@ast-01 asterisk-11.7.0]# make config
[root@ast-01 asterisk-11.7.0]# service dahdi start
[root@ast-01 asterisk-11.7.0]# service asterisk start
[root@ast-01 asterisk-11.7.0]# asterisk -r
Privilege escalation protection disabled!
See https://wiki.asterisk.org/wiki/x/1gKfAQ for more details.
Asterisk 11.7.0, Copyright (C) 1999 - 2013 Digium, Inc. and others.
Created by Mark Spencer <markster@digium.com>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'core show license' for details.
=========================================================================
Connected to Asterisk 11.7.0 currently running on ast-01 (pid = 29706)
ast-01*CLI>

[root@ast-01 src]# cd /usr/src/
[root@ast-01 src]# yum install -y python iptables
[root@ast-01 src]# wget sourceforge.net/projects/fail2ban/files/fail2ban-stable/fail2ban-0.8.4/fail2ban-0.8.4.tar.bz2/download
[root@ast-01 src]# tar jxf fail2ban-0.8.4.tar.bz2
[root@ast-01 src]# cd fail2ban-0.8.4
[root@ast-01 fail2ban-0.8.4]# python setup.py install
[root@ast-01 fail2ban-0.8.4]# cp /usr/src/fail2ban-0.8.4/files/redhat-initd /etc/init.d/fail2ban
[root@ast-01 fail2ban-0.8.4]# chmod 755 /etc/init.d/fail2ban
[root@ast-01 files]# touch /etc/fail2ban/filter.d/asterisk.conf
[root@ast-01 files]# cat /etc/fail2ban/filter.d/asterisk.conf
# Fail2Ban configuration file
[INCLUDES]
# Read common prefixes. If any customizations available -- read them from
# common.local
#before = common.conf
[Definition]
#_daemon = asterisk
# Option: failregex
# Notes.: regex to match the password failures messages in the logfile. The
# host must be matched by a group named "host". The tag "" can
# be used for standard IP/hostname matching and is only an alias for
# (?:::f{4,6}:)?(?P\S+)
# Values: TEXT
#
failregex = NOTICE.* .*: Registration from '.*' failed for '' - Wrong password
NOTICE.* .*: Registration from '.*' failed for '' - No matching peer found
NOTICE.* .*: Registration from '.*' failed for '' - Username/auth name mismatch
NOTICE.* .*: Registration from '.*' failed for '' - Device does not match ACL
NOTICE.* .*: Registration from '.*' failed for '' - Peer is not supposed to register
NOTICE.* .*: Registration from '.*' failed for '' - ACL error (permit/deny)
NOTICE.* .*: Registration from '.*' failed for '' - Device does not match ACL
NOTICE.* failed to authenticate as '.*'$
NOTICE.* .*: No registration for peer '.*' \(from \)
NOTICE.* .*: Host failed MD5 authentication for '.*' (.*)
NOTICE.* .*: Failed to authenticate user .*@.*
# Option: ignoreregex
# Notes.: regex to ignore. If this regex matches, the line is ignored.
# Values: TEXT
#
ignoreregex = 192.168.0.0/24 #указываем наш IP с которого не будет проходить блок
------------------------------------------------
[root@ast-01 files]#cat /etc/fail2ban/jail.conf
------------------------------------------------
…
[asterisk-iptables]

enabled = true
filter = asterisk
action = iptables-allports[name=ASTERISK, protocol=all]
sendmail-whois[name=ASTERISK, dest=root, sender=fail2ban@localhost]
logpath = /var/log/messages
maxretry = 5
bantime = 259200
ignoreip=192.168.0.0/24
-----------------------------------------------------
[root@ast-01 files]# nano /etc/asterisk/logger.conf
-----------------------------------------------------
...
[general]
dateformat=%F %T

syslog.local0 => notice
...
-----------------------------------------------
[root@ast-01 files]#service iptables start
[root@ast-01 files]#service fail2ban start

Centos EMail to SMS мегафон модем E1550

[root@mng ~]#wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm
[root@mng ~]#rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt
[root@mng ~]#rpm -K rpmforge-release-0.5.2-2.el6.rf.*.rpm
[root@mng ~]#yum install usb_modeswitch
[root@mng ~]#yum install minicom 
[root@mng ~]#yum install smstools usbtools
[root@mng ~]#minicom -s

Читать далее

Контроль изменения файлов в Linux

#!/bin/bash

ulimit -t 20
checkdir="/bin /sbin"
filedb="/var/tmp/permsecdb"
email="test@iamroot.ru"

out=$(
exec 2>&1
umask 266
find $checkdir -type f -printf "%m\t" -exec md5sum {} \; >$filedb.tmp
diff $filedb $filedb.tmp
mv -f $filedb.tmp $filedb
)
if [ "$out" ];then 
 (date; echo; echo "$out") | mail -s "Change permsec `hostname`" $email fi

— ulimit лучше выставить не случай не предвиденных ситуаций.
— checkdir соответственно проверяемые директории
— filedb текстовой файл базы
— email куда посылать мыло

Если изменений в системе не было, то сообщения посылаться не будут.
Виды сообщений

1 — ошибки
2 — добавлен файл «> 644 df794b40f826b6838df9b82115b59aba5 /bin/test»
3 — удален файл «< 755 df794b40f826b6838df9b82115b59aba5 /bin/test»
4 — изменен файл «< 755 df794b40f826b6838df9b82115b59aba5 /bin/test
— > 755 df794b40f826b6838df9b82115b59aba5 /bin/test»

Centos postgresql 1C бекап в сетевую папку

[root@node01]# yum install samba-client samba-common cifs-utils

[root@node01]# mkdir /media/backup

[root@node01]# cat /etc/fstab | grep cifs

//192.168.0.111/backup/postgres /media/backup cifs iocharset=utf8,codepage=cp866,uid=500,gid=500,rw,user=user%pa$$w0rd 0 0 Читать далее

Возвращаемся к резервному копированию. Rsync,DD

dd – служит для дублирования томов, а также для копирования их в файлы. dd требует наличия входного файла if, который может быть файлом любого типа, в том числе и блочным устройством, и выходного файла of.

Продолжение под катом

Читать далее