Свободное программное обеспечение. Уроки, статьи, переводы и др.

Процесс загрузки, инициализация и завершение работы

Введение

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

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

Множество систем Linux используют lilo (LInux LOader) для загрузки операционных систем. Мы обсудим только GRUB, т. к. он проще в использовании и является более гибким. Если вам необходима информация о lilo, обратитесь к man-страницам и HOWTO. Оба загрузчика поддерживают двойные загрузки; мы ссылаемся на HOWTO по этому вопросу для практических примеров и справочной информации.

Процессы изнутри

Многопользовательская работа и многозадачность

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

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

В следующих разделах мы расскажем об устройстве процессов в Linux.

Упражнения

Просто войдите под вашим обычным пользовательским ID.

Разделы

  • На каком разделе находится ваша домашняя директория?
  • Сколько разделов в вашей системе?
  • Каков общий размер вашего установленного Linux?

Пути

  • Отобразите ваши пути поиска программ.
  • Экспортируйте бессмысленный адрес, введя, например, export PATH=blah и попытайтесь получить список содержимого каталога.
  • Каков путь к домашней директории? Как бы другой пользователь достиг вашего домашнего каталога, начиная от своего домашнего каталога и используя относительные пути?
  • Перейти в каталог tmp, находящийся в /var.
  • Теперь перейдите в каталог share, находящийся в /usr, используя только одну команду. Измените на doc. Каков ваш текущий рабочий каталог?

Защита файлов

Права доступа: первая линия обороны Linux

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

Мы уже использовали "длинный" вариант просмотра файлов с помощью команды ls -l, хотя и по другим причинам. Эта команда также отображает разрешения файла (права доступа) для этих трех категорий пользователей; они указаны девятью символами, которые следуют за первым символом (индикатором типа файла). Как видно из приведенных ниже примеров, первые три символа из этой серии девяти отображают права доступа реального пользователя, который является владельцем файла. Следующие три — предназначены для группы-владельца файла, последние три — для других пользователей. Разрешения всегда описываются в одном и том же порядке: чтение, запись и исполнение (выполнение, запуск) для пользователя, группы и других. Вот некоторые примеры:

marise:~> ls -l To_Do
-rw-rw-r--    1 marise  users      5 Jan 15 12:39 To_Do
marise:~> ls -l /bin/ls
-rwxr-xr-x    1 root    root   45948 Aug  9 15:01 /bin/ls*

Управление файлами

Просмотр свойств файла

Дополнительная информация о ls

Помимо имени файла команда ls может дать много другой информации, например, тип файла (это мы уже обсуждали). Она может также показать права доступа к файлу, его размер, номер индексного дескриптора, дату и время создания, владельцев и количество ссылок на файл. Также использование ls вместе с опцией -a может отобразить файлы, обычно скрытые от глаз. Имена таких файлов начинается с точки. Типичный пример — это конфигурационные файлы в вашем домашнем каталоге. Когда вы проработаете в определенной системе некоторое время, то заметите, что были созданы десятки файлов и каталогов, that are not automatically listed in a directory index. Наряду с этим, каждый каталог содержит файл, именуемый просто точкой (.) и один с двумя точками (..), которые используются в сочетании с номером их индексного дескриптора для определения расположения каталога в древовидной структуре файловой системы.

Вам действительно следует прочитать страницы info о команде ls, так как это часто используемая команда с большим количеством полезных опций. Опции могут быть скомбинированы, как и в случае с большинством команд UNIX и их параметрами. Часто используемая комбинация ls -al; она отображает длинный список файлов и их свойств, а также пути, на которые указывают символические ссылки. ls -latr отображает те же файлы, только теперь в обратном порядке по признаку последнего изменения, так что файл, измененный в самое последнее время, находится в нижней части списка. Вот несколько примеров:

krissie:~/mp3> ls
Albums/  Radio/  Singles/  gene/  index.html

krissie:~/mp3> ls -a
./   .thumbs  Radio     gene/
../  Albums/  Singles/  index.html

krissie:~/mp3> ls -l Radio/
total 8
drwxr-xr-x    2 krissie krissie  4096 Oct 30  1999 Carolina/
drwxr-xr-x    2 krissie krissie  4096 Sep 24  1999 Slashdot/

krissie:~/mp3> ls -ld Radio/
drwxr-xr-x    4 krissie krissie  4096 Oct 30  1999 Radio/

krissie:~/mp3> ls -ltr
total 20
drwxr-xr-x    4 krissie krissie  4096 Oct 30  1999 Radio/
-rw-r--r--    1 krissie krissie   453 Jan  7  2001 index.html
drwxrwxr-x   30 krissie krissie  4096 Oct 20 17:32 Singles/
drwxr-xr-x    2 krissie krissie  4096 Dec  4 23:22 gene/
drwxrwxr-x   13 krissie krissie  4096 Dec 21 11:40 Albums/

Введение в GNU/Linux

"Введение в GNU/Linux" - серия статей-уроков для начинающих пользователей Linux, знакомящая с историей, особенностями и философией операционных систем GNU/Linux.

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

Статьи писались в качестве уроков-лекций, ориентированных на учащихся средних и старших классов.

Уроки по Blender Game Engine (игровому движку программы Blender)

Десять уроков для начинающих по игровому движку Blender (Blender Game Engine, он же BGE, он же gameBlender). Затрагиваются элементы физики движения и игровой логики. В курсе предусмотрены практические задания.

3D-моделирование в Blender. Курс для начинающих

Элективный курс по информатике "3D-моделирование в Blender" представляет собой начальный курс по компьютерной 3D-графике, дающий представление о базовых понятиях 3D-моделирования в специализированной для этих целей программе. В качестве программной среды выбран Blender (свободно распространяемая среда для создания трехмерной графики, анимации и другого). В данном курсе рассматриваются лишь азы работы в Blender: добавление объектов, их изменение, работа с материалом.

Создание GUI на Python с помощью библиотеки Tkinter. Программирование для начинающих

Цикл практических уроков по программированию для начинающих "Создание GUI на Python с помощью библиотеки Tkinter" знакомит с особенностями разработки графического интерфейса пользователя на основе языка программирования Python(создание виджет и обработчиков событий, связывание с событиями и др.).

RSS-материал