Category Archives: Administration
График LA в командной строке
Оказывается, в shell есть команда для построения графика изменения la с течением времени — tload Результат — А я всё по старинке пользовался top-ом). http://linux.about.com/library/cmd/blcmdl1_tload.htm
Проблема при работе с расширением memcached в php
Работал раньше сайт с memcache. Решили перейти на memcached. И повалились ошибки SERVER HAS FAILED AND IS DISABLED UNTIL TIMED RETRY, причём сначала одна CLIENT ERROR, а уже потом куча SERVER HAS FAILED AND IS DISABLED UNTIL TIMED RETRY. Гугление ничего не дало, а проблема оказалась в следующем: первая ошибка возникала из-за некорректного ключа (пробел …
Борьба с утечками памяти в php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
$limit = 512; $thresholdDelta = 10; ini_set('memory_limit', $limit . 'm'); ... $memoryThresholdReached = false; $memoryThreshold = ( $limit - $thresholdDelta ) * 1024 * 1024; ... while ( $user = $db->plain_fetch( $result ) ) { ... // тут работа с данными ... // проверка на превышение опасного порога использования памяти if ( ! $memoryThresholdReached && memory_get_usage( true ) > $memoryThreshold ) { $memoryThresholdReached = true; try { throw new SystemException( 'Превышен порог использования памяти...' ); } catch ( Exception $e ) {} } } |
Более серьёзные способы — просмотр стека (strace -f -p $pid) и дебаг php C-шным дебаггером DBG.
Перемещение большого количества файлов в linux shell
Сбойнул один старый скрипт и написал он много маленьких (2-3 кб) файлов в одну директорию. Посмотрел я, сколько файлов оказалось, командой для подсчёта количества файлов в директории
1 |
ls -1 | wc -l |
Оказалось файлов таких за миллион. На эти файлы смотрел скрипт демонский, который по ним рассылал почты много. Решил я эти файлы из директории той убрать (чтоб пользователей …
MySQL. Восстановление из бэкапа
Понадобилось восстановить бэкап mysql размером примерно в гигабайт. Всякие phpMyAdmin даже сжатый файл кушать отакзываются — ограничение по размеру, а доступа к настройкам нет. Нашёл хороший способ — в командной строке
1 2 3 4 |
mysql mysql>use database <>; mysql>source path/to/backup_file.sql; |
Очень быстро и хорошо) http://forums.mysql.com/read.php?104,145923,148081#msg-148081
Как проверить, какие порты слушаются какими программами в linux
Вывод всех портов и программ, которые их слушают:
1 |
netstat -anp | grep LISTEN |
Или
1 |
netstat -plutn |
Вот так можно посмотреть, кто слушает или обращается к определённому порту:
1 |
lsof -i :<port> |
Запуск проекта Django
Запустить новый проект Перед запуском надо записать изменения в базу данных:
1 |
python manage.py syncdb |
Также можно проверить на ошибки:
1 |
python manage.py validate |
Запустить проект:
1 |
python manage.py runserver |
Кстати, тут много про запуск Django в продакшн-окружении.
Генерация SSH-ключей в linux
Проверяем, есть ли SSH
1 |
$ ssh -v |
Генерируем ключик
1 |
$ ssh-keygen |
Для пользователей Ubuntu для доступности ключа
1 2 3 |
chmod 644 ~/.ssh/id_rsa.pub ssh-agent bash ssh-add |
Всё) Ссылка на оригинал
SSL в nginx
Всё просто — нужно его сгенерировать и дописать конфиг — подробнее: http://wiki.enchtex.info/howto/nginx_ssl Для использования в связке с php-fpm нужно указать:
1 |
fastcgi_param HTTPS on; |