Перевод документации драйвера NVIDIA для Linux, часть 14

Приложение I. Советы для начинающих пользователей Linux

Данный документ подразумевает, что пользователь имеет представление об основных особенностях и терминологии Linux. В этой главе содержатся советы, могущие быть полезными для начинающих пользователей. Хотя эти советы и предназначены подготовить пользователей к установке и настройке драйвера NVIDIA для Linux, их ни в коем случае не следует рассматривать как пособие по использованию или администрированию операционной системы Linux. В отличие от большинства «настольных» операционных систем, в Linux можно относительно легко нанести непоправимые повреждения системе. Если вы не имеете достаточных знаний для использования Linux, крайне рекомендуется обратиться к обучающей документации поставщика дистрибутива перед продолжением.

I1. Командная строка

Хотя новые релизы Linux предлагают графические интерфейсы рабочего стола для пользователей, значительная часть работы в Linux происходит в командной строке. Если вам знакома система Windows, командная строка Linux аналогична командной строке Windows, хотя синтаксис и использование несколько различаются.

Все команды в этой главе выполняются в командной строке. Некоторые системы настроены на загрузку в режим консоли, в таком случае пользователю сразу предлагается приглашение командной строки при входе в систему. Другие системы настроены на запуск оконного Х-интерфейса, в этом случае пользователь должен вручную открыть окно терминала или консоли. Обычно это можно сделать, поискав в меню рабочего стола программу «terminal» или «console». Хотя приглашение настраиваемо, стандартно оно содержит небольшую строку информации: один из символов #, $, или %, и курсор (может мигать), показывающий место ввода пользователем.

I2. Просмотр структуры каталогов

Linux имеет иерархическую систему каталогов. В любом месте структуры команда ls отобразит содержимое текущего каталога. Команда file выведет тип файлов в каталоге. Например,

% file filename

выведет тип файла filename. Смена каталога осуществляется командой cd:

% cd dirname

сменит текущий каталог на dirname. В любом месте структуры каталогов команда pwd выведет имя текущего каталога. Есть два специальных каталога, . и .., которые соответствуют текущему каталогу и каталогу на уровень выше в иерархии соответственно. Для любой команды, требующей имя файла или каталога в качестве аргумента, вы можете задать абсолютный или относительный путь к этому объекту. Абсолютный путь начинается с символа /, обозначающего корень или вершину структуры каталогов. Относительный путь начинается с каталога, находящегося в текущем каталоге. Относительный путь может начинаться с символов . или ... Объекты в пути разделяются символами /. Например, если текущий каталог /home/jesse, и пользователь хочет перейти в /usr/local, то он может использовать любую из нижеприведенных команд для этого:

% cd /usr/local

или

% cd ../../usr/local

I3. Права доступа и владение файлами

Все файлы и каталоги имеют права доступа и владельца, ассоциированные с ними. Это используется для предотвращения случайного или намеренного повреждения системы пользователями — не-администраторами. Права и владелец для файла или каталога могут быть определены с помощью ключа запуска -l для команды ls. Например:

% ls -l
drwxr-xr-x 2 jesse users 4096 Feb 8 09:32 bin
drwxrwxrwx 10 jesse users 4096 Feb 10 12:04 pub
-rw-r--r-- 1 jesse users 45 Feb 4 03:55 testfile
-rwx------ 1 jesse users 93 Feb 5 06:20 myprogram
-rw-rw-rw- 1 jesse users 112 Feb 5 06:20 README
%

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

Как уже сказано, последние девять колонок в первом поле показывают права доступа к объекту. Эти колонки сгруппированы по три, первая показывает права владельца файла, вторая — права группы пользователей, ассоциированной с элементом, и третья – права для всех остальных. Символы r, w, и x — соответственно, права на чтение (read), запись (write) и выполнение (execute). Например, пользователь jesse имеет права на чтение и запись файла testfile, пользователи группы users имеют права только на чтение, и все остальные имеют права тоже только на чтение. Однако, для файла myprogram, пользователь jesse имеет права на чтение, запись и выполнение (подразумевается, что myprogram — исполняемая программа), тогда как группа users и все остальные не имеют прав вообще (подразумевается, что пользователь не хочет, чтобы кто-то кроме него запускал программу). Права, владелец, и ассоциированная группа пользователей объекта могут быть изменены с помощью команд chmod, chown и chgrp соответственно. Если пользователь с соответствующими полномочиями захочет сменить владельцев файла README с jesse/users на joe/admin, ему надо сделать следующее:

# chown joe README
# chgrp admin README

