Управление загрузкой компьютера. Базовое администрирование системы. Установка и удаление программ. Добавление/удаление репозиториев. Запуск программ в консоли
Выбери формат для чтения
Загружаем конспект в формате pdf
Это займет всего пару минут! А пока ты можешь прочитать работу в формате Word 👇
ЛЕКЦИЯ
УПРАВЛЕНИЕ ЗАГРУЗКОЙ КОМПЬЮТЕРА. БАЗОВОЕ
АДМИНИСТРИРОВАНИЕ СИСТЕМЫ. УСТАНОВКА И УДАЛЕНИЕ
ПРОГРАММ. ДОБАВЛЕНИЕ/УДАЛЕНИЕ РЕПОЗИТОРИЕВ. ЗАПУСК
ПРОГРАММ В КОНСОЛИ.
Базовое администрирование системы. Сетевое администрирование
Linux. Сетевая модель OSI. Сетевое администрирование Linux. Протокол IP.
Сетевое администрирование Linux. Протокол UDP. Работа с пакетами в
Linux. Добавление/удаление репозиториев.
1
1 БАЗОВОЕ АДМИНИСТРИРОВАНИЕ СИСТЕМЫ
1.1 Сетевое администрирование Linux. Сетевая модель OSI
Идея передачи данных по сети на большие расстояния возникла очень
давно. Первые компьютерные сети работали в режиме разделения времени,
когда подключения одного компьютера к другому было возможно только в
определенный временной интервал. Такие сети были основаны на технологиях
компании IBM, выпускающей в то время большие компьютеры – мэйнфрэймы.
Появление локальных сетей в начале 80-х годов прошлого века с
появлением в конце 80-х интернет произвело поистине революцию в мире
информации. Но вместе с появлением новых возможностей, появилась и задача
управления сетями. Unix-системы, традиционно занимавшие роль систем,
использующих возможности сети, оказались в выигрышном положении, а
специалисты, знакомые с их возможностями – высокооплачиваемыми и всегда
требуемыми кадрами.
В 1984 году международная организация по стандартизации (ISO)
создала эталонную модель взаимодействия открытых систем (или OSI – Open
System Interconnection). Модель решает задачу перемещения данных по сети
путем распределения ее по 7 уровням, которыми управлять легче, нежели
единой целостной системой.
Уровни более или менее независимы друг от друга, так что задачи,
связанные с каждым из них тоже могут выполняться независимо. К этому
тезису мы еще вернемся.
Итак, вот эти уровни:
Уровень приложений: это ближайший к пользователю уровень OSI . В
задачи, выполняемые на этом уровне входит определение доступности
ресурсов,
аутентификации
(определение
подлинности)
пользователя,
отображения информации и т.п. В качестве примеров можно привести
протоколы FTP (file transfer protocol), SMTP (simple mail transfer protocol), HTTP
2
(hyper text transfer protocol).
Уровень представлений: обеспечивает различные кодирования и
преобразования, которым подвергаются данные приложения. Популярные
протоколы уровня представлений это MPEG– стандарт сжатия и кодирования
видео, GIF, JPEG, PNG – стандарты сжатия и кодирования графических
изображений, SSL – защищенные соединения.
Сеансовый уровень: на этом уровне устанавливаются сеансы обмена
данными, происходит их управление и завершение. Наиболее известным
протоколом этого уровня являемся протокол SMB (server message block) –
передача файлов в сетях Windows.
Транспортный уровень: принимает данные от более высокого уровня и
разбивает их на части для передачи по сети. Как правило, транспортный
уровень "отвечает" за доставку и правильную сборку данных. Именно на этом
уровне происходит управление потоками данных, передаваемых по сети.
Наиболее известные протоколы транспортного уровня это TCP, UDP,
SPX.
Сетевой уровень определяет сетевой адрес, отвечает за маршрутизацию
пакетов. Сетевой уровень определяет логическое устройство сети.
Известнейшие протоколы сетевого уровня: IP, X25, IPX.
Канальный уровень: обеспечивает надежную передачу данных в
физической сети. Спецификации канального уровня определяют важнейшие
характеристики сети, такие как размер пакета, пропускная способность и т.п.
Также на канальном уровне определяется физическое (MAC - управление
доступом к носителю) устройство сети посредством присвоения ему
уникального MAC-адреса (или без таковых в соединениях точка-точка).
Наиболее известные протоколы канального уровня: Ethernet, Token Ring,
PPP, DSL, ATM и др.
Физический
уровень
модели
OSI:
регламентирует
физические,
механические процедурные спецификации. Проще говоря, физический уровень
3
определяет среду передачи – витая пара, медный провод, оптоволоконный
кабель и др.
Говоря ранее о независимости разных уровней друг от друга я имел в
виду следующее: протокол Ethernet (канальный уровень) может работать как на
витой паре, так и на оптоволоконном или коаксиальном кабеле, и вместе с тем
на базе Ethernet может быть построена сеть IP, IPX или, например, AppleTalk.
В состав семейства протоколов TCP/IP входят 8 протоколов, не считая
сторонних протоколов маршрутизации. Лояльность разработчиков этого
семейства
протоколов
позволила
использовать
любой
протокол
маршрутизации, однако в стандарте TCP/IP определен и собственный.
Начнем с нижнего уровня и перечислим их.
ARP – Address Resolution Protocol – протокол преобразования адресов.
Обеспечивает преобразование сетевых адресов в адреса физических устройств
MAC. Работает одновременно на трех уровнях – канальном, сетевом и уровне
приложений.
RARP – Reverse Address Resolution Protocol – протокол обратного
преобразования адресов. Обеспечивает преобразования MAC-адреса в IP-адрес.
Для работы требует наличие сервера RARP c таблицей преобразования. Чаще
всего используется для загрузки бездисковых рабочих станции, которые при
запуске не знают своего IP-адреса. Работает одновременно на двух уровнях –
канальном и сетевом.
DHCP – Dynamic Host Configure Protocol – протокол динамической
конфигурации хоста. Позволяет присваивать IP-адреса, маршрут по умолчанию
и некоторую другую сетевую информацию о сети IP-устройствам. Работает
одновременно на двух уровнях – канальном и сетевом.
IP – Internet Protocol – протокол сетевого уровня, который содержит
информацию об адресе логического устройства сети и некоторую информацию
о маршрутизации пакетов в сети. Является основным сетевым протоколом в
наборе протоколов TCP/IP . Имеет две основные функции – передачу
4
дейтаграмм (блоков данных) по сети с наименьшими затратами без
подтверждения соединения и обеспечение фрагментации (разбивки) пакетов и
последующей сборки для поддержки передачи протоколу канального уровня с
различным максимальным размером блоков передаваемых данных.
ICMP - Internet Control Message Protocol – протокол контроля
сообщений в сети Internet – обеспечивает создание и отправку пакетов с
отчетами об ошибках и другой информации об обработке IP-пакетов , а также
контроля доступности узлов в сети. Работает на сетевом уровне модели OSI .
IRDP – ICMP Router-Discovery Protocol – ICMP-протокол обнаружения
маршрутизатора: использует объявления и запросы маршрутизаторов, чтобы
определить адреса маршрутизаторов соседних сетей. Работает на сетевом
уровне.
UDP – User Datagram Protocol – протокол передачи блоков данных
пользователя: протокол транспортного уровня, не требующий подтверждения
соединения. Имеет систему портов, позволяющих различать приложения,
работающие на одном устройстве.
TCP – Transfer Control Protocol – протокол управления передачей:
протокол транспортного уровня модели OSI с подтверждением соединения.
Кроме системы портов вводит также понятие соединения, позволяющего
одновременную работу портов в режимах "один ко многим".
1.2 Сетевое администрирование Linux. Протокол IP
IP (Internet Protocol) – протокол сетевого уровня, который содержит
информацию об адресации и некоторую управляющую информацию для
маршрутизации пакетов. Протокол описан в запросе на комментарий 791 (RFC
791), он изображен на рисунке 1.
5
Рисунок 1 - Протокол сетевого уровня
Версия – Версия используемого протокола IP
IHL (IP header length ) –длина IP-заголовка. Длина заголовка в 32разрядных блоках
Тип службы – определяет управление протоколом верхнего уровня
(TCP или UDP) и присваивает важность пакету.
Общая длина – Длина всего ip-пакета в байтах, включая данные и
заголовок.
Идентификация – целое уникальное число, определяющее пакет.
Используется при сборке фрагментированных пакетов.
Флаги – Состоит из 3-х бит. Первый бит определяет, может ли пакет
быть фрагментирован, а второй – является ли пакет последним в серии
фрагментированных. Третий бит не используется.
Смещение флагов – содержит значение позиции данных фрагмента
относительно начала данных. Используется только в фрагментированных
пакетах.
Время жизни – Счетчик, который постепенно уменьшается до нуля (на
единицу при прохождении каждого маршрутизатора), после чего пакет
уничтожается во избежание бесконечной передачи по сети.
Протокол – Протокол верхнего уровня (TCP или UDP)
Контрольная сумма заголовка – Помогает убедиться в целостности
6
пакета.
Адрес источника – определяет узел-отправитель
Адрес приемника – определяет узел-получатель
Свойства – Позволяет IP определять различные свойства, например
безопасность
Данные – Информация верхнего уровня.
Протокол IP как протокол сетевого уровня неразрывно связан с
понятием адресации. Адрес IP – это 32-разрядный адрес, который содержит 4
группы по одному байту, обычно записываемых в 10-тичном виде через точку.
Каждая группа называется октетом. Минимальное значение октета – 0,
максимальное – 255.
Протокол IP определяет также понятие подсети. Это группа ip-адресов,
имеющая общую маршрутизацию.
Подсети определяются масками. Маска – это часть сетевого адреса,
определяющая какие биты адреса относятся к сети, а какие – к хосту. Биты
маски, установленные в 1 определяют сеть, а в 0 – хост.
Например:
192.168.2.31/255.255.255.0
Маска подсети 255.255.255.0 в двоичном виде будет выглядеть:
11111111 11111111 11111111 00000000
Отсюда можно сделать вывод, что для того чтобы найти адрес
192.168.2.31 нужно найти сеть 192.168.2.0, а в ней хост 31.
IP-адреса делятся на пять классов – A, B, C, D и E. Для коммерческого
использования предназначены только первые 3, информация о них в таблице 1.
Таблица 1 – Классность IP-адресов
Класс
Маска
Количество битов, сеть/хост
A
255.0.0.0
8 бит на сеть/24 бита на хост
B
255.255.0.0
16 бит на сеть/16 бит на хост
Максимально
количество хостов
16777214 (224-2)*
65534 (216-2)
7
C
255.255.255.0
24 бит на сеть/8 бит на хост
254 (28-2)
* - один адрес зарезервирован как широковещательный, и один – для
сети.
Существуют также специально выделенные диапазоны сетей для
использования в локальных сетях. Это так называемые фэйковые сети (от англ.
fake – обманывать, также их называют приватными, серыми адресами). Эти
сети не маршрутизируются в сети интернет. Выделены диапазоны для 3 классов
сетей, они содержатся в таблице 2.
Таблица 2 - Фэйковые сети
Класс
A
B
C
Диапазон
10.0.0.0 – 10.255.255.255 (1 сеть класса А)
172.16.0.0 – 172.31.255.255 (16 сетей класса B)
192.168.0.0 – 192.168.255.255 (255 сетей класса С)
Настройка протокола IP в Linux может выполняться как с помощью
встроенных средств, таких как netconf от RedHat, так и вручную.
Для отображения параметров протокола IP используется команда
/sbin/ifconfig. С помощью этой же команды можно настроить устройство или
добавить второй ip для карты:
bash-2.05b# /sbin/ifconfig eth0 192.168.2.31 netmask 255.255.255.0
bash-2.05b# /sbin/ifconfig
eth0
Link encap:Ethernet HWaddr 00:C0:26:2C:AC:D1
inet addr:192.168.2.31 Bcast:192.168.2.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:147329 errors:0 dropped:0 overruns:0 frame:0
TX packets:47207 errors:0 dropped:0 overruns:0 carrier:0
collisions:0
RX bytes:96478376 (92.0 Mb) TX bytes:8043931 (7.6 Mb)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
8
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:10514 errors:0 dropped:0 overruns:0 frame:0
TX packets:10514 errors:0 dropped:0 overruns:0 carrier:0
collisions:0
RX bytes:9712961 (9.2 Mb) TX bytes:9712961 (9.2 Mb)
bash-2.05b# /sbin/ifconfig eth0 add 192.168.2.253 netmask 255.255.255.0
bash-2.05b# /sbin/ifconfig
eth0
Link encap:Ethernet HWaddr 00:C0:26:2C:AC:D1
inet addr:192.168.2.31 Bcast:192.168.2.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:148126 errors:0 dropped:0 overruns:0 frame:0
TX packets:47781 errors:0 dropped:0 overruns:0 carrier:0
collisions:0
RX bytes:96843116 (92.3 Mb) TX bytes:8103494 (7.7 Mb)
eth0:0 Link encap:Ethernet HWaddr 00:C0:26:2C:AC:D1
inet addr:192.168.2.253 Bcast:192.168.2.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:148126 errors:0 dropped:0 overruns:0 frame:0
TX packets:47781 errors:0 dropped:0 overruns:0 carrier:0
collisions:0
RX bytes:96843116 (92.3 Mb) TX bytes:8103494 (7.7 Mb)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:10514 errors:0 dropped:0 overruns:0 frame:0
TX packets:10514 errors:0 dropped:0 overruns:0 carrier:0
collisions:0
RX bytes:9712961 (9.2 Mb) TX bytes:9712961 (9.2 Mb)
Однако в RedHat-системах принято настраивать протокол IP с помощью
9
системы стартовых скриптов на основе файлов настроек:
/etc/sysconfig/network – основной конфигурационный файл сети. В нем
описан сам факт использования сети, имя хоста, маршрут по умолчанию и
адреса DNS:
bash-2.05b# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=WebMedia
GATEWAY=192.168.2.2
DNS1=192.168.2.2
DNS2=192.168.2.4
/etc/sysconfig/network-scripts/ifcfg-<псевдоним устройства> - описывает
параметры сетевого устройства:
bash-2.05b# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
IPADDR=192.168.2.31
NETMASK=255.255.255.0
NETWORK=192.168.2.0
BROADCAST=192.168.2.255
или, при использовании протокола динамической конфигурации:
bash-2.05b# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=dhcp
Нужно учесть, что в выводе команды ifconfig вы будете видеть название
устройства, указанного в названии файла, а реально будет использовано
устройство, указанное в файле. Причем эти названия не обязательно должны
совпадать. Например, в вывод ifconfig можно установить ppp0, хотя реально
будет использоваться eth0.
10
Маршрутизация в интернет построена на данных о IP-подсетях, а также
о группах подсетей, принадлежащих крупным магистральным провайдерам.
Такие группы адресов называются автономными областями. Маршрутизация
может быть статической, на основе заранее созданных человеком маршрутов и
динамической, когда маршруты создаются протоколами маршрутизации,
такими как RIP (Routing Information Protocol – протокол информации и
маршрутизации), OSPF (Open Short Path First – использовать короткий путь
сначала), BGP (Border Gateway Protocol – протокол граничного шлюза) и др. Их
рассматривать мы не будем. У маршрутизатора есть набор правил,
определяющих сетевой интерфейс, на который может быть отправлен пакет в
зависимости от адреса получателя, а также маршрут по умолчанию, куда
отправляются пакеты, не соответствующие общим правилам, например:
−
для сети 192.168.2.0/255.255.255.0 отправить в eth0;
−
для сети 214.54.0.0/255.255.0.0 отправить в eth1;
−
маршрут по умолчанию wan0.
Таким образом, когда маршрутизатор получит пакет с адресом
получателя 192.168.2.31, то он отправит его в интерфейс eth0, а если он получит
пакет для 80.92.30.1, то отправит его в интерфейс wan0. Может быть также, что
вместо маршрута-устройства задан адрес сетевого шлюза. В этом случае
маршрутизация пакетов будет осуществляться с помощью шлюза, а хост, у
которого указан шлюз сможет напрямую адресовать только хосты собственной
подсети. Совсем другой тип маршрутизации применяется в автономных
областях. В этом случае на магистральных развязках пакеты для всех подсетей
области отправляются на граничный маршрутизатор области, а он уже
выполняет внутриобластную маршрутизацию. Как центральная магистральная
развязка в России используется группа маршрутизаторов магистральных
провайдеров,
таких
как
РосТелеКом,
ТрансТелеКом,
МТУ
Интел,
географически расположенная на международной телефонной станции М9 в г.
Москве. Именно из этой точки осуществляется трансляция потоков данных
11
между крупными российскими магистральными провайдерами, а также
зарубеж. Для настройки статической маршрутизации в Linux используется
команда /sbin/route.
[gserg@WebMedia gserg]$ /sbin/route
Kernel IP routing table
Destination
Gateway
192.168.2.0
*
255.255.255.0 U
169.254.0.0
*
255.255.0.0
127.0.0.0
default
*
Genmask
255.0.0.0
Flags Metric Ref Use Iface
U
U
ns.edu.vologda. 0.0.0.0
0 eth0
0 eth0
0 lo
UG 0
0 eth0
Введенная без параметров она показывает таблицу маршрутизации,
используемую на ПК/сервере. Использование команды описано подробно в
man-странице. Я же приведу несколько примеров:
1)
Просмотр установленных маршрутов
bash-2.05b# /sbin/route
Kernel IP routing table
Destination
Gateway
192.168.2.0
*
255.255.255.0 U
169.254.0.0
*
255.255.0.0
127.0.0.0
default
2)
*
Genmask
255.0.0.0
Flags Metric Ref Use Iface
U
U
ns.edu.vologda. 0.0.0.0
0 eth0
0 eth0
0 lo
UG 0
0 eth0
Добавление маршрутов
bash-2.05b# /sbin/route add 192.168.1.0 gw 192.168.2.1
bash-2.05b# /sbin/route
Kernel IP routing table
Destination
Gateway
Genmask
Flags Metric Ref Use Iface
192.168.1.0
192.168.2.1
192.168.2.0
*
255.255.255.0 U
169.254.0.0
*
255.255.0.0
255.255.255.255 UGH 0
U
0 eth0
0 eth0
0 eth0
12
127.0.0.0
default
3)
*
255.0.0.0
U
ns.edu.vologda. 0.0.0.0
0 lo
UG 0
0 eth0
Удаление маршрутов
bash-2.05b# /sbin/route del 192.168.1.0
bash-2.05b# /sbin/route
Kernel IP routing table
Destination
Gateway
192.168.2.0
*
255.255.255.0 U
169.254.0.0
*
255.255.0.0
127.0.0.0
default
*
Genmask
255.0.0.0
ns.edu.vologda. 0.0.0.0
Flags Metric Ref Use Iface
U
U
0 eth0
0 eth0
UG 0
0 lo
0 eth0
bash-2.05b#_
Для создания маршрутов, которые впоследствии будут использоваться
при загрузке Вы можете использовать в RedHat-based системах файл
/etc/sysconfig/static-routes:
eth0 net 192.168.3.0 netmask 255.255.255.0 gw 192.168.2.4
eth0 net 192.168.1.0 netmask 255.255.255.0 gw 192.168.2.1
Формат файла следующий:
интерфейс пробел параметры_команды _/sbin/route
1.3 Сетевое администрирование Linux. Протокол UDP
UDP (User Datagram Protocol, протокол передачи блоков данных
пользователя, он изображен на рисунке 2) – протокол транспортного уровня, не
требующий подтверждения соединения, принадлежащий семейству протоколов
интернет TCP/IP.
13
Рисунок 2 - Протокол передачи блоков данных пользователя
По сути, протокол UDP является прослойкой между IP и протоколами
верхнего уровня, предоставляя возможность нескольким приложениям работать
на одном компьютере с помощью системы портов.
Порты представляют собой программные интерфейсы, которые можно
описать на примере работы почтового отделения.
Каждое почтовое отделение имеет индекс – в нашем примере IP-адрес , а
каждый конкретный получатель – улицу, квартиру и дом – это порт. Если
представить пересылку письма, то сначала письмо доставляется от отправителя
в почтовое отделение (инкапсулируется, т.е. встраивается в пакет IP ). После
этого письмо доставляется на почтовое отделение получателя по индексу
(доставляется IP-пакет на хост-получатель). Почтальон разносит письма в
почтовые ящики и доставляет наше письмо получателю (подсистема UDP
хоста-получателя декапсулирует UDP-пакет из IP и отправляет приложениюполучателю).
UDP – транспортный протокол для нескольких известных служб, таких
как:
NFS (Network FileSystem – сетевая файловая система) – протокол уровня
приложений для передачи файлов по локальной IP-сети. Каталоги NFS,
открытые для общего доступа могут быть смонтированы (как в UNIX системах,
так и в системах на базе Windows NT/2000/XP/2003) как локальные каталоги, с
которыми можно работать.
SMB (Server Message Block – блок сообщений сервера) – протокол
уровня приложений для передачи файлов в сетях Windows.
SNMP (Simple Network Managment Protocol – простой протокол
управления сетью) – протокол уровня приложений, использующийся для сбора
информации о состоянии и управлении активными сетевыми устройствами,
такими как маршрутизаторы, программируемые коммутаторы, серверы и др.
TFTP (Trivial File Transfer Protocol – простейший протокол передачи
14
файлов) – протокол уровня приложений, использующийся, чаще всего, для
приема/передачи конфигурационной и другой информации с активных сетевых
устройств.
DNS (Domain Name Service – служба доменных имен) – протокол уровня
приложений, позволяющий преобразовывать символьные имена интернетхостов в IP-адреса .
Наиболее распространенным DNS-сервером на сегодняшний день
признан BIND (Berkley Internet Name Daemon – Демон интернет-имен
университета Беркли). Демон предоставляет стандартный DNS-сервис на
портах UDP-53 (обработка запросов клиентов), TCP-53 (пересылка информации
о зонах между серверами имен).
Служба имен – это распределенная иерархическая (поделенная на
уровни) база данных в интернет.
Имена DNSподразделяются на имена хостов и имена доменов разного
уровня:
www.volnet.ru – здесь www – имя компьютера, volnet – домен второго
уровня, ru – домен первого уровня.
Домен – обозначение условной группы компьютеров, объединенных по
признакам принадлежности к организации, сети, географическому положению
или сфере деятельности.
Существуют несколько международных доменов первого уровня:
−
com – коммерческие организации;
−
edu – образовательные учреждения;
−
org – некоммерческие организации;
−
mil – военные организации;
−
gov – государственные организации;
−
biz – бизнес;
−
int – международные организации и проекты.
Рассмотрим работу DNS на примере поиска доменного имени
15
http://www.volnet.ru.
Клиент
сервера
Dialup.mtu.com отправляет
запрос
на
поиск
вышеуказанного сервера. Сервер DNS , принимает запрос и ищет соответствие
имени и ip-адреса у себя в кэше. Если не находит, то отправляет запрос в
головной сервер домена верхнего уровня (в данном случае – серверу домена
com). И в этом случае сервер пытается сначала найти соответствие у себя в
кэше. Если не найдено, то сервер пересылает запрос головному вверх по
иерархии, пока не дойдет до домена первого уровня.
За настройку DNS отвечают в системе несколько файлов.
/etc/hosts – файл, в котором прописываюся статические имена хостов.
Эти имена не передаются по сети и действуют только в пределах данного хоста.
[root@ns root]# cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1
localhost.localdomain localhost
80.92.3.2
ns.edu.vologda.ru
80.92.3.3
meson-vol-c0.volnet.ru
ns
192.168.2.4
email.edu.vologda.ru
192.168.2.4
server.schoolm.edu.vologda.ru
192.168.2.130 server-2003
192.168.2.31 webmedia
/etc/resolv.conf – файл конфигурации клиентов DNS . Именно в этом
файле прописываются адреса серверов DNS , с которыми работают сетевые
клиенты.
[root@ns root]# cat /etc/resolv.conf
search volnet.ru edu.vologda.ru
nameserver 80.92.3.2
nameserver 192.168.2.2
nameserver 80.92.0.10
16
/etc/named.conf – файл конфигурации сервера BIND . В нем описываются
основные параметры сервера, такие как каталоги хранения файлов зон,
каталоги журналирования, а также определяются сами зоны DNS и узлы,
имеющие право на получение и изменение зон.
2 РАБОТА С ПАКЕТАМИ В LINUX
Если вы впервые установили Linux, то вам, возможно, ничего не
известно о пакетном принципе организации программного обеспечения. Но
скоро вы освоитесь и оцените его преимущества в плане безопасности,
контроля и простоты использования.
Мы старались сделать так, чтобы большинство ваших устройств
определились автоматически и установились нужные драйвера, чтобы ваша
система была работоспособна прямо “из коробки”. Также мы постарались,
чтобы вы имели возможность выполнять большинство задач без поиска
сторонних приложений в интернете.
Вы
можете
столкнуться
со
множеством
проблем
при
поиске
приложений, с последующим скачиванием с сайтов производителей и их
установкой:
−
сложно, а иногда и невозможно узнать, тестировалось ли
приложение на работоспособность именно в вашей операционной системе;
−
сложно, а иногда и невозможно узнать, как эта программа будет
взаимодействовать с другими приложениями, установленными на вашем
компьютере;
−
сложно, а иногда и невозможно удостовериться в том, что
приложение неизвестного разработчика не принесёт никакого вреда вашей
системе, умышленного либо вследствие халатности. Даже если вы знаете
достаточно о приложении и его производителе, вы не можете полностью быть
уверенными в том, что в исполняемый файл, скачиваемый вами, не внесен
третьей стороной какой-нибудь вид вредоносного ПО.
17
Более того, скачивая и устанавливая множество разных программ от
множества различных разработчиков, вы не получите целостной управляемой
инфраструктуры. Прежде чем вы согласитесь на “заманчивое предложение”,
продумайте как вы будете поддерживать это великое множество разрозненных
кусочков программного обеспечения в актуальном состоянии. А если вы
останетесь недовольны и захотите удалить такое приложение, насколько просто
это будет сделать?
Наконец, приложения, распространяемые таким способом, вследствие
необходимости часто статичны. Это означает, что вы скачиваете не только само
приложение, но и все библиотеки данных, необходимые для его работы. Так
как сторонний производитель не знает, какие библиотеки имеются в вашей
системе, единственная возможность обеспечить работу своего приложения в
вашей системе – это “приложить” к нему все необходимые для его работы
библиотеки.
Принцип управления пакетами в Linux Mint, и операционных системах
GNU/Linux в целом, был сформирован в течение некоторого времени и
является
предпочтительным
методом
для
управления
программным
обеспечением, так как позволяет избежать всех вышеуказанных проблем. Мы
уже с начала 1990-х используем метод автоматической и безопасной установки
нашего программного обеспечения.
Программное обеспечение, как вы понимаете, изначально пишется
разработчиком, и это – начальное звено производственной цепочки, известное
как “upstream” (апстрим). Вы, являясь конечным пользователем Linux
дистрибутива, находитесь на другом конце этой цепочки, именуемом
“downstream” (даунстрим) (если только вы не администратор, тогда ваши
пользователи находятся в ещё более дальнем звене даунстрима). Как только
разработчики будут довольны написанной программой (или обновлением для
программы), они опубликуют её исходный код.
Дальше программа движется вниз по цепочке к разработчикам пакетов,
18
которые являются либо добровольцами, либо оплачиваемыми сотрудниками
одного из Linux дистрибутивов. Это именно их задача – скомпилировать
исходный код программы, протестировать его на работоспособность в
дистрибутиве, исправить все проблемы, которые при этом возникают, и, в
конечном итоге, упаковать скомпилированную (то есть машиночитаемую)
программу в необходимый формат.
Именно отсюда, с одного места, вы можете загрузить и установить
программное обеспечение, которое вам необходимо. Вы будете знать, что это
место абсолютно безопасно, потому что имеет подписанный сертификат,
который будет проверен вашим менеджером пакетов. Также вы будете знать,
что безопасен любой устанавливаемый пакет, потому что непосредственно
каждый из них подписан ключом GPG, который также проверяет менеджер
пакетов. Ваш менеджер пакетов даже проверит контрольную сумму MD5 у
каждого пакета, точно так же, как мы это делали с iso-образом LiveDVD, чтобы
убедиться, что во время загрузки не возникло ошибок.
Когда
придёт
время
для
проверки
обновлений
программного
обеспечения, ваш менеджер пакетов будет автоматически сравнивать версию
установленного программного обеспечения с той, что доступна в репозитории,
и сделает всё необходимое, чтобы ваша система работала гладко и надёжно.
В отличие от машин, людям свойственно ошибаться, и время от времени
что-то идет не так, как планировалось. Возможно, вы случайно установите
драйвера не на то оборудование, и сломаете что-то в системе. Со всеми такое
случалось. Или, возможно, происходит сбой работы программы, или вашу
любимую функцию в программе по каким-то причинам удалят из приложения
разработчики.
Все
эти
проблемы,
как
ни
парадоксально,
способны
продемонстрировать надёжность и безопасность пакетной системы. Поскольку
ваш менеджер пакетов скрупулёзно записывает всё, что он делает, это даёт
возможность отменить установку целиком и полностью.
Давайте снова взглянем на список проблем и посмотрим, что мы смогли
19
исправить:
−
сложно, а иногда и невозможно узнать, тестировалось ли
приложение на работоспособность именно в вашей операционной системе.
Вы знаете, что программное обеспечение, доступное в репозитории,
тщательно тестируется разработчиками пакетов и командой тестеров на
работоспособность в вашей операционной системе.
−
сложно, а иногда и невозможно узнать, как эта программа будет
взаимодействовать с другими приложениями, установленными на вашем
компьютере.
Естественно, разработчики пакетов делают все возможное, чтобы
пакеты не конфликтовали с другими пакетами, поставляемыми в их
дистрибутиве.
В заключение. Возможно, к вам доходили слухи, что Linux ещё не
законченная система, что если вы используете Linux, вы являетесь бетатестером, или что программы в Linux не стабильны. Это не совсем так. “Linux”
никогда не будет “закончен”, равно как и любая другая операционная система,
если вдуматься, не может быть “законченной”. От Linux ядра до графической
оболочки, каждый элемент вашей операционной системы всегда будет
находиться на какой-то стадии развития.
Итак,
подводя
итоги,
приведём
пример,
когда
вы,
допустим,
устанавливаете Opera, Real Player или Google Earth в Linux Mint, эти
приложения не поставляются их непосредственными разработчиками (Opera,
Real и Google).
20