Linux для чайника – Telegram
Linux для чайника
20K subscribers
89 photos
4 files
80 links
Linux
- Разбор утилит / инструментов
- Новости / факты
- Опросы для проверки знаний, навыков
и многое другое.

Только по вопросам сотрудничества: @altmainf

Регистрация в перечне РКН https://clck.ru/3EpL9L
Download Telegram
Распространенные инструменты управления пакетам

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

□ dpkg. -- Низкоуровневый инструмент управления пакетами, используемый в качестве основы семейства инструментов PMS (Система управления пакетами) на базе дистрибутива Debian. Может применяться непосредственно для установки, управления и удаления пакетов ПО. Тем не менее его функциональность ограниченна. Например, инструмент dpkg не может загружать программные пакеты из хранилищ.

□ rpm. -- Еще один низкоуровневый инструмент управления пакетами, функции которого аналогичны функциям инструмента dpkg . Тем не менее он используется в качестве основы системы управления пакетами Red Hat Linux. Несмотря на то что вы можете задействовать инструмент rpm для управления пакетами, для этой цели лучше применить утилиту PMS более высокого уровня.

□ apt - get. -- Это ТПИ (Текстовый пользовательский интерфейс) -инструмент для PMS Debian. С помощью apt - get можно установить пакет ПО из хранилища и удалить его из локальной системы Linux. Кроме того, вы можете обновить отдельные пакеты, все пакеты в вашей системе или весь дистрибутив. Тем не менее вам придется использовать ТПИ-инструмент apt - cache для получения информации, касающейся программных пакетов.

□ yum. -- Это ТПИ-инструмент для PMS Red Hat. Применяется к таким дистрибутивам, как Red Hat Enterprise Linux (RHEL), Fedora и CentOS. С помощью инструмента yum вы можете устанавливать программные пакеты из хранилища, удалять их из локальной системы Linux, обновлять и т. д. Кроме того, вы можете использовать данный инструмент для получения информации, касающейся программных пакетов и управления ими, например для отображения списка сконфигурированных хранилищ PMS.
Интересные факты о Linux

-- Код ядра написан на языке программирования C с некоторыми расширениями GCC и ассемблере.

-- 17 сентября 1991 вышел Linux версии 0.01, который содержал всего 10’239 строк программного кода.

-- 9 мая 1996 в качестве символа Linux был выбран пингвин Tux. Его отличают желтые лапы и клюв.

-- Релиз Linux 1.0 состоялся 14 марта 1994 года, он содержал более 176’250 строк программного кода.

-- В 2011 году вышел релиз релиз Linux 3.0, который насчитывал уже более 14 млн. строк программного кода.

-- Linux стала первой операционной системой, в которой появились драйвера для поддержки USB 3.0. Код драйвера USB 3.0 впервые был включен в ядро 2.6.31.

-- Linux применяется в Голливуде. Например, визуальные эффекты для фильмов Титаник и Аватар были разработаны с использованием открытого ПО, работающего на Linux.

-- Linux широко используется в космической отрасли.

-- Более 500 самых быстрых суперкомпьютеров в мире работают на Linux.

-- В интервью изданию Wired Линус Торвальдс рассказал, что примерно в 2000 году Стив Джобс предложил ему место в Apple для работы над ядром на базе Unix и настаивал на том, чтобы Линус прекратил работу над Linux. Линус Торвальдс, конечно же отказался от предложения.
[ pingvinus.ru ]
htop

htop — продвинутый системный монитор для Linux. Он был предназначен заменить стандартную программу top. Htop показывает динамический список системных процессов, список обычно сортируется по использованию CPU. Htop, в отличие от top, показывает все процессы в системе. Также показывает время непрерывной работы, использование процессоров и памяти.
Htop часто применяется в тех случаях, когда информации, предоставляемой утилитой top, недостаточно, например, при поиске утечек памяти в процессах. Htop написан на языке Си и использует для отображения библиотеку Ncurses.

Установка: sudo apt-get install htop
После установки запускаем командой htop

PID - идентификатор процесса.
USER - владелец процесса.
PRI - текущий приоритет (влияет на процессорное время, отводимое процессу, значение по умолчанию - 20; чем меньше приоритет, тем больше времени отводится процессу => он выполняется быстрее).
VIRT - размер виртуальной памяти, выделенной под процесс.
CPU% - использование процессора в процентном отношении.
MEM% - использование процессом памяти в процентном отношении.
TIME+ - время работы процесса.
Command - указывает на команду, которой был запущен процесс.

