Получи случайную криптовалюту за регистрацию!

Linux для чайника

Логотип телеграм канала @os_linux_ru — Linux для чайника L
Логотип телеграм канала @os_linux_ru — Linux для чайника
Адрес канала: @os_linux_ru
Категории: Технологии
Язык: Русский
Количество подписчиков: 20.22K
Описание канала:

Linux
- Разбор утилит / инструментов
- Новости / факты
- Опросы для проверки знаний, навыков
и многое другое.
Только по вопросам сотрудничества: @altmainf
Уважаемый менеджер: @altaiface

Рейтинги и Отзывы

3.00

3 отзыва

Оценить канал os_linux_ru и оставить отзыв — могут только зарегестрированные пользователи. Все отзывы проходят модерацию.

5 звезд

1

4 звезд

0

3 звезд

1

2 звезд

0

1 звезд

1


Последние сообщения 48

2022-05-11 17:01:10 Смотрим три средних значения загрузки в дополнение к тому, как долго работает ядро, запустив:

uptime

Получаем что-то вроде:
22:30:28 up 4 days, 13:07, 1 user, load average: 0,07, 0,02, 0,00

Три числа, выделенных жирным шрифтом, являются средними значениями загрузки за последние 1, 5 и 15 минут соответственно.
1 user - количество залогиненных пользователей.

По отдельности выводим время запуска системы:
uptime -s

Либо только время работы системы
uptime -p
6.3K views14:01
Открыть/Комментировать
2022-05-11 12:02:20 Много лет назад на одном популярном англоязычном форуме, ныне покойном, предложили гениально простой способ нагреть проц и посчитать его скорость в попугаях.

time echo "scale=5000; 4*a(1)" | bc -l

bc - Си-подобный интерактивный интерпретатор.
Подгружаем в bc математическую библиотеку опцией -l и просим выдать число π с точностью 5000 знаков после запятой.

Мой результат вычисления на  AMD EPYC 7B12 2.3GHz
выдал:

real 0m0.002s
user 0m0.001s
sys 0m0.001s
6.4K views09:02
Открыть/Комментировать
2022-05-10 17:01:09 Как узнать, является ли порт хорошо известным? Начать стоит с просмотра файла services.

cat /etc/services | less

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

ssh 22/tcp # SSH Remote Login Protocol
smtp 25/tcp
domain 53/udp

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

В дополнение к файлу /etc/services существует онлайн-реестр портов, который регулируется документом RFC6335 о сетевых стандартах.
[ http://www.iana.org/ ]
6.5K views14:01
Открыть/Комментировать
2022-05-10 12:30:47 GRUB - программа управления процессом загрузки.

Для большинства дистрибутивов Linux - является загрузчиком по умолчанию. (Самостоятельный FreeBSD тебе сейчас машет ручкой..).

Есть две основные версии: GRUB Legacy, который давно уже не развивается (но какое-то время все же получал обновления в виде патчей безопасности) и GRUB 2, который является текущим стандартом.

Обе версии GRUB работают схожим образом ведь основная задача любого из GRUB — загрузить ядро Linux в память и запустить его.

К тому же, GRUB 2 имеет тот же загрузочный функционал, что и GRUB Legacy, но обладает значительной гибкостью на предзагрузочном этапе и нововведениями: от переносимости на разные архитектуры до поддержки скриптов.
6.5K views09:30
Открыть/Комментировать
2022-05-09 17:01:27 Признаки того, когда лучше отказаться от скриптов:

Список может быть бесконечным и очевидным, но мало ли ..

- Важна скорость/производительность.

- Скрипт содержит более нескольких сотен строк.

- Нужны структуры данных сложнее обычных массивов.

- Задолбало заниматься непотребствами с кавычками и экранированием.

- Необходимо обрабатывать/изменять много строковых переменных.

- Нет необходимости вызывать сторонние программы и нет необходимости в пайпах.
6.6K views14:01
Открыть/Комментировать
2022-05-09 12:01:16 Перезапись существующего файла оператором редиректа (>) может стать катастрофой, если у вас нет резервной копии.
(Знакомо?)

Для защиты от несчастных случаев поможет опция:
set -C
Которая запрещает такую перезапись. Теперь
echo какой_то_текст > file
Выдаст ошибку: bash: file: cannot overwrite existing file

В случае необходимости можно обойти защиту с помощью оператора >|

Опция set -С отменится при выходе из консоли.
(Как отменить опцию в текущей сессии, честно, понятия не имею ..)
6.5K views09:01
Открыть/Комментировать
2022-05-08 16:35:04 Bash — довольно развитый командный интерпретатор, поддерживающий кучу разных настроек. Причем из этих настроек можно получить гораздо больше профита, чем из настроек поведения терминала.

Список всех возможных опций можно посмотреть командой: shopt -p

Cамые интересные из них:
autocd — если эта опция включена, то можно просто написать путь к каталогу (опустив команду cd), чтобы в него переместиться;

cdspell — bash будет пытаться исправлять простые опечатки (например, /ect/init.d вместо /etc/init.d) в аргументах команды cd;

checkjobs — не дает выйти из консоли, пока в ней есть выполняющиеся задания;

cmdhist — объединение многострочных команд в одну строку так, чтобы тебе было проще искать их в истории;

dirspell — исправление небольших ошибок в написании имени директории при автодополнении;

globstar — позволит использовать конструкцию вида **, обозначающую «все файлы, начиная с текущего каталога, рекурсивно»;
Очень удобный новый wildchar — например, данная конструкция отобразит все mp3 в текущем и вложенных каталогах:
ls **/*.mp3
Гораздо удобнее, чем:
find ./ -name "*.mp3" -type f -print


Устанавливаются опции следующим образом:

shopt -s autocd cdspell checkjobs cmdhist dirspell globstar
6.8K views13:35
Открыть/Комментировать
2022-05-08 12:01:04
Одна из самых удобных функций, имеющихся в bash — автодополнение команд по клавише . К этому быстро привыкаешь, помогает во многих моментах.

Для VSCode есть возможность дополнять аргументы для команд, реализуется это при помощи расширения Shell Completion.
6.6K views09:01
Открыть/Комментировать
2022-05-05 10:30:20 Упрощенная схема процесса загрузки.

1. BIOS или прошивка загружают и запускают загрузчик системы.

2. Загрузчик системы отыскивает образ ядра на диске, загружает его в память и запускает.

3. Ядро выполняет инициализацию устройств и драйверов.

4. Ядро монтирует корневую файловую систему.

5. Ядро запускает команду init с идентификатором процесса 1. Эта точка является началом пространства пользователя.

6. Команда init приводит в действие остальные системные процессы.

7. В определенный момент команда init запускает процесс, позволяющий вам войти в систему. Обычно это происходит в конце или незадолго до окончания загрузки системы
2.0K views07:30
Открыть/Комментировать
2022-05-04 19:00:56
Каналы от Senior разработчиков

Хотите быстро выучить Python, Java или другой язык программирования? Подписывайтесь на каналы от опытных разработчиков, где они объясняют код и учат программировать.

Канал Senior Python разработчика:
@seniorpy

Канал Java разработчика:
@seniorjavist

Канал C++ разработчика:
@seniorcpp

Канал JavaScript разработчика:
@senior_front

Заметки программиста:
@progersbooks
1.1K views16:00
Открыть/Комментировать