Потек кран (очередной раз)

Потекла керамическая кран букса, подсмотрел вариант из итета и проверил.
Похоже в кран буксе предусмотрено слабое звено, некая прокладка и какого-то мягкого полиэтилена, за год она расплющивается почти в 0.
Заменил ее на то, что нашлось под рукой, а нашлось немного, проводок бы медный, пришлось накрутить запчасть от старой прищепки для штор.
Менять пришлось сразу две, обе перестали течь, время покажет как надолго.

IMG_20200314_172622 IMG_20200314_172802 IMG_20200314_172903 IMG_20200314_173434

ssh по ключам

генерируем приватный и публичный ключи
ssh-keygen -t rsa
на сервере добавляем публичный ключ в файл authorized_keys находящийся в домашнем каталоге пользователя которого хотим пускать по ключам в подкаталоге .ssh
cat id_rsa.pub >> authorized_keys
/etc/ssh/sshd_config
PubkeyAuthentication yes
для far manager и winscp используем ключ в формате putty, с помощью puttygen импортируем приватный ключ id_rsa и сохраняем его (save private key)

для использования приватного ключа id_rsa при работе с git добавляем в «C:\Program Files\Git\etc\ssh\ssh_config»
Host 192.168.1.205
   Identityfile "F:\JOB\FSK\CDS\.ssh\id_rsa"

Установка расширения Google Chrome без публикации в интернет-магазине Chrome

Публикацию отклонили, воевать не хочется, расширение бесплатное и необходима только одна (две) установки.

Уважаемый разработчик!
Ваш продукт для Google Chrome (название: "WAFriends", идентификатор: cpjembijgjehhiakijmcdjbncingfdip) нарушил наши правила и был удален из сервиса "Интернет-магазин Chrome".
Ваш продукт нарушает следующий раздел документа "правила программы":
"Спам и размещение в магазине"
Отсутствуют описание объекта в соответствующем поле, значки или скриншоты. Кроме того, объект вызывает подозрения.

1) Если расширение было установлено через "Загрузить распакованное расширение" удаляем.
2) Жмем "Упаковать расширение", выбираем каталог с расширением (ключ не нужен), в итоге появляются два файла zzzz.crx и zzzz.pem 
3) Устанавливаем zzzz.crx посредством drag-and-dropping на страницу расширений chrome://extensions
4) После перезагрузки браузера расширение будет отключено "Unsupported extensions disabled" 
5) Вносим (добавляем) ИД расширения в белый список, ИД на странице расширений отображается не полностью, потому ищем по наименованию каталога
C:\Users\user\AppData\Local\Google\Chrome\User Data\Default\Extensions\koajdlofjfmhmlblclllndnhmjedpnjd
6) Перезагружаем браузер, на странице расширений видим надпись "Этим браузером управляет ваша организация."

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\ExtensionInstallWhitelist]
"1"="llndpnjdkoajdldnhofjfmhmlblclmje"
"2"="koajdlofjfmhmlblclllndnhmjedpnjd"
Безымянный2 wafriends.crx wafriends.reg

Permission denied (publickey,gssapi-keyex,gssapi-with-mic)


ssh -v -i /root/test_keys/id_dsa test@test.test
...
debug1: Skipping ssh-dss key /root/test_keys/id_dsa - not in PubkeyAcceptedKeyTypes
...
Permission denied (publickey,gssapi-keyex,gssapi-with-mic)

ssh -i /root/test_keys/id_dsa test@fortest.host -o "PubkeyAcceptedKeyTypes +ssh-dss"
The new openssh version — 7.0+ does not support DSA keys anymore

Drop default constraint on a column in TSQL


DECLARE @tableName VARCHAR(MAX) = 'm_PWT'
DECLARE @columnName VARCHAR(MAX) = 'countInDoc'
DECLARE @ConstraintName nvarchar(200)
SELECT @ConstraintName = Name 
FROM SYS.DEFAULT_CONSTRAINTS
WHERE PARENT_OBJECT_ID = OBJECT_ID(@tableName) 
AND PARENT_COLUMN_ID = (
    SELECT column_id FROM sys.columns
    WHERE NAME = @columnName AND object_id = OBJECT_ID(@tableName))
IF @ConstraintName IS NOT NULL
    EXEC('ALTER TABLE '+@tableName+' DROP CONSTRAINT ' + @ConstraintName)

Get list of AD groups a user is a member of

Нужно получить список групп пользователя домена. Самое простое
net user userxxx /domain
но наименование группы обрезается до 21 символа, печалька Воспользуется повершелом
Для текущего пользователя:
(New-Object System.DirectoryServices.DirectorySearcher("(&(objectCategory=User)(samAccountName=$($env:username)))")).FindOne().GetDirectoryEntry().memberOf
Для указанного:
$env:username="userxxx";(New-Object System.DirectoryServices.DirectorySearcher("(&(objectCategory=User)(samAccountName=$($env:username)))")).FindOne().GetDirectoryEntry().memberOf

Download and merge HTTP Live Streaming .ts files

Скачиваем и собираем кусочки видео и отдельно аудио файлов (в данном случае их там тысячи, в m3u8) в один с подготовкой к проигрыванию стандартным элементом <video> html5

/usr/local/bin/ffmpeg -copyts -i "https://media-store-n.ru/api/v1/buckets/hls.webinar.ru/objects/56547.audio.128kbps.master.m3u8" -copyts -i "https://media-store-n.ru/api/v1/buckets/hls.webinar.ru/objects/56547.video.720p.master.m3u8" -muxpreload 0 -muxdelay 0 -vcodec copy -acodec mp3 -af "aresample=async=1000" -movflags faststart "/usr/local/www/nginx-mneti/dv/loaded/56547.mp4"
(ссылки нерабочие)

пытаемся избавиться от рассинхронизации видео и звука, -copyts -muxpreload 0 -muxdelay 0 -af «aresample=async=1000»
видео поток просто копируем, звук конвертируем в -acodec mp3
подготавливаем к просмотру html5 элементом video, -movflags faststart

http streamed MP4 video seekable with php-frm and nginx

Видео проигрывается, заставим работать быструю перемотку (без скачивания всего файла)
Воспользуемся возможностями нгинкса, именно он будет обрабатывать заголовки с «Content-Range»

    <video width="80%" height="80%" controls autoplay>
      <source src="https://www.mneti.ru/dv/loaded/getmp4.php?vid=<?= intval($_GET['vid']??0) ?>" type="video/mp4">
      Your browser does not support the video tag.
    </video>
часть содержимого getmp4.php, что-то там анализируем в php и если все ок, отдаем полный контроль по отдаче фала в nginx

$file = intval($_GET['vid']??0) . '.mp4';
header("Content-Type: video/mp4");
header( 'X-Accel-Buffering: no' ); //avoid nginx buffering.
header("X-Accel-Redirect: /stream_video/$file");
exit;    
настройка реального расположения файлов nginx.conf

    location /stream_video {
        internal;
        alias /var/www/video;
    }

AcceptSecurityContext failed with. [0x8009030C]

При попытке SSO авторизации на той же машине, где расположен сам сервис авторизации (sso-proxy) получал ошибку
AcceptSecurityContext failed with. [0x8009030C]

Помогло так
HKLM\System\CurrentControlSet\Control\LSA Add a DWORD value called “DisableLoopbackCheck” Set this value to 1