Заметки по настройке некоторых программ в условиях энтерпрайза

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

Кровавый энтерпрайз (он же махровый, он же галера), отличается любовью к бюрократии, стандартизации и безопасности, и хоть планировались во благо, часто выливаются в мероприятия по слежке и защите от дурака. В части софта это означает пользовательские права, ограниченный список программ, из которых 95% патологически глючные, медленные, антиюзабельные и вообще сделаны для того, чтобы максимально изводить пользователя и тратить его рабочее время на выяснение отношений.

Бэкап

Простой скрипт для копирования папок, можно добавить в планировщик задач (если хватит прав) или запускать вручную. Поддерживает пути к сетевым папкам, которые могут периодически отваливаться, поэтому локальная копия жизненно важных файлов может внезапно очень выручить. Как обычно, копируем строки в текстовый файл, правим, сохраняем, меняем расширение с txt на bat (или cmd).

chcp 1251
@pushd %~dp0
xcopy "\\путь\к\папке" "C:\путь\к\папке" /H/E/K/F/C/Y
@popd
pause

Запуск IE с нужными вкладками

Частенько легаси ПО может работать только с IE, однако периодические падения без объяснения причин и сохранения сессии, мягко говоря, раздражают, плюс настройки браузера могут регулярно затираться через групповые политики Active Directory. Чтобы не зависеть от настроек, создаём скрипт, который открывает нужный набор вкладок. В интернетах описывается много костылей, особенно с использованием VBS, но они не работают. Рабочий вариант ниже, весь изюм в таймауте (не менее 2 секунд), без него сайты открываются в разных окнах.

start "C:\Program Files\Internet Explorer\iexplore.exe" "https://example.com"
timeout 2
start "C:\Program Files\Internet Explorer\iexplore.exe" "https://example.com"

SecureCRT

Перво-наперво, выберите путь для сохранения настроек в отдельной папке своего пользовательского профиля, таким образом их можно будет забэкапить и в нужный момент восстановить.
Нужно отметить специфику конфигурации SecureCRT: есть Global Options – общие настройки программы, есть Session Options – влияют на конкретный профиль, с которым вы подключаетесь к какому-либо хосту, а ещё есть Default Settings (Global Options -> General -> Default Session -> Edit Default Settings) – это настройки по умолчанию для создаваемых профилей сессий, когда вы что-нибудь меняете в нём, программа спросит «применить изменения ко всем существующим профилям?».

Оформление и цвета (Color Scheme)

До версии 8.3 цветовые схемы меняют только цвет текста и цвет фона (foreground и background color соответственно), стандартные ANSI цвета меняются либо в Global Options, либо в Session Options (нужно снять галочку Use global ANSI color settings), причём у меня цвета упорно оставались теми же самыми, из всех танцев с бубном помогло только глобальное изменение цветов.
После версии 8.3 цвета ANSI прикрутили к цветовым схемам, да и самих цветовых схем появилось много «из коробки».
В чём собственно проблема? Если у вас хороший монитор, то скорее всего даже ни в чём, вы особо и не заметите. На мониторах с хреновыми матрицами приходится выкручивать яркость в ноль, иначе из глаз течёт кровь и работать совершенно невозможно. При таких настройках начинаются проблемы с цветами, самые понятные примеры: тёмно синий цвет на чёрном фоне, бирюзовый и красный цвета на синем фоне, это хорошо видно в mc. Опять же, зависит от устройства, на котором вы смотрите этот сайт, но я попытался привести примеры на картинке.

Что с этим делать? Если версия 8.3 и старше – выбираем тему оформления и погнали. Для младших версий, например 8.0.4, меняем в файле Global.ini блок, ответственный за Global color ANSI scheme. Решение найдено в старой теме на официальном форуме https://forums.vandyke.com/showthread.php?t=2433, сами цветовые схемы найдены на разных сайтах, на мой вкус лучше всего выглядит схема PuTTY. Ещё несколько палитр можно найти по ссылке, правда каждый цвет придётся набивать вручную в настройках, т.к. формат хранения палитры в конфиге SecureCRT найти не получилось, может у вас получится?

