juniorlinux | Unsorted

Telegram-канал juniorlinux - 🐧 Linux Junior. Программирование под Linux.

3309

Канал для программистов работающих с Linux. Почти все Python девелоперы с нами ну и другие тоже подтянутся. По рекламе: @jannytg @anothertechrock

Subscribe to a channel

🐧 Linux Junior. Программирование под Linux.

👩‍💻 Команды zip и unzip

Давайте рассмотрим на примерах, как пользоваться командами zip и unzip для упаковки и распаковки архивов формата ZIP.

📦 Упаковка архивов

Создаём архивы с помощью команды zip. Например:

1. Упаковка одного файла:

zip archive.zip file.txt


2. Упаковка нескольких файлов:

zip archive.zip file1.txt file2.txt file3.txt


3. Упаковка папки с ее содержимым:

zip -r archive.zip folder


4. Упаковка папки с исключением определенных файлов:

zip -r archive.zip folder -x "folder/file3.txt"


📦 Распаковка архивов

Для того чтобы распаковать архив, используем команду unzip. Например:

1. Распаковка архива в текущую директорию:

unzip archive.zip


2. Распаковка архива в определенную директорию:

unzip archive.zip -d /path/to/directory


3. Просмотр содержимого архива без распаковки:

unzip -l archive.zip


4. Распаковка архива с фильтрацией определенных файлов:

unzip archive.zip "*.txt"

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

Вам поможет команда nohup.

Допустим, вы открыли какое-то приложение, введя команду в терминале. Если вы об этом забудете и закроете терминал, открытая через него программа тоже закроется. Чтобы этого не произошло, при введении команды нужно написать nohup.

Синтаксис:

nohup команда аргументы &

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

Завершить работу nohup можно при помощи kill.

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

🖥 Что такое SSH-алиас и как его настроить?

SSH-алиас (SSH alias)
- это короткое именованное обозначение, которое используется для подключения к удаленному серверу через SSH.

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

Для создания SSH-алиаса вам нужно отредактировать файл конфигурации SSH клиента, который обычно называется config и находится в директории ~/.ssh/

⚙️ Как это сделать:

1. Открываем файл конфига в любом текстовом редакторе, например:

vim ~/.ssh/config


2. Конфигурируем алиас. Например:

Host my_server
Hostname 34.151.201.192
User ghost23
Port 22


🟠Host - имя алиаса, то самое короткое именованное обозначение, по которому будет выполняться подключение

🟠Hostname - ip-адрес сервера, к которому будет выполняться подключение

🟠User - имя пользователя, под которым будем логиниться на сервере

🟠Port - номер порта, по которому будем подключаться

3. Сохраняем изменения.

✔️ Теперь, чтобы подключиться к серверу, достаточно ввести команду с алиасом:

ssh my_server


Кстати, таких алиасов может быть множество и это очень удобно!

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

Linux - сила, MacOS - могила!

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

Пришло время заглянуть под капот и научиться создавать драйвера на Linux!

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

🖐 Что ждет вас на курсе?

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

➡️ Что будет в программе курса?

1. Узнаем архитектуру ядра Linux и разберемся с драйверами.
2. Создадим простой модуль ядра: будем использовать printk(), сборку и макроопределения __init и __exit.
3. Связь модулей ядра с приложениями? Легко!
4. Работать с файлами символьных устройств — это просто!
5. Создадим драйверы для файловой системы /proc и научимся блокировать процессы при конкуренции.
6. Управление памятью в ядре Linux — прокачаемся!
7. Разработка и регистрация блочных устройств? Без проблем!
8. Конкуренция, семафоры, мьютексы — разберемся с примерами драйверов!
9. Типы данных в ядре и их использование — будем разбираться!

Вас ждет пробный урок

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

➡️ Регистрация на демо-доступ

Реклама. ООО "Инженеркатех" ИНН 9715483673 erid: 2W5zFGFH6oa

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

tailspin

Утилита, которая позволяет просматривать логи с подсветкой. Это удобно, красиво и сокращает много времени на анализ.

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

🔛 https://github.com/bensadeh/tailspin

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

Python и DevOps:
Ключ к автоматизации Linux


Автор: Ной Гифт
Год издания: 2022

#python #devops #ru

Скачать книгу

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

💡 Быстрый совет по Linux

При работе в редакторе nano нажмите

Alt+#


чтобы отобразить номера строк

👉 🐧 Linux Junior | #linux

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

Руководство по командам Linux

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

Также содержит сочетания клавиш для работы в терминале.

Полезно 👍

👉 🐧 Linux Junior | #linux

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

rm имя_файла — удалить файл

rmdir имя_директории — удалить пустую директорию
rm -r имя_директории — удалить директорию

shred -uv имя_файла — удаление файла для параноиков (без опции -u просто перезаписывает содержимое файла мусором)

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

⚙️ Управление процессами в Linux: kill, pkill, htop

Иногда процессы зависают или потребляют слишком много ресурсов. В Linux есть несколько удобных инструментов для их управления.

📌 Основные команды:

