LINUX.ORG.RU

Книга «Библия Linux. 10-е издание» (Негус К.)

 , ,

Книга «Библия Linux. 10-е издание» (Негус К.)

5

1

Издательский дом «Питер» предлагает вашему вниманию еще одну книгу — «Библия Linux. 10-е издание», уже доступную для заказа на официальном сайте.

По промокоду LinuxORG действует скидка 30 % на все книги издательства.

Если станет доступна электронная версия этой книги, то при покупке физической копии вы получите ее в подарок.

«Библия Linux» рассказывает, как:

  • приступить к работе с Linux;

  • защитить системы и сети с Linux;

  • реализовать автоматизацию дата-центра с помощью Ansible;

  • упростить системное администрирование с помощью Cockpit;

  • получить доступ к командной оболочке и писать простые скрипты;

  • изучить контейнеризацию с применением Docker и Podman и, в частности, оркестрацию контейнеров с использованием Kubernetes и OpenShift;

  • конфигурировать различные серверы и устранять распространенные проблемы;

  • создавать виртуальные машины Linux, работающие на гипервизорах и облачных платформах.

Ниже представлен отрывок из книги.

Управление активными процессами

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

Из оболочки можно запускать процессы, а затем приостанавливать, останавливать или завершать их. Их можно также выполнять в обычном или фоновом режимах. В этой главе описываются команды ps, top, kill, jobs и др., которые позволяют перечислять процессы и управлять ими.

Что такое процесс

Процесс — это запущенный экземпляр команды. Например, в системе может быть одна команда vi. Однако если с vi работают одновременно 15 пользователей, то она представлена 15 различными запущенными процессами.

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

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

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

ПРИМЕЧАНИЕ Команды, отображающие информацию о запущенных процессах, получают бóльшую часть этой информации в виде необработанных данных, хранящихся в файловой системе /proc. Каждый процесс хранит свою информацию в подкаталоге /proc с именем идентификатора этого процесса. Часть необработанных данных можно просмотреть, отобразив содержимое файлов в одном из этих каталогов (используя команды cat или less).

Перечисление процессов

Команда ps — одна из первых и наиболее распространенных команд для перечисления процессов, запущенных в данный момент в системе. Linux-версия команды ps содержит множество параметров из устаревших систем UNIX и BSD, часть из которых конфликтуют и реализуются нестандартными способами. На справочной странице ps представлена информация об этих параметрах.

Команда top, которая также перечисляет процессы, больше ориентирована на экран и может служить для изменения статуса процессов. В интерфейсе GNOME можно использовать утилиту System Monitor (Системный монитор), которая отслеживает процессы в системе и представляет информацию с помощью графических средств. Эти команды будут описаны в следующих разделах.

Перечисление процессов с помощью команды ps

Наиболее распространенная команда для проверки запущенных процессов — это ps. Она позволяет посмотреть, какие программы запущены, какие ресурсы они используют и кем были запущены. Пример работы команды ps:

$ ps u
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
jake 2147 0.0 0.7 1836 1020 tty1 S+ 14:50 0:00 -bash
jake 2310 0.0 0.7 2592 912 tty1 R+ 18:22 0:00 ps u 

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

В примере в этом сеансе оболочки событий немного. Первый процесс показывает, что пользователь по имени jake открыл оболочку bash после входа в систему. Следующий процесс показывает, что jake выполнил команду ps u. Терминал tty1 используется для входа в систему. Столбец STAT отображает статус процесса, указывая, запущен ли процесс (R) или находится в спящем режиме (S).

ПРИМЕЧАНИЕ В столбце STAT могут отображаться несколько значений. Например, знак плюс (+) указывает, что процесс связан с операциями, протекающими в обычном режиме.

В столбце USER отображается имя пользователя, запустившего процесс. У каждого процесса есть номер, называемый идентификатором процесса, или PID. Задействуйте PID, если нужно убить процесс или отправить другой сигнал процессу. Столбцы CPU и MEM показывают процентное соотношение работы процессора и оперативной памяти, которые использует текущий процесс.

VSZ (виртуальный размер процесса) показывает размер процесса изображения (в килобайтах), а RSS (размер страниц памяти) — размер программы в памяти. Значения VSZ и RSS могут различаться, потому что VSZ — это объем памяти, выделенный для процесса, тогда как RSS — это объем, который используется фактически. RSS-память представляет собой физическую незаменяемую память.

Столбец TART показывает время начала выполнения процесса, а TIM — совокупное используемое системное время. (Большинство команд потребляет мало процессорного времени, для тех, которые не использовали и секунды, время отражается как 0:00.)