Синтаксис команды chmod несколько более сложный, и имеет несколько вариаций.

Самый краткий путь установления прав для объекта — это использование триплетов цифр, по одной для пользователя, группы и всех остальных. Значение каждой цифры в триплете соотносится с комбинацией прав на чтение, запись и выполнение. Только выполнение ассоциировано с 1, только запись — с 2, и только чтение — с 4. Сочетания этих прав представляются в виде суммы отдельных прав. Чтение и выполнение представляется как 5, тогда так чтение, запись и выполнение представляется как 7. Отсутствие прав представляется как 0. Таким образом, чтобы дать пользователю права на чтение, запись и выполнение, группе на чтение и выполнение, и всем остальным никаких прав, пользователю надо выполнить следующую команду:

% chmod 750 myprogram

I4. Оболочка

Оболочка предоставляет интерфейс между пользователем и операционной системой. Задача оболочки – интерпретировать информацию, введенную пользователем, и вызвать операционную систему для выполнения чего-либо в ответ. Имеется несколько разных оболочек, каждая со свои отличным от других синтаксисом и возможностями. Две наиболее часто используемые разновидности оболочек в Linux — оболочка Борна (sh), и оболочка C (csh). У разных пользователей свои предпочтения и преимущества одной оболочки над другой, и в одной что-то делать проще (или понятней), чем в другой. Вы можете определить текущую оболочку, посмотрев значение переменной среды SHELL командой

% echo $SHELL

Вы можете запустить новую оболочку, просто введя ее имя в командной строке:

% csh

или

% sh

и вы можете запустить программу из требуемой оболочки, введя имя оболочки перед именем программы:

% sh myprogram

Оболочка пользователя по-умолчанию при входе в систему определена тем, кто создавал его учетную запись.

Несмотря не наличие многих различий в синтаксисе между оболочками, наиболее часто встречаемое — способ установки переменных среды.

I5. Установка переменных среды

Каждый сеанс имеет свои переменные среды, представляющие собой пары из имени/значения и задающие поведение запускаемых приложений и оболочки. Примером переменной является PATH, задающая оболочке каталоги для поиска исполняемых файлов, введенных пользователем в командной строке. Если вы уверены в наличии программы/команды, но оболочка сообщает о том, что не может их найти и выполнить, скорее всего это проблема с переменной PATH. Переменные среды устанавливаются различными способами в зависимости от оболочки. Для оболочки Борна (sh) это делается следующим образом:

% export MYVARIABLE="avalue"

Тогда как для оболочки C:

% setenv MYVARIABLE "avalue"

В обоих случаях кавычки нужны только если значение содержит пробелы. Команда echo может быть использована для просмотра значения переменной среды:

% echo $MYVARIABLE

Команды для установки значений переменных среды могут также включать ссылки на другие переменные (начинающиеся с символа $), включая самих себя. Чтобы добавить путь /usr/local/bin в начало пути поиска, и текущий каталог . в конец пути поиска, надо ввести:

% export PATH=/usr/local/bin:$PATH:.

в оболочке Борна, и

% setenv PATH /usr/local/bin:${PATH}:.

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

I6. Редактирование текстовых файлов

Существуют различные редакторы текста для Linux. Некоторые из них требуют оконного Х-интерфейса, другие работают из терминала/консоли. В целом полезно владеть навыками работы с текстовым редактором терминального типа, так как бывает необходимо редактировать файлы, требующиеся для запуска Х-интерфейса. Три наиболее популярных редактора — vi, pico и emacs, каждый из которых может быть запущен из командной строки, с возможным добавлением имени файла, который надо редактировать. Редактор «vi», возможно, является наиболее популярным, так же как и наименее понятным из трех. Редактор «pico» доступен и понятен для начинающего пользователя, хотя не часто бывает установлен в системе. Если в вашей системе pico не установлен, вы можете попробовать схожий редактор под названием «nano». Редактор«emacs» широко распространен и очень расширяемый, однако может оказаться слишком громоздким для не-Х среды. Новые версии каждого редактора содержат встроенную помощь, дополнительная информация может быть найдена в руководствах пользователя и на информационных сайтах (обратитесь к соответствующим разделам в секции «Руководство и информационные страницы по Linux» ниже). Многие программы используют переменную среды EDITOR для определения запускаемого редактора при необходимости ручной правки.

I7. Пользователь ROOT

После установки все дистрибутивы создают учетную запись администратора по-умолчанию с именем «root». Многие вещи в системе может делать только root или пользователь с такими же правами, одна из этих вещей – установка драйвера NVIDIA. Мы должны предупредить, что использование записи 'root' содержит в себе значительный элемент риска, так как, работая как пользователь root достаточно легко можно вывести систему из строя или повредить ее. Есть три способа работать с правами root. Вы можете войти в систему как пользователь root точно также, как входит любой другой пользователь, вы можете воспользоваться переключением между пользователями по команде su в командной строке, или же, в некоторых системах, использовать утилиту sudo, позволяющую пользователям запускать программы как root, сохраняя при этом записи их действий. Последний метод особенно полезен в случае, когда пользователь повредил систему и не может вспомнить, что делал (или не признается, что что-то делал). Полезно следовать правилу использовать права root только на время выполнения задачи, требующей этих прав (еще одно полезное свойство sudo).

I8. Загрузка в различный уровень исполнения

Уровни исполнения (Runlevels) в Linux определяют, какие сервисы запускаются и завершаются автоматически при загрузке или выключении системы. Уровни исполнения обычно лежат в диапазоне от 0 до 6, причем уровень 5 обычно запускает оконный Х-интерфейс (уровень 0 — аварийная остановка системы, а уровень 6 — перезагрузка системы). Стоит следовать правилу устанавливать драйвер NVIDIA для Linux при незапущенном Х-интерфейсе, также полезно предотвращать автоматический запуск Х-интерфейса в случае проблем с установкой (иначе можно столкнуться с ситуацией, когда неисправная системы пытается сразу запустить Х-интерфейс и зависает, не давая вам сделать необходимые исправления для работы Х-интерфейса). В зависимости от типа установленной сети, уровни исполнения 1, 2 или 3 должны быть достаточными для установки драйвера. Уровень 3 обычно включает сетевые сервисы, и если утилиты, используемые в системе во время установки, зависят от сетевого тома, то уровни 1 и 2 будут недостаточными. Если система загружается в режим консоли, вам не понадобится что-либо менять. Если же сразу загружается оконный Х-интерфейс, с графическим интерфейсом входа в систему и рабочего стола, вам понадобится выйти из Х-интерфейса и сменить уровень исполнения по-умолчанию.

В большинстве дистрибутивов уровень исполнения по-умолчанию хранится в файле /etc/inittab, хотя вы можете это проверить в документации к дистрибутиву. Строка, задающая уровень исполнения, выглядит как:

id:n:initdefault:

или похоже, где n — уровень исполнения. Файл /etc/inittab должен редактироваться с правами root. Обратитесь к разделам о редактировании файлов и учетной записи root выше, если эти понятия вам незнакомы. Также рекомендуется создать копию файла перед его правкой, поскольку если вы только начинаете осваивать текстовые редакторы Linux, вы можете случайно повредить файл:

# cp /etc/inittab /etc/inittab.original

Строка должна быть отредактирована так, чтобы требуемый уровень стал уровнем по-умолчанию (1, 2, или 3 в большинстве систем):

id:3:initdefault:

После сохранения изменений выйдите из Х-интерфейса. После завершения установки драйвера вы можете вернуть уровень исполнения по-умолчанию в исходное состояние либо редактированием /etc/inittab снова, либо восстановлением резервной копии файла.

Различные дистрибутивы предлагают разные способы выхода из Х-интерфейса. В большинстве системе утилита «init» изменяет текущий уровень исполнения. Она может быть использована для изменения уровня исполнения на такой, при котором Х-интерфейс не запускается:

# init 3

Есть также другие способы выхода из Х-интерфейса. Обратитесь к документации дистрибутива.

I9. Руководства и информационные страницы LINUX

Руководства или информационные страницы обычно устанавливаются в процессе установки системы. Эти документы обычно достаточно свежие и содержат исчерпывающую информацию об использовании системных программ и утилит. Также, многие программы поддерживают ключ запуска --help, выводя по нему список типичных опций для этой программы. Для просмотра страницы руководства по той или иной команде введите в командной строке:

% man commandname

где commandname — интересующая вас команда. Схожим образом, ввод

% info commandname

выдаст информационную страницу для команды. В зависимости от приложения, один из способов может выдать более актуальную информацию. Интерфейс информационной системы интерактивен и содержит средства навигации. Если вы не можете найти страницу руководства для интересующей команды, вы можете добавить дополнительные объекты в переменной среды MANPATH. Обратитесь к секции о переменных среды выше.

Вопросы? Поправки? Комментарии? — в нашей конференции.

Перевод сделан на основе документа README к драйверу версии 260.19.21. Все права на оригинальную документацию драйвера принадлежат компании NVIDIA.

 / 
DrEvil