🟢 kill – завершение процесса по PID:
ps aux | grep firefox # Найти PID процесса
kill 12345 # Завершить процесс


🟢 pkill – завершение по имени процесса:
pkill -9 firefox # Принудительно завершить Firefox

🟢 htop – интерактивный мониторинг:

htop  # Открыть интерфейс для управления процессами  


🗣 Эти инструменты помогут эффективно управлять процессами и оптимизировать работу системы.

🐧 Linux Junior | #linux

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

Друзья, мы возобновляем постоянный постинг постов.

Напишите темы, которые интересны вам. Так же добавим много инфы по DevOps.

Поставьте лайк/дизлайк этому посту по DevOps туториалам.

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

Крутая программа для тех, кто уже работает с Linux и хочет погрузиться DevOps.

В двух словах: программа на 2 месяца, ты учишься, тебе еще и платят. Начинка: начинающий и продвинутый курс по Linux, погружение в DevOps. Обучение с практикой, лабораторными и под контролем экспертов из K2 Сloud.

Подробнее можно узнать на сайте

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

Наткнулись на промо новой облачной конференции. Пошли подробнее узнавать, кто её организует — оказалось, это создатель первого в России публичного облака собственной разработки.

У ребят планируется много технических докладов: от обзоров новых типов сетевых дисков до приоритетов бизнеса в области ИТ — звучит интересно.

Подробнее можете посмотреть тут

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

Пришло время заглянуть под капот и научиться создавать драйвера на Linux!

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

🖐 Что ждет вас на курсе?

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

➡️ Что будет в программе курса?

1. Узнаем архитектуру ядра Linux и разберемся с драйверами.
2. Создадим простой модуль ядра: будем использовать printk(), сборку и макроопределения __init и __exit.
3. Связь модулей ядра с приложениями? Легко!
4. Работать с файлами символьных устройств — это просто!
5. Создадим драйверы для файловой системы /proc и научимся блокировать процессы при конкуренции.
6. Управление памятью в ядре Linux — прокачаемся!
7. Разработка и регистрация блочных устройств? Без проблем!
8. Конкуренция, семафоры, мьютексы — разберемся с примерами драйверов!
9. Типы данных в ядре и их использование — будем разбираться!

Вас ждет пробный урок

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

➡️ Регистрация на демо-доступ

Реклама. ООО "Инженеркатех" ИНН 9715483673

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

У K2 Cloud скоро будет митап о карьере в Linux

Эксперты компании и приглашенный гость — блогер Константин Дипеж (DeusOps) — обсудят профессиональный путь Linux-специалиста.

Среди тем: как безболезненно «вкатиться» в Linux, с чем откликаться на вакансию, какие вопросы задают на техническом интервью и как расти после оффера. Полезный контент для начинающих спецов, которые хотят развиваться в DevOps и не только.

Встреча пройдет онлайн, 19 марта в 18:00 (msk). Подробности и регистрация по ссылке

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

Как запустить процесс, который не прервется при закрытии терминала?

Ответ через час.

#вопросы

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

Топ 7 книг по Linux.
Скачивайте и читайте.

Хакинг на Linux
Автор: Колисниченко Д. Н.

Kali Linux Penetration Testing Bible
Автор: Gus Khawaja

Efficient Linux at the Command Line
Автор: Daniel J. Barrett

Penetration Testing with Kali Linux 2.0

Mastering Kali Linux for Advanced Penetration Testing
Автор: Vijay Kumar Velu

Linux Bible from Scratch
Автор: Christopher Negus

How Linux Works
Автор: Brian Ward

#linux #подборка

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

Как очистить экран терминала?

Чтобы очистить экран терминала, введите команду clear. Или просто нажмите Ctrl+L.

#вопросы

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

Linux и Go эффективное
низкоуровневое
программирование

Автор:
Олег Цилюрик
Год издания:
2024

#go #ru #2O24 #linux #книга

🐧 Скачать книгу 🐧

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

👩‍💻 Команда find

Команда find позволяет выполнять поиск по различным критериям, таким как имя файла, размер, дата изменения и другие параметры. Вы можете указать точный путь или использовать джокеры для более гибкого поиска.

Некоторые примеры использования:

1. Найти все файлы с определенным расширением в указанной директории:

find /путь/к/директории -name "*.расширение"

2. Найти файлы, измененные в течении последних n дней:

find /путь/к/директории -mtime -n

3. Найти файлы, у которых размер больше n Кбайт:

find /путь/к/директории -size +nk


👉 🐧 Linux Junior | #linux

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

Подстановка вывода команды: $()

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

Предположим, у вас есть несколько тысяч текстовых файлов c песнями. Каждый файл содержит название песни, ее текст и имя исполнителя:

Название: Зеркала
Исполнитель: Лепс
Острые углы, нервы, суета


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

$ grep -l "Лепс" *.txt
song1.txt
song2.txt


Затем переместить каждый файл в необходимый каталог:

$ mkdir leps
$ mv song1.txt leps
$ mv song2.txt leps