Многие запущенные на компьютере процессы не связаны с терминалом. Обычно в системе Linux множество процессов работает в фоновом режиме. Фоновые системные процессы выполняют различные задачи, к примеру измеряют активность системы или изучают данные из сети. Они часто запускаются при загрузке Linux и работают непрерывно, пока система не выключится. Аналогично вход на рабочий стол Linux запускает многие фоновые процессы, к примеру процессы управления аудио, панели рабочего стола, аутентификацию и другие функции рабочего стола. Чтобы просмотреть все процессы, запущенные в системе Linux для текущего пользователя, добавьте в ps ux конвейер (|) и команду less:

$ ps ux | less

Чтобы просмотреть все процессы, запущенные для всех пользователей системы,используйте команду ps aux следующим образом:

$ ps aux | less

Конвейер | (на клавиатуре располагается над символом обратной косой черты) позволяет направлять вывод одной команды на вход следующей. В этом примере выходные данные команды ps (список процессов) направляются в команду less, которая позволяет просматривать эту информацию на странице. Нажимайте клавишу Пробел, чтобы пролистать страницу, и введите q, чтобы закончить список. Можно также применять клавиши со стрелками для перемещения по строкам вывода данных.

Команда ps может отображать выбранные столбцы информации и сортировать информацию по одному из этих столбцов. Используя параметр -o, можно добавить ключевые слова для указания столбцов, которые нужно перечислить с помощью команды ps. Далее в примере отображаются все запущенные процессы (-e), а за ними следует параметр -o для каждого столбца, содержащего нужную информацию, включая идентификатор процесса (pid), имя пользователя (user), идентификатор пользователя (uid), название группы (group), идентификатор группы (gid), количество выделенной виртуальной памяти (vsz), количество резидентной памяти (rss) и запущенную командную строку (come).

По умолчанию выходные данные сортируются по номеру процесса (PID):

$ ps -eo pid,user,uid,group,gid,vsz,rss,comm | less
PID USER UID GROUP GID VSZ RSS COMMAND
1 root 0 root 0 187660 13296 systemd
2 root 0 root 0 0 0 kthreadd

Если нужно отсортировать данные иначе, примените параметр sort=. Например, чтобы увидеть, какие процессы используют больше всего памяти, я сортирую список по столбцу vsz от меньшего к большему. Поскольку мне сначала нужно увидеть самые затратные процессы, я поставил дефис перед параметром сортировки (sort=-vsz):

$ ps -eo pid,user,group,gid,vsz,rss,comm --sort=-vsz | head
PID USER GROUP GID VSZ RSS COMMAND
2366 chris chris 1000 3720060 317060 gnome-shell
1580 gdm gdm 42 3524304 205796 gnome-shell
3030 chris chris 1000 2456968 248340 firefox
3233 chris chris 1000 2314388 316252 Web Content

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

Об авторе

Кристофер Негус — главный специалист по разработке и написанию технической документации в компании Red Hat, Inc. За более чем десять лет работы в Red Hat Крис помог сотням ИТ-специалистов стать сертифицированными инженерами Red Hat (RHCEs) и написал множество технических руководств на различные темы, от Linux до виртуализации, облачных вычислений и контейнеризации.

До прихода в компанию Red Hat Крис написал десятки книг по Linux и UNIX, включая Red Hat Linux Bible (все издания), Docker Containers, CentOS Bible, Fedora Bible, Linux Troubleshooting Bible, Linux Toys, Linux Toys II и девять изданий «Библии Linux». Он также был соавтором нескольких книг из серии Linux Toolbox для опытных пользователей: Fedora Linux Toolbox, SUSE Linux Toolbox, Ubuntu Linux Toolbox, Mac OS X Toolbox и BSD UNIX Toolbox.

Еще до начала писательской деятельности Крис в течение восьми лет работал в организации AT&T, разработавшей операционную систему UNIX, а в начале 1990-х годов переехал в Юту, чтобы внести свой вклад в проект Novell UnixWare.

>>> Подробности



Проверено: hobbit ()
Последнее исправление: sudopacman (всего исправлений: 3)

Ответ на: комментарий от anonymous

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

seiken ★★★★★
()
Ответ на: негодую! от anonymous

Горы ошибок, опечаток, не точностей в переводе

И не говори. Не точности особенно до стали.

TI_Eugene ★★
()
Последнее исправление: TI_Eugene (всего исправлений: 1)
Ответ на: комментарий от anonymous

Благодаря Линусу имеем: ЛОР, …
anonymous (02.09.21 14:01:38)

«анонимусы имеют ЛОР» (гранит, литьё).

KOHb-TPOJIJIbJIEP
()

Неужто эти книги и вправду до сих пор кто-то читает?

yvv ★★☆
()
Ответ на: комментарий от anonymous

А что и плохого? Поржать над тупой школотой бывает довольно весело

AleksK ★★★
()

Когда то давно, когда еще был жив Туркменбаши. Послали меня читать курсы по Линукс в Ахшабад. С собой дали доп литературу на все группы, уже не помню какую книгу из серии «Библия Линукс».

У меня туркменские таможенники хотели конфисковать все книги, аргументируя это тем что в страну запрещено ввозить религиозную литературу :)

