Фишинг — самый простой, но один из самых опасных способов начать кибератаку. Почтовое письмо или поддельная страница могут стать первым шагом к масштабному инциденту.
Именно с таких сигналов SOC-аналитик начинает свою работу: он распознаёт признаки атаки, классифицирует угрозу и запускает процесс реагирования. Это основа кибербезопасности, без которой не обходится ни одна современная компания.
На открытом уроке разберём жизненный цикл фишингового инцидента, посмотрим на работу SOC глазами эксперта, узнаем, какие инструменты реально используют аналитики — от SIEM до Threat Intelligence.
Вебинар пройдёт 22 сентября в 20:00 МСК. Все участники получат скидку на курс «Компьютерная криминалистика». Регистрация открыта: https://vk.cc/cPBgkL
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Именно с таких сигналов SOC-аналитик начинает свою работу: он распознаёт признаки атаки, классифицирует угрозу и запускает процесс реагирования. Это основа кибербезопасности, без которой не обходится ни одна современная компания.
На открытом уроке разберём жизненный цикл фишингового инцидента, посмотрим на работу SOC глазами эксперта, узнаем, какие инструменты реально используют аналитики — от SIEM до Threat Intelligence.
Вебинар пройдёт 22 сентября в 20:00 МСК. Все участники получат скидку на курс «Компьютерная криминалистика». Регистрация открыта: https://vk.cc/cPBgkL
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Команды мониторинга и отладки
👉 @sysadminof
top
отобразить запущенные процессы, используемые ими ресурсы и другую полезную информацию (с автоматическим обновлением данных)ps -eafw
отобразить запущенные процессы, используемые ими ресурсы и другую полезную информацию (единожды)ps -e -o pid,args --forest
вывести PID’ы и процессы в виде дереваpstree
отобразить дерево процессовkill -9 98989
kill -KILL 98989
«убить» процесс с PID 98989 «на смерть» (без соблюдения целостности данных)kill -TERM 98989
Корректно завершить процесс с PID 98989kill -1 98989
kill -HUP 98989
заставить процесс с PID 98989 перепрочитать файл конфигурацииlsof -p 98989
отобразить список файлов, открытых процессом с PID 98989lsof /home/user1
отобразить список открытых файлов из директории /home/user1strace -c ls > /dev/null
вывести список системных вызовов, созданных и полученных процессом lsstrace -f -e open ls > /dev/null
вывести вызовы бибилотекwatch -n1 ‘cat /proc/interrupts’
отображать прерывания в режиме реального времениlast reboot
отобразить историю перезагрузок системыlast user1
отобразить историю регистрации пользователя user1 в системе и время его нахождения в нейlsmod
вывести загруженные модули ядраfree -m
показать состояние оперативной памяти в мегабайтахsmartctl -A /dev/hda
контроль состояния жёсткого диска /dev/hda через SMARTsmartctl -i /dev/hda
проверить доступность SMART на жёстком диске /dev/hdatail /var/log/dmesg
вывести десять последних записей из журнала загрузки ядраtail /var/log/messages
вывести десять последних записей из системного журнала👉 @sysadminof
👍7❤1
Media is too big
VIEW IN TELEGRAM
Цикл for в терминале bash
Очень часто вам необходимо исполнить одну и ту-же команду на разных файлах. К примеру вы хотите сконвертировать каждый JPEG файл в аналогичный PNG (или наоборот).
Почти во всех терминалах есть возможность работать с циклами, и в данном видео я описываю работу с циклом «for» в терминале bash.
истончик
👉 @sysadminof
Очень часто вам необходимо исполнить одну и ту-же команду на разных файлах. К примеру вы хотите сконвертировать каждый JPEG файл в аналогичный PNG (или наоборот).
Почти во всех терминалах есть возможность работать с циклами, и в данном видео я описываю работу с циклом «for» в терминале bash.
истончик
👉 @sysadminof
👍9❤1
📕 DNS для администратора Windows: основы и практика для системных администраторов, инженеров технической поддержки и начинающих IT-специалистов.
На открытом уроке 22 сентября в 20:00 мск мы разберем в тонкости устройства и работы DNS в инфраструктуре Windows.
📗 На вебинаре вы:
1. Научитесь диагностировать и устранять типовые проблемы с DNS.
2. Поймёте, как DNS влияет на стабильность всей сети.
📘 В результате на практике попробуете настроить базовые записи и параметры DNS-сервера, а также разберетесь, как работает DNS в Windows, почему он критически важен и как им управлять.
👉 Регистрация и подробности о курсе Администратор Windows: https://vk.cc/cPEeuD
Все участники открытого урока получат скидку на курс "Администратор Windows"
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
На открытом уроке 22 сентября в 20:00 мск мы разберем в тонкости устройства и работы DNS в инфраструктуре Windows.
📗 На вебинаре вы:
1. Научитесь диагностировать и устранять типовые проблемы с DNS.
2. Поймёте, как DNS влияет на стабильность всей сети.
📘 В результате на практике попробуете настроить базовые записи и параметры DNS-сервера, а также разберетесь, как работает DNS в Windows, почему он критически важен и как им управлять.
👉 Регистрация и подробности о курсе Администратор Windows: https://vk.cc/cPEeuD
Все участники открытого урока получат скидку на курс "Администратор Windows"
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Media is too big
VIEW IN TELEGRAM
Резервное копирование и восстановление виртуальных машин KVM
В этом ролике мы разберём резервное копирование и восстановление виртуальных машин KVM средствами СРК RuBackup.
истончик
👉 @sysadminof
В этом ролике мы разберём резервное копирование и восстановление виртуальных машин KVM средствами СРК RuBackup.
истончик
👉 @sysadminof
👍6❤1
Зарезервированные переменные Bash
Переменная Значение
👉 @sysadminof
Переменная Значение
$DIRSTACK
Содержимое вершины стека каталогов.$EDITOR
Текстовый редактор по-умолчанию.$EUID
Эффективный UID. Если вы использовали программу su для выполнения команд от другого пользователя, то эта переменная содержит UID этого пользователя.$UID
Содержит реальный идентификатор, который устанавливается только при логине.$FUNCNAME
Имя текущей функции в скрипте.$GROUPS
Массив групп к которым принадлежит текущий пользователь.$HOME
Домашний каталог пользователя.$HOSTNAME
hostname машины.$HOSTTYPE
Архитектура машины.$LC_CTYPE
Внутренняя переменная, которая определяет кодировку символов.$OLDPWD
Прежний рабочий каталог.$OSTYPE
Тип ОС.$PATH
Путь поиска программ.$PPID
Идентификатор родительского процесса.$SECONDS
Время работы скрипта (в сек.)$#
Общее количество параметров переданных скрипту$*
Все аргументы переданыне скрипту(выводятся в строку).$@
Тоже самое, что и предыдущий, но параметры выводятся в столбик.$!
PID последнего запущенного в фоне процесса.$$
PID самого скрипта.$?
Содержит код завершения последней команды.👉 @sysadminof
👍8❤1
IPv6: всё, что нужно знать сетевому инженеру
Открытый урок в рамках курса "Network Engineer. Professional"
Рассмотрим межсетевой протокол IPv6, который в конечном итоге придет на смену IPv4. Знакомство не будет долгим или сложным, но поможет Вам ближе узнать IPv6, выполнить базовые настройки протокола и подготовиться к выполнению домашних работ с его использованием на курсе Сетевой инженер от ОТУС.
На занятии:
-Разберем основы протокола IPv6, сравним его с IPv4.
-Познакомимся со структурой и принципами работы IPv6.
-Произведем настройку сети для работы с этим протоколом.
Познакомившись с протоколом IPv6, технологией его реализации, вы сможете начать использовать данную технологию, которая необходима при реализации домашних работ на курсе Сетевой инженер, что позволит в будущем полноценно взаимодействовать с данным протоколом
Урок будет интересен слушателям, желающим развить карьеру сетевого специалиста. Он позволит познакомиться с протоколом IPv6.
👉 Регистрация и подробности о курсе Network Engineer. Professional
https://vk.cc/cPHO3x
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Открытый урок в рамках курса "Network Engineer. Professional"
Рассмотрим межсетевой протокол IPv6, который в конечном итоге придет на смену IPv4. Знакомство не будет долгим или сложным, но поможет Вам ближе узнать IPv6, выполнить базовые настройки протокола и подготовиться к выполнению домашних работ с его использованием на курсе Сетевой инженер от ОТУС.
На занятии:
-Разберем основы протокола IPv6, сравним его с IPv4.
-Познакомимся со структурой и принципами работы IPv6.
-Произведем настройку сети для работы с этим протоколом.
Познакомившись с протоколом IPv6, технологией его реализации, вы сможете начать использовать данную технологию, которая необходима при реализации домашних работ на курсе Сетевой инженер, что позволит в будущем полноценно взаимодействовать с данным протоколом
Урок будет интересен слушателям, желающим развить карьеру сетевого специалиста. Он позволит познакомиться с протоколом IPv6.
👉 Регистрация и подробности о курсе Network Engineer. Professional
https://vk.cc/cPHO3x
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
👍1
Media is too big
VIEW IN TELEGRAM
Адресация IPv4. Деление на подсети и объединение подсетей
Что такое адресация IPv4 и как осуществляется деление на подсети? Вы познакомитесь с алгоритмом разделения сетей на подсети, а также со структурой IP-адреса, рассмотрите логическую структуру IP-адреса, разберёте понятия «идентификатор сети» и «идентификатор хоста», остановитесь на определении параметров IP-адресации при разделении сетей на подсети.
источник
👉 @sysadminof
Что такое адресация IPv4 и как осуществляется деление на подсети? Вы познакомитесь с алгоритмом разделения сетей на подсети, а также со структурой IP-адреса, рассмотрите логическую структуру IP-адреса, разберёте понятия «идентификатор сети» и «идентификатор хоста», остановитесь на определении параметров IP-адресации при разделении сетей на подсети.
источник
👉 @sysadminof
👍9❤1
🚨 Новый рекорд DDoS-атак
В этом году число DDoS-атак стремительно растёт, и рекорд был обновлён уже в третий раз.
1 сентября специалисты Curator отразили крупнейшую атаку, задействовавшую 5,76 млн устройств по всему миру.
О том, как проходила атака и какие методы защиты помогли её остановить - в канале Curator
В этом году число DDoS-атак стремительно растёт, и рекорд был обновлён уже в третий раз.
1 сентября специалисты Curator отразили крупнейшую атаку, задействовавшую 5,76 млн устройств по всему миру.
О том, как проходила атака и какие методы защиты помогли её остановить - в канале Curator
Telegram
CURATOR | DDoS‑защита, AntiBot, WAF
🔺 Продолжаем отслеживать крупнейший L7 DDoS-ботнет: теперь 5,76 млн
Напомним предысторию:
1️⃣ 26 марта мы нейтрализовали атаку на сегмент “Онлайн-букмекеры”, в которой были задействованы 1,33 млн IP-адресов, преимущественно из Бразилии, Аргентины, России…
Напомним предысторию:
1️⃣ 26 марта мы нейтрализовали атаку на сегмент “Онлайн-букмекеры”, в которой были задействованы 1,33 млн IP-адресов, преимущественно из Бразилии, Аргентины, России…
💩2
Media is too big
VIEW IN TELEGRAM
Сети Cisco и Linux у Вас дома
Хорошим инженером можно стать так же, как хорошим спортсменом — нужно постоянно тренироваться, находить на это время и мотивацию. На нашем мастер-классе вы узнаете, как организовать «спортзал» дома и, занимаясь в формате «свободное обучение», повышать свою квалификацию в любое свободное время. А еще вы узнаете про использование геймификации — игрового подхода к образованию в наших методических материалах. Это точно оторвет вас от любимого сериала!
источник
👉 @sysadminof
Хорошим инженером можно стать так же, как хорошим спортсменом — нужно постоянно тренироваться, находить на это время и мотивацию. На нашем мастер-классе вы узнаете, как организовать «спортзал» дома и, занимаясь в формате «свободное обучение», повышать свою квалификацию в любое свободное время. А еще вы узнаете про использование геймификации — игрового подхода к образованию в наших методических материалах. Это точно оторвет вас от любимого сериала!
источник
👉 @sysadminof
👍11
Цифровая энтропия: почему ваш сервер с аптаймом в 1000 дней — это ходячий мертвец, и как с этим жить
Привет, коллеги! Хочу рассказать одну историю. Был у нас в стойке один сервер. Назовем его «Феникс». Работал как часы, аптайм — 986 дней. Мы им гордились, ставили в пример новичкам, мол, вот как надо настраивать железо и софт. А потом пришло время планового техобслуживания в дата-центре. Простое выключение-включение. «Феникс» больше не взлетел. RAID-контроллер решил, что с него хватит, а заодно прихватил с собой пару дисков из массива. Вот тогда я впервые по-настояшему задумался о том, что цифровой мир подчиняется тем же жестоким законам, что и физический.
В теории, код и данные — это нечто вечное. Биты не ржавеют, скрипты не изнашиваются. Но на практике любая сложная система со временем деградирует. Это не просто отказ железа ; это медленный, неумолимый «постепенный скат в беспорядок» , который затрагивает всё: софт, конфигурации, данные. Это явление, которое я для себя называю цифровой энтропией, — наш с вами постоянный и невидимый враг. Наша работа — не просто строить системы, а вести непрерывную войну с их неизбежным распадом.
Эта статья — путешествие по самым темным уголкам цифровой энтропии. Мы заглянем в глаза её самым жутким проявлениям, поделимся байками из серверной и вооружимся как тактическими командами для экстренных случаев, так и стратегическими концепциями, которые помогут держать хаос в узде.
https://habr.com/ru/articles/950002/
👉 @sysadminof
Привет, коллеги! Хочу рассказать одну историю. Был у нас в стойке один сервер. Назовем его «Феникс». Работал как часы, аптайм — 986 дней. Мы им гордились, ставили в пример новичкам, мол, вот как надо настраивать железо и софт. А потом пришло время планового техобслуживания в дата-центре. Простое выключение-включение. «Феникс» больше не взлетел. RAID-контроллер решил, что с него хватит, а заодно прихватил с собой пару дисков из массива. Вот тогда я впервые по-настояшему задумался о том, что цифровой мир подчиняется тем же жестоким законам, что и физический.
В теории, код и данные — это нечто вечное. Биты не ржавеют, скрипты не изнашиваются. Но на практике любая сложная система со временем деградирует. Это не просто отказ железа ; это медленный, неумолимый «постепенный скат в беспорядок» , который затрагивает всё: софт, конфигурации, данные. Это явление, которое я для себя называю цифровой энтропией, — наш с вами постоянный и невидимый враг. Наша работа — не просто строить системы, а вести непрерывную войну с их неизбежным распадом.
Эта статья — путешествие по самым темным уголкам цифровой энтропии. Мы заглянем в глаза её самым жутким проявлениям, поделимся байками из серверной и вооружимся как тактическими командами для экстренных случаев, так и стратегическими концепциями, которые помогут держать хаос в узде.
https://habr.com/ru/articles/950002/
👉 @sysadminof
👍7❤1
Bash-Oneliner
Несколько лет назад я занимался биоинформатикой и был поражен тем, как однокомандные bash-команды могут быть намного быстрее, чем мои скучные скрипты. Учеба командам командной строки и написание скриптов помогло мне сэкономить много времени. В последние годы я занимаюсь облачными вычислениями и продолжаю записывать полезные команды здесь. Не все из них однострочные, но я стараюсь делать их краткими и быстрыми. В основном я использую Ubuntu, Amazon Linux, RedHat, Linux Mint, Mac и CentOS, прошу прощения, если команды не работают на вашей системе.
Этот блог будет посвящен простым bash-командам для парсинга данных и обслуживания систем Linux, которые я приобрел на работе и при сдаче экзамена LPIC. Прошу прощения за отсутствие подробных источников для всех команд, но, вероятно, они взяты из любимого Google и Stack Overflow.
Примеры:
Случайная генерация пароля (например, сгенерировать 5 паролей длиной по 13 символов каждый)
Случайный выбор 100 строк из файла
Случайный порядок (лотерея)
Вывести серию случайных чисел в диапазоне (например, перемешать числа от 0 до 100, затем случайным образом выбрать 15 из них)
Случайное число от 1 до 10
https://github.com/onceupon/Bash-Oneliner
👉 @sysadminof
Несколько лет назад я занимался биоинформатикой и был поражен тем, как однокомандные bash-команды могут быть намного быстрее, чем мои скучные скрипты. Учеба командам командной строки и написание скриптов помогло мне сэкономить много времени. В последние годы я занимаюсь облачными вычислениями и продолжаю записывать полезные команды здесь. Не все из них однострочные, но я стараюсь делать их краткими и быстрыми. В основном я использую Ubuntu, Amazon Linux, RedHat, Linux Mint, Mac и CentOS, прошу прощения, если команды не работают на вашей системе.
Этот блог будет посвящен простым bash-командам для парсинга данных и обслуживания систем Linux, которые я приобрел на работе и при сдаче экзамена LPIC. Прошу прощения за отсутствие подробных источников для всех команд, но, вероятно, они взяты из любимого Google и Stack Overflow.
Примеры:
Случайная генерация пароля (например, сгенерировать 5 паролей длиной по 13 символов каждый)
sudo apt install pwgen
pwgen 13 5
#sahcahS9dah4a xieXaiJaey7xa UuMeo0ma7eic9 Ahpah9see3zai acerae7Huigh7
Случайный выбор 100 строк из файла
shuf -n 100 filename
Случайный порядок (лотерея)
for i in a b c d e; do echo $i; done | shuf
Вывести серию случайных чисел в диапазоне (например, перемешать числа от 0 до 100, затем случайным образом выбрать 15 из них)
shuf -i 0-100 -n 15
Случайное число от 1 до 10
echo $(((RANDOM %10)+1))
https://github.com/onceupon/Bash-Oneliner
👉 @sysadminof
👍11❤2🥱1
Большинство пользователей Linux знакомы с командой
Эта функция может быть особенно полезна системным администраторам и разработчикам, которым необходимо поддерживать несколько версий конфигурационных файлов или кода.
Понимание версионности в
Команда
1.
2.
Основное резервное копирование
Чтобы создать простую резервную копию:
Эта команда создаёт резервную копию с суффиксом по умолчанию в виде тильды (~) и инкрементирующимся номером.
Резервное копирование с пользовательским суффиксом
Для более описательных резервных копий:
Эта команда создаёт резервные копии с суффиксом .bak и инкрементирующимся номером.
Практический пример: Резервное копирование конфигурации SSH
Предположим, вы часто обновляете конфигурационный файл SSH (/etc/ssh/sshd_config) для управления правилами доступа. Вот как можно поддерживать версионные резервные копии:
1. Создайте нумерованную резервную копию:
Это создаст резервные копии, такие как sshd_config.~1~, sshd_config.~2~ и т.д.
2. Создайте нумерованную резервную копию с пользовательским суффиксом:
Это создаст резервные копии, такие как sshd_config.bak.1, sshd_config.bak.2 и т.д.
Преимущества
- Поддерживает историю изменений файлов
- Предотвращает случайное перезаписывание важных файлов
- Предлагает простую систему версионного контроля без необходимости в сложных инструментах управления версиями
👉 @sysadminof
cp
для копирования файлов. Однако немногие знают о её встроенных возможностях версионного контроля.Эта функция может быть особенно полезна системным администраторам и разработчикам, которым необходимо поддерживать несколько версий конфигурационных файлов или кода.
Понимание версионности в
cp
Команда
cp
предлагает два ключевых параметра для версионного контроля:1.
--backup
: Создаёт резервную копию целевого файла перед его перезаписью.2.
--suffix
: Указывает пользовательский суффикс для резервной копии файла.Основное резервное копирование
Чтобы создать простую резервную копию:
/$ cp --backup=numbered /path/to/source/file /path/to/destination/
Эта команда создаёт резервную копию с суффиксом по умолчанию в виде тильды (~) и инкрементирующимся номером.
Резервное копирование с пользовательским суффиксом
Для более описательных резервных копий:
$ cp --backup=numbered --suffix=.bak /path/to/source/file /path/to/destination/
Эта команда создаёт резервные копии с суффиксом .bak и инкрементирующимся номером.
Практический пример: Резервное копирование конфигурации SSH
Предположим, вы часто обновляете конфигурационный файл SSH (/etc/ssh/sshd_config) для управления правилами доступа. Вот как можно поддерживать версионные резервные копии:
1. Создайте нумерованную резервную копию:
$ cp --backup=numbered /etc/ssh/sshd_config /data/backup/
Это создаст резервные копии, такие как sshd_config.~1~, sshd_config.~2~ и т.д.
2. Создайте нумерованную резервную копию с пользовательским суффиксом:
$ cp --backup=numbered --suffix=.bak /etc/ssh/sshd_config /data/backup/
Это создаст резервные копии, такие как sshd_config.bak.1, sshd_config.bak.2 и т.д.
Преимущества
- Поддерживает историю изменений файлов
- Предотвращает случайное перезаписывание важных файлов
- Предлагает простую систему версионного контроля без необходимости в сложных инструментах управления версиями
👉 @sysadminof
👍12❤3🔥1
Резервное сохранение в Linux
Использование утилит копирования
Возможности жестких ссылок
источник
Мы в MAX
👉 @sysadminof
Использование утилит копирования
Возможности жестких ссылок
источник
Мы в MAX
👉 @sysadminof
👍5🤬1
Media is too big
VIEW IN TELEGRAM
Настройка контейнеров на RouterOS | Docker + PiHole
Начиная с RouterOS v7.5 маршрутизаторы mikrotik получили возможность устанавливать контейнеры docker. В этом видео мы узнаем, как правильно подготовить маршрутизатор и как развернуть контейнер в RouterOS.
В маршрутизаторах mikrotik начального уровня оперативной памяти недостаточно для корректной работы контейнеров docker, мы будем устанавливать контейнер docker на виртуальный сервер с установленной системой RouterOS. Вы можете выбрать оптимальную конфигурацию виртуального сервера с предустановленной RouterOS.
источник
Мы в MAX
👉 @sysadminof
Начиная с RouterOS v7.5 маршрутизаторы mikrotik получили возможность устанавливать контейнеры docker. В этом видео мы узнаем, как правильно подготовить маршрутизатор и как развернуть контейнер в RouterOS.
В маршрутизаторах mikrotik начального уровня оперативной памяти недостаточно для корректной работы контейнеров docker, мы будем устанавливать контейнер docker на виртуальный сервер с установленной системой RouterOS. Вы можете выбрать оптимальную конфигурацию виртуального сервера с предустановленной RouterOS.
источник
Мы в MAX
👉 @sysadminof
👍6❤2
Forwarded from Bash Советы
Как быстро найти и удалить пустые директории
Иногда в системах с большим количеством файлов и директорий накапливаются пустые папки. Вот простой способ найти и удалить их одним махом:
🔍 Разбор:
-
-
-
-
🛡 Важно:
Перед удалением рекомендую посмотреть, что именно будет удалено:
👉@bash_srv
Иногда в системах с большим количеством файлов и директорий накапливаются пустые папки. Вот простой способ найти и удалить их одним махом:
find /path/to/search -type d -empty -delete
🔍 Разбор:
-
/path/to/search
— укажи директорию, где искать.-
-type d
— ищем только директории.-
-empty
— фильтруем только пустые.-
-delete
— удаляем найденные.🛡 Важно:
Перед удалением рекомендую посмотреть, что именно будет удалено:
find /path/to/search -type d -empty
👉@bash_srv
👍5
This media is not supported in your browser
VIEW IN TELEGRAM
Fuck - это великолепная утилита, которое исправляет ошибки в предыдущих консольных командах.
Примеры:
➜
➜
...
➜
➜
Установка
На Ubuntu / Mint установите The Fuck с помощью следующих команд:
На FreeBSD установите The Fuck с помощью следующих команд:
На macOS или Linux установить The Fuck можно через Homebrew:
https://github.com/nvbn/thefuck
Мы в MAX
👉 @sysadminof
Примеры:
➜
apt-get install vim
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
➜
fuck
sudo apt-get install vim [enter/↑/↓/ctrl+c]
[sudo] password for nvbn:
Reading package lists... Done
...
➜
git push
fatal: The current branch master has no upstream branch.
To push the current branch and set the remote as upstream, use
git push --set-upstream origin master
➜
fuck
git push --set-upstream origin master [enter/↑/↓/ctrl+c]
Counting objects: 9, done.
...
Установка
На Ubuntu / Mint установите The Fuck с помощью следующих команд:
sudo apt update
sudo apt install python3-dev python3-pip python3-setuptools
pip3 install thefuck --user
На FreeBSD установите The Fuck с помощью следующих команд:
pkg install thefuck
На macOS или Linux установить The Fuck можно через Homebrew:
brew install thefuck
https://github.com/nvbn/thefuck
Мы в MAX
👉 @sysadminof
👍11❤1