Управление производится с помощью функциональных клавиш (F1 - F10):
F1 - справка;
F2 - настройки;
F3 - поиск процесса;
F4 - сортировка списка процессов (от большего к меньшему или от меньшего к большему);
F5 - устанавливает древовидное отображение (корни - родительские процессы, а листья - дочерние) и наоборот;
F6 - открывает панель с выбором параметра сортировки процессов;
F7 - увеличить приоритет выполнения текущего процесса (реализовано вычитанием единицы из текущего значения nice);
F8 - уменьшить приоритет выполнения текущего процесса. Добавляет единицу к текущему значению nice (увеличение или уменьшение приоритета процесса доступно только суперпользователям).
F9 - убить процесс (ИСПОЛЬЗУЙТЕ ТОЛЬКО ТОГДА, КОГДА ТОЧНО ЗНАЕТЕ, ЧТО ДЕЛАЕТЕ)
F10 - выйти из программы
Список пользователей системы хранится в файле
Anonymous Quiz
57%
/etc/users
33%
/etc/passwd
6%
/root/passwd
4%
/system/passwd
60 лучших программ для Linux

От автора:
"В этой статье я постараюсь дать обзор лучших на мой взгляд программ для Linux. Естественно, высказываю только свое мнение, поэтому на какую-то суперобъективность не претендую. Сразу скажу, что это не какой-то абстрактный список, взятый неизвестно откуда, а программы, которые испытаны лично мной и которые я действительно считаю одними из лучших в своем роде, программы, которые я реально использую в повседневной работе. Этот список я составлял несколько лет в процессе работы и подбора софта, а сейчас просто привел его в надлежащий вид для того, чтобы поделиться с общественностью."
При установке ОС Linux рекомендуется выбрать файловую систему:
Anonymous Quiz
10%
FAT16 либо FAT32
9%
NTFS
72%
journalized ext3 FS
9%
любую из перечисленных
Пробелы в именах файлов

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

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

В оболочке и в сценариях можно указывать имена файлов с пробелами, чтобы держать их части вместе. Например, команда
$ less "Му spacey file"
считает файл Му spacey file в качестве единственного аргумента команды less. Также можно избежать отдельных пробелов с помощью обратной косой черты:
$ less Му\ spacey\ file

Функция завершения имени файла большинства оболочек (зачастую привязанная к клавише <Таb>) обычно автоматически добавляет обратную косую черту. Когда вы пишете сценарии, полезным оружием, о котором нужно знать, является опция -print0. В сочетании с параметром xargs -0 она делает комбинацию find /xargs корректной, независимо от пробелов, содержащихся\ в именах файлов. Например, команда
$ find / home-type f -size + 1М -print0 1 xarqs -0 ls -1
выводит на экран длинный список всех файлов в каталоге /home размером более одного мегабайта.
Кое-что про Ubuntu

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

Симпатичный интерфейс, бесплатное ПО и мощная база в виде Debian OS сделали Ubuntu хитом среди Linux-дистрибутивов.
Еще один важный плюс Ubuntu – ее многогранность. Существует несколько редакций системы с различными графическими оболочками:

• Ubuntu – классический вариант с рабочим столом GNOME 3 и вкраплениями наработок под названием Unity.
• Kubuntu – тот же набор программ, только в качестве графической оболочки используется KDE.
• Xubuntu – аналогичный дистрибутив с минималистичным рабочим столом XFCE.
• Lubuntu – примерно то же, что и Xubuntu, только с поддержкой ПО, разработанного для KDE.
• Ubuntu LTS – стандартная Ubuntu с увеличенным циклом поддержки со стороны разработчиков.
• Ubuntu Server – операционная система для серверов.
• Ubuntu Studio – вариант для тех, кто занимается творчеством.

Как видите, есть из чего выбирать. Найдется вариант под любые задачи. Все ОС по умолчанию включают в себя необходимые для комфортной жизни проприетарные плагины, драйверы и кодеки. В этом плане Ubuntu похожа на Manjaro.
[timeweb.com]
Определение программного обеспечения с открытым исходным кодом

Определение термина «программное обеспечение с открытым исходным кодом» можно найти на сайте www.opensource.org/definition. Оно соответствует десяти принципам.

■ Свободное распространение.
Лицензия должна разрешать распространение, в том числе в качестве части более крупной работы.

■ Доступность исходного кода.
Автор должен сделать исходный код доступным и разрешить распространение исходного кода и (если это применимо) двоичного кода.

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

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

■ Никакой дискриминации в отношении лиц или группы лиц.
Лицензия не должна допускать дискриминацию в отношении любого лица или группы лиц.