BigKAA
()
Последнее исправление: BigKAA (всего исправлений: 1)
Ответ на: комментарий от CYB3R

Что, и «Сатанинскую библию» не читать? Лавей весьма толковый мужик был.

Benis
()
Ответ на: комментарий от matumba

Экспериментировал с загрузкой без init. Ядро паникует

tnemo
()
Ответ на: комментарий от BigKAA

Когда-то в институтской библиотеке, в разделе «строительные материалы» лежал «Цемент» Гладкова (советский производственный роман)

tnemo
()

В комментариях сборище сверхразумов, постигших линукс без книг и вышедших в Высшие Сферы.

Alve ★★★★★
()
Ответ на: комментарий от beck

Так в этом и беда, что ЗНАЕШЬ, что такое PID и понимаешь «что имели ввиду». А новичок? Он прочитает «процесс не может использовать» - значит в каких-то случаях он МОЖЕТ использовать, верно? И начинаются тугие процессы понять, что этот му****к переводчик (или даже автор) имели ввиду. Безобразный текст, вводящий в заблуждение - как по таким текстам что-либо понимать??

matumba ★★★★★
()
Ответ на: комментарий от matumba

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

Я думаю, поржут с перевода, как мы вот, да и всё.

beck ★★★★
()

При покупке книги в «Питере» какого формата книга будет? Никогда раньше не покупал книги онлайн.

spellman
()

Судя по цене, переплёт и все страницы Библии из чистого золота с бриллиантовой инкрустацией.

Hangover
()
Ответ на: комментарий от spellman

Там же всё написано про формат на странице книги.

Reset ★★★★★
()
Ответ на: комментарий от w1nner

Мануал хорош, когда у тебя есть конкретные вопросы, ответы на которые ты знаешь как минимум наполовину.

Книги подобного рода как раз содержат список конкретных вопросов с первой половиной ответов.

beck ★★★★
()

Перевели, молодцы. Посмотрел доступные на сайте превьюхи и возникло несколько вопросов:

На 294 странице в оригинале

Log in as root (or as a user with root privilege), select the “Reuse my password for privileged tasks” check box, and select Accounts.

У вас:

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

С этим абзацем несколько проблем.

  • Что за «чтобы получить возможность запускать некоторые команды от имени суперпользователя»? Зачем эта вода? Подобная отсебятина лишь усложняет чтение.
  • Где в «Использовать мой пароль для привелигированных задач» потерялось слово «повторно», которое есть «в оригинале»?
  • Зачем добавляете абстракции там, где этого нет? В оригинале написано «Войдите в систему как root (или как пользователь с правами root)», у вас что написано? В одном абзаце сначала заставляете читателя вспомнить, что суперюзер — это рут, где в оригинале чётко указано «зайди под рутом», и тут же разводите воду там, где автор предполагает, что читатель понимает фразу «повторно использовать пароль для привилегированных задач». Так ЦА перевода тупее или умнее ЦА оригинальной книги? Ибо ЦА по интеллекту явно не совпадают, судя по переводу.

Страница 297:

Команда useradd работает со следующими параметрами. -c, -d, и т. п.

  • С какого перепугу там точка? У вас и по правилам русского языка тут двоеточее, и даже в оригинале двоеточие стоит.
  • Зачем перед каждым параметром серый кружок? У вас в стиле для списка определёна bullet point для списка? Так переопределите стиль, если из-за него книга грязной становится. Посмотрите оригинал — насколько легче и читабельнее этот же список в нём.

И в целом со стилем что случилось? Если я покупаю перевод книги, я ожидаю увидеть такую же книгу но на другом языке. А получаю талмуд который студент оформлял по требованиям к ВКР у него в шараге. https://ibb.co/8cw134V

Куда дели шестерёнки в началах глав и буквицы? Что стало с нормально оформленными иллюстрациями? Зачем буллеты к колонтитулах и списках? Почему листинги прижаты к левому краю?

Ладно, если бы это «стиль нашего издательства», так нет — серые плашки с номером главы, из оригинала, на месте. Кстати про фон. У примечаний тёмно серый фон пролюбили где-то, а в секции «В этой главе» откуда-то нашли, причём с долбаными квадратиками-маркероами списка.

И это только рандомно заглянул в 5 абзацев на доступных на сайте 12 страницах. Какой же ужас в остальной книге?

mogwai ★★★★
()

Если это библия, то чего её не РПЦ издаёт? Может это сектанты?

Pavval ★★★★★
()
Ответ на: комментарий от Hangover

Это называется выгодное дальновидное вложение: вот прочитаешь ты книгу и тебя сразу возьмут администрировать сервера Единой России и ты будешь зарабатывать МИЛЛИОНЫ!

Benis
()

Конский ценник. Пираточку потом скачаю, чтобы издательство разорилось. :)

Hamster_on_Linux
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.