CITKIT.ru - свободные мысли о свободном софте
Деловая газета CitCity.ru Библиотека CITForum.ru Форумы Курилка
Каталог софта Движение Open Source Дискуссионный клуб Дистрибутивы Окружение Приложения Заметки Разное
17.09.2019

Последние комментарии

ОСТОРОЖНО: ВИНДОФИЛИЯ! (2250)
24 December, 22:53
Kubuntu Feisty (15)
24 December, 18:42
Один на один с Windows XP (3758)
24 December, 11:46

Каталог софта

Статьи

Дискуссионный клуб
Linux в школе
Open Source и деньги
Open Source и жизнь
Windows vs Linux
Копирайт
Кто такие анонимусы
Лицензии
Нетбуки
Нужен ли русский Linux?
Пользователи
Дистрибутивы
Идеология
Выбор дистрибутива
Archlinux & CRUX
Debian
Fedora
Gentoo
LFS
LiveCD
Mandriva
OpenSolaris
Slackware
Zenwalk
Другие линуксы
BSD
MINIX
Движение Open Source
История
Классика жанра
Окружение
shell
Библиотеки UI
Графические среды
Шрифты
Приложения
Безопасность
Управление пакетами
Разное
Linuxformat. Колонки Алексея Федорчука
Заметки
Блогометки
Файловые системы
Заметки о ядре

Дистрибутивы :: OpenSolaris

OpenSolaris: Образы и ролевые игры

CITKIT.ru

Страницы: предыдущая :: 1 :: 2

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

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

Созданными посредством Диспетчера обновлений образами загрузки в дальнейшем можно управлять весьма гибким образом: активизировать (то есть делать загружаемыми по умолчанию) одни из них и деактивизировать — иные, создавать новые образы на основе не только текущего образа, но и любого из неактивных, уничтожать те, в которых были допущены критические ошибки или просто ставшие ненужными. Всем этим целям служит утилита beadm, имеющая множество возможностей, которые мы рассмотрим в свое время. Пока же замечу, что управление образами загрузки тесно завязано на файловую систему ZFS (или, правильнее сказать, на файловую среду этого имени), в частности, на ее возможности по созданию снапшотов. И без ZFS она функционировать не может.

Вероятно, именно поэтому система управления образами загрузки — пока столь же уникальная особенность OpenSolaris, как и IPS, и в собственно ОС Solaris, где по умолчанию вроде бы используется файловая система UFS (хотя, разумеется, ZFS доступна — иначе сапожник был бы без сапог), еще не включена. Видимо, разработчики Sun'а последовали мудрому завету старушки из известного анекдота и, в отличие от коммунистов, решили сначала поэкспериментировать на кроликах (то есть на нас, пользователях).

Надо, однако, сразу сказать, что попытка воспользоваться утилитой beadm "в лоб" завершится неудачей: если тотальное обновление образа через Диспетчер оных мы спокойно выполняли от лица обычного пользователя — того самого, аккаунт которого был создан при инсталляции, то запуск утилиты beadm из командной строки терминала вызовет радостное сообщение о недостатке у нас прав для этой операции. Почему?