■ Никакой дискриминации в отношении сфер деятельности.
Лицензия не должна запрещать использование программы в какой-либо области, например в бизнесе или при проведении генетических исследований.

■ Автоматическое распространение лицензий.
Лицензия должна применяться к любому, кто получает программу, не требуя отдельного соглашения.

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

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

■ Технологическая нейтральность.
Лицензия не должна быть ограничена конкретными технологиями или интерфейсами.
Оболочка bash

Командный интерпретатор bash (Bourne Again Shell) был разработан фондом свободного программного обеспечения (Free Software Foundation, FSF). За основу была взята оболочка sh. Оболочка стала очень популярной и сейчас используется по умолчанию во всех дистрибутивах Linux. Оболочка bash может использоваться также и для запуска сценариев sh, поэтому sh во многих системах уже не устанавливается, а файл /bin/sh — это ссылка на /bin/bash. С точки зрения пользователей bash намного удобнее, чем ksh. Вы можете легко редактировать командную строку, просматривать историю команд, создавать псевдонимы команд, создавать переменные окружения и использовать их в собственных сценариях. Как и в csh, в bash есть сценарии, которые вызываются при запуске оболочки и при выходе из нее. Синтаксис bash довольно прост, поэтому бóльшая часть сценариев, разрабатываемых в Linux, пишется именно на bash.
Основные команды для работы с файлами в Linux

touch <файл> Создает пустой файл

cat <файл> Просмотр текстового файла

tac <файл> Вывод содержимого текстового файла в обратном порядке, т. е. сначала выводится последняя строка, потом предпоследняя и т. д.

ср <файл1> <файл2> Копирует файл <файл1> в файл <файл2>. Если <файл2> существует, программа попросит разрешение на его перезапись

mv <файл1> <файл2> Перемещает файл <файл1> в файл <файл2>. Эту же команду можно использовать и для переименования файла

rm <файл> Удаляет файл

locate <файл> Производит быстрый поиск файла

which <программа> Выводит каталог, в котором находится программа, если она вообще установлена. Поиск производится в каталогах, указанных в переменной окружения path (это путь поиска программ)

less <файл> Используется для удобного просмотра файла с возможностью скроллинга (постраничной прокрутки)
Создание ссылок

Для создания ссылок служит команда ln:

ln file.txt linkl
ln -s file.txt link2

Первая команда создает жесткую ссылку link1, ссылающуюся на текстовый файл file.txt.
Вторая команда создает символическую ссылку link2, которая ссылается на этот же текстовый файл file.txt.

Модифицируя ссылку (все равно какую: linkl или link2), вы автоматически модифицируете исходный файл file.txt.
Для поиска файлов в Linux служит команда find. Это довольно сильная утилита со сложным синтаксисом.

Мощность команды find заключается во множестве самых разных параметров поиска, которые из-за их количества не так-то просто запомнить. К тому же find может выполнять операции над найденными файлами. Например, вы можете найти временные файлы и сразу удалить их.

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

найти файлы с именем a.out (точнее, в имени которых содержится строка «a.out»), поиск начать с корневого каталога (/):
find / -name a.out

найти файлы по маске *. txt:
find / -name '*.txt'

найти файлы нулевого размера, поиск начать с текущего каталога (.):
find . -size 0с
Кстати, для поиска пустых файлов намного проще использовать параметр -empty:
find . -empty

найти файлы, размер которых от 100 до 150 Мбайт, поиск производить в домашнем каталоге и всех его подкаталогах:
find ~ -size +100М -size -150М

найти все временные файлы и удалить их (для каждого найденного файла будет запущена команда rm):
find / -name *.tmp -ok rm {} \

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

Приводы для чтения/записи CD/DVD называются /dev/scdN, где N— номер устройства. Если у вас только один привод CD/DVD, то его имя будет /dev/scd0.

Монтирование привода для чтения оптических дисков осуществляется командой:
# mount /dev/scd0 /mnt/cdrom

После этого обратиться к файлам, записанным на диске, можно будет через каталог /mnt/cdrom.
(этот каталог должен существовать).
Ubuntu — уникальный дистрибутив. Еще вчера все прекрасно работало, а сегодня он не загружается. Или еще вчера я устанавливал пакеты, а сегодня они не устанавливаются, и я получаю сообщение:

Е: Невозможно получить некоторые архивы, вероятно надо запустить apt-get update или попытаться повторить запуск с ключом —fix-missing

Следуя этой рекомендации, при любых недоразумениях с установкой пакетов нужно использовать команду:

sudo apt-get update

И после ее выполнения большая часть ошибок, связанных с установкой пакетов в Ubuntu, будет устранена.