Результаты поиска: Valid MB-500 Test Pattern 🤕 MB-500 Valid Test Tutorial ➕ Latest MB-500 Braindumps 🤥 Immediately open ⮆ www.pdfvce.com ⮄ and search for ▛ MB-500 ▟ to obtain a free download 🧑New MB-500 Exam Cram

Папка windows\temp забивается файлами cab_xxxx

Данная проблема вызвана сбоем службы автоматического обновления Windows, в частности при работе с серверами обновлений WSUS.

Пошаговое решение проблемы выглядит так:

  1. Остановка службы обновлений (wuauserv)
  2. Остановка службы trustedinstaller
  3. Удаление содержимого папки c:\windows\temp
  4. Удаление cab-файлов из папки c:\windows\logs\CBS
  5. Удаление папки  C:\windows\softwaredistribution
  6. Запуск сервиса trustedinstaller
  7. Запуск службы обновления

Для удаленного автоматического решения проблемы можно воспользоваться скриптом:

fix_winupdate_tmp_cab.ps1
 
$Machine = read-host "Type in the Computer Name"
$windowsUpdateService = 'wuauserv'
$trustedInstallerService = 'trustedinstaller'
function Set-ServiceState 
{
    [CmdletBinding()]
    param(
        [string]$ComputerName,
        [string]$ServiceName
    )
    Write-Verbose "Evaluating $ServiceName on $ComputerName."
    [string]$WaitForIt = ""
    [string]$Verb = ""
    [string]$Result = "FAILED"
    $svc = Get-Service -computername $ComputerName -name $ServiceName
    Switch ($svc.status) {
        'Stopped' {
            Write-Verbose "[$ServiceName] is currently Stopped. Starting."
            $Verb = "start"
            $WaitForIt = 'Running'
            $svc.Start()
        }
        'Running' {
            Write-Verbose "[$ServiceName] is Running. Stopping."
            $Verb = "stop"
            $WaitForIt = 'Stopped'
            $svc.Stop()
        }
        default {
            Write-Verbose "$ServiceName is $($svc.status). Taking no action."
        }
    }
    if ($WaitForIt -ne "") {
        Try { # For some reason, we cannot use -ErrorAction after the next statement:
            $svc.WaitForStatus($WaitForIt,'00:02:00')
        } Catch {
            Write-Warning "After waiting for 2 minutes, $ServiceName failed to $Verb."
        }
        $svc = (get-service -computername $ComputerName -name $ServiceName)
        if ($svc.status -eq $WaitForIt) {
            $Result = 'SUCCESS'
        }
        Write-Verbose "$Result - $ServiceName on $ComputerName is $($svc.status)"
        Write-Verbose ("{0} - {1} on {2} is {4}" -f $Result, $ServiceName, $ComputerName, $svc.status)
    }
}
# stop update service
Write-Host "stop update service"
Set-ServiceState -ComputerName $Machine -ServiceName $windowsUpdateService -Verbose
#removes temp files and renames software distribution folder
Write-Host "removes temp files and renames software distribution folder"
Remove-Item \\$Machine\c$\windows\temp\* -recurse
Rename-Item \\$Machine\c$\windows\SoftwareDistribution SoftwareDistribution.old
#restarts update service
Write-Host "restarts update service"
Set-ServiceState -ComputerName $Machine -ServiceName $windowsUpdateService
#removes software distribution.old
Write-Host "removes software distribution.old"
Remove-Item \\$Machine\c$\windows\SoftwareDistribution.old -recurse
#stops trustedinstaller service
Write-Host "stops trustedinstaller service"
Set-ServiceState -ComputerName $Machine -ServiceName $trustedInstallerService
#removes cab files from trustedinstaller
Write-Host "removes cab files from trustedinstaller"
remove-item \\$Machine\c$\windows\Logs\CBS\* -recurse
#restarts trustedinstaller service
Write-Host "restarts trustedinstaller service"
Set-ServiceState -ComputerName $Machine -ServiceName $trustedInstallerService
#rebuilds cab files from WSUS
Write-Host "rebuilds cab files from WSUS"
invoke-command -ComputerName $Machine -ScriptBlock { & cmd.exe "c:\windows\system32\wuauclt.exe /detectnow" }