# Default SecureCRT
B:"ANSI Color RGB"=00000040
00 00 00 00 a0 00 00 00 00 a0 00 00 a0 a0 00 00 00 00 a0 00 a0 00 a0 00 00 a0 a0 00 c0 c0 c0 00
80 80 80 00 ff 00 00 00 00 ff 00 00 ff ff 00 00 00 00 ff 00 ff 00 ff 00 00 ff ff 00 ff ff ff 00

# Solarized
B:"ANSI Color RGB"=00000040
07 36 42 00 dc 32 2f 00 85 99 00 00 b5 89 00 00 26 8b d2 00 d3 36 82 00 2a a1 98 00 ee e8 d5 00
00 2b 36 00 cb 4b 16 00 58 6e 75 00 65 7b 83 00 83 94 96 00 6c 71 c4 00 93 a1 a1 00 fd f6 e3 00

# Solarized (another version)
B:"ANSI Color RGB"=00000040
00 2b 38 00 dc 32 2f 00 85 99 00 00 b5 89 00 00 26 8b d2 00 d3 36 82 00 2a a1 98 00 ee e8 d5 00
07 36 42 00 cb 4b 16 00 58 6e 75 00 65 7b 83 00 83 94 96 00 6c 71 c4 00 93 a1 a1 00 fd f6 e3 00

# Murphy
B:"ANSI Color RGB"=00000040
00 00 00 00 f9 00 00 00 06 ff 06 00 ff ff 00 00 95 bf ff 00 ff 00 ff 00 a4 ff ff 00 d8 d8 d8 00
80 80 80 00 ff 6f 6f 00 97 ff 97 00 ea bb 00 00 84 93 fd 00 d5 00 d5 00 00 43 f4 00 ff ff ff 00

# Putty
B:"ANSI Color RGB"=00000040
00 00 00 00 bb 00 00 00 00 bb 00 00 bb bb 00 00 00 00 bb 00 bb 00 bb 00 00 bb bb 00 bb bb bb 00
55 55 55 00 ff 55 55 00 55 ff 55 00 ff ff 55 00 55 55 ff 00 ff 55 ff 00 55 ff ff 00 ff ff ff 00

Так же для старых версий программы можно добавить цветовую схему Solarized, источник: https://github.com/DrBob5188/Solarized. Добавляем в Color Shemes.ini блоки:

B:"Solarized Dark"=00000044
00 01 01 01 83 94 96 00 93 a1 a1 00 83 94 96 00 93 a1 a1 00 83 94 96 00 93 a1 a1 00 83 94 96 00
93 a1 a1 00 00 2b 36 00 07 36 42 00 00 2b 36 00 07 36 42 00 00 2b 36 00 07 36 42 00 00 2b 36 00
07 36 42 00
B:"Solarized Light"=00000044
00 01 01 01 65 7b 83 00 58 6e 75 00 65 7b 83 00 58 6e 75 00 65 7b 83 00 58 6e 75 00 65 7b 83 00
58 6e 75 00 fd f6 e3 00 ee e8 d5 00 fd f6 e3 00 ee e8 d5 00 fd f6 e3 00 ee e8 d5 00 fd f6 e3 00
ee e8 d5 00

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

Подсветка и колоризация

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

В этом репозитории два файла-профиля Cisco Words.ini и Lab Highlights.ini
https://github.com/mathewbray/SecureCRT-Cisco-Highlighting

Чуть подробнее про второй пак на http://feralpacket.org/?p=299
Закидываем файлы в папку …Config/Keywords, в Windows по умолчанию это C:\Users\username\AppData\Roaming\VanDyke\Config\Keywords

