WebVZ панель управления вирутальными серверами OpenVZ
Запись создана 6 апреля, 2009
Одна из панелей управления корневой системой OpenVZ написаная на ruby называется, WebVZ. Очень простая панель, не есть ресурсов, минималистична предельно. Думаю многоим понравится. ставится на CentOS без запинки, привожу сценарий установки:
[cc lang=»bash»
[root@vps ~]# yum install -y rubygems ruby ruby-rdoc rubygem-sqlite3-ruby ruby-libs ruby-irb rubygem-fastthread
[root@vps ~]# gem update —system
[root@vps ~]# gem install -v=2.1.0 rails
[root@vps ~]# wget http://ovh.dl.sourceforge.net/sourceforge/webvz/webvz.2.0.tar.gz
[root@vps ~]# tar -xzvf webvz.2.0.tar.gz
[root@vps ~]# mv webvz.2.0 webvz
[root@vps ~]# mv webvz /usr/local/
[/cc]
стартуется webVZ командой: ruby /usr/local/webvz/script/server &
можно запускать в screen, или написать простенький инит скрипт на подобии этого:
[cc lang=»bash»]
[root@vps ~]# cat /etc/init.d/webvz
# description: WebVZ panel
# processname: webvz
# chkconfig: 345 85 15
#!/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/local/webvz:/usr/local/webvz/script
# program name
PROG=server
#program path
DAEMON=/usr/local/webvz/script/server
# Do we pass options on the command line if yes put them here
DOPTION=»»
#Test if it is there if not lets bail
test -f $DAEMON || exit 0
case «$1» in
start) echo -n «Starting $PROG »
$DAEMON $DOPTION >> /var/log/webvz 2>&1 &
echo «Done.»
;;
stop) echo -n «Stopping $PROG »
ps aux | grep webvz | grep -v grep | awk ‘{print $2}’ | xargs kill -9
echo «Done.»
;;
restart) echo -n «Restarting $PROG »
ps aux | grep webvz | grep -v grep | awk ‘{print $2}’ | xargs kill -9
sleep 2
$DAEMON $DOPTION >> /var/log/webvz 2>&1 &
echo «Done.»
;;
*) echo «Usage: /etc/init.d/$PROG start|stop|restart»
exit 1
;;
esac
[/cc]
затем сделаем исполняемым этот скрипт и закинем в стартап (скрипт написан под chkconfig):
[cc lang=»bash»]
[root@vps ~]# chmod +x /etc/init.d/webvz
[root@vps ~]# chkconfig webvz on
[root@vps ~]# chkconfig —list | grep webvz
webvz 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл
[/cc]
Если у Вас возникли какие-то сложности, обращайтесь. контакты в правой колонке на сайте.
за простые консультации денег не беру, если Вам нужно поднять сервер под vps/vds всегда буду рад помочь.
» Запись из раздела CentOS Linux, OpenVZ | 7 комментариев
Настройка сети в CentOS Linux
Запись создана 6 апреля, 2009
тема простая, но судя по вопросам в icq, вопросы по ней еще возникают. Попытаюсь всё в одной статье описать.
» Запись из раздела CentOS Linux, networking | 9 комментариев
Репозитарии которые я использую в CentOS
Запись создана 3 апреля, 2009
CentOS 5 i386
[cc lang=»bash»]rpm -Uvh http://dag.wieers.com/rpm/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm
rpm -Uvh http://download1.rpmfusion.org/free/el/updates/testing/5/i386/rpmfusion-free-release-5-0.1.noarch.rpm
rpm -Uvh http://download1.rpmfusion.org/nonfree/el/updates/testing/5/i386/rpmfusion-nonfree-release-5-0.1.noarch.rpm
[/cc]
CentOS 5 x86_64
[cc lang=»bash»]rpm -Uvh http://dag.wieers.com/rpm/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm
rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-3.noarch.rpm
rpm -Uvh http://download1.rpmfusion.org/free/el/updates/testing/5/x86_64/rpmfusion-free-release-5-0.1.noarch.rpm
rpm -Uvh http://download1.rpmfusion.org/nonfree/el/updates/testing/5/x86_64/rpmfusion-nonfree-release-5-0.1.noarch.rpm
[/cc]
CentOS 4 i386
[cc lang=»bash»]rpm -Uvh http://dag.wieers.com/rpm/packages/rpmforge-release/rpmforge-release-0.3.6-1.el4.rf.i386.rpm
rpm -Uvh http://download.fedora.redhat.com/pub/epel/4/i386/epel-release-4-9.noarch.rpm
[/cc]
CentOS 4 x86_64
[cc lang=»bash»]rpm -Uvh http://dag.wieers.com/rpm/packages/rpmforge-release/rpmforge-release-0.3.6-1.el4.rf.x86_64.rpm
rpm -Uvh http://download.fedora.redhat.com/pub/epel/4/x86_64/epel-release-4-9.noarch.rpm
[/cc]
» Запись из раздела CentOS Linux | Комментировать
swith betwen kde/gnome in Centos/RHEL/Fedora
Запись создана 1 апреля, 2009
Если нужно поменять Gnome на KDE глобально для всей машины, то:
[cc lang=»bash»]
echo «DESKTOP=KDE» > /etc/sysconfig/desktop
echo «DISPLAYMANAGER=KDE» >> /etc/sysconfig/desktop
[/cc]
если для какого то пользователя отдельно:
[cc lang=»bash»]
[root@support ~]# su username
[username@support root]$ switchdesk kde
Red Hat Linux switchdesk 4.0
Copyright (C) 1999-2004 Red Hat, Inc
Redistributable under the terms of the GNU General Public License
Desktop now set up to run KDE.
[/cc]
» Запись из раздела CentOS Linux, Linux desktop | Комментировать
Centos запуск KDE при старте системы
Запись создана 26 марта, 2009
Предположим, установили вы CentOS на свой десктоп, при старте системы вы получаете голую консоль, а хотелось бы увидеть KDE.
Открывем /etc/inittab ищем строчку id:3:initdefault: в ней меняем 3 на 5.
В случае если стартует KDE/Gnome а нужна голая консоль, действие обратное.
» Запись из раздела CentOS Linux, Linux desktop | Комментировать
Table is marked as crashed and should be repaired
Запись создана 16 марта, 2009
Просматривая /var/log/mysql/error.log обнаруживаем ошибки вида:
090316 20:55:03 [ERROR] /usr/sbin/mysqld: Table ‘./user_base/table’ is marked as crashed and should be repaired
если crashed всего несколько таблиц, то можно выполнить repair table из консольного mysql клиента или phpmyadmin при помощи sql запроса:
[cc lang=»sql»]
> USE user_base
> REPAIR TABLE table;
[/cc]
Если в базе crashed много таблиц, то будет проще выполнить команду:
[cc lang=»bash»]mysqlcheck -uUSER -pPASSWORD —repair —extended user_base[/cc]
ну а если много побитых таблиц, да еще и в большом количестве баз, то репайр лучше запустить на все базы, командой:
[cc lang=»bash»]mysqlcheck -uUSER -pPASSWORD —repair —extended -A[/cc]
» Запись из раздела MySQL | 5 комментариев
простановка прав на папки и файлы сайта
Запись создана 13 марта, 2009
Пришла заявка от клиента, человек по незнанию поставил рекурсивно на все файлы и папки своих сайтов права доступа 777. Захотелось человеку выставить 755 на папки и 644 на файлы, делать вручную это при паре десятков доменов и паре тысяч файлов упрятанных в запутанной структуре папок ну просто нереально. Тут ему пришел на помощь простой скрипт запускаемый по ssh который просто ищет все папки в текущей директории и ставит им chmod 755 ну и файлы аналогично, только chmod 644.
Ну и собственно сам «скрипт»:
[cc lang=»bash»]
find -type d -exec chmod 755 {} \;
find -type f -exec chmod 644 {} \;
[/cc]
» Запись из раздела CentOS Linux, FreeBSD, Unix | 2 комментария
possible SYN flooding on port 80. Sending cookies.
Запись создана 12 февраля, 2009
Начал падать апач, при ближайшем рассмотрении dmesg выдал:
possible SYN flooding on port 80. Sending cookies.
посмотрим кто же у нас лидер по SYN запросам:
[cc lang=»bash»]netstat -n -p | grep SYN_REC| awk ‘{print $5}’|awk -F: ‘{print $1}’ | sort -n | uniq -c | sort -nr | head -n10[/cc]
на первом месте 88.147.212.229 с числом 1030, это один из наших победителей. банним ублюдка:
[cc lang=»bash»]iptables -I INPUT -p tcp -s 88.147.212.229 -j REJECT —reject-with tcp-reset[/cc]
если таких явных лидеров нет (и ничего не валится, кроме сообщений в /var/log/messages), то возможно ложное срабатывание. Лечим так:
[cc lang=»bash»]
sysctl -w net.ipv4.tcp_syncookies=0
затем в конфиг /etc/sysctl.conf добавляем строчку:
net.ipv4.tcp_syncookies=0
проверяем:
cat /proc/sys/net/ipv4/tcp_syncookies
[/cc]
» Запись из раздела CentOS Linux, networking | 3 комментария
резервное копирование (backup) всех баз mysql
Запись создана 11 февраля, 2009
Прошелся по нескольким блогам. почитал и удивился тому что для того чтобы сделать дампы всех баз mysql люди используют mysqldump —all-databases. На мой взгляд вариант более чем неудобный.
Предложу более правильный вариант, снимаются дампы со всех баз данных каждая база в отдельный файл. Для пояснения:
/backup/mysql/ — папка куда будем складывать дампы.
megapass — пароль root к mysql
итак собственно сам скрипт:
[cc lang=»bash»]
for i in `mysql -pmegapass -e’show databases;’ | grep -v information_schema | grep -v Database`; do mysqldump -pmegapass $i > `date +%Y-%m-%d`-$i; gzip `date +%Y-%m-%d`-$i;done
[/cc]
теперь поясню что делается, в цикле вывода имен всех баз данных кроме information_schema и Database выполняется mysqldump в файл дата-имя_базы, затем дамп жмется gzip-ом.
На выходе получаем пачку файлов на подобии:
2009-02-11-shakirov_kayako.gz
2009-02-11-shakirov_mantis.gz
2009-02-11-shakirov_openfire.gz
Например если в системе несколько пользователей и базы данных у них сделаны правильно (имя базы с префиксом имени пользователя, например shakirov_base), то можно делать бакапы баз разных пользователей в разные папки. С полученными бакапами можно поступать как удобно, хранить на отдельном диске, разделе. внешнем ftp сервере или заливать куда-то по scp.
» Запись из раздела CentOS Linux, MySQL, Unix | 6 комментариев
FreeBSD free memory stats
Запись создана 9 января, 2009
В linux-ах есть полезная тулза free, вывод её привожу ниже:
[cc lang=»bash»]
[root@iit ~]# free
total used free shared buffers cached
Mem: 4148892 1736588 2412304 0 207108 859128
-/+ buffers/cache: 670352 3478540
Swap: 2048276 32812 2015464
[/cc]
В FreeBSD такой утилиты увы нет, почти нет. Замены есть две, perl скрипт (freebsd-memory — List Total System Memory Usage) и freecolor. Листинг установке того и другого ниже:
[cc lang=»bash»]
fetch -o /usr/local/bin/free https://itblog.su/wp-content/uploads/2009/01/freebsd-memorypl.txt
chmod +x /usr/local/bin/free
-bash-2.05b# free
SYSTEM MEMORY INFORMATION:
mem_wire: 257478656 ( 245MB) [ 12%] Wired: disabled for paging out
mem_active: + 564359168 ( 538MB) [ 26%] Active: recently referenced
mem_inactive:+ 1172426752 ( 1118MB) [ 55%] Inactive: recently not referenced
mem_cache: + 64004096 ( 61MB) [ 3%] Cached: almost avail. for allocation
mem_free: + 44834816 ( 42MB) [ 2%] Free: fully available for allocation
mem_gap_vm: + 458752 ( 0MB) [ 0%] Memory gap: UNKNOWN
————— ———— ———— ——
mem_all: = 2103562240 ( 2006MB) [100%] Total real memory managed
mem_gap_sys: + 37957632 ( 36MB) Memory gap: Kernel?!
————— ———— ————
mem_phys: = 2141519872 ( 2042MB) Total real memory available
mem_gap_hw: + 5963776 ( 5MB) Memory gap: Segment Mappings?!
————— ———— ————
mem_hw: = 2147483648 ( 2048MB) Total real memory installed
SYSTEM MEMORY SUMMARY:
mem_used: 866217984 ( 826MB) [ 40%] Logically used memory
mem_avail: + 1281265664 ( 1221MB) [ 59%] Logically available memory
————— ———— ———— ——
mem_total: = 2147483648 ( 2048MB) [100%] Logically total memory
[/cc]
[cc lang=»bash»]cd /usr/ports/sysutils/freecolor
make install clean
-bash-2.05b# freecolor -t -m -o
total used free shared buffers cached
Mem: 2042 834 1207 0 0 61
Swap: 2048 2 2045
Total: 4294965248 = ( 2890 (used) + 3314 (free))
[/cc]
» Запись из раздела FreeBSD | 6 комментариев