Источник: https://community.spiceworks.com/topic/495234-windows-temp-file-is-full-of-cab_xxxx-files-on-windows-server-2008-r2

Debian Installer: Detect network hardware, missing firmware BNX2

При установке дебиана на сервера подобные IBM x3650 можно столкнуться с ошибкой определения сетевых драйверов: «Some of your hardware needs non-free firmware files to operate», что означает необходимость подсунуть инсталлятору несвободные драйвера, указанные ниже.

В данном случае это «bnx2/bnx2-mips-09-6.2.1b.fw», но может быть и другой в зависимости от железа. Необходимые драйвера можно скачать вот тут: https://github.com/cernekee/linux-firmware/tree/master/bnx2. Их нужно положить на съемный носитель как предписывает инсталлятор (то есть, в данном случае, в папку bnx2 в корне флешки) и нажать YES. Вполне возможно, что операцию придется провести несколько раз, если в сервере несколько сетевых карт, требующих разных драйверов — в таком случае можно скачать их все сразу, или подсовывать по мере необходимости. Отмонтировать или монтировать флешку не нужно — можно смело втыкать и вытыкать из порта сколько понадобится.

Из моих наблюдений: драйвера не подцеплялись со съемного диска Zalman VE200, эмулирующего CD-привод с ISO-образом инсталлятора. Может особенность конкретного устройства, но скорее потому что сам диск был отформатирован в NTFS, так что флешку под дрова лучше сразу форматнуть в FAT32.

Лучший перевод эвар

Давно (хотя и вялотекуще) искал лучший перевод игры, который я только когда-либо видел. Была такая игра от Microsoft — Freelancer, ее первый вариант, появившийся на пиратском рынке, был уникальным образчиком «промтового» перевода (издавала ее Triada, а вот перевод, по слухам, делал Дядюшка Рисёрч). Уникальным в том смысле, что более КРИВОГО перевода я в жизни не видел =) Вот, зацените примеры:

 

В общем искал я игру искал, и нашел у доброго человека c www.elite-games.ru — Dark Angel, спасибо тебе =)

Так как игра совершенно раритетна, не мог не оформить раздачу на бухте — вдруг кто-то будет искать =))

Freelancer (PC)  триада — упоротый промтовый перевод скачать magnet

WordPress: как убрать &nbsp в конце постов.

Совершенно загадочная бага в классическом редакторе вордпресса, выраженная в автоматическом добавлении новой строки и неразрывного пробела в конец поста при каждом его сохранении, лечится следующими путями.

Для лечения уже существующих постов без изменения базы данных, добавляем в functions.php вашей темы следующий код

Загрузчик Загрузка...
Логотип EAD Слишком долго?

Перезагрузка Перезагрузить документ
| Открыть Открыть в новой вкладке

Download

Вторая часть — обработка поста при сохранении. Почти тот же кусок кода

Загрузчик Загрузка...
Логотип EAD Слишком долго?

Перезагрузка Перезагрузить документ
| Открыть Открыть в новой вкладке

Download

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

Чтобы лишний раз не ковырять дефолтный functions.php, можно установить плагин Functionality. Он создаст дополнительный файл с таким же названием и установит его как плагин с именем блога (да, установив этот плагин вы автоматом получите второй — не забудьте активировать и его тоже).

Банька для пластинок

Наконец созрел для покупки чудо-мойки для пластинок. При всей простоте формы, стоит штука вообще не копейки, так что жаба немного душит до сих пор; но, учитывая моё намерение собрать какую-никакую коллекцию старых пластинок, я решил что пусть оно того стоит =)

Итак, мойка представляет из себя тривиальную ванночку с парой роликов, которые можно располагать по краям в зависимости от размера пластинки, и двумя снимаемыми щеточками посередине.

В ванночку заливается поставляемое в комплекте моющее средство и заливается водой до риски.

