Как стать автором
Обновить
4.3

Оболочки *

Шелл и компания

Сначала показывать
Порог рейтинга
Уровень сложности

Stable Diffusion WebUI Forge: Шаг 7. Txt2img. Настройка параметров генерации изображения

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров1.2K

На предыдущем уроке мы с вами создали, сохранили и улучшили наше первое изображение из запроса «smiling cyberpunk cat in purple bowler hat with blue cyber eye sitting in cafe drinking coffee, photorealistic, perfect composition, cinematic shot, intricate details, hyper detail, cool color palette, muted colors, very detailed, sharp focus». При этом мы с вами не рассматривали функциональное назначение и не использовали другие параметры генерации изображения, которые находятся слева на закладке Txt2img/Generation пользовательского интерфейса, как показано на рисунке ниже: 

Читать далее

Новости

lazyjournal — ленивый интерфейс для поиска и анализа логов

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров3.7K

Ранее, я уже писал статью о различных способах, которые мне приходилось использовать для чтения логов, и к какому решению в итоге пришел. Хотя прошло не так много времени, с тех пор приложение не переставало развиваться. Узнав о том, что на Хабре проходит сезон Open source, мне показалось это отличным поводом подчеркнуть, что именно стало причиной для создания данного инструмента, а также рассказать немного подробнее про основные и новые функции.

Читать далее

Простой и универсальный способ чтения логов в терминале

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров21K

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

Читать далее

Переводчик текста для терминала

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров2.7K

Большое количество специалистов в области IT используют переводчики текста в своей работе, и я тому не исключение. Достаточно часто в вакансиях Системного администратора можно встретить требуемый навык - "чтение технической документации на английском языке", но, не всегда такая документация может быть очевидной в полной мере, даже имея базовый уровень английского языка, и как мне кажется, тут нечему стесняется. Для перевода текста чаще всего используется браузер, а также десктопные приложения, я же расскажу про альтернативу таким решениям, для перевода текста прямо в консоли Linux или Windows.

Читать далее

Обзор на изменения в UX базовых функций новой Astra Linux 1.8 в сравнении с 1.7

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров5.8K

Недавно состоялся долгожданный публичный релиз Astra Linux 1.8. Новая версия получила много полезных и важных изменений под капотом, что однозначно облегчит жизнь системным администраторам, инженерам и специалистам по ИБ.

Однако, я был удивлен тем, что в сети начало появляться много статей (в том числе на хабре), где обо всех нововведениях упоминается вскользь. И если про изменения внутрянки понятно почему — трудно научно-популярно рассказать, то вот статьи о «Новых обоях от Роскосмоса» и «Новой светлой теме» лично меня удивили отсутствием погружения в изменения пользовательского опыта.

Попользовавшись новой версией Астры несколько недель, я решил написать свой обзор, где расскажу про важные изменения в UX базовых функций ОС для всех категорий пользователей (то есть даже не для супер-админов).

Читать далее

Книга: «PowerShell: практическая автоматизация»

Время на прочтение20 мин
Количество просмотров22K
image Привет, Хаброжители!

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

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

Почему порой так сложно вводить текст в терминал

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров19K

Как-то раз я спросила у пользователей Mastodon, что их не устраивает в работе с терминалом, и одним из ярких замечаний оказалось «редактирование уже введённой команды».

Мне эта проблема тоже реально знакома. Несмотря на то, что ввод текста и его редактирование является «базовой» задачей, мне потребовалось около 15 лет каждодневной работы с терминалом, чтобы привыкнуть к использованию Ctrl+A для перехода к началу строки (или Ctrl+E для перехода в конец — я использовала вместо этого Home/End).

Так что сегодня речь пойдёт о том, что ввод текста порой вызывает сложности. Я также поделюсь с вами кое-какими советами, которые сама была бы рада услышать давно.
Читать дальше →

Памятка по работе с JSON в консоли Linux на примере api

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров9.1K

