Узнать версию ос linux и версию ядра из консоли
Посмотреть список дисков в GUI
Во-первых, если к компьютеру подключено несколько дисков, то вы сможете их увидеть на левой панели файлового менеджера Nautilus или Dolphin. Там будет отображаться список подключенных устройств Linux, их метки и размер:
В Gnome есть программа Disks, которая позволяет настраивать поведение дисков, она же может отображать список подключенных устройств к системе. Вы можете найти её в главном меню:
Утилита отображает всю доступную информацию о дисках и разделах на них, вы можете даже посмотреть информацию о состоянии smart. Список дисков находится на панели слева, а справа разделы на этом диске:
Ещё одна утилита, которую вы можете использовать, чтобы посмотреть список жёстких дисков Linux — это Gparted. Это редактор разделов для Linux, но вы можете посмотреть подключнёные диски и структуру каждого из них. Раскрывающийся список вы найдёте в верхнем правом углу:
А в основной части окна программы отображается список разделов.
История возникновения Unix
В 1969 году команда разработчиков в лице Кена Томпсона, Денниса Ритчи и Дугласа Макилроя из исследовательского центра «Bell Labs» компании AT&T начала проект по созданию единой операционной системы (сокр. «ОС») для всех компьютеров, назвав её — «Unix». Первая версия системы была написана на Ассемблере. В 1972 году для того, чтобы переписать систему на более простой язык, Деннис Ритчи создает язык программирования Си, благодаря чему, 15 октября 1973 года выходит новая версия Unix (четвертая), ядро которой было переписано на Си. А через 2 года (в 1975 году) появляется уже полностью написанная на языке Си редакция Unix (пятая).
Долгое время операционная система являлась лишь исследовательским проектом, но в 1973 году проходит конференция Ассоциации по вычислительной технике (сокр. «ACM» от «Association for Computing Machinery»), на которой создатели Unix рассказывают о своей системе, и к ним сразу же начинают обращаться люди с просьбой поделиться её копией. И тут стоит отметить одну очень важную историческую деталь, которая сыграла свою роль в дальнейшем развитии событий. Дело в том, что в 1956 году компания AT&T (являющаяся на тот момент монополистом на американском рынке местной и междугородней связи) завершает очередное разбирательство с федеральными властями и антимонопольным комитетом по поводу своего монопольного положения, результатом которого становится подписание соглашения, накладывающее на AT&T ограничения по продажи продуктов и услуг, не связанных напрямую с телефонами и телекоммуникациями. А это значит, что Unix не могла продаваться всем желающим её заполучить. В связи с этим фактом, распространение исходных кодов системы Unix происходило абсолютно бесплатно.
Первоначально Unix использовалась в основном в университетах и крупных финансовых корпорациях. К 1978 году насчитывалось около 600 машин с установленной на них системой Unix.
Способы проверки списка пользователей
Люди, которые постоянно используют данную систему, могут это сделать с помощью целого ряда методов, а для новичков это весьма проблематично. Поэтому инструкция, которая будет расписана ниже, поможет неопытному пользователю справиться с поставленной задачей. Сделать это можно при помощи встроенного Терминала или же ряда программ с графическим интерфейсом.
Способ 1: Программы
В Linux/Ubuntu управлять зарегистрированными в системе пользователями можно при помощи параметров, работа которых обеспечивается специальной программой.
К сожалению, для графической оболочки рабочего стола Gnome и Unity программы разные. Однако они обе способны предоставить набор опций и инструментов для проверки и редактирования групп пользователей в дистрибутивах Linux.
«Учетные записи» в Gnome
Сначала следует открыть параметры системы и выбрать раздел под названием «Учетные записи»
Обратите внимание на то, что системные пользователи здесь уже отображаться не будут. Список зарегистрированных пользователей находится в панели слева, правее есть раздел настроек и изменения данных каждого из них
Программа «Пользователи и группы» в дистрибутиве с графической оболочкой Gnome установлена всегда по умолчанию, однако если вы ее не находите в системе, то можно провести автоматическую загрузку и установку с помощью выполнения команды в «Терминале»:
KUser в KDE
Для платформы KDE существует одна утилита, пользоваться которой даже гораздо удобнее. Она называется KUser.
В интерфейсе программы отображаются все зарегистрированные юзеры, при необходимости можно увидеть и системных. Эта программа может изменять пароли пользователей, переносить их из одной группы в другую, удалять их в случае необходимости и тому подобное.
Как и в случае с Gnome, в KDE программа KUser установлена по умолчанию, но ее можно удалить. Чтобы произвести установку приложения, выполните команду в «Терминале»:
Способ 2: Терминал
Данный способ является универсальным для большинства дистрибутивов, разработанных на основе операционной системы Linux. Дело в том, что она имеет в своем программном обеспечении специальный файл, где располагается информация относительно каждого пользователя. Такой документ находится по адресу:
Все записи в нем представлены в следующем виде:
- имя каждого из юзеров;
- уникальный идентификационный номер;
- пароль ИД;
- ИД группы;
- название группы;
- оболочка домашнего каталога;
- номер домашнего каталога.
Для повышения уровня безопасности в документе сохраняется пароль каждого из пользователей, но он не отображается. В других модификациях этой операционной системы пароли и вовсе хранятся в отдельных документах.
Полный список пользователей
Вызвать переадресацию в файл с сохраненными данными юзеров можно с помощью «Терминала», введя в него следующую команду:
Пример:
Если ИД у пользователя имеет меньше четырех цифр, то это системные данные, в которые вносить изменения крайне нежелательно. Дело в том, что они создаются самой ОС в процессе установки для обеспечения наиболее безопасной работы большинства сервисов.
Имена в списке пользователей
Стоит отметить, что в данном файле может быть довольно много данных, которые вам не интересны. Если имеется необходимость узнать только имена и основные сведения, касающиеся пользователей, есть возможность отфильтровать приведенные в документе данные при помощи введения следующей команды:
Пример:
Просмотр активных пользователей
В ОС, работающей на базе Linux, можно посмотреть не только пользователей, которые были зарегистрированы, но и тех, кто в настоящее время активны в ОС, заодно просмотрев то, какие процессы они используют. Для такой операции применяется специальная утилита, вызываемая командой:
Пример:
Данная утилита будет выдавать все команды, которые выполняются пользователями. Если он одновременно задействует две и более команд, то они также найдут отображение в выдаваемом списке.
Истории посещений
При необходимости, есть возможность проанализировать активность пользователей: узнать дату последнего их входа в систему. Ей можно воспользоваться на базе лога /var/wtmp. Вызывается он вводом в командной строке следующей команды:
Пример:
Дата последней активности
Кроме того, в операционной системе Linux можно узнать, когда каждый из зарегистрированных пользователей был последний раз активен – это делает команда lastlog, выполняемая при помощи одноименного запроса:
Пример:
В этом логе также отображается информация о пользователях, которые никогда не были активными.
Команды Linux для управления процессами
25. kill / xkill / pkill / killall
Служат для завершения процессов. Но они принимают различные параметры для идентификации процессов. Kill нужен PID процесса, xkill — достаточно кликнуть по окну, чтобы закрыть его, killall и pkill принимают имя процесса. Используйте ту, которая удобна в определенной ситуации.
26. ps / pgrep
Как уже говорилось, чтобы уничтожить процесс, нужен его идентификатор. Один из способов получить его, это утилита ps, которая печатает информацию о запущенных процессах. По умолчанию вывод очень длинный, поэтому используйте опцию -e, чтобы увидеть информацию об определённом процессе. Это только снимок состояния на момент вызова, и информация не будет обновляться. Команда ps с ключом aux выводит полную информацию о процессах. Pgrep работает следующим образом: вы задаете имя процесса, а утилита показывает его идентификатор. Подробнее о команде ps описано тут.
27. top / htop
Обе команды похожи, обе отображают процессы и могут быть использованы как консольные системные мониторы. Я рекомендую установить htop, если в вашем дистрибутиве он не поставляется по умолчанию, так как это улучшенная версия top. Вы сможете не только просматривать, но и контролировать процессы через его интерактивный интерфейс.
28. time
Время выполнения процесса. Это секундомер для выполнения программы. Полезно, если вам интересно, насколько сильно ваша реализация алгоритма отстает от стандартной. Но, несмотря на такое название, она не сообщит вам текущее время, используйте для этого команду date.
Команды Linux окружения пользователя
29. su / sudo
Su и sudo — это два способа выполнить одну и ту же задачу: запустить программу от имени другого пользователя. В зависимости от вашего дистрибутива вы, наверное, используете одну или другую. Но работают обе. Разница в том, что su переключает вас на другого пользователя, а sudo только выполняет команду от его имени. Поэтому использование sudo будет наиболее безопасным вариантом работы. Я писал про права суперпользователя в этой статье.
30. date
В отличие от time, делает именно то, чего вы от неё и ожидаете: выводит дату и время в стандартный вывод. Его можно форматировать в зависимости от ваших потребностей: вывести год, месяц, день, установить 12-ти или 24-ти часовой формат, получить наносекунды или номер недели. Например, date +»%j %V», выведет день в году и номер недели в формате ISO.
31. alias
Команда создаёт синонимы для других команд Linux. То есть вы можете делать новые команды или группы команд, а также переименовывать существующие. Это очень удобно для сокращения длинных команд, которые вы часто используете, или создания более понятных имен для команд, которые вы используете нечасто и не можете запомнить. Здесь собрано несколько полезных алиасов.
32. uname
Выводит некую основную информацию о системе. Без параметров она не покажет ничего полезного, кроме строчки Linux, но, если задать параметр -a (All), можно получить информацию о ядре, имени хоста и узнать архитектуру процессора.
33. uptime
Сообщает вам время работы системы. Не очень существенная информация, но может быть полезна для случайных вычислений или просто ради интереса, чтобы узнать, как давно был перезагружен сервер.
34. sleep
Вам, наверное, интересно как же её можно использовать. Даже не учитывая Bash-скриптинг, у неё есть свои преимущества. Например, если вы хотите выключить компьютер через определенный промежуток времени или использовать в качестве импровизированной тревоги.
4. dmidecode
Утилита dmidecode собирает подробную информацию об оборудовании системы на основе данных DMI в BIOS. Отображаемая информация включает производителя, версию процессора, доступные расширения, максимальную и минимальную скорость таймера, количество ядер, конфигурацию кэша L1/L2/L3 и т д. Здесь информация о процессоре Linux намного легче читается чем у предыдущей утилиты.
5. hardinfo
Hardinfo это графическая утилита которая позволяет получить информацию о процессоре и другом оборудовании в системе в графическом интерфейсе. Утилиту надо установить:
Запуск
6. i7z
Утилита i7z — монитор параметров процессора в реальном времени для процессоров Intel Core i3, i5 и i7. Он отображает информацию по каждому ядру в реальном времени, такую как состояние TurboBoost, частота ядер, настройки управления питанием, температура и т д. У i7z есть консольный интерфейс основанный на Ncurses, а также графический на базе библиотек Qt.
7. inxi
Команда inxi — это bash скрипт, написанный для сбора информации о системе в удобном и понятном для человека виде. Он показывает модель процессора, размер кэша, скорость таймера и поддерживаемые дополнительные возможности процессора. Для установки используйте:
Для запуска:
8. likwid-topology
Likwid (Like I Knew What I’m Doing) — это набор инструментов командной строки для измерения, настройки и отображения параметров оборудования компьютера. Информация о процессоре может быть выведена с помощью утилиты likwid-topology Она показывает модель и семейство процессора, ядра, потоки, кэш, NUMA. Установка:
9. lscpu
Команда lscpu отображает содержимое /proc/cpuinfo в более удобном для пользователя виде. Например, архитектуру процессора, количество активных ядер, потоков, сокетов.
10. lshw
Команда lshw — универсальный инструмент для сбора данных об оборудовании. В отличии от других инструментов для lshw необходимы права суперпользователя так как утилита читает информацию из DMI в BIOS. Можно узнать общее количество ядер, и количество активных ядер. Но нет информации об кэше L1/L2/L3.
11. lstopo
Утилита lstopo входит в пакет hwloc и визуализирует топологию системы. Сюда входит процессор, память, устройства ввода/вывода. Эта команда полезна для идентификации архитектуры процессора и топологии NUMA. Установка:
12. numactl
Первоначально разрабатываемая для настройки планировки NUMA и политик управления памятью в Linux numactl также позволяет посмотреть топологию NUMA:
13. x86info
x86info — инструмент командной строки для просмотра информации о процессорах архитектуры x86. Предоставляемая информация включает модель, количество ядер/потоков, скорость таймера, конфигурацию кэша, поддерживаемые флаги и т д. Установка в Ubuntu:
14. nproc
Утилита просто выводит количество доступных вычислительных потоков. Если процессор не поддерживает технологию HyperThreading, то будет выведено количество ядер:
15. hwinfo
Утилита hwinfo позволяет выводить информацию о различном оборудовании, в том числе и о процессоре. Программа отображает модель процессора, текущую частоту, поддерживаемые расширения. Наверное, это самый простой способ узнать частоту процессора Linux:
Информация об оперативной памяти
1. Файл /proc/meminfo (Linux)
Команда:
cat /proc/meminfo
Пример ответа:
MemTotal: 8010284 kB
MemFree: 1058580 kB
MemAvailable: 2791616 kB
Buffers: 1884 kB
Cached: 1754092 kB
SwapCached: 122280 kB
Active: 4330296 kB
Inactive: 2006792 kB
Active(anon): 3623768 kB
Inactive(anon): 983120 kB
Active(file): 706528 kB
Inactive(file): 1023672 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 1048572 kB
SwapFree: 597684 kB
Dirty: 20 kB
Writeback: 0 kB
AnonPages: 4466532 kB
Mapped: 92808 kB
Shmem: 25776 kB
Slab: 408732 kB
SReclaimable: 308820 kB
SUnreclaim: 99912 kB
KernelStack: 7312 kB
PageTables: 23276 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 5053712 kB
Committed_AS: 3770324 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 159328 kB
VmallocChunk: 34359341052 kB
HardwareCorrupted: 0 kB
AnonHugePages: 3248128 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 257984 kB
DirectMap2M: 8130560 kB
* чаще всего, самое важное:
- MemTotal — общий объем оперативной памяти.
- MemFree — объем памяти, который не используется системой.
- Buffers — память, которая в данным момент ожидает записи на диск.
- Cached — объем, задействованный под кэш чтения с диска.
- MemAvailable — объем памяти, доступной в распределители без необходимости обмена.
- SwapTotal — объем файла подкачки.
- SwapFree — свободный объем файла подкачки.
* Объем используемой памяти = MemTotal – MemFree — Cached — Buffers.
Для перевода килобайт в гигабайты можно воспользоваться онлайн калькулятором.
2. free (Linux)
Данная команда позволяет получить информацию об использовании памяти в удобной таблице. Для еще большего удобства, мы выведем ее с помощью дополнительного параметра -h:
free -m
Пример ответа:
total used free shared buff/cache available
Mem: 3,7G 568M 378M 193M 2,8G 2,6G
Swap: 4,0G 94M 3,9G
sysctl hw.physmem
Пример ответа:
hw.physmem: 2123677696
4. dmesg
Работает на BSD и Linux:
dmesg | grep memory
Итог:
real memory = 2147483648 (2048 MB)
avail memory = 2042109952 (1947 MB)
5. Другие команды
Для получения информации по оперативной памяти также можно использовать команды:
vmstat -s
top
htop
* для htop необходима установка одноименной утилиты.
Как проверить ваш процессор — Lscpu
Программа lscpu встроена в 99% всех операционных систем Linux. Таким образом, вам не нужно устанавливать его, прежде чем пытаться использовать его для получения информации об оборудовании ЦП.
Чтобы узнать характеристики вашего процессора, вы можете запустить команду lscpu как есть. Когда вы запустите эту команду, вы увидите подробный список вверху. Этот список обозначает архитектуру вашего ЦП, поддерживаемые режимы работы ЦП (например, 64-разрядный и 32-разрядный), количество ядер ЦП (обозначаемых как ЦП), количество ядер на сокет, название модели и многое другое.
lscpu
Если вам нужно отфильтровать определенный элемент в списке lscpu, вы можете объединить команду с grep и указать свое ключевое слово. Например, если вам нужно узнать точное название модели процессора, вы можете выполнить следующую команду.
lscpu | grep 'Model name'
Или, если вам нужно узнать, сколько ядер у вас на ЦП, вы можете запустить команду lscpu с ключевым словом «Количество ядер на сокет». Это ключевое слово отфильтрует строку в выводе, которая сообщает вам, сколько у вас ядер.
lscpu | grep 'Core(s) per socket'
Команда lscpu позволяет получить много информации. Вы можете найти и отфильтровать любую информацию, просто взяв grep и добавив ключевое слово.
lscpu | grep 'MY KEYWORD'
Если вы хотите сохранить вывод информации о процессоре позже в текстовый файл, это возможно. Вот как это сделать. Передайте вывод в текстовый файл, используя команду ниже.
lscpu > ~/my-cpu-info.txt
Просмотрите этот текстовый файл в любое время, выполнив следующую команду cat.
cat ~/my-cpu-info.txt
Помимо просмотра текстового файла в терминале с помощью команды cat, вы также можете просмотреть его, щелкнув «my-cpu-info.txt» в файловом менеджере Linux. Когда вы щелкнете по нему, он запустит его в текстовом редакторе по умолчанию.
Как посмотреть версию системы при помощи systemd
systemd — менеджер системы и служб для Linux, совместимый со скриптами инициализации SysV и LSB. systemd обеспечивает возможности агрессивной параллелизации и много всего прочего. Кроме этого он включают в себя демон ведения журнала, утилиты для управления базовой конфигурацией системы (имя хоста, дата, языковой стандарт), ведение списка вошедших в систему пользователей, запущенных контейнеров и виртуальных машин, системных учётных записей, каталогов и параметров среды выполнения и демонов для управления базовой конфигурацией сети, синхронизации сетевого времени, пересылки журналов и разрешения имён.
$ hostnamectl Static hostname: testcomp Icon name: computer-desktop Chassis: desktop Machine ID: ac1ab0yh85b1be62bfa64a6578ae98f4 Boot ID: 6578a42948b32a67a040c16cf8ba0e Operating System: Ubuntu 16.04.7 LTS Kernel: Linux 4.4.0-201-generic Architecture: x86-64
Команда hostnamectl выдает несколько больше информации.
Различия между Linux и Windows
Начать сравнение необходимо с описания принципиальных различий между операционными системами MS Windows и GNU/Linux. Для точного понимания того, who is кто.
Коммерческое и свободное ПО
GNU/Linux это ОС, разрабатываемая и поддерживаемая десятками, если не сотнями компаний в разных странах мира и тысячами программистов. Права на эту ОС переданы в общественную собственность. И хотя в мире есть много компаний, которые предоставляют платную техническую поддержку этой ОС, тем не менее само использование GNU/Linux не оговаривается финансовыми условиями. То есть вы не обязаны никому ничего платить, для того чтобы иметь право использования Linux. Хотя есть отдельные дистрибутивы которые предоставляются только за деньги, но большинство дистрибутивов Linux полностью свободны.
Графический интерфейс пользователя (GUI)
Второе принципиальное отличие заключается в том, что в ОС Windows графическая среда пользователя является неотъемлемой частью ОС. То есть Windows без графической среды (консольный режим) попросту не существует.
Почему я акцентирую внимание на этом аспекте? Дело в том, что графическая среда пользователя необходимая и важнейшая часть ОС для настольных компьютеров
И сравнивая две ОС с точки зрения GUI, важно понимать, что мы сравниваем Windows не с Linux, а с одной из графических оболочек, например с KDE
Пример графической среды KDE для Linux (кликните картинку для увеличения):
Пример графической среды GNOME для Linux:
Что в «коробке»?
GNU/Linux в чистом виде, как ОС, распространяется лишь в узкоспециальных областях применения. А применительно к рассматриваемому мной сегменту компьютерного рынка, используются так называемые дистрибутивы Linux. Дистрибутив это комплект, состоящий из ОС GNU/Linux, графической среды пользователя и набора прикладных программ. То есть, устанавливая дистрибутив Linux, вы получаете готовую к практическому использованию систему, в которую вам быть может ничего больше не нужно будет добавлять.
Ну и поскольку Linux никому конкретно не принадлежит и существуют разные графические среды и разные прикладные программы то, как следствие этого сотни компаний или даже просто группы частных лиц предлагают десятки дистрибутивов Linux. Некоторые из них похожи почти как близнецы, другие сильно различаются. А в мире Windows различия заключаются лишь в версиях самой ОС Windows и этих версий раз в десять меньше чем дистрибутивов Linux.
Дистрибутивы Linux различаются между собой наборами прикладных программ и драйверов. Лучшие дистрибутивы на русском языке:
Это короткий, субъективный список, основанный моих собственных предпочтениях. Которые, впрочем сформировались в результате многих лет работы с различными дистрибутивами GNU\Linux. Кроме этих 5, есть еще много хороших дистрибутивов. В частности есть специализированные дистрибутивы. Это такие дистрибутивы в которых «из коробки» есть набор узкоспециальных прикладных программ. Например дистрибутив Kali Linux, «заточенный» для аудита компьютерных сетей по вопросам кибербезопасности.
Безопасность
Если вы являетесь постоянным посетителем сайтов с сомнительной репутацией и принципиально не соблюдаете правил элементарной компьютерной безопасности, то да — Линукс это то что вам нужно.С учётом того, что доля Линукса в десктопах около 2%, написанием вирусов под него, пока всерьёз никто не занимается и именно в плане вирусных атак, Линукс безопаснее. Но это никоим образом не касается вашего поведения в интернете и данных, которые вы там публикуете. В этом случае, нужно быть таким же аккуратным и внимательным, как и на Windows. Также, Линукс не избавляет вас от необходимости делать резервные копии важных файлов. Как бы ОС ни была хороша, а от потери данных, например в результате выхода накопителя из строя, вы всё равно не застрахованы.
Наличие на ПК линукса не делает вас неуязвимым – об этом следует помнить.
Преимущество – частично.
Монтирование устройств[править]
Команда | Описание |
---|---|
mount /путь_к_директории/образ.iso -o loop /media/iso | Монтирование образа iso в созданную/имеющуюся директорию /media/iso |
mount file.iso /media/iso/ -t iso9660 -o loop | Монтирование образа iso в созданную/имеющуюся директорию /media/iso |
umount /media/iso/ | Размонтирование образа из директории /media/iso/ |
modprobe loop | При «Ошибка подключения ISO образа». Невозможно найти ни одного устройства обратной связи. Может быть ядро не знает об устройствах обратной связи.(В этом случае перекомпилируется ядро или выполните modprode loop) |
ls /home | grep back | Узнать существует каталог vps-backup для монтирования по команде mount /home/vps-backup, при ее отсутствии терминал вернет — mount: /home/vps-backup: Нет такого файла или каталога |
mount | grep /dev/sdb | Посмотреть куда примонтирован «sdb» |
mount | column -t | Получить информацию о текущих смонтированных файловых системах с удобным оформлением по столбцам |
findmnt | Отображает информацию в виде красивого дерева и сама форматирует столбцы, а также может найти нужную файловую систему |
mount -t ntfs-3g -o rw,flush /dev/sdXx /mnt | Принудительное монтирование раздела sdXx (,где Хх — ваш номер диска) с ntfs |
ntfsfix /dev/sdxX | Если не монтируется раздел с ntfs после перезагрузки с windows 10 |
Определяем версию Ubuntu без терминала
Есть несколько простых способов определения версии, не используя командную строку.
Через системные настройки
Версию Ubuntu можно узнать из графического интерфейса (GUI), если вы запустите приложение в настольной среде (desktop environment). Для этого нужно запустить приложение Ubuntu → открыть системные настройки → проскролить вниз, найти иконку «Параметры» и кликнуть по ней дважды.
В справке Ubuntu
Ещё один способ — узнать версию через справку. Для этого в меню на панели Gnome нажмите «Система» → «О системе Ubuntu». После этого загрузится документация по Ubuntu, где на главной странице справки будет указано, какую версию вы используете
В системном мониторе
На панели Gnome выполните «Система» → «Администрирование» → «Системный монитор». Откроется окно «Системного монитора», на главной вкладке которого будет указана версия Ubuntu и текущая версия ядра.
Как вы видите, все очень просто .
Состояния процесса в Linux
Когда процесс передает ядру запрос, который не может быть исполнен сразу же, то процесс «погружается в сон/ожидание» и «пробуждается», когда запрос может быть удовлетворен. В связи с этим, в зависимости от текущей ситуации, процесс, во время своего выполнения, может переходить из одного состояния в другое:
Рассмотрим основные состояния процесса:
Выполнение — процесс либо запущен (текущий процесс в системе), либо готов к запуску (ожидает передачи на выполнение процессору).
Ожидание — процесс ожидает наступления некоторого события (пользовательского ввода, сигнала от другого процесса и т.п.) или выделения системных ресурсов. Кроме того, ядро также различает два типа ожидающих процессов:
прерываемые ожидающие процессы — могут быть прерваны сигналами;
непрерываемые ожидающие процессы — процессы ожидают непосредственно на аппаратном уровне и не могут быть прерваны каким-либо событием/сигналом.
Завершен — процесс был остановлен, как правило, путем получения сигнала штатного завершения работы exit().
Зомби — иногда, когда родительский процесс убивается до завершения дочернего процесса, дочерние процессы становятся «осиротевшими», при этом в качестве нового родителя (с соответствующим изменением PPID) им назначается процесс init. Убитые процессы, но при этом все еще отображающиеся в таблице процессов, называются процессами зомби (они мертвы и не используются).
Что такое файловая система?
Люди могут подразумевать под файловой системой совсем разные понятия. Само словосочетание может иметь несколько значений и вам придется понимать о чем идет речь из контекста документа.
Давайте рассмотрим наиболее часто используемые значения слов файловая система
Мы не будем останавливаться на официальной трактовке, а попытаемся обратить внимание на сферу применения:
- Все структура каталогов Linux, начиная с корня (/);
- Конкретный формат раздела хранения данных, например, Ext3, Ext4, Btrfs, XFS и так далее. Ядро Linux поддерживает более 100 типов файловых систем, в том числе очень старых и новых. Каждый тип файловой системы использует свои структуры метаданных чтобы организовать работу с данными на диске;
- Раздел или логический том, отформатированный в определенный тип файловой системы, который можно примонтировать к определенной точке монтирования.
Дальше рассмотрим как выполнена организация файловой системы Linux и ее основные функции.
Команды Linux для управления пользователями
35. useradd / userdel / usermod
Эти команды консоли Linux позволяют вам добавлять, удалять и изменять учетные записи пользователей. Скорее всего, вы не будете использовать их очень часто. Особенно если это домашний компьютер, и вы являетесь единственным пользователем. Управлять пользователями можно и с помощью графического интерфейса, но лучше знать об этих командах на всякий случай.
36. passwd
Эта команда позволяет изменить пароль учетной записи пользователя. Как суперпользователь вы можете сбросить пароли всех пользователей, даже несмотря на то, что не можете их увидеть. Хорошая практика безопасности — менять пароль почаще.