Настройка в конкретном профиле:
Options -> Session Options -> Terminal -> Appearance
-> Current color scheme, выбираем White / Black
-> Highlight keywords (после добавления файлов в раскрывающемся списке появились профили)
-> Name: Lab Highlights
-> Style: Color (снимаем галочку Reverse video, ставим напротив Color)
Нажимаем Edit, открывается окно Keyword List Properties
-> Ставим галочку Match case

Настройка в профиле по умолчанию (default session):
Options -> Global Options -> General -> Default Session
-> Edit Default Settings… (дальше по аналогии)

Global Options

Global Options — Terminal — Mouse — Paste on
Снять галку, если рука дрогнула и нажала на правую кнопку мыши, кусок конфига не влетит в терминал
Global Options — Terminal — Tabs/Tiling — Options — Double-click action: Clone Tab
При двойном клике на вкладке происходит её клонирование
Global Options — SSH2
Можно сгенерировать ключи для доступа на серверы/хосты
Public Key копируем на удалённый сервер в файл ~/.ssh/authorized_keys
Выставляем права на файл chmod 600 ~/.ssh/authorized_keys
Использование ключа для авторизации настраивается в настройках сессии

Session Options

Session Options — Connection — SSH2
При использовании входа по ключу передвигаем тип аутентификации PublicKey вверх в списке
Session Options — Terminal: Selection: Set word delimiter characters
Можно поставить галочку, а в поле ввести пробел, тогда двойным кликом будут выделяться любые последовательности символов, например ip адреса
Session Options — Terminal — Emulation — Terminal: Xterm + ANSI Color
Тип виртуального терминала, по умолчанию VT100, с Xterm работают функциональные кнопки (Home, End…) и отображаются цвета
Session Options — Terminal — Emulation — Scrollback buffer: 128000
Буфер экрана, 128000 максимальное значение
Session Options — Terminal — Emulation — Emacs: Use ALT as meta key + Send escape for meta key
После этого будут работать сочетания клавиш с Meta (например M+f M+b перемещение вперёд назад между словами)
Session Options — Terminal — Emulation — Advanced — Send delay options — Line send delay: 50 milliseconds
Задержка перед отправкой линии, жизненно необходимо для вставки конфигов больше ~4-10 строк (например D-Link дропнет сессию, а Juniper может подавиться и не съесть часть строк)
Session Options — Terminal — Emulation — Advanced — Ignore window title change requests
При иcпользовании xterm вместо vt100 в заголовок вкладки пишется всякое, это может быть слишком длинный текст
Session Options — Terminal — Appearance — Current color scheme
Цветовая схема, обязательно для любителей чёрного фона
Session Options — Terminal — Appearance — Character encoding: UTF-8
Кодировка на удалённом сервере, в большинстве случаев UTF-8, но может быть и другая, в FreeBSD, например, KOI8-R
Кодировку на сервере можно проверить командами:
locale
export | grep -E «LANG|LC_ALL|CHARSET»

Если прыгаем по цепочке серверов с разными кодировками, можно использовать команду luit, она преобразует кодировку для конкретной запускаемой программы, например:
luit -encoding «KOI8-R» ssh user@host
Session Options — Terminal — Appearance — Highlight keywords + Style: Reverse video
Подсветка слов, удобно подсвечивать свой логин
Session Options — Terminal — Log File
Сохранение логов
Log file name: \путь\к\директории\session_%Y-%M-%D-%h-%m_%H.log
Ставим галочки:
+ Start log upon connect
+ Start new log at midnight (must use %D in log file name)
+ Append to file
Заполняем поля (можно и по-другому, как решит ваша левая пятка):
Upon connect: ———START SESSION———
Upon disconnect: ———END SESSION———
On each line (в конце этой строки поставьте пробел): %Y-%M-%D-%h-%m

Session Options — Terminal — Selection: Set word delimiter characters
Можно поставить галочку, а в поле ввести пробел, тогда двойным кликом будут выделяться любые последовательности символов, например ip адреса


