Показаны сообщения с ярлыком linux. Показать все сообщения
Показаны сообщения с ярлыком linux. Показать все сообщения

вторник, 13 января 2015 г.

Установка Gearman на Ubuntu

Проблема:

Старые версии Ubuntu не содеждат последние Gearman библиотеки. Если вы попробуете установить PHP расширение для Gearman на Ubuntu, то получите ошибку. Далее приведены шаги по установке Gearman библиотех и PHP расширения на Ubuntu 10.04 LTS и следующие версии.

Добавляем PPA репозиторий для получения последней версии libgearman:

$ sudo apt-add-repository ppa:gearman-developers
$ sudo apt-get update
$ sudo apt-get install libgearman7 libgearman-dev

Устанавливаем Job Server:

$ sudo apt-get install gearman-job-server

Устанавливаем PHP расширение с помощью PECL:

$ sudo pecl install gearman

Активируем PHP расширение:

$ echo "extension=gearman.so" | sudo tee /etc/php5/conf.d/gearman.ini

Тестируем:

Все готово для тестирования. Для этих целей можно использовать пример с официального сайта Gearman:
http://gearman.org/examples/reverse/
Читать далее

понедельник, 22 декабря 2014 г.

pkill: "Убийство" процессов по шаблону

Последние пару недель много работаю с Gearman, поэтому приходится "убивать" много процессов.

Например, у нас есть 3 запущенных php скрипта (в нашем случае 3 воркера)
$ ps aux | grep worker.php
isydorenko       8045   1.1  0.0  2578728   3784 s001  S     4:09PM   0:01.13 php worker.php
isydorenko       8037   1.0  0.1  2578728   5228 s001  S     4:09PM   0:01.13 php worker.php
isydorenko       8047   1.0  0.0  2578728   3772 s001  S     4:09PM   0:01.14 php worker.php
isydorenko       8089   0.0  0.0  2432784    628 s001  S+    4:15PM   0:00.00 grep worker.php

То есть мне нужно 3 раза запустить утилиту kill
$ kill -9 8045
$ kill -9 8037
$ kill -9 8047

Я быстро устал "килять" каждый процесс и нашел утилиту pkill, которая "киляет" процессы по шаблону
$ pkill -9 -f worker.php

Читать далее

пятница, 19 декабря 2014 г.

tail: Отображение данных, находящихся в конце нескольких файлов

Мы знаем о применении утилиты tail для отображения данных, находящихся в конце файла:
$ tail - f system.log

Но ее можно использовать для нескольких файлов:
$ tail - f *.log

В этом случае утилита показывает название файла и текст, который был туда записан.
Читать далее

суббота, 7 сентября 2013 г.

Установка расширения SHH2 для PHP на CentOS

Установить расширение SHH2 для PHP на CentOS очень просто. Его нельзя поставить через yum install, но все-равно установка сводится к выполнению нескольких простых шагов.

Перед установкой необходимо проверить, что у вас установлен репозиторий EPEL. Если у вас отсутствует данный репозиторий, то перейдите на http://fedoraproject.org/wiki/About_EPEL и следуйте инструкциям.

После того как репозиторий EPEL установлен, можно приступать к установке завимостей.
yum install gcc php-devel php-pear libssh2 libssh2-devel

Это позволит нам установить расширение SSH2 для PHP с помощью pecl.
pecl install -f ssh2

Экстеншен установлен. Дайте опишем конфиг чтобы PHP мог использовать данное расширение.
touch /etc/php.d/ssh2.ini
echo extension=ssh2.so > /etc/php.d/ssh2.ini

Если вы всё сделали правильно, то при выполнении следующей команды вы получите строку с "ssh2".
php -m | grep ssh2

Расширение SSH2 готово к использованию. Не забудьте перезагрузить веб-сервер ;)
Читать далее

пятница, 6 сентября 2013 г.

Установка TeamCity на CentOS

TeamCity — серверное программное обеспечение от компании JetBrains, написанное на языке Java, билд-сервер для обеспечения непрерывной интеграции.

Я узнал о TeamCity два года назад, когда ребята поднимали CI на нашем проекте. В то время я не совсем понимал что из себя представляет CI и как это работает. Со временем мне пришлось создавать новые билды и описывать их конфигурацию в Ant-скриптах. Недавно мне пришлось самому устанавливать TeamCity на "чистую" CentOS. Об этом и расскажу. Будете удивлены, но делается это очень просто.

Для примера я взял CentOS 6.4 и TeamCity 8.3.

