Сен 10

nginx-apache[Пост из черновиков] Этот пост был написан 14 октября 2012, но в силу ряда причин так и не был опубликован. Исправляю.

Предыстория и предпосылки к переходу

Несколько лет назад дома появился «широкий» Интернет от тогда еще Корбины и вместе с ним появилась возможность/потребность/необходимость в постоянно включенном компе для торрентов, хаба и сайта для локала. Пришлось покупать простенький системник, доставать из кладовки старый монитор, устанавливать Ubuntu и ставить этот комп на кухню, чтобы не шумел и не мешал спать. В итоге (потому что постоянно включен) сейчас это основной комп для работы и развлечений для меня, жены и 4-летней дочки 🙂 Со временем я начал вести блог SarAdmin.RU, который, пожив какое-то время на бесплатном хостинге, перебрался на этот же комп. Так как тут уже крутились веб-проекты для локала, пришлось настраивать виртуальные хосты на Apache.

Время идёт, количество посетителей этого блога постепенно увеличивается и вот уже стало заметно, что компьютер перестал справляться с нагрузкой — детишки Апача кушают проц, всё начинает тормозить. В итоге я решил собрать тихий маломощный системник на Celeron430, естественно, без иксов, закинуть его в кладовку и пусть себе там шумит. Вот только начитавшись статей в Инете, решил попробовать избавиться от Apache в пользу Nginx, заодно описав свои действия — вдруг кому пригодится, да и профи, прочитав, смогут поправить и указать на мои ошибки.

Устанавливаем и настраиваем nginx

Если вдруг на сервере уже установлен Apache, удаляем его
sudo apt-get purge apache2 -y
Продолжение »

Автор: Johnny Тэги: , , , ,


Сен 07

postgresqlM$ в последнее время хочет всё больше денег, с учётом роста курса доллара проблема усугубляется ещё больше, а файловый режим работы базы 1С в 2015 году уже не так хорош как раньше. Поэтому появилась задача перевода файловой базы на PostgreSQl. В настройке есть пара нюансов, про них и расскажу.
Будем считать, что свежая версия Ubuntu Server (на сегодняшний день последняя стабильная LTS-версия 14.04.3 LTS) уже скачана и проставлена, поэтому перейдем к установке и настройке PostgreSQL.

Настроим параметры ядра, отвечающие за выделяемую системе память.

Параметр SHMMAX — это максимум памяти, выделяемой в одном запросе в байтах. Я для PQSQL выделил виртуалку с 10ГБ оперативки, поэтому установлю размер в 8ГБ: kernel.shmmax = 8589934592.

Параметр kernel.shmall – Общее количество доступной разделяемой памяти в страницах. Рассчитывается как shmmax/PAGE_SIZE. Как правило, размер страницы в системе — 4096 байт, уточнить можно запросом в консоли getconf PAGE_SIZE.

Поэтому kernel.shmall = 8589934592/4096 или kernel.shmall = 2097152

echo "kernel.shmmax=8589934592" >> /etc/sysctl.conf
echo "kernel.shmall=2097152" >> /etc/sysctl.conf
sysctl -p

Продолжение »

Автор: Johnny Тэги: , , , , , ,


Авг 19

В Windows Server 2012 настройку, разрешающую несколько подключений с одним логином к службе удаленных рабочих столов, по какой-то неведомой причине спрятали очень далеко.
Вместо того, чтобы поставить одну галку, как это было в Win2k3 или Win2k8, открываем редактор локальной групповой политики
gpedit.msc
и отключаем политику Конфигурация компьютера\Административные шаблоны\Компоненты Windows\Службы удаленных рабочих столов\Узел сеансов удаленных рабочих столов\Подключения -> Ограничить пользователей служб удаленных рабочих столов одним сеансом служб удаленных рабочих столов .
Для английской версии эта политика находится здесь: Computer Configuration\Administrative Templates\Windows Components\Remote Desktop Services\Remote Desktop Session Host\Connections -> Restrict Remote Desktop Services users to a single remote session
Точно так же этот параметр можно настроить через групповую политику.

Автор: Johnny Тэги: , , , , , ,


Авг 14

Итак, дано:
Старый DHCP-сервер SERVER1 со списком зарезервированных IP-адресов, который требуется вывести из эксплуатации.
Новый сервер SERVER2, на котором нужно поднять DHCP-сервер со всеми резервированиями.
Про построчный импорт данных о резервировании мы уже говорили, теперь поговорим про то, как перенести все записи.
На сервере SERVER1 запускаем консоль и пишем там
netsh dhcp server SERVER1.DOMAIN.LOCAL dump > c:\dhcpdump.txt
Затем открываем файл c:\dhcpdump.txt в блокноте и заменяем (Ctrl+H) SERVER1 на SERVER2 в блоке