Session Options — Terminal — Emulation — Terminal: Xterm + ANSI Color
Тип виртуального терминала, по умолчанию VT100, с Xterm работают функциональные кнопки (Home, End…) и отображаются цвета
Session Options — Terminal — Emulation — Scrollback buffer: 128000
Буфер экрана, 128000 максимальное значение
Session Options — Terminal — Emulation — Emacs: Use ALT as meta key + Send escape for meta key
После этого будут работать сочетания клавиш с Meta (например M+f M+b перемещение вперёд назад между словами)
Session Options — Terminal — Emulation — Advanced — Send delay options — Line send delay: 50 milliseconds
Задержка перед отправкой линии, жизненно необходимо для вставки конфигов больше ~4-10 строк (например D-Link дропнет сессию, а Juniper может подавиться и не съесть часть строк)
Session Options — Terminal — Emulation — Advanced — Ignore window title change requests
При иcпользовании xterm вместо vt100 в заголовок вкладки пишется всякое, это может быть слишком длинный текст
Session Options — Terminal — Appearance — Current color scheme
Цветовая схема, обязательно для любителей чёрного фона
Session Options — Terminal — Appearance — Character encoding: UTF-8
Кодировка на удалённом сервере, в большинстве случаев UTF-8, но может быть и другая, в FreeBSD, например, KOI8-R
Кодировку на сервере можно проверить командами:
locale
export | grep -E «LANG|LC_ALL|CHARSET»

Если прыгаем по цепочке серверов с разными кодировками, можно использовать команду luit, она преобразует кодировку для конкретной запускаемой программы, например:
luit -encoding «KOI8-R» ssh user@host
Session Options — Terminal — Appearance — Highlight keywords + Style: Reverse video
Подсветка слов, удобно подсвечивать свой логин
Session Options — Terminal — Log File
Сохранение логов
Log file name: \путь\к\директории\session_%Y-%M-%D-%h-%m_%H.log
Ставим галочки:
+ Start log upon connect
+ Start new log at midnight (must use %D in log file name)
+ Append to file
Заполняем поля (можно и по-другому, как решит ваша левая пятка):
Upon connect: ———START SESSION———
Upon disconnect: ———END SESSION———
On each line (в конце этой строки поставьте пробел): %Y-%M-%D-%h-%m

Keyboard shortkeys/hotkeys/shortcuts

Alt+Enter – на весь экран
Стандартные сочетания клавиш в терминалах легко гуглятся, например, поддерживаемые в консоли Cisco: https://etherealmind.com/cisco-ios-cli-shortcuts/
Так же в SecureCRT можно замапить свои сочетания клавиш

Взаимодействие со screen

При запуске screen на удалённом сервере окно SecureCRT меняет размер, можно поменять настройки SecureCRT, а можно создать (или отредактировать, если он уже есть) в своей домашней директории файл .screenrc и добавить туда:

termcapinfo vt100* 'is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l'
termcapinfo xterm* 'is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l'

PuTTY

Можно настроить кое-какие вещи по аналогии, некоторые из часто используемых опций:
Configuration — Session — Logging
Configuration — Terminal — Keyboard — The Function keys and keypad: Xterm R6
Configuration — Window — Lines of scrollback: 999999
Configuration — Window — Selection — Action of mouse buttons: Windows (Middle extends, Right brings up menu)

Notepad++

Хвала небесам что есть это замечательное (хотя и не безглючное) приложение, без него совсем не жизнь, а каторга. Очень помогает в составлении конфигов.
Несколько любимых фичи: выделение и правка вертикальных блоков текста (для выделения нужно зажать Alt), отображение непечатных символов и расширенные поиск/замена текста, сравнение файлов в разных областях с помощью плагина Compare, замена (конвертация) вводимых табов пробелами, подсветка выделенного слова и подсветка синтаксиса (я просто добавляю расширение txt к Python и все файлы txt автоматически подсвечиваются правилами профиля Python), преобразование кодировки, плагины и многое другое.