Чтобы ответить на этот вопрос, обратимся к третьему основополагающему понятию OpenSolaris — ролям. Мы привыкли к тому, что обычный пользователь, чтобы обрести привилегии пользователя "супер" (то есть root'а) может дать команду su с вводом административного пароля или sudo - с указанием пароля своего, пользовательского. Причем если дать эту команду с соответствующими опциями, например, в форме

$ su -

пользователь наследует все переменные окружения администратора, то есть на самом деле становится неотличимым от root'а. Одно из немногих ограничений на получение root'овых полномочий — во FreeBSD или в некоторых дистрибутивах Linux'а (если память не изменяет, Gentoo, CRUX, Arch) для этого пользователь должен быть членом группы wheel; впрочем, это положение по умолчанию нетрудно изменить. И никто ни в Linux'е, ни во FreeBSD не в силах запретить пользователю войти в систему root'ом при первичной авторизации — причем как при консольной авторизации, так и при регистрации через десктоп-менеджеры типа xdm, gdm и kdm. Частые в большинстве дистрибутивов Linux'а ограничения на сей предмет также касаются исключительно настроек последних и легко отменяются (хотя, разгрызи меня гром, как говаривал бригадир Жерар, я не в силах представить себе ситуации, когда запустить Иксы с правами администратора было бы необходимо).

В OpenSolaris на первый взгляд все обстоит точно так же: авторизовавшись в свежеинсталлированной системе обычным юзером и обычным (через gdm) образом, мы можем в командной строке эмулятора терминала дать команду

$ su

и, после ввода пароля администратора (помните, мы его определяли при инсталляции?), увидеть изменение вида приглашения командной строки с $ на # (напоминаю что в качестве регистрационного шелла у нас самый обычный bash с настройками по умолчанию). А если к команде su добавить еще и символ дефиса — то и текущие каталог изменится на /root, в чем легко убедиться командой pwd. И в любом случае мы получаем возможность работать с утилитами типа beadm, требующими административных привилегий.

Однако интересно, что если права суперпользователя получить посредством просто su, то значение переменной USER, как и следовало ожидать, не изменится и будет равно имени пользователя. А вот после команды

$ su -

в ответ на

# echo $USER

последует вовсе не root, как это обычно бывает (по крайней мере, во FreeBSD), а просто пустая строка, как будто бы эта переменная не определена. Так что возможность выполнять административные действия вовсе не значит, что "юзверь дрожащая" отныне "право root'а имеет".

Да и попытка авторизоваться root'ом при регистрации в системе закончится неудачей. И тут уже дело вовсе не в настройках gdm. Просто в OpenSolaris аккаунта суперпользователя на самом деле нет. Не так, как об этом говорят свежеобращенные адепты Ubuntu, где root-аккаунт на самом деле есть, только по умолчанию нет пароля для его авторизации. Тут все с точностью до наоборот: пароль root'а есть, а аккаунта — нет (как тут не вспомнить историю Венечки Ерофеева про вымя и херес.).

Потому что в OpenSolaris root по умолчанию — не нормальный аккаунт, во всех отношениях, кроме прав доступа, практически равноценный любому другому. Это — роль, которую может исполнять тот или иной юзер. Точнее, только тот, у которого соответствующая роль записана в репертуаре, то есть в числе атрибутов его учетной записи, определенных в специальном файле /etc/user_attr. И когда такой пользователь дает команду su и вводит административный пароль, он не меняет идентифкатор пользователя (то есть никакого set UID не происходит, а ангажируется на роль администратора (не путать с министром-администратором в исполнении незабвенного Андрея Миронова).

Роль root'а закреплена за первым любовником... пардон, за первым пользователем, аккаунт которого создан во время первичной инсталляции. Пользователи, чьи аккаунты будут созданы позднее, по умолчанию на нее претендовать не могут. Однако, поскольку первый любовник по совместительству и режиссер театра, он может разрешить играть свою роль какой-нибудь особо способной (или особо приятной инженю). Более того, он может даже снять с этой роли самого себя, подобно герою песни Василь Иваныча Чапаева, навострившего востру саблю...

Частным понятием в ролевом подходе является понятие профиля пользователя. Это — также его атрибут, которому может быть присвоено некоторое значение или набор оных. Профили позволяют пользователю выполнять действия, требующие административных привилегий, но не все, а только те, которые за данным профилем закреплены. Например, устанавливать программное обеспечение, заниматься администрирование web-сервера, и так далее — причем делать это от своего собственного имени, не прибегая ни к каким set UID. Наш первый любовник автоматически получает единственное значение профиля Primary Administrator — именно оно, а не роль root'а, дает ему возможность своими полномочиями выполнять обновление системы и установку пакетов, а также ряд настроечных мероприятий, через графические фронт-энды. Хотя те же действия через утилиты командной строки потребуют от него выхода на сцену в амплуа root'а.

Иными словами, система ролей и профилей действует примерно так же, как команда sudo. С той только разницей, что делает она это не после тщательных и кропотливых настроек, а по умолчанию. Да и использование ее особенностей не только более просто, но и гораздо прозрачнее и понятнее даже для начинающего "солнцепоклонника" — внимание, редкий случай в этой операционной системе! Для полноты картины стоит отметить, что создать нормальный аккаунт root'а в OpenSolaris'е тоже можно, причёс двумя путями: во время инсталляции и позднее, руками. Однако стоит ли? В любом случае, к этой теме мы ещё вернёмся в одной из последующих заметок.

Надеюсь, мне удалось донести до читателя те особенности ОС OpenSolaris, которые представляются наиболее существенными. В последующих заметках я рассчитываю рассказать, как же их можно использовать на практике.




Страницы: предыдущая :: 1 :: 2

Комментарии

аноним, Tue Feb 3 14:49:45 2009:
пора ставить антиспам бота. У вас тут боты постят
engintoo, Wed Jan 28 19:09:29 2009:
Алексей, спасибо за статью - многие непонятки и возмущения opensolaris исчезли :) ... можно Вас попрость подготовить статью по установке KDE 4.2? :-/
Алексей Федорчук, Sat Jan 3 02:15:47 2009:
2 аноним, пятница, 2 января 2009 г. 22:28:40:
> Кстати, Алексей, можно вам неприличный вопрос. Проект пакета недели для Zenwalk будет продолжаться?
___
Да. Пока он будет интересен кому-то.
Просто нас мало - а пакетов много...
Вышла бета 5.4
И про неё тоже будет
аноним, Fri Jan 2 22:28:40 2009:
Спасибо за статьи. Сподвигли поставить соляру (крайне интересно оказалось).
Кстати, Алексей, можно вам неприличный вопрос. Проект пакета недели для Zenwalk будет продолжаться?
connstance, Thu Jan 1 20:18:29 2009:
«Надеюсь, мне удалось донести до читателя те особенности ОС…»
Ага, спасибо.
аноним, Wed Dec 24 22:03:31 2008:
"таким образом, мы сохраняем [] образ" немножко режет, хотя может так и задумано

Статьи супер, кстати! Прочёл на одном дыхании
Фридрих, Wed Dec 24 09:31:59 2008:
Спасибо! Очень нужная, и главное, своевременная статья. Практическую пользу сложно недооценить - официальная документация написана не таким доступным языком. Видимо, разработчикам ещё очень далеко до понимания "загадочной русской души" ;-)

Комментарии заморожены.

Новости:

Все новости на CitCity.ru

Компании месяца

 
Последние комментарии
Почему школам следует использовать только свободные программы (101)
20 Декабрь, 14:51
ОСТОРОЖНО: ВИНДОФИЛИЯ! (2250)

24 Декабрь, 22:53
Linux в школе: мифы про школу и информатику (334)
24 Декабрь, 22:43
Kubuntu Feisty (15)
24 Декабрь, 18:42
Software is like sex: it's better when it's free.
©Linus Torvalds