PfSense: Inactivity timeout (—ping-restart), restarting

При использовании туннеля OpenVPN до сервера PfSense, соединение периодически пропадает, происходит переподключение VPN. При этом, в журнале появляются записи: Inactivity timeout (—ping-restart), restarting; SIGUSR1[soft,ping-restart] received, process restarting.
Это означает, что на сервере задействована опция ping-restart (если за определённое время не было получено ни одного пакета с удаленной стороны, то перезапустить подключение).
В PfSense, в настройках OpenVPN сервера, в разделе Advanced Configuration, можно вписать в поле Custom options альтернативную команду, например, keepalive 10 180 (каждые 10 секунд осуществлять ping удалённого хоста, и, если за 180 секунд не было получено ни одного пакета — перезапустить подключение).

Наблюдение или управление сеансом пользователя в Windows Server

В Windows Server 2012 R2 доступно теневое подключение к RDP сессиям пользователей следующим образом:

  1. запускаем командную строку под администратором (поиск → вводим «cmd» → нажимаем ПКМ, выбираем запуск с правами Администратора)
  2. вводим команду quser (смотрим id необходимой сессии)
  3. для наблюдения вводим команду mstsc /shadow:id, если требуется управление, то добавляем к команде опцию /control
  4. пользователь должен разрешить подключение, нажав кнопку «да» (опция /noConsentPrompt позволяет не запрашивать разрешения на подключение, однако она требует соответствующей настройки политики Установить правила удаленного управления для пользовательских сеансов служб удаленных рабочих столов)

Копирование файлов и папок с сохранением прав

Для копирования файлов и папок (в том числе по сети) с сохранением прав, в Windows имеется встроенная программа Robocopy. Использовать данную программу довольно просто, достаточно в командной строке написать:

robocopy \\computer\src c:\dst /e /zb /copyall /w:5

Справку по синтаксису и параметрам, можно посмотреть прямо в командной строке. Но есть следующие интересные моменты:
/Z — включает поддержку докачки, без которой, в случае обрыва связи при копировании через сеть, хэш-сумма скопированного файла может не сойтись с источником;
/M — копирует файлы с атрибутом «Архивный» и сбрасывает его, т.е. копирует только файлы, которые были изменены, и чтобы не измененные файлы в следующий раз не копировать, сбрасывает атрибут «Архивный»;
/B — копирует файлы, для которых NTFS разрешения для данного пользователя отсутствуют (при этом пользователь должен быть либо в группе Администраторы, либо в группе Операторы архива);
/sec — копирует только основную информацию о файлах (Данные, Атрибуты, Метки времени),
/copyall — копирует всю информацию о файлах (Данные, Атрибуты, Метки времени, Список контроля доступа NTFS (ACL), Сведения о владельце, Сведения аудита);
параметры /R и /W лучше всегда задавать вручную, так как по умолчанию они очень велики, и в процессе копирования, robocopy может просто надолго застрять на каком-либо файле.

PHP — Fatal error: Call to undefined function mb_internal_encoding

В журнал вэб-сервера записываются ошибки Call to undefined function mb_internal_encoding.
Сие говорит о том, что: либо эта функция отключена директивой disable_functions (настройки в php.ini или в конфигурационном файле сайта, в директории pool.d), либо отключен модуль mbstring.so (закомментирован в файле 20-mbstring.ini в директории conf.d), либо модуль mbstring не установлен (пакет php*.*-mbstring).
Проверяем, установлен ли пакет:

dpkg —get-selections | grep mbstring

В случае отсутствия оного, ищем доступные версии:

apt-cache search mbstring

Выбираем версию, соответствующую версии установленного PHP интерпретатора, и устанавливаем её:

apt-get install php5.6-mbstring

Если же пакет уже был установлен, то правим конфигурационные файлы.

PHP — Fatal error: Call to undefined function utf8_encode