Есть фича, которую всегда отключаю, т.к. напрягает глаза, это некий аналог Исправлений в Word (да и в LibreOffice есть похожая штука), реализуется плагином Location Navigate, сохранённый текст отображается на зелёном фоне, изменённые участки на оранжевом, отключается снятием галочки Mark Changed Lines в меню плагина.

MSO

Стандарт на все времена, но шпарящий в табличках и текстовых редакторах по 8 часов планктоний и там найдёт баги (коллективный доступ к документам это тот ещё адок). Причём исправляет ли MS эти баги, работают ли вообще кейсы в их ТП, сложно сказать, вероятно они могут посоревноваться с циской в этом деле.

В отличие от Notepad++, в MS офисных приложениях автосохранение выставляется не в секундах, а в минутах, имеет смысл выставить в настройках каждого (!) приложения минимальный интервал (1 минуту), т.к. в любой момент всё может пойти по бороде, приложение вылететь, а сохранённая копия спасёт ваши труды и нервы.

Outlook

Есть вариант сделать его почти похожим на Thunderbird, однако как исправить его феерически хреновый поиск я не знаю, вероятно никак. Хреновый потому, что он не умеет искать по частям слов, не понимает морфологию русского языка, нельзя нормально указать «ищи только по этому сочетанию слов» и т.д. и т.п.

Есть одна приятная вещь не в пример Thunderbird’у, в котором эту фичу кстати как поломали где-то между 1 и 3 версиями, и так и не починили. Это нормально работающий экспорт и импорт правил обработки писем.

Обрабатываем Outlook напильником:

Обычный вид Outlook
Файл -> Настройка учётных записей -> Изменить…
Загружать все письма, это нужно для «нормального» поиска, без до-загрузки и ожидания обращений на сервер
Группировать письма в беседы
Убрать область пользователей
Компактные иконки слева внизу
Отключить отображение «превью» письма, обычно первой строки
Настройка представления
Другие настройки
Выставить количество знаков (50) при которых средняя область (с письмами/сообщениями) переключается в компактный формат (по умолчанию 125)
Убрать избранное
Настроить параметры области чтения
Настроить на свой вкус триггеры по которым письмо помечается прочитанным
Применить текущее представление ко всем папкам в почтовом ящике
Так-то лучше, осталось настроить ширину областей и столбцов, а так же правила обработки почты

Linc (Skype for Business)

Из серии «за что ни берётся MS, всё превращается в собачьи…», любимый пример: у вас есть открытый диалог со вчерашней перепиской, человек вам пишет и его сообщение помещается куда-нибудь в середину вчерашней переписки 🤷‍♂️. Вообще идея разделения переписок на беседы для сохранения их в Exchange в своё время была (возможно) здравой, можно было классно искать по перепискам в Outlook (если бы поиск нормально работал), но в современных реалиях это полная жесть.

Важно знать: отправка больших сообщений (например кусок лога в буфере обмена) делается быстрым нажатием Control+V, затем Enter, медленно не получится. Если всё равно не получается, то нужно отправить сообщение с любым текстом и повторить ту же комбинацию из Control+V, затем Enter.
USB гарнитуру можно подключать только напрямую в ноут или ПК, никаких док станций! Иначе она будет отваливаться в самый неподходящий момент. Грамотные пользователи посоветуют убрать галочку «Разрешить отключение этого устройства для экономии энергии» в свойствах (всех) USB устройств в Диспетчере устройств, но прав на открытие вышеуказанного диспетчера у вас скорее всего не будет, да и не факт что это поможет.

Можно затюнить внешний вид аналогично Outlook’у, маленькие иконки в списке, свой шрифт в переписках и всё такое, но в целом это Vista или Office 2007 из царства мессенджеров.

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *