Регистрац ия в системе (открытие счета)

Знакомство с Linux

Александр Соловьев

3.1 Введение Новые пользователи UNIX и Linux могут быть ошеломлены размерами и очевидной сложностью системы, которая предстала перед ними. Существует много хороших книг по использованию UNIX для всех уровней подготовки: от новичка до эксперта. Но ни одна из этих книг не обсуждает особенности Linux. Хотя 95% всего связанного с использованием Linux абсолютно аналогично другим UNIX-системам, наиболее прямой путь освоения этой системы - это по учебнику, написанному применительно к Linux. Вот эта книга и есть такой учебник.

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

Здесь не предполагается каких-то предварительных знаний, за исключением первоначального знакомства с персональным компьютером и MS-DOS. Но даже если вы не успели побывать пользователем MS-DOS, вы все равно все здесь поймете. На первый взгляд UNIX очень похож на MS-DOS (в конце-концов фрагменты MS-DOS были спроектированы с оглядкой на операционную систему CP/M, которая, в свою очередь, проектировалась с оглядкой на UNIX). Но только при очень уж поверхностном взгляде можно говорить о похожести UNIX и MS-DOS. Если вы абсолютный новичок в мире п ерсональных компьютеров, этот учебник вам поможет.

И прежде, чем начать, призываем: не бойтесь экспериментировать. Система вас не укусит. Работая на ней вы ничего не сможете сломать. UNIX имеет встроенные средства защиты, чтобы не дать "нормальным" пользователям (это теперь и вы) возможность испортить важные д ля системы файлы. Самое плохое, что вы можете натворить - это уничтожить все свои файлы, а тогда, мо жет быть придется и переинсталлировать заново систему прим. переводчика: как правило, чтобы довести систему до переинсталляции, надо иметь прав больше, чем у "нормального" пользователя.

Базовые концепции UNIX

Регистрация в системе (открытие счета)

Вход в систему

Виртуальные консоли

Shells и команды

Выход из системы

Смена пароля

Файлы и каталоги

Дерево каталогов

Текущий рабочий каталог

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

В традиционных UNIX-системах системный администратор присвоит вам имя и начальный пароль при вашей регистрации в системе (при заведении в системе нового пользователя). Но поскольку на своем персональном компьютере вы и системны й администратор, вы должны себя (как пользо вателя) зарегистрировать в системе, прежде чем в нее войдете (смотрите Раздел 3.2.1 ниже ). Для дальнейших разговоров возьмем условное имя ``larry''.

Кроме прочего, каждая система UNIX имеет приписанное ей hostname (хозяйское имя). Это хозяйское имя добавляет машине характе ра и очарования. Hostname используется для идентификации отдельных машин в сети, но даже если ваша машина не в сети, она все равн о должна иметь hostname. В Разделе 4.10.2 мы подробно расскажем об установке hostname на вашей машине. Например, имя машины, обсуждаемой ниже - ``mousehouse'' (мышинная норка).

В начало страницы

Регистрац ия в системе (открытие счета)

Прежде, чем вы сможете использовать систему, вы должны зарегистрировать себя в системе. Это необходимо потому, что неразум но использовать имя суперпользователя (root) для обычных нужд. Пользователь root нужен для выполнения привилегированных команд и сопровождения системы, к ак это описывается в Разделе 4.1.

Для того, чтобы зарегистрироват ь себя, вам необходимо зайт и в систему под именем root и использовать команду use radd или adduser. Об этой процедуре смотрите подробней в Разделе 4.4.

Вход в систему

При входе вы увидите на экр ане подсказку, например, такого вида:

mousehouse login:

Введите свое имя и нажмите клавишу Return. Наш герой larry напечатает следующее:

mousehouse login: larry Password:

Теперь введи те ваш пароль (passw ord). При вводе пар оль не будет отображаться на экране, так что набирайте внимательнее. Если вы неправильно набрали пароль, то увидите на экране сообщение

Login incorrect

и вам сле дует попытаться еще раз.

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

В начало страницы

