Главная / Дисциплины / Введение в администрирование ОС Linux / Работа в Linux в графической оболочке и командной строке
Введение в графический интерфейс
В Linux работа в графическом режиме осуществляется с помощью системы X Window (иксы). Данная система не предоставляет непосредственно графический интерфейс, а предоставляет другим программам средства для работы с видеокартой, монитором, клавиатурой и мышью. На основе этой системы работают графические интегрированные среды KDE и GNOME.Введение в интерфейс командной строки
Синтаксис команд:имя_команды [короткие_ключи] [длинные_ключи] [аргументы]
имя_команды | командой может является любой исполняемый файл (например, ls ). |
короткие_ключи | короткие ключи состоят из одного символа и начинаются с символа - и указываются через пробел (например, ls -l -a ). Для компактности короткие ключи могут объединяться в один ключ (например, ls -la ). |
длинные_ключи | длинные ключи состоят из нескольких символов, образующих осмысленные слова и начинаются с двух символов - и указываются через пробел (например, ls --all ). Длинные ключи НЕ МОГУТ объединяться в один ключ. |
Краткую справку о команде можно получить вызвом команды с ключом
-h
или --help
. Подробную справку можно получить с помощью справочной системы man
:man имя_команды
Перемещение по тексту вниз и вверх с помощью стрелок и клавиш
<PgUp>
и <PgDn>
. Выход нажатием клавиши <q>
.Основные команды для работы с файлами
Команда | Описание |
pwd | текущий каталог |
ls | список файлов в текущем каталоге |
cd | сменить каталог |
mkdir | создать каталог |
rmdir | удалить каталог |
cp | копировать файл |
mv | переименовать/переместить файл |
rm | удалить файл |
cat | вывести содержимое файла на консоль |
vim | редактировать файл |
find | найти файл |
which | найти исполняемый файл |
exit | выйти из системы |
shutdown -r now | перезагрузить компьютер |
shutdown -h now | выключить компьютер |
Прервать выполнение команд можно с помощью комбинации клавиш
<Ctrl+C>
.Имена файлов
Имена файлов и каталогов могут иметь длину до 255 символов.В именах нельзя использовать символ
/
и не рекомендуется использовать символы, имеющие специальное значение для командной оболочки:~ ! @ # $ & % * ( ) [ ] { } ' " \ : ; > < ' пробел
Служебные (скрытые) файлы начинаются с символа
.
(точка) и ни чем более не отличаются от обычных файлов.
Типы файлов
Тип файла | Описание | Обозначение (команда ls) |
обычные файлы | последовательность байтов (текст, исполняемые программы и т.п.) | - |
каталоги | именованные наборы ссылок на другие файлы | d |
символические ссылки | ссылки на другие файлы | l |
файлы физических устройств | 1. блочные устройства 2. символьные устройства | b c |
именованные каналы | буферы типа FIFO (First In - First Out, первым вошел - первым вышел) для обмена данными между программами | p |
сокеты | точки сетевого соединения двух программ | s |
Каталоги
Каталог создается командой:mkdir имя_каталога
При создании каталога в нем создаются два псевдокаталога:
.
(точка) и ..
(две точки).
Файл | Описание |
. | содержит ссылку на этот каталог |
.. | содержит ссылку на родительский каталог |
Для удаления каталога служит команда:
rmdir имя_каталога
Символические ссылки
Символическая ссылка создается командой:ln -s имя_файла имя_ссылки
Для просмотра ссылки служит команда:
readlink имя_ссылки
Ссылка удаляется так же, как и обычный файл:
rm имя_ссылки
Файлы физических устройств
Файлы представляют собой последовательность байтов. Исходя из этого, в Linux устройства, обменивающиеся потоками байтов, также представляются в виде файлов. Файлы устройств являются указателями на соответствующие драйверы устройств в ядре. Файл устройства создается командой:mknod имя_устройства тип_устройства старший_номер младший_номер
Атрибут | Описание |
тип_устройства |
в Linux существуют блок-ориентированные и байт-ориентированные устройства. В блочные устройства (например, диски)
данные передаются блоками и для обмена необходим буфер. В символьные устройства (например, принтер) данные передаются
посимвольно и буфер не требуется.b - блочное устройствос - символьное устройство
|
старший_номер | указывает тип устройства. Список старших номеров хранится в файле /proc/devices |
младший_номер | порядковый номер устройств одного типа (с одинаковым старшим номером) |
Файлы наиболее часто используемых устройств.
Файл | Устройство |
null | пустое устройство |
tty1 | первая консоль |
tty2 | вторая консоль |
tty3 | третья консоль |
tty4 | четвертая консоль |
tty5 | пятая консоль |
tty6 | шестая консоль |
tty7 | седьмая консоль |
pts/1 | первый виртуальный терминал |
mouse0 | первая мышь |
audio0 | первая звуковая плата |
ttyS0 | первый последовательный порт (COM1 в MS-DOS) |
lp0 | первый параллельный порт |
eth0 | первая сетевая карта |
fd0 | первый дисковод для гибких дисков |
cdrom | привод CD-ROM |
hda | первый IDE-диск |
sda | первый SCSI-диск |
ram | виртуальный диск |
random | генератор псевдослучайных чисел |
urandom | генератор псевдослучайных чисел с учетом информации от клавиатуры и мыши |
Именованные каналы
Именованный канал - это буфер типа FIFO (First In - First Out, первым вошел - первым вышел) для обмена данными между программами. Одна программа производит запись в именованный канал, а другая программа считывает эти данные из именованного канала.Именованный канал создается командой:
mkfifo имя_канала
Именованный канал удаляется так же, как и обычный файл:
rm имя_канала
Сокеты
Сокеты создаются программно. Например, код программы на C++ может иметь иметь следующий вид:#include <sys/types.h> #include <sys/socket.h> int fd = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); // Далее действия с созданным сокетом
Потоки ввода-вывода
Каждой выполняющейся программе (процессу) соответствуют три потока:Поток | Название |
stdin | стандартный ввод |
stdout | стандартный вывод |
stderr | стандартный поток сообщений об ошибках |
По умолчанию потоки ввода-вывода связаны с консолью (клавиатура+монитор):
stdin | - с клавиатурой, |
stdout | - с монитором, |
stderr | - с монитором. |
Стандартные потоки можно перенаправить в файл или стандартный поток другого процесса.
Для перенаправления стандартного вывода служит символ
>
. Например, стандартный поток вывода можно перенаправить вместо экрана в файл:cat > hello.txt
Ввод символов с клавиатуры заканчивается нажатием клавиши
<Enter>
и затем комбинации клавиш <Ctrl+D>
.В случае, если ведется перенаправление в файл, то можно перенаправляемые данные дописывать к уже существующему файлу (если не существует, то будет создан) с помощью символа
>>
.cat >> hello.txt
Стандартный ввод перенаправляется символом
<
.Стандартный поток сообщений об ошибках перенаправляется символом
2>
.Для перенаправления стандартного вывода одной команды на стандартный ввод другой команды применяется символ
|
. Это так называемый конвейер команд. Благодаря этому средству можно создавать цепочки команд для обработки данныхКоманды-фильтры
Команда | Описание |
more имя_файла | постранично выводит на экран текстовый файл. Перемещение вниз нажатием клавиши <ENTER> . Выход нажатием клавиши <q> . |
less имя_файла | выводит на экран текстовый файл. Позволяет перемещаться по тексту вниз и вверх с помощью клавиш стрелок и клавиш <PgUp> и <PgDn> . |
grep фраза имя_файла | выводит на экран строки из текстового файла, в которых присутствует указанная последовательность символов (фраза). |
Шаблоны имен файлов
Для задания шаблонов поиска файлов могут использоваться стандартные символы: *, ?, [].Шаблон | Описание |
* | любое количество любых символов |
? | только один любой символ |
[abc] | любой символ из указанных в скобках |
[a-c] | любой символ из указанного в скобках диапазона символов |
[a-cA-C0-9] | любой символ из указанных в скобках диапазонов символов |
Переменные окружения оболочки bash
Переменная окружения | Описание | ||||||||||||||||||||||
PATH | список каталогов, в которых необходимо искать исполняемые файлы | ||||||||||||||||||||||
TMOUT | содержит значение времени ожидания до автоматического выхода из оболочки. Время указывается в секундах | ||||||||||||||||||||||
PS1 | содержит специальные символы, заключенные в двойные кавычки:
|
Сценарии оболочки bash
При необходимости выполнения последовательности команд их можно записать в текстовый файл (получится сценарий действий), сделать файл исполняемым и вызвать этот файл на исполнение. В первой строке файла сценария указывается путь к интерпретатору команд, а далее следуют команды. Для добавления комментариев используется символ#
(диез),
кроме первой строки. Например, следующий сценарий создает каталог и записывает в него два файла:#!/bin/bash mkdir test cd test echo "First file." > file_01.txt echo "Second file." > file_02.txtФайлам сценариев обычно дают расширение
.sh
.Текстовый редактор vim
В текстовом редакторе vim существуют два режима работы: командный и редактирования. При запуске редактор находится в командном режиме, то есть можно вводить специальные команды.Навигация по тексту
k | вверх |
j | вниз |
h | влево |
l | вправо |
+ | на строку вниз |
- | на строку вверх |
w | на слово вперед |
e | на слово назад |
0 | в начало строки |
$ | в конец строки |
H | в начало экрана |
L | в конец экрана |
10G | перейти к строке номер 10 |
$G | перейти к последней строке |
Копирование текста
yw | копировать слово |
yy | копировать строку |
Вставка текста
p | вставить в следующую строку |
P | вставить в предыдущую строку |
Удаление текста
x | удалить символ в позиции курсора |
X | удалить символ перед курсором |
dw | удалить слово |
dd | удалить строку |
D | удалить от курсора и до конца строки |
Отмена действий
u | отмена введенной команды |
Ctrl+R | возврат отмененной команды |
Поиск и замена текста
/образец | искать текст вниз от курсора |
?образец | искать текст вверх от курсора |
n | повторить поиск в том же направлении |
N | повторить поиск в обратном направлении |
:%s/текст1/текст2/c | найти текст1 и заменить на текст2 каждый раз спрашивая подтверждение |
Для перехода в режим редактирования необходимо нажать клавишу i. Для возврата в командный режим нажать клавишу
<Esc>
.Сохранение файла и выход
:w | сохранить файл |
:w новое_имя | сохранить файл под новым именем |
:w! новое_имя | сохранить файл под новым именем, предварительно удалив одноименный файл |
:q | выйти из редактора |
:wq | сохранить и выйти |
:q! | выйти без сохранения |
Начальные сведения о структуре файловой системы
Файловая система представляет собой логическую структуру каталогов и файлов. Структура стандартных каталогов почти одинакова в различных дистрибутивах Linux и координируется группой разработчиков http://www.pathname.com/fhs.Каталог | Описание |
/bin | основные пользовательские программы |
/sbin | программы системного администрирования |
/boot | файлы загрузчика системы |
/home | каталоги и файлы пользователей |
/dev | файлы устройств |
/etc | файлы настроек |
/lib | системные библиотеки и модули ядра |
/lost+found | восстановленные части файловой системы после некорректного размонтирования |
/media | точка монтирования компакт-дисков и flash-карт |
/mnt | временные точки монтирования |
/opt | дополнительные пакеты программ |
/proc | виртуальная файловая система, содержащая файлы с информацией о выполняющихся в данный момент процессах |
/root | домашний каталог суперпользователя |
/tmp | временные файлы |
/var | каталоги данных, файлы журналов, почтовые ящики, очереди печати и т.д. |
/usr | программы, исходные коды, документация |
Полный список основных каталогов можно получить из справочного руководства
man hier
.Расположение основных конфигурационных файлов
Имя файла | Назначение |
/etc/profile | стандартные параметры окружения всех пользователей |
/etc/bashrc | параметры приглашения командной строки и псевдонимы команд. Информация может быть переопределена в пользовательском файле ~/.bashrc |
~/.bash_profile | параметры окружения пользователя |
~/.bashrc | параметры приглашения командной строки и псевдонимы команд |
~/.bash_logout | действия при завершении сеанса работы пользователя |
/etc/X11/xorg.conf | настройки системы X Window |
В файле
~/.bashrc
можно задать значения переменных окружения. Например, в конце файла ~/.bashrc
могут быть записаны следующие строки:
export PS1="[\u@\h \W]\$ " export TMOUT=600
Работа с протоколами системы
Журналы (логи) работы программ находятся в каталоге/var/log/
. Например, для просмотра последних 10 строк
журнала системных сообщений /var/log/messages
можно использовать команду:tail /var/log/messages
Для вывода последних 20 строк необходимо выполнить команду:
tail -20 /var/log/messages
Для вывода первых 20 строк необходимо выполнить команду:
head -20 /var/log/messages
Ссылки по теме
Информация о системе X Window (X.Org Project)Часть 1. Знакомство с Mandriva Linux. Глава 7. Использование KDE
Часть 1. Знакомство с Mandriva Linux. Глава 8. Использование GNOME
Использование UNIX, Часть 1: Работа с командной строкой
Протоколы в Linux