Язык разметки JSON используется в огромном количестве приложений и систем благодаря своей простоте, а также является стандартным форматом обмена данными между клиентом и сервером в RESTful API. Многие приложения и системы предоставляют интерфейс удаленного управления, который может использоваться как для получения информации (например, для передачи данных в систему мониторинга), так и для управления этой системой через другое приложение или скрипты. В данной статье на примере работы с одним сервисом через API разберемся, как обрабатывать данными в формате JSON через утилиту jq, а также расскажу про другие инструменты.

Читать далее

TOTP без смартфона, послесловие

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров9.4K

После публикации статьи «TOTP без смартфона» она получила много интересных и полезных комментариев. Я решил подождать, пока обсуждение затихнет и провести работу над замечаниями и высказанными мыслями.

Поскольку объём работы оказался достаточно большой, то оформил её в виде отдельной публикации-послесловия.

Читать далее

История терминала как инструмент продуктивности

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров8.8K

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

Читать далее

TOTP без смартфона

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров22K

Когда я решил избавиться от необходимости постоянно носить с собой смартфон, одной из проблем оказалась двухфакторная аутентификация (2FA, приложение Google Authenticator). Остаться без возможности авторизации на множестве сервисов было неприемлемо, нужна была альтернатива.

Беглый поиск вывел меня на утилиту oathtool: командная строка, POSIX, OSS — всё, как я люблю, проблема в принципе решена. Но, как и большинство CLI утилит, её удобно использовать в сочетании с другими утилитами, а для этого полезно написать скриптовую обвязку. Собственно этой обвязкой, а также опытом использования, я и решил поделиться.

Читать далее

Как потерять управление оболочкой… Расследование

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров3.5K

image


Несколько недель назад я занимался хаком языковых серверов в Zed, пытаясь заставить Zed определять, когда заданный бинарник языкового сервера, например gopls, уже присутствует в $PATH. Если так, вместо загрузки нового бинарника Zed должен использовать его.


Трудность: часто $PATH динамически изменяется такими инструментами, как direnv, asdf, mise и другими, которые позволяют в данной папке установить определённый $PATH. Почему эти инструменты так делают? Потому что это даёт возможность, скажем, в начале $PATH добавить ./my_custom_binaries, пока вы находитесь в my-cool-project. Поэтому нельзя просто использовать $PATH, связанный с процессом Zed, нужен $PATH, как он есть, когда выполняется cd в каталог проекта.


Легко, подумал я. Просто запусти $SHELL, выполни cd в проект, чтобы запустить direnv и всё такое, запусти env, сохрани окружение, выбери $PATH, найди в нём бинарники. И это было легко. Вот часть кода, та часть, которая запускает $SHELL, cd и получает env:


fn load_shell_environment(dir: &Path) -> Result<HashMap<String, String>> {
    // Получает $SHELL
    let shell = std::env::var("SHELL")?;

    // Конструирует команду, которую хочется выполнить в $SHELL
    let command = format!("cd {:?}; /usr/bin/env -0;", dir);

    // Запускает $SHELL как интерактивную оболочку (чтобы использовались файлы пользователя rc).
    // и выполняет `command`:
    let output = std::process::Command::new(&shell)
        .args(["-i", "-c", &command])
        .output()?;

    // [... проверка кода выхода, получение stdout, превращение stdout в HashMap и т. д. ...]
}

За исключением одного: после запуска экземпляра Zed в терминале, который выполнял эту функцию, я больше не мог убить Zed, нажав Ctrl-C.

Что?

Как я подарил своему старому ноутбуку вторую жизнь

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров47K

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

Читать далее

Ближайшие события

REST API сервер на Bash с использованием сокетов и Apache

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров8.8K

Всем привет! Ранее рассказывал о том, как создать REST API и Web-сервер на PowerShell для Windows, а также упоминал, что подобный сервер будет работать и в системе Linux, благодаря кроссплатформенной версии PowerShell Core. Безусловно, для подобных целей лучше используются специализированные серверные фреймворки или библиотеки, такие как Flask или Django в Python, но меня не покидала идея реализации похожего сервера, где описание логики будет производиться на языке одного только Bash. Приведу примеры, с помощью которых можно создать такой сервер используя сетевые сокеты netcat , socat и ncat, а также веб-сервера Apache с использованием встроенных модулей.

Читать далее

Полезные модули PowerShell. Переводчик в консоли, SpeedTest, Syslog и другие

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров11K

Всем привет! Порой, написать графическую форму для консольного приложения может оказаться очень удобным решением, тем самым не нужно запоминать все ключи программы, особенно, если пользоваться им приходится изредка, тем самым автоматизируя работу с данным приложением в дальнейшем. Но, ситуация может быть обратной, когда приложение имеет только графический интерфейс, а вам нужно получить вывод его работы в консоли, например, для возможности передачи метрик в систему мониторинга. С тех пор как начал проводить все больше времени в консоли, заметил, что становится менее удобно переключаться на ранее привычные инструменты, лишний раз использовать мышь, держать открытыми излишние приложения или вкладки в браузере, особенно, если работаешь на удаленной машине без прямого доступа к графическому интерфейсу. У меня накопилась небольшая коллекция полезных модулей, большинство из которых написаны совсем недавно, успел привыкнуть при регулярном использовании и хотелось бы ими поделиться. Осознавая, что тенденция ухода Windows систем на территории РФ растет, тем не менее думаю еще очень много людей, кто так же как и я продолжают использовать данную систему и автоматизировать свою работу, возможно, представленные модули так же смогут пригодятся. Все модули опубликованы в репозитории на GitHub и менеджере пакетов Nuget, откуда их можно установить одной командой.

Читать далее

Мониторим работу Windows с помощью Powershell

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров10K

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

В операционных системах семейства Windows для автоматизации выполнения задач мониторинга лучше всего использовать Powershell. И далее в этой статье мы рассмотрим несколько полезных скриптов, которые могут упростить мониторинг состояния различных компонентов ОС.

Начнем с мониторинга состояния сетевых портов и взаимодействующих с ними процессов.

Читать далее

Persistence via RDP

Время на прочтение3 мин
Количество просмотров6K

Внимание! Статья несёт исключительно информативный характер. Подобные действия преследуются по закону!

Привет! Сегодня хотелось бы рассмотреть стандартный, но необычный способ закрепления в системе через RDP, используя utilman.exe.

Представим следующую ситуацию: нам удалось получить reverse shell от целевого хоста. Безусловно, нам необходим backdoor для обеспечения постоянного доступа. В процессе сканирования мы узнаем об открытом 3389 порте. И как нам быть?

Читать далее

Топ необходимых Linux-команд для разработчика [Шпаргалка]

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров41K

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

Цель этой статьи - ближе познакомить пользователей с основными командами, которые разработчики используют в повседневной работе.

Читать далее

Четвёртое наблюдение о командной строке и путях в файловой системе

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров5K

В недавно опубликованной статье «Три наблюдения о командной строке и путях в файловой системе» были рассмотрены некоторые особенности интерпретации командной строки оболочками в операционных системах Windows и Linux. Первое наблюдение было о том, что командные оболочки SH/BASH, в отличие от COMMAND/CMD, выполняют предварительную обработку параметров, содержащих шаблоны имён файлов. А в этой небольшой заметке приводится ещё одно наблюдение, демонстрирующее важность учёта предварительной обработки параметров-шаблонов командной оболочкой.

Читать далее

Настройка ZSH в Fedora linux, в Linux Mint и других ubuntu подобных дистрибутивах

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров26K

Свое рабочее место все хотят сделать чуть лучше и удобнее чем оно идет из "Коробки". в данной инструкции можно быстро и без боли настроить Шелл-терминал ZSH, для лучшего отображения информации и при необходимости расширять его функционал плагинами. Попутно установим один из терминалов Kitty который позволяет использовать вкладки и "окна" в работе. Используя его можно структурировать рабочее место легко и быстро. Плюсом данной инструкции будет то что вы получите свежие и стабильные версии NeoVim и некоторых пакетов, т.к. установку и сборку будем производить непосредственно из репозиториев.

Читать далее