Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
комп коммуникации и сети.doc
Скачиваний:
7
Добавлен:
28.05.2015
Размер:
11.18 Mб
Скачать

Тема 5 Концепция работы с пользователями

Система сохраняет различную информацию о каждом пользователе. К такого рода инфор­мации относится перечисленная ниже. usemame

уникальный идентификатор, присваиваемый каждому пользователю в системе. При­меры имен пользователей larry, karl и mdw. Могут использоваться буквы и цифры, а также нижнее подчеркивание и точка. Обычно имена пользователей ограничиваются восемью символами. user

ID (или UID) - идентификатор пользователя - уникальный номер, присваиваемый ка­ждому пользователю системы. Система обычно отслеживает идентификаторы пользо­вателей, а не имена. group

ID (или GID) - идентификатор группы это идентификатор группы пользователя. password

Система также хранит в зашифрованном виде пароль пользователя. Команда passwd используется для установки и изменения пароля. full name

"Полное имя" или "действительное имя" хранится вместе с именем пользователя. home directory

Домашний каталог - это каталог, в который пользователь изначально попадает при входе в систему. Каждый пользователь должен иметь свой собственный домашний каталог, обычно ниже /home. login shell

Исходный shell - это shell, который запускается для пользователя при его входе в сис­тему. Это, например, может быть /bin/bash и /bin/tcsh. Файл /etc/passwd содержит эту информацию о пользователях. Каждая строка этого файла со­держит информацию об одном пользователе; формат строки имеет вид:

username: encrypted_p assword: UID: GID: fulljiame: home_directory: 1 о gin_shel 1 Например, это может выглядеть так: <

kiwi :Xv8Q981 g71 оКК: 102:100:Laura Poole:/home/kiwi:/bin/bash Как видно, первое поле "kiwi" - имя пользователя. Следующее поле ,,Xv8Q981g71oKK" -зашифрованный пароль. Пароли в читаемом виде в системе не хранятся. Сами пароли шиф­руются как секретные ключи. Другими словами, Вы должны знать пароль, чтобы его рас­шифровать. Эта форма шифрации достаточно надежна.

Некоторые системы Linux используют "теневой пароль", в котором информация о паролях хранится в файле /etc/shadow. Поскольку /etc/passwd всем доступен, /etc/shadow обеспечивает дополнительный уровень секретности своей недоступностью. Теневой пароль обеспечивает и некоторые другие свойства, вроде прекращения действия пароля и т.д.; мы здесь не будем вдаваться в эти тонкости.

Третье поле, "102", - идентификатор пользователя (UID). Оно должно быть уникальным для каждого пользователя. Четвертое поле, "100", идентификатор группы (GID). Этот пользова­тель принадлежит к группе номер 100. Информация по группе хранится в файле /etc/group. Пятое поле - полное имя пользователя , "Laura Poole". Последние два поля - домашний ката­лог пользователя (/home/kiwi) и исходный shell (/bin/bash) соответственно. Домашний ката­лог пользователя не обязательно должен иметь имя, совпадающее с именем пользователя (username). Однако это помогает в идентификации.

Тема 6 Модернизация и инсталляция программ

Другая обязанность системного администратора - модернизация и инсталляция новых про­грамм.

Сообщество приверженцев Linux очень динамично. Новые версии ядра появляются каждые несколько недель, да и другие программы изменяются не менее часто. Поэтому новые поль­зователи Linux часто чувствуют необходимость в постоянной модернизации (upgrade) своей системы, чтобы поспевать за изменениями, идущими лихой поступью. Это необходимо и это и потеря времени: отслеживать все изменения в мире Linux. Просто у Вас может абсолютно все время уходить на модернизацию системы и лишь оставшееся - на собственно использо­вание системы.

Ну, так, когда желаете заняться модернизацией? Некоторые нутром чувствуют, что зани­маться модернизацией пристало тогда, когда появилась новая версия дистрибутива, напри­мер, когда появляется новая версия Slackware. Многие пользователи Linux каждый раз при этом полностью переинсталлируют свою систему. Это тоже потеря времени. Обычно изме­нения от версии к версии Slackware незначительные. Бессмысленно переписывать и переин­сталлировать 30 дисков, когда только 10% программ были действительно модифицированы.

Лучший вариант модернизации системы - это ручная работа: модернизируйте только те программные пакеты, про которые Вы точно знаете, что их стоит менять. Это многих путает: они хотят знать, что менять, и как, и что они теряют, если не модернизируют. Залог успеха в Linux - это преодолеть боязнь принципа "сделай сам", одного из фундаментальных принци­пов Linux.

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

Наиболее важная часть вашей системы, как возможный объект модернизации, это ядро, библиотеки и компилятор gcc. Это три ключевые части вашей системы, и в некоторых слу­чаях они бывают взаимозависимыми. Большая часть остального хозяйства вашей системы и без периодических модернизаций сойдет.

Модернизация ядра

Модернизация ядра - это просто надо взять исходные тексты и самому их откомпилиро­вать. Вы должны компилировать ядро сами, поскольку вам решать, какие свойства включать и не включать, как и убедиться, что ядро будет оптимизировано применительно к вашей ма­шине. Процесс вполне безболезненный. Исходные тексты ядра можно раздобыть на любом Linux-овском FTP-сервере. На sunsite.unc.edu, например, исходники ядра находятся в pub/Linux/kernel/. Версии ядра нумеруются с использованием номера версии ядра (kernel) и уровня исправления (patchlevel). Например, kernel version 0.99 patchlevel 11 обычно записы­вается как 0.99.р111, или еще проще 0.99.11.

Исходники ядра распространяются в виде зазипованных tar-файлов. ( Часто patch-файлы ("заплаты") выпускаются для текущей версии ядра, которая позволяет модернизировать ис­ходники вашего действующего ядра на основе последнего уровня исправлений, используя программу patch). В большинстве случаев, между тем, обычно проще инсталлировать цели­ком новую версию ядра. Например, файл, содержащий исходники ядра 0.99.pl 11 - linux-0.99.11.tar.gz. (существуют следующие серии ядер: 0.1-0.99, 1.0.1-1.0.9, 1.1.1-1.1.95, 1.2.1-1.2.13, 1.3.1-1,3.83). Ядра, принадлежащие серии с четной 2-й цифрой (1,0, 1.2), являются стабильными, то есть не включают никаких экспериментальных кодов. Ядра серии (1.1,1.3) включают экспериментальные коды (такие как Mobile IP, IP-masquarading и т. п. в серии 1.3).

Распакуйте этот файл из каталога /usr/src; он создаст каталог /usr/src/linux, который содер­жит исходники ядра. Вам следует удалить или переименовать существующий /usr/src/linux перед распаковкой новой версии.

Когда исходники распакованы, вам необходимо убедиться, что две символические связи в /usr/include корректны. Для создания этих связей используйте команды

  • In -sf /usr/src/linux/include/linux /usr/include/linux

  • In -sf /usr/src/linux/include/asm /usr/include/asm

Если Вы однажды создали эти связи, нет причины создавать их снова, когда Вы инсталли­руете следующую версию ядра. Обратите внимание, что для компиляции ядра у Вас в систе­ме должны быть инсталлированы компиляторы gcc и g++ С и C++. Для компиляции ядра прежде всего выполните cd в /usr/src/linux. Выполните команду make config. Эта команда за­просит у Вас несколько настроечных опций, таких как "Какой тип файловой системы Вы же­лаете включить в новое ядро". Затем, отредактируйте /usr/src/linux/Makefile. Убедитесь, что

определение для ROOT DEV корректно - оно определяет устройство, используемое в каче­стве корневой файловой системы во время загрузки. Обычное определение имеет вид:

ROOT_DEV - CURRENT Менять это нет смысла, кроме случая, когда Вы меняете устройство для вашей корневой файловой системы.

Затем выполните команду make dep для отслеживания всех взаимосвязей исходных текстов. Это очень важный этап.

И наконец, Вы готовы компилировать ядро. Команда make Image скомпилирует ядро и оста­вит образ нового ядра в файле /usr/src/linux/Image. Начиная с ядер серии 1.2, собранное ядро записывается в каталог /usr/src/linux/aixjM386/boot/Image (если конечно Вы собирали ядро для процессоров серии Intel, а не alpha, mips или spare.) А команда make zlmage скомпилиру­ет скомпрессировнный образ ядра, который раскомпрессирует сам себя во время загрузки, а так занимает на диске меньше места.

После компиляции ядра Вы должны либо скопировать его на загрузочную дискету (коман­дой вроде ч,ср Image /dev/fdO"), либо инсталлировать его, используя LILO для загрузки с ва­шего жесткого диска.