Сверху втыкается пластинка и крутится руками взад-вперед несколько раз. Как указано в инструкции — 3 раза в одну, и 3 в другую сторону, но тут по вкусу. Учитывая совершенно убитое, с точки зрения абстрактного ценителя в вакууме, состояние имеющихся пластинок, я покрутил их подольше =)

Кстати хочу сказать, что щеточки в этом приспособлении не совсем обычные, а, скажем так, направленные. То есть нечто типа ворса расположено так, чтобы выскребать желобки пластинки.

После помывки пластинки вытираются прилагаемыми безворсовыми (на фото видно что все же пара ниточек при первом использовании с них упала) тряпочками

Ну и под конец, для того чтобы не свести сразу же нашу баню на нет, меняем старые картонные внутренние пакеты на новые антистатические. Всё потому, что именно со старых бумажных пакетов и появляется масса мелких частичек, забивающих дорожки пластинки, что приводит к повышенной трескучести.

Ну и этот пост был бы не полным без сравнения звучания до и после. Скажу сразу — большого чуда не произошло. Видимо пластинки очень грязные и без более серьезных профессиональных моек с вакуумными отсосами не прочистить спрессованный мусор. Но, тем не менее, некий результат, который можно услышать невооруженными ушами — есть.

Скоромуж до:

 

Скоромуж после:

Пол Ромеро в Москве

В субботу ходил на концерт Ромеро — композитора саундтрека Героев Меча и Магии. Очень крутой концерт, ост героев и сам по себе мегаэпичен, а живьем все это слушается вообще улетно. Хотя, конечно, можно немного попридираться — лично мне показалось что тему Fortress немного недожали — но никаких проблем со звучанием инструментов (на ютубах к прошлогоднему концерту писали якобы скрипок не слышно) мною замечено не было. Все жахало как надо и когда надо. Отдельный респект другу Ромеро, который сыграл на саксофоне, насколько понимаю, темы из четвертых героев (в основном игрались темы третьих).

Сам Ромеро показался весьма ненапряжным дядькой, довольным возможностью полабать свои треки с настоящим оркестром, о чем, собственно, он сам и рассказал.

 

Речей было не очень много, было забавно узнать что источником вдохновения были в том числе боевики 80х с Ван Даммом и прочими =)))

 

В сети пока нет полной записи концерта (надеюсь она таки появится), но дающий более-менее полное представление вариант есть и в неплохом качестве.

Надеюсь это не последний заезд Ромеро к нам, хочу еще =)

Заполнение mp3-тегов скриптом

Довелось скачать саундтрек к игре в виде кучи файлов без тегов вообще.

Захотелось на скорую руку заполнить хотя бы названия и номера треков (альбом/год/жанр — одинаковые для всех, с этим все сильно проще).

Для начала из имени каждого файла нужно вычленить название трека. Используем sed в однострочном цикле для разделения имени файла на три блока. Блоки в sed выделяются экранированными скобками: начало — \(, конец — \)

 
 
                                                       вычленяем блок №2
                                                        |             |
 
 
for file in *.mp3; do name=$(sed "s/\(^.*_.\{1,3\}_\)\(.*\)\(\.mp3\)/\2/" <<< $file); echo $name ; done;
 
 
                                          |                     |    
           блок №1: начало строки, любые символы,          блок №3: .mp3
                    подчеркивание, 1-3 любых символа,
                    подчеркивание

Вывод:

 
 
chat_thiscouldbeAWESOME
lab sewers
chat_downthe
...

(да, если вы решаете проблему с помощью регулярных выражений — у вас уже 2 проблемы, но в данном случае это отличное решение).

Убедившись что имена получаются корректные, меняем echo $name на редактор тегов mid3v2

 
 
for file in *.mp3; do name=$(sed "s/\(^.*_.\{1,3\}_\)\(.*\)\(\.mp3\)/\2/" <<< $file); mid3v2 -t "$name" "$file" ; done;

Самое сложное сделано. Теперь номера треков (всего их 46, так что это число я подставляю вручную):

 
 