# ============================================================================
# Начало добавления зарезервированных IP-адресов
# к области 192.168.0.0, сервера SERVER1.DOMAIN.LOCAL
# ============================================================================

Dhcp Server \\SERVER1.DOMAIN.LOCAL Scope 192.168.0.0 Add reservedip 192.168.0.1 00228c42bacd "PC-001.DOMAIN.LOCAL" "" "BOTH"
Dhcp Server \\SERVER1.DOMAIN.LOCAL Scope 192.168.0.0 Add reservedip 192.168.0.2 3202a6b123e0 "PC-002.DOMAIN.LOCAL" "" "BOTH"
Dhcp Server \\SERVER1.DOMAIN.LOCAL Scope 192.168.0.0 Add reservedip 192.168.0.3 c8600035a3d3 "PC-003.DOMAIN.LOCAL" "" "BOTH"
Dhcp Server \\SERVER1.DOMAIN.LOCAL Scope 192.168.0.0 Add reservedip 192.168.0.4 1c6f631131d2 "PC-004.DOMAIN.LOCAL" "" "BOTH"
Dhcp Server \\SERVER1.DOMAIN.LOCAL Scope 192.168.0.0 Add reservedip 192.168.0.5 3202a635f121 "PC-005.DOMAIN.LOCAL" "" "BOTH"
Dhcp Server \\SERVER1.DOMAIN.LOCAL Scope 192.168.0.0 Add reservedip 192.168.0.6 00221321a2d1 "PC-006.DOMAIN.LOCAL" "" "BOTH"
Dhcp Server \\SERVER1.DOMAIN.LOCAL Scope 192.168.0.0 Add reservedip 192.168.0.7 002618e26c24 "PC-007.DOMAIN.LOCAL" "" "BOTH"
Dhcp Server \\SERVER1.DOMAIN.LOCAL Scope 192.168.0.0 Add reservedip 192.168.0.8 30263db1fa1b "PC-008.DOMAIN.LOCAL" "" "BOTH"

Если на DHCP-сервере SERVER2 уже настроены все параметры сервера, оставляем в файле только этот блок и сохраняем его. Если нет, можно оставить и другие опции (параметры сервера, параметры области и сама область, привязка к сетевым адаптерам, фильтры и т.д.).

Файл хорошо структурирован и понятен, так что сложностей точно не возникнет.

Затем на сервере SERVER2 пишем в консоли

netsh exec dhcpdump.txt

и радуемся, что не пришлось заводить это всё вручную.

Да, и раз уж мы занялись конфигами DHCP, вот команда для бэкапа и восстановления всей базы:

Бэкап
netsh dhcp server SERVER1.DOMAIN.LOCAL export c:\dhcpdb all

Восстановление
netsh dhcp server SERVER1.DOMAIN.LOCAL import c:\dhcpdb all

Автор: Johnny Тэги: , , , , , , , , , ,


Авг 06

dyndns_dyndns_2[1]

В связи с тем, что dyndns.org испортился и начал хотеть денег за свои услуги, пришлось таки озаботиться этим вопросом, изучить матчасть..

В общем-то, динамические апдейты в DNS реализованы уже много лет назад, но как обычно, есть некоторые тонкости. Под катом краткое руководство для тех, кому интересно.
Подразумевается, что у вас уже есть собственный домен, собственный первичный DNS-сервер для этого домена (BIND), и клиент под юниксом/линуксом. Вероятно, на роутере, работающем под openwrt/dd-wrt, такой метод тоже сработает с небольшими поправками, но я лично не пробовал.

Итак..

1. На клиенте генерируем секретный ключ (на самом деле, генерировать его можно где угодно, но поскольку он нужен на клиенте, то удобнее прямо там):
dnssec-keygen -a hmac-sha256 -b 128 -n HOST -r /dev/urandom dyndns

Продолжение »

Автор: Johnny Тэги: , , , , ,


Авг 04

Если при обновлении Windows до версии 10 описанным ранее способом либо при автоматическом обновлении ничего не происходит, проверьте журнал обновлений — возможно, вы увидите там строчку «Обновление до Windows 10 Pro» — «отказ».

upgrade_to_windows_10_failed

Откройте эту ошибку и убедитесь, что это ошибка 80240020

80240020

В этом случае нобходимо перейти в папку C:\Windows\SoftwareDistribution\Download и удалить оттуда все имеющиеся файлы и папки, после чего еще раз запустить командную строку от имени администратора и написать там wuauclt.exe /updatenow

После этого вернитесь к окну Центра обновлений и порадуйтесь такой картине:

Downloading_windows10

Теперь откиньтесь на спинку стула… 🙂

Автор: Johnny Тэги: , , , ,


При использовании материалов сайта на других ресурсах прошу оставлять прямую ссылку на оригинал статьи.