Linux, являясь многозадачной многопользовательской операционной системой, позволяет значительному число людей одновременно запускать различные приложения на одном и том же компьютере.
Этим система Linux отличается от системы MS-DOS, например, где в одно и то же время на компьютере может работать только один человек.
Опции команд Linux обычно начинаются с символа -
, после которого можно указать сразу несколько опций. Например, вместо команды ls -l -F
можно ввести команду ls -lF
.
В качестве аргументов команд Linux могут выступать списки имён файлов или каталогов. Например, аргументами команды cp
выступают имена файлов, которые будут копироваться. Список копируемых файлов замыкается именем файла (или каталога), куда будут копироваться файлы. При копировании более чем одного файла в конце должно стоять имя каталога.
- Создание имени пользователя
- Вход в систему
- Виртуальная консоль
- Оболочки и команды
- Выход из системы
- Изменение пароля
- Файлы и каталоги
- Дерево каталогов
- Текущий каталог
- Обращение к домашнему каталогу
- Движение по дереву каталогов
- Просмотр содержимого каталогов
- Создание новых каталогов
- Создание новых файлов
- Смена владельца файла или группы файла
- Копирование файлов
- Перемещение файлов
- Уничтожение файлов и каталогов
- Просмотр содержимого файлов
- Экранная документация
Создание имени пользователя
Перед началом работы в только что установленной системе Linux, необходимо создать себе имя для повседневной работы. Нежелательно использовать для этого имя root
, которое резервируется для выполнения особых команд и для работ по поддержанию работоспособности системы.
Для создания имени пользователя, следует войти в систему как пользователь root
и использовать команду useradd
(или adduser
).
Вход в систему
Обычно при входе в систему на экране появляется следующее приглашение:
localhost login
После ввода имени пользователя и нажатия клавишы Enter
появится предложение ввести пароль:
localhost login: oleg
Password:
После этого следует ввести пароль (набираемые символы на экране не видны). При неверном вводе пароля на экране появится следующее сообщение:
localhost login: oleg
Password:
Login incorrect
login:
После правильного ввода имени пользователя и пароля происходит вход в систему.
Виртуальная консоль
Консоль системы представляет собой монитор и клавиатуру, непосредственно подключённые к компьютеру. Система Linux, подобно другим версиям системы UNIX, предоставляет доступ к виртуальным консолям, с которых можно осуществлять одновременно несколько сеансов работы в системе.
Для ознакомления с работой в виртуальных консолях следует войти в систему и нажать комбинацию клавиш Alt-F2
. Снова появится приглашение login:
(это вторая виртуальная консоль). Для возврата к первой виртуальной консоли необходимо нажать комбинацию клавиш Alt-F1
(происходит возврат в уже начатый сеанс работы).
Только что установленная система Linux предоставляет, как правило, доступ к первым шести виртуальным консолям, к которым можно обращаться, используя комбинации клавиш Alt-Fx
. Таким образом, уже на начальном этапе пользователь получает мощный инструмент, позволяющий работать в одно и то же время сразу в нескольких сеансах.
Оболочки и команды
Большая часть общения с системой Linux происходит через посредство командных оболочек (shell). Командная оболочка — это программа, воспринимающая команды, вводимые с клавиатуры, и преобразующая их в инструкции операционной системе.
После входа в систему, операционная система запускает командную оболочку, после чего можно вводить команды. Команда — это первое слово в командной строке. Все остальное в командной строке воспринимается в качестве аргументов этой команды. В качестве примера создадим (mkdir
) каталог commands
:
$ mkdir commands
Выход из системы
Для выхода из системы нужно после приглашения оболочки ввести команду:
exit
Изменение пароля
Для смены пароля нужно ввести команду passwd
. Команда предложит ввести старый пароль, а потом — новый. Затем команда попросит ввести новый пароль еще раз для подтверждения.
Файлы и каталоги
В операционной системе Linux используется понятие файла (file). Файл — это некоторый „кусок“ информации, имеющий собственное имя (filename). Следует знать, что на диске информация сохраняется только в виде отдельных файлов.
Имена обычных файлов в Linux могут иметь длину до 255 символов и состоять из любых символов, кроме символа с кодом 0
и символа /
(слэша). Однако имеется еще ряд символов, которые имеют в оболочке shell
специальное значение и которые поэтому не рекомендуется включать в имена. Это следующие символы:
! @ # $ & ~ % * ( ) [ ] { } ' " \ : ; ><c ` пробел
Понятие файла тесно связано с понятием каталога (directory). Каталог — это набор файлов. Пользователи Windows называют каталог „папкой“, по аналогии с папкой, в которой содержится много различных листов. Однако эта аналогия неверна, так как каталог содержит не собственно файлы, а ссылки на файлы, а также на другие каталоги. Каталогам даются имена, по которым их можно распознавать. Кроме этого, каталоги образуют древовидную структуру; иными словами, существует единственный корневой каталог, содержащий внутри себя все остальные каталоги.
При обращении к файлу указывается путь (path), который может состоять из имени каталога (имен вложенных друг в друга каталогов), за которым пишется имя файла. Имена при этом отделяются друг от друга слэшем (/
). Например:
$ less /home/oleg/docs/mokshadharma/index.xml
В приведенном примере можно видеть, что имена разделяются символом /
. Именно по этой причине они и не могут его содержать.
Дерево каталогов
В большинстве систем Linux используется стандартное расположение файлов, так что местоположение основных системных файлов и программ легко найти. Каталоги образуют структуру в виде дерева, которое начинается с каталога /
. Этот каталог называется также корневым каталогом (root directory). Непосредственно к каталогу /
примыкают важные подкаталоги /bin
, /etc
, /dev
, /usr
и другие.
Текущий каталог
В любой момент времени отдаваемая команда относится к текущему каталогу (current directory). При входе в систему текущим каталогом назначается домашний каталог (в нашем случае /home/oleg
). Обращаясь к файлу, можно указывать как полный путь к этому файлу, так и только путь от текущего каталога.
Предыдуший пример при нахождении, например, в каталоге /home/oleg/docs
будет выглядеть так:
$ less mokshadharma/index.xml
Если путь к файлу (например, mokshadharma/index.xml
) начинается с символа, отличного от /
, то это значит, что к файлу обращаются относительно текущего каталога. Такой способ обращения называется относительным путём (relative path).
Если имя файла начинается со знака /
, то система интерпретирует это как полный путь (full path), то есть путь, который ведёт к файлу, начиная с корневого каталога /
(/home/oleg/docs/mokshadharma/index.xml
). Это ещё называют абсолютным путём (absolute path
).
Обращение к домашнему каталогу
В командной оболочке bash
, включаемой почти во все вновь устанавливаемые системы Linux, домашний каталог можно обозначать символом ~
. Например, команда:
$ less ~/docs/mokshadharma/index.xml
эквивалентна команде:
$ less /home/oleg/docs/mokshadharma/index.xml
Движение по дереву каталогов
Команда, используемая для движения по дереву каталогов, называется cd
— сокращение от change directory (изменить каталог). В качестве примера использования команды cd
перейдем в каталог /home/oleg/docs/mokshadharma/
:
$ cd ~/docs/mokshadharma
Теперь из текущего каталога можно обратиться к файлу следующей командой:
$ less index.xml
Для перехода в ближайший каталог более высокого уровня существует команда:
$ cd ..
Для перехода в домашний каталог можно отдать команду cd
без аргументов:
$ cd
Просмотр содержимого каталогов
Команда ls
(сокращение от list) выводит на экран список файлов и каталогов (опция -F
позволяет получить более полную инфомацию):
$ ls -F ~/docs/mokshadharma
ch/ ch01.html ch02.html ch03.html cron.sh* docbook.xsl index.html index.xml pr01.html pt01.html style/
В листинге видим, что к концу имени подкаталогов приписан символ /
, а к концу имени исполняемого файла (executable) приписан символ *
.
Создание новых каталогов
Для создания нового каталога используется команда mkdir
(сокращение от make directory). Для примера создадим новый каталог и войдем в него:
$ mkdir example
$ cd example
Создание новых файлов
Для создания файлов используются команды touch
и cat
Командой touch
создается пустой файл:
$ touch file_name
Для создания файла командой cat
, предназначенной для перенаправления вывода, на вход ее направляют данные со стандартного ввода (клавиатуры), а вывод команды — в новый файл:
$ cat > new_file
После того, как будет введен необходимый текст, нажимается комбинация клавиш Enter
и Ctrl-D
или Enter
и Ctrl-C
, и все введенное будет записано в new_file
. Конечно, таким образом создаются, в основном, короткие текстовые файлы.
Смена владельца файла или группы файла
Выполнять смену владельца может только суперпользователь, смену группы может выполнить сам владелец файла или суперпользователь. Для того, чтобы иметь право сменить группу, владелец должен дополнительно быть членом той группы, которой он хочет дать права на данный файл.
Для смены владельца используется команда chown
:
# chown oleg file_name
Для смены группы используется команда chgrp
:
# chgrp usergrp file_name
Копирование файлов
Для копирования файлов используется команда cp
(сокращение от copy):
$ cp ~/docs/mokshadharma/index.xml ~/example
$ cd ~/example
$ ls -F
index.xml
Для указания текущего каталога может использоваться символ .
:
$ cd ~/example
$ cp ~/docs/mokshadharma/index.xml .
$ ls -F
index.xml
Перемещение файлов
Для перемещения файлов используется команда mv
(move):
$ mv index.xml index2.xml
$ ls -F
index2.xml
Команда mv
может использоваться и для перемещения файлов в другой каталог:
При переносе файлов в другой каталог следует соблюдать осторожность, так как если там уже находится файл с таким же именем, то он будет переписан.
Уничтожение файлов и каталогов
Для уничтожения файлов используется команда rm
(сокращение от remove):
$ rm index.xml
$
По умолчанию команда rm
не всегда настроена таким образом, чтобы выдавать предупреждения перед уничтожением файла.
Для уничтожения каталогов используется команда rmdir
, которая уничтожает только пустой каталог.
$ cd ..
$ rmdir example
$ ls -F
$
Для уничтожения каталогов, содержащих файлы и подкаталоги, используется команда rm -rf
, пользоваться которой следует с крайней осторожностью, так как содержимое уничтожается ей без предупреждения.
Просмотр содержимого файлов
Для просмотра содержимого файлов используются команды more
и cat
. Команда more
выводит содержимое файла частями (по одному экрану за один раз), а команда cat
выводит весь файл сразу. Усовершенствованная версия more
называется less
.
Для просмотра содержимого, выведенного на экран командой less
используются клавишы B
и Space
(можно использовать также Page Up
и Page Down
).
Экранная документация
Почти все системы семейства UNIX, включая систему Linux, имеют экранную документацию (man pages). Её тексты содержат документацию по системным командам, ресурсам, конфигурационным файлам и т. д. и могут быть выведены на экран в процессе работы.
Для доступа к экранной документации используется команда man
(сокращение от manual). Например, для просмотра оций команды ls
следует ввести команду:
$ man ls