i=1; for file in *.mp3; do mid3v2 -T  "${i}/46" "$file" ; ((i+=1)); done;

Все одинаковые для треков теги заполняются совсем просто, например год:

 
 
for file in *.mp3; do mid3v2 -y 2010  "$file" ; done;

PS: утилита mid3v2 (рекомендуется как полностью поддерживающая v2/utf8-теги) входит в питоновский пакет mutagen и ставится примерно так (для debian/ubuntu)

 
 
apt install python3-mutagen

или так (установка в пользовательский профиль из репозитория pypi)

 
 
pip3 install --user mutagen

Шифрованный SOCKS5-прокси на своем сервере

Я уже писал как поднять шифрованный прокси средствами ssh, и до сих пор я сам использовал именно этот метод. Однако при всех его плюсах, таких как проверенность протоколов и механизмов, и «изкоробочность» (при условии, конечно, наличия под рукой своего сервера), есть и довольно большой минус: задача проксирования для ssh не первоочередная и справляется он с ней не лучшим образом.

Поэтому я в очередной раз загуглил и нашел более адаптированное решение предназначенное именно для проксирования с шифрованием — https://shadowsocks.org/.

Это клиент-серверная штука, изначально написанная на питоне, но существующая и в переписанном, если память не изменяет, на C варианте.

Установка сервера (debian/ubuntu)

Ставим софт

 
 
apt install shadowsocks-libev rng-tools

Настраиваем

/etc/default/rng-tools
 
  1. HRNGDEVICE=/dev/urandom
/etc/shadowsocks-libev/config.json
 
  1. {
  2. "server":"SERVER_IP",
  3. "server_port":PORT,
  4. "local_port":1080,
  5. "password":"PA$$W0RD",
  6. "timeout":60,
  7. "method":"aes-128-gcm"
  8. }

Установка клиента

Клиенты для всяческих платформ указаны на официальном сайте. Лично я для винды использовал shadowsocks-windows (портативная версия), а для линукса — shadowsocks-qt5, доступный в штатном репозитории дебиана.

Настраиваются клиенты максимально похоже — все что нужно указать: ip и порт сервера, алгоритм шифрования и пароль, указанные при настройке сервера; а также локальный порт на клиенте, к которому будут подключаться наши приложения (браузер и т.д.)

В самом приложении указываем настройки прокси:

SOCKS5
IP: 127.0.0.1
PORT: 3128 (ну или какой вы укажите при настройке клиента)

Например в файрфоксе это будет выглядеть так:

Ну и все, должно работать.

Безопасность сервера (настройка fail2ban)

Само собой мы защитили подключение паролем, но банить по айпи всяких пытающихся пролезть — лишним не будет. Докидываем 2 файла в конфиг fail2ban (если он у вас установлен)

/etc/fail2ban/filter.d/shadowsocks-libev.conf
 
  1. [INCLUDES]
  2. before = common.conf
  3. [Definition]
  4. _daemon = ss-server
  5. failregex = ^\w+\s+\d+ \d+:\d+:\d+\s+%(__prefix_line)sERROR:\s+failed to handshake with <HOST>: authentication error$
  6. ignoreregex =
  7. datepattern = %%Y-%%m-%%d %%H:%%M:%%S

и

/etc/fail2ban/jail.d/shadowsocks-libev.conf
 
  1. [shadowsocks-libev]
  2. enabled = true
  3. filter = shadowsocks-libev
  4. port = PORT
  5. logpath = /var/log/syslog
  6. maxretry = 3
  7. findtime = 3600
  8. bantime = 3600

(PORT — порт подключения к серверу, указанный нами в конфиге сервера)

Таким образом буквально минут за 5-10 можно сделать для себя адекватный прокси с шифрованным каналом.

Коды счетчиков Perfmon Windows (для использования с Zabbix и не только)

Список кодов монитора производительности, для использования с заббиксом наподобие

Average disk read queue length — perf_counter[\234(_Total)\1402]

Windows Server 2016 Perfmon Counters and Codes