Виртуальн ые консоли

Системная консоль - это монитор и клавиатура, связан ные непосредственно с системой. (Поскольку UNIX многопользовательская система, в ы можете иметь дополнительные терминалы, связанные через последовательные порты с вашей системой, но они не будут консо лями). Linux, как и некоторые другие версии UNIX, обеспечивает доступ к виртуальным консолям (или VC), которые позволяют войти в систему под нескольким и именами в одно время.

Для демонстрации этого войдите в систему (как было показано ранее). Теперь нажмите alt-F2. Вы должны снова увидеть подсказку login: , то есть перед вами вт орая виртуа льная консоль, а вы вошли через первую. Чтобы переключиться обратно на первую VC, нажмите alt-F1. Оп-ля! Вы снова на первой консоли.  

 

Свежеинстал лированный Linux возможно позволит вам работать с четырьмя первыми VC, используя от alt-F1 до alt-F4. Но возможно обеспечить работу с 12-ю VC - по одной на каждую функциональную клавишу. Как видите, использование VC может быть очень эффективным - вы можете работать на нескольких VC одновременно.

В то время, как использование виртуальных консо лей ограничено (кроме прочего, в каждый момент времени вы можете видеть только одну виртуа льную консоль) оно дает вам представление о многоп ользовательских возмож ностях UNIX. Пока вы работаете на VC #1, вы можете переключиться на VC #2 и начать работу над чем-то другим.

Shells и команды

В большинстве ваших исследований мира UNIX вы будете общаться с ним через оболочку shell. Shell - это просто программа, которая воспринимает введенное пользователем, (т.е. команды, которые вы напечатаете) и транслирует это в команды сист еме. Это мож но сравнить с прог раммой COMMAND.COM под MS-DOS, которая делает нечто похожее. Shell - это лишь один из интерфейсов UNIX. Существует много различных интерфейсов, таких как X Window System, которая позволяет выполнять команды используя мышь и клавиатуру в сочетании.

Как только вы вошли, система запускает shell и вы мо жете вводить для него команды. Вот короткий пример. Как раз Larry вошел в систему и система вновь выдала подсказку:

mousehouse login: larry Password: larry's password Welcome to Mousehouse! /home/larry#

``/home/larry#'' это по дсказка shell, показывающая, что он готов принимать команды. (Подробнее про подсказкy позже). Давайте попросим си стему сделать что-нибудь интересненькое:

/home/larry# make love make: *** No way to make target `love'. Stop. /home/larry#

Хм, как оказалось, "make" - это имя существующей в системе программы и shell пытался выполнить эту команду. (Жаль, но сис тема отнеслась к просьбе недружественно).

Это подводит нас к жгучему вопрос у: Что такое команды? Что происходит, когда вы вводите ``make love''? Первое слово командной строки ``make'' это имя ко манды, которую предполагается выполнить. Все остальное в командной строке воспринимается как аргументы команды.

Примеры:

/home/larry# cp foo bar

Здесь имя команды ``cp'', а аргументы ``foo'' и ``bar''.

Когда вы вводите команду, shell делает несколько вещей. Во-первых, смотрит на то, что может (должно) быть именем команды и является ли это внутренней для shell ко мандой. (Внутренняя, это команда, которую shell знает как выполнять. Су ществует ряд так их команд, мы о них поговорим позже). Shell также проверяет, не является ли команда синонимом другой или требуется подстановка имени. Если этого не надо делать, shell ищет соответствующ ую этому имени программу на диске. Если shell находит такую программу, он ее выполняет, передавая ей аргументы из командной строки.

В нашем п римере shell ищет пр ограмму по имени make и пытается выполнить ее с аргументом love. make - это программа, которая часто используется при компиляции больших программ, она берет в качестве аргумента имя "целевого" файла компиляции. В случае ``make love'' мы приказали команде make откомпилировать love. Поскольку make не с мог найти файла с таким именем, он с ообщил (несколько забавным образом) о невозможности выполнить команду и вернулся в подсказку.