Чет неудобно, так? Было бы неплохо сказать оболочке: «Перемести все файлы, содержащие строку Лепс, в каталог leps».

Для этого нужно забрать то, что нам выдала команда grep -l и передать результат в качестве списка аргументов для mv:

$ mv $(grep -l "Лепс" *.txt) leps


Синтаксис $(команда) выполняет выражение в круглых скобках и заменяет вставку его выводом.

Таким образом, grep -l подменяется подходящими под условие именами файлов. Результат использования $() в примере выше аналогичен:

$ mv song1.txt song2.txt leps


В сценариях оболочки подстановка бывает полезна для сохранения вывода команды в переменной:

переменная=$(команда)


Например, напишем простенький скрипт, который поможет нам узнать, содержит ли текущая директория файлы:

status=$(ls ./ 2>/dev/null | wc -l)

if [ "$status" -gt 0 ]; then
echo "В директории есть $status файлов"
else
echo "Директория пуста или не существует"
fi


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


$ chmod +x script.sh
$ ./script.sh
В директории есть 66 файлов


Для чего бывает полезно брать $() в кавычки?

Есть несколько основных кейсов, когда следует использовать "$()" вместо $().

Во-первых, если вывод команды содержит пробелы, он будет разбит на отдельные слова.

Представим, что стоит задача определить для текущей директории специальные права.

Есть момент - имя каталога состоит из нескольких слов, разделенных пробелами "photo and video":

$ pwd
$ /home/xoadmin/photo and video
$ chmod 777 $(pwd)


После подстановки оболочка интерпретирует это как попытку применить chmod к трём разным объектам: "/home/xoadmin/photo", "and", и "video". Это, вероятно, приведёт к ошибке:

chmod: cannot access '/home/xoadmin/photo': No such file or directory

chmod: cannot access 'and': No such file or directory

chmod: cannot access 'video': No such file or directory


Чтобы вывод pwd воспринимался как единое целое, следует заключить оператор в кавычки:

$ chmod 777 "$(pwd)"


Во-вторых, без кавычек символы перевода строки могут быть удалены при выводе через echo:

$ echo $(ls)
adduser.conf alsa alternatives apache2 apg.conf apparmor


Если требуется сохранить четкую структуру текста, содержащего спецсимволы, следует использовать $():

$ echo "$(ls)"
adduser.conf
alsa
alternatives

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

📕Открытый урок о функционале веб-серверов Angie и Nginx для системных администраторов Linux и веб-разработчиков.

На открытом уроке 27 февраля в 19:00 мск мы погрузимся в веб-серверами.

📗В результате вы:
- Узнаете основное назначение форка популярного веб-сервера Nginx;
- Поймете, как появлялся и развивается Angie;
- Определите основные отличия Angie от Nginx и разберетесь в преимуществах перехода с одного веб-сервера на другой.

Спикер Николай Лавлинский — эксперт веб-разработк (15+ лет), опытный преподаватель (10+ лет), занимался техническим руководством и оптимизацией клиентской и серверной производительности веб-приложений в более чем 100 проектах.

👉 Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://otus.pw/fIXG/

📙 Все участники открытого урока получат скидку на курс "Администрирование Nginx/Angie"

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

🎮 Настрой свой автостарт в Linux c помощью зажигания!

Ignition — это минималистичное приложение для редактирования записей автозапуска в дистрибутивах Linux, совместимых с Freedesktop.

Что предлагает данная программа:

— Просмотр приложения, находящихся в автозагрузке;
— Создание записей автозагрузки для установленных приложений;
— Создание записей автозагрузки для сохранённых скриптов;
— Создание записей автозагрузки для произвольных команд.

😀 Устанавливать легко с репозитория:

su -
apt-get update
apt-get install ignition-adw


👍 Устанавливать легко с Flathub:
flatpak install flathub io.github.flattool.Ignition


🔗 Исходный код

🐧 Linux Junior | #linux

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

Как удалить файл/директорию?

Ответ сегодня

#вопросы

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

🐧 Linux Junior | #linux

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

❗️Шорткаты: Alt+F и Alt+B

Перемещение по набранной строке на одно слово вперед и назад. Похоже на Ctrl+F и Ctrl+B, при использовании которых можно перемещаться на символ вперед или назад.

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

❗️Шорткаты: Alt+D

Удаляет слово справа от курсора. Работает аналогично Ctrl+D, но удаляет не символ, а слово.

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

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

Первый канал по Docker. Поискав в телеграме каналы по docker и не найдя ничего, я решил обьединить контент в одном месте.

По содержанию в канале:
- вопросы с собеседований
- команды докера
- книги
- тесты для проверки ваших знаний
- обучающие видео
- чат для обсуждения

Подписывайтесь, комментируйте и предлагайте свой контент в нашем сообществе: @justdocker

Читать полностью…

🐧 Linux Junior. Программирование под Linux.

Из этой статьи вы узнаете о назначении и основных сценариях использования директории lost+found в Linux.

Читать статью

Читать полностью…
Subscribe to a channel