Решение проблемы: nginx: [emerg] listen() to 0.0.0.0:80 failed (98: Address already in use)

Сегодня при попытке обновить конфигурацию nginx, вылетела ошибка:

# /etc/init.d/nginx reload

...
nginx: [emerg] listen() to 0.0.0.0:80, backlog 511 failed (98: Address already in use)
nginx: configuration file /etc/nginx/nginx.conf test failed

Ну а когда сделал так:

# /etc/init.d/nginx restart

то с той же ошибкой nginx уже не запустился.

Из описания ошибки следует, что 80-ый порт занят, поэтому nginx не может запуститься:

# netstat -nap | grep 80

tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 4658/apache2
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 488/nginx

Исправляем ситуацию, убив подвисший процесс на 80-ом порту:

# fuser -k 80/tcp

Запускаем nginx:

# /etc/init.d/nginx start

Starting nginx: nginx.

Все.

Пять команд для проверки памяти в Linux

Под памятью подразумевается как непосредственно RAM, так и swap-память. В зависимости от полноты необходимой информации о памяти, можно использовать одну из следующих команд:

# free -m
# cat /proc/meminfo
# vmstat -s
# top
# htop

Посмотреть аппаратную информацию об установленной в системе памяти, можно с помощью следующей команды:

# sudo dmidecode -t 17

Редиректы с GET параметрами

Задача: сделать редирект со страницы http://site.com/pages?id=1 на страницу http://site.com/page/

Вроде бы ничего сложного, пробуем так:

RewriteRule ^pages?id=1 /page/ [R=301,L]

Проверяем — не работает. Почему? Потому что, если адрес содержит GET-параметр, нужно делать так:

RewriteCond %{QUERY_STRING} ^id=1$
RewriteRule ^/pages$ /page/? [R=301,L]

Проверяем — работает.

Удаление обновления Windows

Удалить обновление Windows:

wusa.exe /uninstall /kb:номер

где номер  — это цифры, определяющие установленное обновление.

К примеру, для удаления обновления KB2734608 нужно скомандовать:

wusa.exe /uninstall /kb:2734608

Отключение автообновления Google Chrome

Чтобы отключить функцию автообновления браузера Google Chrome, нужно:

MacOS X:

  • Установить интервал времени проверки обновления в ноль, выполнив в консоли команду defaults write com.google.Keystone.Agent checkInterval 0
  • Перезапустить браузер

Стоит отметить, что этот трюк отключает автообновление для всех продуктов Google, а не только для браузера Chrome. Для того, чтобы включить автообновление, установите время интервала, отличное от нуля (по умолчанию значение равно 18000 сек).

Windows:

Выполнить в консоли следующие команды (или можно создать батник и запустить уже его):

reg ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Update" /v UpdateDefault /t REG_DWORD /d 0 /f
reg ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Update" /v AutoUpdateCheckPeriodMinutes /t REG_DWORD /d 0 /f
reg ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Update" /v DisableAutoUpdateChecksCheckboxValue /t REG_DWORD /d 1 /f
reg ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Update" /v Update{8A69D345-D564-463C-AFF1-A69D9E530F96} /t REG_DWORD /d 0 /f

Можно также зайти на страницу chrome://plugins/ и попробовать отключить автообновление там.

Windows\System32\< LANG_NAME >\mstsc.exe.MUI

Сегодня при попытке подключиться к удаленному компьютеру через RDP, увидел сообщение:

2013-08-16_154529

Возможно, что-то испортилось при очередной установки порций обновлении для ОС, а может из-за моей параноидальной чистки системного реестра от мусора.

Тем не менее, следующая команда смогла найти проблемы и исправить их:

sfc /scannow

[MySQL] Запрос на поиск и замену

Пример запроса, производящий поиск и замену данных в таблице:

UPDATE table_name SET field_name = REPLACE (field_name, 'text_for_replace', 'replace_text');

Восстановление загрузчика Windows

Чтобы восстановит загрузчик Windows, достаточно загрузить систему с установочного win-диска, на этапах установки выбрать «Восстановление системы» -> «Параметры восстановления системы» -> «Командная строка» и затем ввести следующие команды:

bootrec /fixmbr
bootrec /fixboot

GRUB: Выбор приоритета загрузки ОС

На дня потребовалось сделать так, чтобы на ноутбуке с двумя ОС (Ubuntu и Windows) по умолчанию загружалась именно Windows.

Что для это нужно: во время показа GRUB-экрана сосчитать количество отображаемых строчек (в моем случае их было пять) и вычистить от этого числа единицу (т.е. получаем четверку). Далее загрузиться в Ubuntu и в терминале ввести:

sudo nano /etc/default/grub

Изменить значение GRUB_DEFAULT=0 на 4.

После чего нужно обновить GRUB:

sudo update-grub

Команды a2enmod / a2dismod и a2ensite / a2dissite

Несколько полезных команд Apache:

a2enmod {modname} – подключение модуля (например «a2enmod rewrite» – подключает mod_rewrite)
a2dismod {modname} – отключение модуля (например «a2dismod rewrite» – отключает mod_rewrite)

Сами же модули находятся в следующих директориях:

/etc/apache2/mods-available – доступные модули
/etc/apache2/mods-enabled – задействованные модули (содержит ссылки на модули из директории ‘mods-available’)

a2ensite {vhost_conf_name} – подключает виртуальный хост (например «a2ensite default»)
a2dissite {vhost_conf_name} – отключает виртуальный хост (например «a2dissite default»)