1. Устанавливаем Oracle 1.6 JDK.
yum install java-openjdk

2. Устанавливам tomcat 6.*-7.*. Я выбрал шестую версию. Разработчики TeamCity рекомендуют Tomcat 6.0.27+.
yum install tomcat6 tomcat6-webapps tomcat6-admin-webapps

4. Открываем http://www.jetbrains.com/teamcity/download/index.html и качаем версию для Linux.



mkdir /opt/jetbrains
cd /opt/jetbrains
wget http://download.jetbrains.com/teamcity/TeamCity-8.0.3.tar.gz
tar -xzf TeamCity-8.0.3.tar.gz

5. TeamCity скачан, распакован, и находится в папке /opt/jetbrains/TeamCity. Пришло время запустить TeamCity сервер и дефолтный билд-агент.
cd /opt/jetbrains/TeamCity/bin
sh runAll.sh start

Всё готово. Теперь вы можете открыть http://your_host:8111/ и начинать работать с TeamCity. Если всё установилось правильно, то вы должны увидеть страницу с таким содержанием:



Я описал как просто и быстро "завести" TeamCity. О детальной настройке можно прочитать в разделе документации TeamCity.

Читать далее

четверг, 26 января 2012 г.

Как установить PHPUnit для MAMP

На работе я привык работать в CentOS/FreeBSD VM, на которой установлен Apache, nginx, PHP, MySQL и прочие необходимые инструменты для веб-разработки. Это удобно тем, что эта система максимально приближена к реальной обстановке проекта,чем минимизируются основные проблемы, связанные с настройкой различных сервисов.
Ну и VM всегда можно забекапить ;) По-этому, всегда можно безопасно экспериментировать.

Дома у меня MacBook с 2.5 Гб ОЗУ. С виртуалкой все очень тормозит. По-этому до того момента, пока я не разживусь еще одной планкой ОЗУ, приходится юзать MAMP. Вчера появилась задача настройки и запуска PHPUnit для MAMP. Приступим.

Для установки PHPUnit с помощью MAMP PEAR нам потребуется терминал с правами root-пользователя.

Сначала обноляем PEAR с помощью двух команд:
/Applications/MAMP/bin/php5/bin/pear channel-update pear.php.net
/Applications/MAMP/bin/php5/bin/pear upgrade pear

Теперь пришло время зарегистрировать соответствующий канал и установить PHPUnit:
/Applications/MAMP/bin/php5/bin/pear channel-discover pear.phpunit.de
/Applications/MAMP/bin/php5/bin/pear install phpunit/PHPUnit

PHPUnit теперь установлен, но чтобы запускаеть его с помощью терминала, нам нужно перенести его в $PATH:
mv /Applications/MAMP/bin/php5/bin/phpunit /usr/local/bin/phpunit

Для теста наберите:
phpunit --version

Вы увидите что-то вроде:
PHPUnit 3.6.9 by Sebastian Bergmann

Это все. Если есть вопросы, задавайте их в комментариях.
Читать далее

пятница, 16 декабря 2011 г.

Как узнать количество места в *nix

Первым делом читаем:
$ man df

Если после этого все-равно ничего не получается, то подскажу несколько примеров использования данной утилиты
1. Узнать общее количество места на дисках:
$ df -h
Filesystem     Size    Used   Avail Capacity  Mounted on
/dev/ad0s1a    496M    334M    122M    73%    /
devfs          1.0K    1.0K      0B   100%    /dev
/dev/ad0s1e    1.9G     30M    1.7G     2%    /tmp
/dev/ad0s1f     13G     11G    1.1G    91%    /usr
/dev/ad0s1d    2.9G    881M    1.8G    32%    /var

2. Узнать количество месте в определенной папке:
$ du -hd 1 /var
2.0K    /var/.snap
2.0K    /var/account
6.0K    /var/at
2.0K    /var/audit
 14K    /var/backups
4.0K    /var/crash
4.0K    /var/cron
765M    /var/db
2.0K    /var/empty
2.0K    /var/heimdal
 96M    /var/log
 19M    /var/mail
4.0K    /var/msgs
 52K    /var/named
2.0K    /var/preserve
 56K    /var/run
2.0K    /var/rwho
 20K    /var/spool
320K    /var/tmp
 24K    /var/yp
2.0K    /var/games
881M    /var

Где 1 - уровень вложенности.
Читать далее

среда, 2 ноября 2011 г.

Запаковать контент с помощью tar gz

tar -zcvf packagename.tar.gz folder/

Читать далее