В журнал вэб-сервера записываются ошибки Call to undefined function utf8_encode.
Сие говорит о том, что: либо эта функция отключена директивой disable_functions (настройки в php.ini или в конфигурационном файле сайта, в директории pool.d), либо отключен модуль xml.so (закомментирован в файле 15-xml.ini в директории conf.d), либо модуль xml не установлен (пакет php*.*-xml).
Проверяем, установлен ли пакет с расширением для PHP:

dpkg —get-selections | grep xml

В случае отсутствия оного, ищем доступные версии:

apt-cache search xml

Выбираем версию, соответствующую версии установленного PHP интерпретатора, и устанавливаем её:

apt-get install php5.6-xml

Если же пакет уже был установлен, то правим конфигурационные файлы.

MySQL: unknown variable ‘bind-address=0.0.0.0′

При запуске сервиса, mysqld сообщает об ошибке: unknown variable ‘bind-address=0.0.0.0′.
Несмотря на присутствие в файле my.cnf секции [client-server], которая используется и сервером, директиву bind-address, необходимо задавать в файле /etc/mysql/mariadb.conf.d/50-server.cnf.

BitrixEnv — PHP Fatal error: Allowed memory size

Один из разделов сайта на Битриксе, развёрнутом в не открывается, в журнал httpd записываются ошибки:
PHP Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 84 bytes) in /home/bitrix/site.ru/bitrix/templates/site.ru/components/bitrix/catalog.section/catalog/result_modifier.php on line 467

Так как для выполнения кода, PHP интерпретатору недостаточно памяти, то необходимо увеличить значение директивы memory_limit в файле /etc/php.d/bitrixenv.ini, после чего, перезагрузить вэб-сервис:

service httpd restart

Windows — самостоятельное пробуждение

Компьютер с ОС Windows 10 выходит из спящего режима каждый день. В системной журнале появляются записи Power-Troubleshooter:
Система вышла из состояния пониженного энергопотребления.
Источник выхода: Таймер — Будет выполнено назначенное задание «NT TASK\Microsoft\Windows\rempl\shell-usoscan», запросившее вывод компьютера из спящего режима.

Попасть в системный журнал можно следующим образом: Пуск → Панель управления → Администрирование → Просмотр событий → Журналы Windows → Система.

По записи в журнале видно, что компьютер пробуждает задание shell-usoscan. Необходимо зайти в Планировщик заданий (Пуск → ввести в строку поиска taskschd.msc → нажать Enter) и перейти по пути, указанному в системном журнале: Библиотека планировщика заданий → Microsoft → Windows → rempl. После чего, зайти в свойства (ПКМ → Свойства) задачи shell-usoscan, перейти на закладку Условия и снять галочку у пункта Пробуждать компьютер для выполнения задачи, затем нажать кнопку Ок.

Обновление KB4093118 — перезагрузка Windows

После автоматической установки пакета обновлений KB4093118, при подключении компьютера к интернету, операционная система перезагружается.
Средство проверки системных файлов (SFC.exe) в данном случаем не помогает. Также не помогает переустановка драйверов сетевых интерфейсов. В добавок, не во всех случаях помогает ручное удаление пакета KB4093118.
По умолчанию, при установке обновлений, Windows создаёт точку восстановления системы. Наиболее правильным решением проблемы, является откат системы: Пуск → Все программы → Стандартные → Служебные → Восстановление системы.

HDDRawCopy: Write Error occurred

При попытке записать img образ на SSD диск, программа HDDRawCopy выдаёт ошибку:
Write Error occurred at offset 0
Cannot write to target, aborting…
Operation terminated at offset 0 LBA 0

Если на записываемом диске имеются какие-либо разделы, то их следует удалить. Для этого необходимо запустить командную строку (Win+R → cmd) и ввести следующие команды (после ввода каждой команды необходимо нажимать клавишу Enter):
запустить редактор дисковых разделов

diskpart

получить список дисков

list disk

выбрать диск, на который требуется записать образ

select disk номер_диска

удалить все разделы

clean

выйти из программы

exit

После чего, вновь попытаться записать образ.