Исследование возможностей операционной системы Linux На примере операционной системы Ubuntu. Цель этого документа состоит в том, чтобы дать краткий обзор возможностей работы с сетями операционной системы Linux и обеспечить указания по поиску дальнейшей ин

01.05.2019

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

В интернете есть множество заметок, расказывающих о преимуществе Linux перед Windows . Я не берусь сравнивать ибо очень давно практически не пользуюсь виндой. Внесу свою лепту о прелестях линукса без особого сравнения с чем либо. Я раскажу о тех вещах, за которые я люблю и выбираю линукс. Многие из этих моментов вряд ли возможны в винде и вряд ли когда то будут возможны благодаря проприетарному закрытому коду.

Сразу оговорюсь, что речь идет о Gentoo Linux, хотя почти все описаное актуально под любым другим дистрибутивом этой операционной системы.

Командная строка
Самая страшная ассоциация Линукса, которая нагоняет страх на всех юзеров - это командная строка. Пользователи ненавидят командную строку! Миф о том, что в линуксе все делается только с помощью команд на черном экране пересказывают миллионы чайников друг другу ночью, слушая потрескивание дровишек в торрент клиенте, докачивающем свежую порнушку. Сколько не объясняй чайнику, что свои любимые видеофильмы на немецком про любовь он сможет спокойно смотреть на линуксе, все равно распространенность мифа не дает побороть ужас неизвестного: "А вдруг не смогу?".

На самом деле, практически любое действие, которое выполняется из графического интерфейса имеет свой аналог из командной строки (обратное утверждение неверно). Это дает невероятную суперсилу и суперскорость пользователю линукса.

К примеру, возникла потребность скачать файл по ссылке. Требуется быстро выбрать директорию для сохранения и скачать файл.

Решение из командной строки состоит из двух команд: изменить текущую директорию куда будет сохраняться файл и собственно скачивание файла
$ cd /tmp
$ wget http://example.com/das-ist-fantastich.avi

Что? Говорите преймущество неочевидно? Тогда представим что у нас есть список URL по которым надо скачать тысячу файлов. В командной строке для решения достаточно указать в каком файле или по какому URL лежит этот список:
$wget -i /tmp/spisok.txt

Командная строка удобна при составлении списков заданий. Следующая строка подождет два часа (7200 секунд) пока доиграет жена, запустит обновление системы, после чего запакует директорию /mnt/work в архив /tmp/work.tar.gz и запишет архив на DVD на восьмой скорости без создания файловой системы для экономии места:
sleep 7200; emerge -DuN world; tar -zcvf /tmp/work.tar.gz /mnt/work; cdrecord dev=/dev/sr0 speed=8 /tmp/work.tar.gz

В общем, командная строка ускоряет, облегчает и даже отстраняет пользователя от нудной работы. Из командной строки можно выполнять такие действия, которые казалось бы ну никакой логикой с ней не связаны. К примеру, обработка графических изображений. Следующая строка открывает изображение in.png , уменьшает его пропорционально до 800 пикселей по ширине и сохраняет в out.jpg с качеством "90". Эта манипуляция требует установленый пакет ImageMagick

$convert -quality 90 -resize 800 -strip in.png out.jpg

Следующий пример сложен, но способен сохранить вам дни и недели нудной работы в фотошопе, если требуется обработать тысячи изображений. Следующая строка находит с помощью команды find в текущей директории все файлы с расширением.jpg. Названия найденых файлов передаются через xargs команде convert как параметр {}. Эта команда в каждый найденый графический файл в координатах 80x80 вписывает время и дату съемки фотографии, которые берет из EXIF. Файл сохраняется с тем же названием в директорию /tmp:
$find . -iname "*.jpg" | xargs -l -i convert -font Arial -pointsize 72 -fill white -annotate +80+80 % {} /tmp/{}

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

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

Ведь действительно, если у компьютера задача просто захватывать видео с камеры, сохранять его на жесткий диск и предоставлять ограниченый доступ к видеоархивам через интернет, то зачем на этой системе графический интерфейс? Гораздо удобней для такой цели веб-интерфейс.

Удаленный запуск программ
Допустим на домашнем компьютере у меня в браузере прикреплены сертификаты для электронных платежей. С собой я их не ношу. С любого линукс-компьютера я подключаюсь на домашний линукс-компьютер командой
ssh -X login@homeip
и запускаю браузер
$opera
Происходит чудо: я вижу графический интерфейс моей оперы с домашнего компьютера. Захожу на нужные сайты, делаю необходимые платежи и закрываю браузер.

Так можно запустить на удаленном компьютере любое графическое приложение, скорость работы которого упрется лишь в производительность компьютеров для шифрования и дешифрования траффика по SSH соединению и в саму скорость соединения. Приложение в таком случае использует вычислительные ресурсы одного компьютера, а графическое окно отрисовывается на другом. Это позволяет запускать требовательную к ресурсам программу на сервере, но работать с ней на древнем дохлом компьютере клиента.

Уточню, что это не аналог Rdesktop протокола, который тупо подключается к рабочему столу. Окно удаленно-запущеного приложения выглядит абсолютно как окно локального.

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

Смотрим в каких группах состоим. Читай: какие права имеются у пользователя, под которым мы работаем в системе.
$groups
tty wheel uucp audio cdrom video usb users plugdev oper

Не хотим чтоб сотрудники использовали видеоускоритель для игры в 3D игры?
$gpasswd -d username video

Таким же макаром можно перекрыть доступ к звуковой карте, USB-портам, рекордеру дисков и т.п.

Использование песочницы
Если на очень важном сервере необходимо запустить приложение, которое является потенциальной брешью безопасности, то проблема решается созданием директории с упрощенным дубликатом linux системы. В эту директорию (назовем /mnt/sandbox) скидывается программа и все необходимые программе части системы: например /bin, /sbin, /usr/sbin/, /var.

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

$chroot /mnt/sandbox /usr/sbin/apache

Если же злоумышленик через кривой скрипт получит доступ к серверу, то он будет ограничен директорией /mnt/sandbox. Если он получит пароли или даже сотрёт всё из этой директории, то на работу сервера за пределами этой директории его деятельность никак не повлияет.

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

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

Одной из распространенных бесплатных программ для создания виртуальной машины является программа VirtualBox. Запустив VirtualBox мы можем создать вирутуальный компьютер, выделив место под жесткий диск, данные которого будут лежать в файле выделенного нами размера. Мы можем настроить для этого виртуального компьютера количество выделеной памяти, количество выделеных ядер процессора, выбрать ISO образ диска, который будет вставлен в виртуальный DVD. После настройки запускаем виртуальный компьютер, загружаемся с DVD-образа и устанаваливаем на виртуальный жесткий диск операционную систему. Вся прелесть такой виртуальной машины в том, что мы можем установить не только линукс, а любую операционную систему: Windows, Solaris, MacOS, FreeBSD.

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

KSM
Запуск вируальной машины вполне возможен на множестве других операционных систем. Почему это находится в статье про Linux? Linux превосходно справляется с запуском множества виртуальных машин! Одной из функций улучшающих эффективность запуска множества виртуальных машин на одном физическом компьютере является KSM - Kernel Samepage Merging.

Допустим мы запустили на одном компьютере 10 виртуальных Windows-машин, каждой из которых выделено по полгига памяти. Элементарная математика говорит о том, что сожрут они 5 гиг памяти. Чем же заняты эти пять гиг памяти? В основном дубликатом операционной системы Windows и дубликатами одинаковых программ, которые запущены на этих виртуальных машинах. Допустим из 512 мегабайт виртуальной машины 200 уходит на код одинаковой системы и программ. Подсистема KSM в линуксе отслеживает одинаковые страницы памяти и объединяет их таким образом, что они находятся в одном экземпляре для всех запущеных виртуальных машин. Таким образом можно серьезно сэкономить память предоставляя в аренду виртуальные хостинговые и виртуальные сервера на одном физическом сервере.

Драйвера
На производителей оборудования в плане драйверов под линукс надеяться пока не приходится: большинство производителей железа либо не делает дров под линукс либо делает что либо кривое чтоб отмахнуться. Драйвера различных устройств в линуксе как правило идут вместе с ядром и поддержка новых устройств появляется с выходом свежих ядер. Поэтому линукс всегда имеет поддержку всего распространенного оборудования.

Вся прелесть драйверов в линуксе заключается в том, что мизерный по размерам драйвер какого либо чипсета поддерживает устройства всех производителей. Скажем, если я знаю что материнская плата на чипе NVidia, то совсем нет необходимости разбираться кто является фирмой-производителем Asus, Palit, Gigabyte или еще какая то китайская контора. Очень удобно когда втыкаеш вебкамеру в USB и с большой вероятностью ядро ее определяет и тут же позволяет работать.

Однако, в том мизерном проценте случаев, когда ядро не смогло сразу подгрузить необходимый модуль начинается линуксовый ад: приходится искать драйвер в виде модуля. А зачастую приходится искать исходный код на сайте производителя и компилировать модуль ядра. Поспешу успокоить: при всей моей любви к компиляции ядер под свои нужды в линуксе у меня не было еще ни разу потребности компилировать драйвера самостоятельно из сторонних исходников. А в FreeBSD так приходилось делать.

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

Возьмем для примера элементарный инструмент. Какой должна быть удобная и эффективная лопата? Надо прикинуть кто будет пользователем лопаты и какие задачи лопатой он будет выполнять. Можно конечно штыковой лопатой перекидывать снег с тропинок, но это не эффективно. Поэтому берут совковые лопаты. Почитаем что пишет википедия про совковые лопаты

Совковая лопата - глубокая, с закраинами. Предназначена для работы с сыпучими грузами. Для каждого вида груза разработана своя форма. Песочная - обычный прямоугольник; зерновая - то же увеличенной длины и ширины; растворная - с увеличенной глубиной. угольная, породная - заостренный треугольник.

Как думаете если такой элементарный инструмент как лопата имеет такое количество специализированных моделей, можно ли сделать универсальную операционную систему, которая со всеми задачами будет справляться идеально?

Правильный ответ: Gentoo Linux! Конечно же я немного утрирую насчет идеальности, но именно эта система дает невероятные возможности для тюнига такого инструмента как компьютер.

Сейчас раскажу каким образом. Программисты пишут на Си++ и потом его компилируют в бинарный код, который непосредственно выполняется процессором компьютера. Компиляция - очень сложный процесс, который имеет множество настроек. Чтоб бинарный код одинаково хорошо работал на всех компьютерах всегда главным условием идет универсальность. Именно с расчетом на универсальность поставляются почти все операционные системы. Я говорю о всех бинарных системах, которыми являются так же и большинство Linux систем: Arch, Ubuntu, Debian, Slackware.

В отличие от бинарных систем Gentoo Linux компилируется из исходных кодов во время установки в соответствии с настройками компилятора. Таким образом, я записываю настройки в файл /etc/make.conf:

CFLAGS="-march=k8-sse3 -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
ACCEPT_KEYWORDS=~amd64

При компиляции ядра и всех программ операционной системы компилятор будет использовать оптимизацию под процессор AMD Athlon64. В результате моя операционная система получает большой прирост производительности при работе на Атлонах, но будет хуже работать на процессорах Intel (или вообще не будет работать на Intel).

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

Конечно же, такой тюнинг оправдывает себя лишь в редких случаях. Но оправдывает с лихвой. К примеру, сервер хостинга для динамичных игр вроде Counter-Strike обязан иметь как можно более шустрый отклик. Тюнинг ядра в этом направлении повышает общую нагрузку на процессор. Такой тюнинг абсолютно противоречит настройке вебсервера, которому не важны милисекунды в отклике, а важно снижение общей нагрузки на процессор.

Работа под администраторскими правами
Как то раз меня вызвали в полицейское отделение и задали вопрос, знаю ли я человека с фотографии. Я человека знал. Он терся у меня в клубе и был клиентом. Об этом я и поведал сотрудникам полиции. На что они мне говорят
- А вот он пишет, что он у вас работает. Его принял на работу один из операторов. Вот читайте.
- А вам не режет глаза логическая ошибка. Каким образом оператор принял на работу человека с улицы?

Менты мне поведали в чем заключается дело, я им расказал свои догадки и на этом разговор был исчерпан. Но всерьез задумался, как будет работать фирма, в которой оператор будет принимать на работу, уборщик будет оформлять бухгалтерские документы, секретарша будет перенастраивать под себя сервер и вообще любой человек будет иметь возможность все улучшать. Конечно же это удобно когда можно попросить уборщика подписать документ о получении товара и оставить ему печать фирмы. Даже при всей доброжелательности уборщика вполне вероятен момент, когда ему подсунут вместо товарно-транспортной накладной документы на оформление кредита в миллион долларов. Если организация будет работать с таким количеством степеней работы, то это будет не фирма, а бардак.

С операционной системой получается аналогичная ситуация. Очень удобно работать с правами администратора на компьютере, но вот операционная система в таком режиме долго не живет. Я люблю линукс за то что он не лоялен к работе за компьютером с администраторскими правами. Именно это является причиной отсутствия вирусов под эту систему, а не его малая распространенность.

Права на запись
Мне очень нравится принцип всех линукс программ: не записывать свои файлы где попадет. Для работы системы требуется запись в /tmp и в домашнюю директорию пользователя. В случае запуска более сложных программ требуется еще /var (например, mysql хранит в этой директории базу данных).

С использованием различных инструментов системы линукс можно подключить все необходимые для записи директории в память, на сетевой диск или на любой другой удобный носитель. Это позволяет легко и непринужденно запускать систему любым удобным способом: с CD, DVD, с флэшки и даже по сети с сервера.

Обновления
Чтоб обновить систему я пишу команду

#emerge --sync; emerge -DuN world

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

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

Иногда, надо сказать, обновления могут принести глюки и деградацию. Для решения этой проблемы новый пакет можно замаскировать и выбрать одну из предыдущих версий. Так, например в неэмуляторе винды WINE регулярно начинают переписывать какую то сложную подсистему и тогда новые версии несут в себе глюки. В этом году была проблема, когда отлично работающая в линуксе гама Warcraft DOTA перестала работать по сети с выходом новых версий WINE.

И самое главное, если вам надоели проблемы с , переходите на линукс. Linux - это единственное верное решение!

Цель этого документа состоит в том, чтобы дать краткий обзор возможностей работы с сетями операционной системы Linux. Хотя одним из достоинств Linux - является то, что имеется множество источников информации, доступной почти по каждой теме, большинство ее сосредоточено на реализации. Новички в Linux, особенно пришедшие из среды Windows, не осознают возможностей Linux при работе с сетями. Этот документ стремится дать общее представление о таких возможностях с кратким описанием каждой и указать источники для поиска дальнейшей информации. Информация была собрана из многих источников: различные howto, факи, проектов веб-страниц и моего собственного опыта. Огромные благодарности авторам. Без них и их программ этот документ не появился бы.

Linux.

Что такое Linux?

Автор-основатель Linux - Linus Torvalds. Начиная с первоначальных версий, Linux улучшался бесчисленным количеством людей. Это - аналог операционной системы UNIX, написанный полностью с нуля. Одна из наиболее интересных особенностей, присущих Linux - это то, что его разработка происходит одновременно во всем мире.

Linux защищен авторским правом в соответствии с лицензией GNU (GPL). Эта лицензия написана Фондам Свободного Программного Обеспечения (FSF), который создан, чтобы предохранить людей от ограничения на распространение программного обеспечения. Короче говоря, лицензия говорит о том, что, хотя деньги могут быть заплачены за копию, человек, который получил эту копию, не должно быть ограничений в получении такой же копии и бесплатно. Это также означает, что должен быть доступен исходный текст. Это полезно для программистов. Любой может изменять Linux и даже распространять его модификации при условии, что исходный код остается под тем же самым авторским правом.

Чем замечателен Linux?

Зачем нужно работать на Linux? Linux вообще более дешев (или по крайней мере не более дорог), чем другие операционные системы и часто менее проблематичен, чем многие коммерческие системы. Но отличает Linux не его цена (в конце концов, почему кому-то должна нравиться OS - даже если она свободная - если она не достаточно хороша?), а его замечательные возможности:

Linux - истинно многозадачная 32-битная операционная система, продуманная и достаточно функциональная, чтобы использоваться во многих областях, от университетов до больших корпораций.

Она работает начиная с низкопроизводительных платформ на i386 заканчивая ультра-параллельными машинами в исследовательсктх центрах.

Есть доступные "из коробки" версии для Intel/Sparc/Alpha, и экспериментальная поддержка для Power PC и встроенных систем типа SGI, Ultra Sparc, AP1000 +, Strong ARM, MIPS R3000/R4000 ...

В заключение, для работы с сетями, Linux - хороший выбор. Не только потому, что работа с сетями сильно интегрирована с самой OS и исходный код прикладных программ свободно доступен, но и из-за отказоустойчивости при тяжелой загрузке, что может быть достигнуто только годами отладки и тестирования в проекте Open Source.

Сетевые протоколы.

Linux поддерживает много различных протоколов работы с сетями:

TCP/IP

IP (Межсетевой Протокол) был первоначально разработан два десятилетия назад для Отдела Защиты Соединенных Штатов (DoD), главным образом с целью соединения компьютеров различных марок. TCP/IP - это набор допустимых протоколов, имеющих многоуровневую структуру, чтобы избежать привязки кода прикладных программ к сетевому аппаратному обеспечению.

Хотя он и основан на многоуровневой модели, он ориентирован более на задачи соединений, чем на твердое соблюдение функциональных уровней. Это одна из причин, почему TCP/IP стал фактическим стандартным протоколом работы с сетями в отличие от OSI.

Работа с сетями по протоколу TCP/IP была заложена в Linux с самого начала. Она была выполнена заново и является одной из наиболее продуманных, быстрых и надежных реализаций и потому является одним из ключевых факторов успеха Linux.

Дополнительный источник: http://sunsite.unc.edu/mdw/HOWTO/NET-3-HOWTO.html

TCP/IP версия 6

IPv6, который иногда также называют IPng (IP Следующего Поколения), - это обновление для протокола IPv4 для решения множества проблем. Эти проблемы включают: нехватка доступных адресов IP, недостаток механизмов обработки трафика, критичного ко времени передачи, недостатки защиты сетевого уровня, и т.д

Увеличение адресного пространства будет сопровождаться в соответствии c дополнительной схемой адресации, что сильно подействовует на эффективность маршрутизации. Реализация беты уже существует для Linux, и промышленная версия ожидается для ядра 2.2.0 Linux.

Linux IPv6 How-to: http://www.terra.net/ipv6/linux-ipv6.faq.htm

Домашняя страница IPv6: http://playground.sun.com/pub/ipng/html/ipng-main.html

IPX/SPX

IPX/SPX (Межсетевой Пакетный Обмен/Последовательный Пакетный Обмен) - стек протоколов, разработанный и являющийся собственностью Novell и основанный на XNS протоколе фирмы Xerox. IPX/SPX стал в начале 1980-ого неотъемлемой частью системы Novell Netware. Система Netware стала фактической стандартной сетевой операционной системой (NOS) для первого поколения локальных вычислительных сетей. Novell выполнил свою NOS с бизнес-ориентируемым набором прикладных программ и утилитами подключения со стороны пользователя.

Linux имеет очень ясную реализацию IPX/SPX, что позволяет его настроить как:

IPX маршрутизатор

NCP клиент и/или NCP сервер (для совместного использования файлов)

клиент печати Novell, сервер печати Novell

А также: Допускает PPP/IPX, позволяя машине с Linux работать как PPP сервер/клиент

IPX tunnelling через IP, позволяя соединить две IPX сети через исключительно IP связь

Дополнительно, Caldera http://www.caldera.comпредлагает коммерческую поддержку для Novell Netware под Linux. Caldera обеспечивает полнофункционально клиента Novell Netware, созданного по технологии, запатентованной корпорацией Novell. Клиент обечспечивает обеспечивает полный клиентский доступ к файлсерверам Novell 3.x и 4.x и включает функции типа Netware Directory Service (NDS) и RSA шифрование. IPX How-to: http://sunsite.unc.edu/mdw/HOWTO/IPX-HOWTO.html

Набор протоколов AppleTalk

Appletalk - имя сетевого стека Apple. Он позволяет peer-to-peer сетевую модель, которая обеспечивает базовые функциональные возможности типа совместного использования принтера и файлов. Каждая машина может работать одновременно как клиент и сервер, все необходимое программное и аппаратное обеспечение поставляются с каждым компьютером Apple.

Linux обеспечивает полную работу с сетями Appletalk. Netatalk - реализация на уровне ядра набора протоколов AppleTalk, первоначально разработанного для bsd-совместимых систем. Она включает поддержку для маршрутизации AppleTalk, обслуживание файловых систем Unix и AFS поверх AFP (AppleShare), обслуживание принтеров Unix и доступ к принтерам AppleTalk через PAP.

За подробностями обратитесь к разделу 5.1.

Глобальные сети: X. 25, Frame-Relay, и т.д...

Некоторые третьи фирмы обеспечивают продукты T-1, T-3, X. 25 и Frame-Relay для Linux. Обычно для этих типов соединений требуются специальные аппаратные средства. Продавцы, торгующие аппаратными средствами, также предлагают драйвера поддержки протоколов.

WAN для Linux: Http://www.secretagent.com/networking/wan.html

ISDN

Ядро Linux имеет встроенную поддержку ISDN. Isdn4linux управляет адаптерами ISDN для PC и может эмулировать модем с набором команд Hayes ("В" команды). Предоставляются возможности от просто использования программы терминала до соединений через HDLC (используя включенные устройства) для полного подключения к Интернет по PPP к звуковым прикладным программам.

FAQ для isdn4linux: http://tsikora.tiac.net/i4l-faq/eng-i4l-Faq.html

PPP, SLIP, PLIP

Linux ядро имеет встроенную поддержку для PPP (Point-to-Point-Protocol), SLIP (IP для последовательных линий) и PLIP (IP для параллельных линий). PPP - наиболее популярный метод, с помощью которого пользователи подключаются к своему ISP (провайдер услуг Интернет). PLIP обеспечивает дешевое соединение двух машин. Он использует параллельный порт и специальный кабель, достигая скоростей от 10kBps до 20kBps.

Linux PPP How-to http://sunsite.unc.edu/mdw/HOWTO/PPP-HOWTO.html

PPP/SLIP эмулятор http://sunsite.unc.edu/mdw/HOWTO/mini/SLIP-PPP-Emulator.html

Информация по PLIP может быть найдена в Руководстве Сетевого Администратора http://sunsite.unc.edu/mdw/LDP/nag/nag.html

Любительское Радио (HAM)

Linux ядро имеет встроенную поддержку для радиолюбительских протоколов.

Особенно интересен - AX.25. Протокол AX.25 предлагает и соединенный, и несоединенный режимы работы, и используется для связи либо по собственному протоколу, либо для переноса пакетов других протоколов типа TCP/IP и NetRom.

По структуре он напоминает X.25 уровня 2, с некоторыми расширениями, чтобы приспособить его к среде любительского радио.

Любительское радио how-to http://sunsite.unc.edu/mdw/HOWTO/HAM-HOWTO.html

ATM

ATM поддержка для Linux в настоящее время очень сырая. Имеется экспериментальный релиз, который поддерживает простые ATM соединения (PVCs и SVCs), IP над ATM, эмуляцию локальной вычислительной сети...

Домашняя страница Linux ATM-Linux http://lrcwww.epfl.ch/linux-atm/

Сетевые аппаратные средства, поддерживаемые Linux

Linux поддерживает множество разнообразных аппаратных средств для работы с сетями, включая устаревшие.

Некоторые интересные документы:

Hardware HowTo http://sunsite.unc.edu/mdw/HOWTO/Hardware-HOWTO.html

Ethernet How-To http://sunsite.unc.edu/mdw/HOWTO/Ethernet-HOWTO.html

Совместное использование файлов и печать

Основная цель многих локальных вычислительных сетей, состоящих из PC, состоит в том, чтобы обеспечить совместное использование пользователями файлов и принтеров. Linux прекрасно проявляет себя в качестве файлового сервера и сервера печати.

Платформа Apple

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

Netatalk faq и how-to:

http://thehamptons.com/anders/netatalk/

http://www.umich.edu/~rsug/netatalk/

http://www.umich.edu/~rsug/netatalk/faq.html

Платформа Windows

Samba - набор прикладных программ, которые позволяют большинству юниксов (и в частности Linux) работать в сети Microsoft как в качестве клиента, так и в качестве сервера. Работа в качестве сервера позволяет клиентам Windows 95, Windows for Workgroups, DOS и Windows NT обращаться к файловому сервису и сервису печати, предоставляемым Linux. Таким образом он может полностью заменить Windows NT при обслуживании файлов и печати, включая автоматическую загрузку драйверов принтера для клиентов. Работа в качестве клиента, позволяет рабочей станции Linux монтировать локально доступные совместно используемые каталоги.

Согласно SAMBA мета-faq:

"Многие пользователи сообщают, что Samba сравнилась с другими SMB реализациями, и более устойчива, быстрее и совместима с большим количеством клиентов. Администраторы некоторых больших сетей говорят, что Samba - единственый доступный SMB сервер, который уверенно работает со многими десятками тысяч пользователей."

Домашняя страничка Samba - http://samba.anu.edu.au/samba/

Samba How-to http://sunsite.unc.edu/mdw/HOWTO/SMB-HOWTO.html

Printing How-to http://sunsite.unc.edu/mdw/HOWTO/Printing-HOWTO.html

Novell Платформа

Как говорилось в предыдущих разделах, Linux может быть сконфигурирован так, чтобы работать как NCP клиент или сервер, таким образом предоставляя доступ к файлам и услугам печати в сети Novell как для клиентов Novell, так и для клиентов Unix.

IPX How-to http://sunsite.unc.edu/mdw/HOWTO/IPX-HOWTO.html

UNIX Платформа

Наиболее часто используемый метод совместного использования файлов по сети в среде UNIX - через NFS. NFS означает Network File Sharing (Совместное использование Файлов в Сети), и является протоколом, первоначально разработанным Sun Microsystems. Это способ совместного использования файлов машинами как будто они расположены локально. Пользователь "монтирует" файловую систему "экспортируемую" сервером NFS. Смонтированная файловая система появляется на машине пользователя так, как будто она является частью локальной файловой системы.

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

Источники информации о Nfs:

http://sunsite.unc.edu/mdw/HOWTO/mini/NFS-Root.html

http://sunsite.unc.edu/mdw/HOWTO/mini/Diskless.html

http://sunsite.unc.edu/mdw/HOWTO/mini/NFS-Root-Client.html

http://www.redhat.com/support/docs/rhl/NFS-Tips/NFS-Tips.html

http://sunsite.unc.edu/mdw/HOWTO/NFS-HOWTO.html

Internet/Intranet

Linux - прекрасная платформа для Intranet/Internet сервера. Термин Intranet относится к применению Internet технологий внутри организации с целью распространения и предоставления доступа к информации внутри компании. Internet и Intranet услуги, предлагаемые Linux, включают электронную почту, новости, WWW сервера и еще множество услуг, о которых будет рассказано в следующих разделах.

Почта

Почтовые сервера

Sendmail - фактически стандартная программа сервера почты для платформ UNIX. Будучи продуманной, масштабируемой и правильно настроенной и при наличии необходимых аппаратных средств, она может рабатать пол нагрузкой в тысячи пользователей без сбоев. Другие сервера почты (MTA - Почтовые Транспортные Агенты) - это smail и qmail, которые разработаны как альтернатива sendmail.

Веб-страница Sendmail http://www.sendmail.org/

Smail faq http://www.sbay.org/smail-faq.html

Qmail место ткани http://www.qmail.org

http://sunsite.unc.edu/mdw/HOWTO/mini/Qmail+MH.html

http://sunsite.unc.edu/mdw/HOWTO/mini/Sendmail+UUCP.html

http://sunsite.unc.edu/mdw/HOWTO/mini/Mail-queue.html

Удаленный доступ к почте.

В организации или ISP, пользователи вероятно обращаются за своей почтой дистанционно со своих рабочих мест. В Linux существуют несколько вариантов поддержки такого доступа, включающие сервера POP (Post Office Protoсol) и IMAP (Internet Mail Access Protoсol). Протокол POP обычно используется, чтобы передать сообщения от сервера пользователю. IMAP допускает работу с сообщениями на сервере, удаленное создание и стирание папок на сервере, параллельный доступ к общедоступным почтовым ящикам, и т.д.

Краткое сравнение IMAP и POP http://www.imap.org/imap.vs.pop.brief.html

Почтовые how-tos: http://sunsite.unc.edu/mdw/HOWTO/Mail-HOWTO.html

http://sunsite.unc.edu/mdw/HOWTO/mini/Cyrus-IMAP.html

Почтовые пользовательские агенты

В Linux имеется ряд MUA (Почтовые пользовательские агенты), работающих как в графическом, так и в текстовом режиме. Наиболее широко используемые: pine, elm, mutt и Netscape.

Список почтовго программного обеспечения http://www.linuxlinks.com/Software/Internet/Mail/

http://sunsite.unc.edu/mdw/HOWTO/mini/TkRat.html

Программного обеспечения списков почтовой рассылки

Имеется много MLM (Mail List Management) программ, доступных для UNIX вообще и для Linux в частности.

Хорошее сравнение существующих MLM может находяться на ftp://ftp.uu.net/usenet/news.answers/mail/list-admin/

Listserv http://www.lsoft.com/

Домашняя страница Majordomo http://www.greatcircle.com/majordomo/

fetchmail - очень полезная почтовая утилита. Fetchmail - свободная, наглядная, продуманная, хорошо документированная утилита для удаленного скачивания и пересылки почты, которая используется для каналов TCP/IP "по требованию", (SLIP или PPP соединений). Он поддерживает все протокол удаленной работы с почтой, которые используются в настоящее время в Internet. Он может поддерживать даже IPv6 и IPSEC.

Fetchmail вытаскивает почту с удаленных почтовых серверов и пересылает ее через SMTP так, что она могла затем читаться нормальными почтовыми агентами пользователя типа mutt, pine или BSD mail. Это позволяет всем средствам фильтрации системы MTA, пересылки и совмещения имен (aliasing) работать так, будто они работают с обычной почтой.

Fetchmail может использоваться как шлюз POP/IMAP-to-SMTP для целого домена DNS, забирая почту из одного почтового ящика у ISP и пересылая почту по smtp руководствуясь адресами, указанными в заголовках.

Маленькая компания может централизовать свою почту в одном почтовом ящике а программа fetchmail будет собирать всю исходящую почту, посылать ее в Internet и забирать из Internet всю входящую почту.

Домашняя страница Fetchmail http://sagan.earthspace.net/~esr/fetchmail/

Веб сервера

Большинство дистрибутивов Linux включает Apache (http://www.apache.org). Apache - сервер номер один в Интернет (http://www.netcraft.co.uk/survey/), где более половины всех интернетовских сайтов работают под Apache или производных от него. Преимущества Apache заключаются в модульной организации, стабильности и быстродействии. При наличии соответствующих аппаратных средств и настройке он может выдерживать самые высокие загрузки: Yahoo, Altavista, GeoCities, Hotmail основаны на различных версиях этого сервера.

Опциональная поддержка для SSL (который нужен для защиты транзакций) доступна в:

http://www.apache-ssl.org/

http://raven.covalent.net/

http://www.c2.net/

How-tos: http://sunsite.unc.edu/mdw/HOWTO/WWW-HOWTO.html

http://sunsite.unc.edu/mdw/HOWTO/Virtual-Services-HOWTO.html

http://sunsite.unc.edu/mdw/HOWTO/Intranet-Server-HOWTO.html

веб сервера для Linux http://www.linuxlinks.com/Software/Internet/WebServers/

Веб браузеры

Для Linux существует целый ряд веб-браузеров. Один из них - Netscape Navigator, и новый Mozilla (http://www.mozilla.org) будет иметь версию под Linux. Другой популярный текстовый браузер - lynx. Он быстр и удобен, когда не установлена графическая среда.

Веб-браузеры для Linux http://www.linuxlinks.com/Software/Internet/WebBrowsers/

http://sunsite.unc.edu/mdw/HOWTO/mini/Public-Web-Browser.html

FTP сервера и клиенты

FTP означает Протокол Передачи файлов. FTP сервер позволяет клиентам подключаться к себе и скачивать файлы. Для Linux написано множество ftp серверов и клиентов, и они обычно включены в большинство дистрибутивов. Имеются как текстовые клиенты, так и GUI-клиенты. Относящееся к FTP программное обеспечение (сервера и клиенты) для Linux можгут быть найдены на: http://sunsite.unc.edu/pub/Linux/system/network/file-transfer/

Информационная служба

Usenet (также известный как новости) - огромная BBS, которая покрывает все тематики, и организованная иерархически. Компьютерная сеть обменивается через Internet (Usenet) статьями по протоколу NNTP. Для Linux существуют несколько реализаций. Либо для тяжело загруженных сайтов, либо для маленьких сайтов, получающих только несколько групп новостей.

Домашняя страница INN http://www.isc.org/

Программное обеспечение Linux, относящееся к новостям http://www.linuxlinks.com/Software/Internet/News/

DNS

DNS сервер проделывает работу по трансляции имен (читаемых людьми) в адрес IP. DNS сервер не знает все в мире адреса IP; он может запросить другие сервера о неизвестных адресах. DNS сервер либо возвратит требуемый IP адрес пользователю, либо сообщают, что это имя не может быть найдено.

Обслуживание имен в Unix (и в большинстве Internet) выполняется программой называемой named. Она является частью пакета bind, продвигаемого The Internet Software Consortium.

BIND http://www.isc.org/

DNS How-to http://sunsite.unc.edu/mdw/HOWTO/DNS-HOWTO.html

DHCP, bootp

DHCP и bootp - протокол, который позволяет машине пользователя получать сетевую информацию (типа своего IP адреса) с сервера. Многие организации начинают использовать этот протокол, потому что он облегчает управление сетью, особенно в больших сетях или сетях, в которых имеется множество мобильных пользователей.

Относящиеся к данной теме документы:

DHCP How-to http://sunsite.unc.edu/mdw/HOWTO/mini/DHCP.html

NIS

Сетевая Информационная служба (NIS) обеспечивает простой сетевой сервис, состоящий из баз данных и процессов. Его цель состоит в предоставлении информацию, которая должна быть известна через сеть, для всех машин в сети. К примеру, он позволяет одному человеку зарегистрироваться на любой машине в сети с NIS без необходимости добавления администратором пароля для него во все машины, а только в основную базу данных.

NIS How-to http://sunsite.unc.edu/mdw/HOWTO/NIS-HOWTO.html

Аутентификация

Имеются различные методы аутентификации пользователей. В смешанных сетях Linux/Window NT: http://www.mindware.com.au/ftp/smb-NT-verify.1.1.tar.gz. PAM (встраиваемый опознавательный модуль), который является гибким методом аутентификации в UNIX: PAM библиотека http://www.kernel.org/pub/linux/libs/pam/index.html. В заключение, LDAP для Linux http://www.umich.edu/~dirsvcs/ldap/index.html

Удаленное выполнение прикладных программ

Одна из наиболее удивительных особенностей UNIX (и одна из наиболее неизвестных для новых пользователей) - мощная поддержка удаленного и распределенного выполнения прикладных программ.

Telnet

Telnet - программа, которая позволяет человеку использовать удаленный компьютер, как будто этот человек находится рядом с этой машиной. Telnet - одно из наиболее мощных инструментальных средств в UNIX, позволяя истинно удаленное администрирование. Он также является интересной программой с точки зрения пользователей, потому что предоставляет удаленный доступ к всем их файлам и программам из любой точки Internet. При объединении с X-сервером, отсутствует разлница (кроме задержки) между нахождением за пультом или на другой стороне планеты. Telnet демоны и клиенты доступны в большинстве дистрибутивов Linux.

Шифрованные удаленные сессии shell можно проводить через SSH (http://www.cs.hut.fi/ssh/), что позволяет действительно безопасно удаленно администрировать узел.

Программное обеспечение для Telnet http://sunsite.unc.edu/pub/Linux/system/network/telnet/

Команды удаленного выполнения

В Unix, и в частности в Linux, существуют удаленные команды, которые позволяют взаимодействовать с другими компьютерами из строки приглашения shell. Примеры: rlogin, который позволяет войти в систему на удаленной машине наподобие telnet; rcp, который позволет удаленно передавать файлы между машинами, и т.д. В заключение, удаленная команда оболочки rsh позволяет выполнение команд на удаленной машине без фактической регистрации на той машину.

X Window System

X Window System была разработана в MIT в недавнем 1980-ом и быстро стала промышленным стандартом оконной системы для графических рабочих станций UNIX. Программное обеспечение свободно доступно, очень универсально и подходит для широкого диапазона аппаратных средств. Любая X window system состоит из 2 частей - X сервер и одного или больше X клиентов. Важно понять различие между сервором и клиентом. Сервер управляет дисплеем напрямую и ответственен за весь ввод-вывод через клавиатуру, мышь и дисплей. Клиенты, с другой стороны, не обращаются к экрану непосредственно - они связываются с сервером, который обрабатывает весь ввод и вывод. Клиенты проделывают "реальную" вычислительную работу - управляют прикладными программами или еще что-нибудь. Клиент связывается с сервером, заставляя сервер открыть одно или более окон, чтобы произвести операции ввода и вывода для этого клиента.

Короче говоря, X Window System позволяет пользователю зарегистрироваться на удаленной машине, выполнить процесс (например, открыть веб-браузер) и вывод отобразить на собственной машине. Поскольку процесс фактически выполняется на сервере, пользователю требуется процессор очень небольшой производительности. Действительно возможно иметь компьютеры, чье первичное назначение состоит в том, чтобы работать как чистые x-серверы, и они известны как x-терминалы.

Свободный порт X windows system существует для Linux и может быть найден в: Xfree http://www.xfree86.org/Обычно он включается в большинство дистрибутивов Linux.

Remote X Apps How-to

VNC. VNC означает Virtual Network Computing. Это, в сущности, система "удаленного дисплея", которая позволяет видеть "рабочий стол" не только на машине, где запущен процесс, но и из любой точки Internet на машинах самой разнообразной архитектуры. И клиент, и сервер существует для Linux, также как и для многих других платформ. Можно запустить MS Word на машине с Windows NT или Windows 95 и выводимую информацию отображать на Linux машине. И наоборот - можно выполнять прикладную программу на Linux машине и выводить отображаемую информацию на любую другую машину с Linux или Windows. Существует клиент Java, позволяющий выполнять "удаленный дисплей" внутри окна веб-браузера. В заключение скажу что, порт для Linux, использующий графическую библиотеку SVGAlib позволяет сделать полностью функциональный x-терминал из 386 с 4 МБ оперативной памяти. http://sunsite.unc.edu/mdw/HOWTO/mini/Remote-X-Apps.html

Сетевые соединения

Работа с сетями в Linux богата возможностями. Linux-машина может быть настроена так, чтобы работать в качестве маршрутизатора, моста, и т.д... Некоторые из доступных возможностей описаны ниже

Маршрутизатор

Linux ядро имеет встроенную поддержку для функций маршрутизации. Linux-машина может действовать или как IP, или IPX маршрутизатор стоимостью в несколько раз меньшей, чем коммерческий маршрутизатор. Новые ядра включают специальные опции для машин, работающих прежде всего как маршрутизаторы:

Мультикастинг:

Позволяет Linux машине работать как маршрутизатор для IP пакетов, которые имеют несколько адресов назначения. Это необходимо при работе в MBONE, сеть с высокой прпускной способностью, лежащая в основе Internet, который передает звук, радиопередачи, видео

Стратегия IP маршрутизации:

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

Имеется несколько проектов, которые включают попытки построить маршрутизатор на Linux на одной дискете: Linux Router Project http://www.psychosis.com/linux-router/

Мост

Ядро Linux имеет встроенную поддержку для работы в качестве моста локальной сети ethernet, что означает, что соединенные им различные сегменты локальной сети ethernet работают как одна локальная сеть ethernet. Несколько мостов могут работать вместе, чтобы создать большие сети Ethernet, используя алгоритм spanning tree IEEE802.1. Поскольку он является стандартом, Linux мосты будут правильно взаимодействать с мостами третьих фирм. Дополнительные программные пакеты позволяют фильтровать данные по IP, IPX или MAC адресам.

Bridge + Firewall http://sunsite.unc.edu/mdw/HOWTO/mini/Bridge+Firewall.html

Bridge http://sunsite.unc.edu/mdw/HOWTO/mini/Bridge.html

IP-Masquerading

IP Masquerade - развивающаяся функция работы с сетями в Linux. Если Linux-хост соединен с Internet с включенным IP Masquerade, то компьютеры, подключенные к нему (либо в той же самой локальной вычислительной сети, либо соединенные по модему) могут тоже выходить в Inetrnet, даже если у них нет официально назначенных IP адресов. Это позволяет сократить издержки, так как множество людей могут работать с Internet через одно модемное соединение, а также способствует укреплению безопасности (в некоторых случаях машина работает как firewall, так как к неофициально назначенным адресам нельзя обращаться из внешней сети)

Страницы и документы IP masquerade:

http://www.tor.shaw.wave.ca/~ambrose/

http://www.indyramp.com/masq/links.pfhtml

http://sunsite.unc.edu/mdw/HOWTO/mini/IP-Masquerade.html

Ip-accounting

Эта опция ядра Linux следит за IP трафиком, регистрацией пакетов и вырабатывает статистику. Последовательность правил может определять, что когда некоторый пакет соответствует образцу, то счетчик увеличивается, он принимается/отвергается, и т.д..

IP aliasing

Эта особенность ядра Linux обеспечивает возможность установки нескольких сетевых адресов на один и тот же драйвер низкого уровня сетевого устройства (например, два IP адреса на один адаптер локальной сети ethernet). Обычно используется для сервисов, которые работают с адресами из различных сетей (например "мультихостинг" или "виртуальные области" или "виртуальный мультихостинг").

IP aliasing How-to http://sunsite.unc.edu/mdw/HOWTO/mini/IP-Alias.html

Traffic shaper

Traffic shaper - это действительное сетевое устройство, которое ограничиивает выходной поток данных в другом сетевом устройстве. Он особенно полезен в тех случаях (например, для ISP), когда желательно управлять скоростями передачи данных для каждого пользователя. Другой вариант (только для веб) - это модули Apache, которые ограничивают число IP соединений или используемую скорость передачи для конкретного пользователя.

Firewall

Firewall - устройство, которое защищает частную сеть от общей части (Internet"а в целом). Оно разработано для управления потоком пакетов, в зависимости от адреса источника, адреса назначения, порта и информации о типе пакета, содержащихся в каждом пакете.

Для Linux существуют различные комплекты инструментальных средств firewall равно как и встроенная в ядро поддержка. Другие firewallы - TIS и SOCKS. эти комплекты инструментальных средств firewall весьма функциональны, и будучи объединенными с другими инструментальными средствами позволяют блокировать/переназначать любые трафик и протоколы. Различные правила могут задаваться через файлы конфигурации или GUI программы.

Домашняя страничка TIS http://www.tis.com

SOCKS http://www.socks.nec.com/socksfaq.html

Firewall How-to http://sunsite.unc.edu/mdw/HOWTO/Firewall-HOWTO.html

Port Forwarding

Увеличение числа веб-сайтов достигается с помощью cgi-bins или Java-апплетов, которые обращаются к некоторой базе данных или другому сервису. Так как этот доступ может ставить проблему защиты, машина, содержащая базу данных не должна быть соединена непосредственно к Internet.

Port Forwarding может обеспечить почти идеальное решение этой проблемы. На firewall, в IP пакетах, которые приходят на указанный порт, номер порта может быть подменен, и пакеты будут посылаться на внутренний сервер, обеспечивающий фактическое обслуживание. Ответные пакеты от внутреннего сервера преобразуются так, словно они исходят от firewall.

Информация по Port Forwarding может быть найдена здесь http://www.ox.compsoc.net/~steve/portforwarding.html

Выравнивание нагрузки

Вопрос о выравнивании нагрузки возникает обычно при доступе к базе данных/веб, когда к серверу обращается одновременно множество клиентов. Было бы желательно иметь несколько идентичных серверов и переназначать запросы на менее загруженный сервер. Это может быть достигнуто с помощью технологии Трансляции Сетевых Адресов (NAT), чьим подмножеством является IP-masquerading. Сетевые администраторы могут заменить один сервер, обеспечивая услуги веб - или любое другое приложение, - объединением серверов, совместно использующих один общий адрес IP. Входящие соединения направлюятся на особый сервер, использующий алгоритм выравнивания нагрузки. Виртуальный сервер перезаписывает входящие и исходящие пакеты так, что клиент имеют прозрачный доступ к серверу, как будто сервер только один.

Информация по Linux IP-NAT может быть найдена здесь http://www.csn.tu-chemnitz.de/~mha/linux-ip-nat/diplom/

EQL

EQL интегрирован в ядро Linux. Если существуют два последовательных соединения с некоторым другим компьютером (обычно для этого требуется два модема и две телефонных линии) и на них используются SLIP или PPP (протоколы для передачи Internet трафика по телефонным линиям), то можно заставить их вести себя как одно соединение удвоенного быстродействия, использующее этот драйвер. Конечно, оно должно поддерживаться также и на другом конце линка.

EQL How-to http://www.abies.com/eql-howto.mhtml

Прокси-сервер

Термин прокси означает "делать что-либо от чьего-то имени". В условиях работы с сетями, прокси-сервер может работать для защиты нескольких клиентов. HTTP прокси - это машина, которая получает запросы на веб страницы от другой машины (Машина A). Прокси скачивает запрошенную страницу и передает ее Машине A. Прокси может иметь кэш запрошенных страниц, так что, если другая машина обратится к той же самой странице, то ей будет передана копия из кэша. это позволяет более эффективно использовать каналы связи и уменьшить время отклика. Как побочный эффект, для машин, не подключенных непосредственно к Internet прокси является точкой выхода внутренней сети во внешний мир. Тщательно настроенный прокси может быть эффективен также, как и хороший firewall.

Для Linux написано несколько прокси серверов. Одно из самых популярных решение - прокси-модуль из пакета Apache. Более полная и продуманная реализация HTTP прокси - SQUID.

Apache http://www.apache.org

Squid http://www.squid.org

Дозвон по требованию

Цель дозвона по требованию состоит в том, чтобы заставить это очевидно появиться, что пользователи имеют постоянное соединение с удаленным местом. Обычно, имеется daemon, кто контролирует воздушное движение пакетов и где интересный пакет (интересный определен обычно набором rules/priorities/permissions) прибывает, это устанавливает соединение с удаленным концом. Когда канал - простой для некоторого периода(точки) времени, это понижает(пропускает) соединение.

Diald How-to http://sunsite.unc.edu/mdw/HOWTO/mini/Diald.html

Tunnelling, мобильный IP и виртуальные частные сети

Ядро Linux позволяет осуществлять tunnelling протоколов (вложение пакетов). Он может делать IPX tunnelling через IP, позволяя соединить две IPX сети по IP связи. Также можно делать IP-IP tunnelling, что является необходимым для поддержки мобильных IP, поддержки мультивещания и любительского радио. (См. http://sunsite.unc.edu/mdw/HOWTO/NET-3-HOWTO-6.html#ss6.13)

Мобильный IP определяет расширения, которые позволяют осуществлять прозрачную маршрутизацию IP датаграмм для подвижных узлов Internet. Каждый мобильный узел всегда идентифицируется по собственному адресу, независимо от текущей точки входа в Internet. При нахождении вдалеке от дома, подвижный узел также связывается с адресом обслуживания, который предоставляет информацию о точке входа в Internet. Протокол регистрирует адрес обслуживания в домашнем агенте. Домашний агент посылает датаграммы, предназначенные подвижному узлу через туннель на адрес обслуживания. По достижению конца туннеля, каждая датаграмма затем приходит на мобильный узел.

Двухточечный Протокол Туннелирования (PPTP) - технология работы с сетями, которая позволяет использовать Internet в качестве среды передачи для виртуальной частной сети (VPN). На сервере Windows NT PPTP встроен в сервер удаленного доступа (RAS). С помощью PPTP пользователи могут звонить локальному ISP или соединяться непосредственно с Internet, и обращаться к своей сети, словно работая в локальной сети. PPTP - закрытый протокол, и его качество защиты было недавно скомпрометировано. Настойчиво рекомендуется под Linux использовать другие методы защиты, так как они основаны на открытых стандартах, которые были тщательно проверены.

Реализация клиента PPTP для Linux доступна здесь http://www.pdos.lcs.mit.edu/~cananian/Projects/PPTP/

Мобильные IP: http://www-uk.hpl.hp.com/people/jt/mip.html

http://anchor.cs.binghamton.edu/~mobileip/

Документы о Виртуальных Частных Сетях: http://sunsite.unc.edu/mdw/HOWTO/mini/VPN.html

http://sites.inka.de/sites/bigred/devel/cipe.html

Сетевое Управление

Прикладные программы сетевого управления

Имеется внушительное число инструментальных средств, ориентированных на сетевое управление и удаленное администрирование. Некоторые интересные проекты удаленного администрирования - linuxconf и webmin:

Webmin http://www.webmin.com/webmin/

Linuxconf http://solucor.solucorp.qc.ca/linuxconf/

Другие инструментальные средства включают сетевые инструментальные средства анализа трафика, сетевые инструментальные средства защиты, контролирующие инструментальные средства, инструментальные средства настройки, и т.д Архивы многих из этих инструментальных средств могут быть найдены на Sunsite http://www.sunsite.unc.edu/pub/Linux/system/network/

SNMP

Простой Сетевой Протокол Управления - протокол для предоствления услуг по управлению сетью. Он предоставляет удаленный текущий контроль и настройку маршрутизаторов, мостов, сетевых плат, коммутаторов, и т.д... Имеется большое количество библиотек, клиентов, демонов и программ для SNMP написанных для Linux. Хорошая страница, относящаяся к SNMP и ПО для Linux может быть найдена в:

Производственные сети и Linux

В некоторых ситуациях при работе с сетями необходимо иметь механизмы, гарантирующие 100% работоспособность cети. Некоторые такие методы описаны в последующих разделах. Большинство из этого материала может быть найдено на превосходном веб-сайте Linas: http://linas.org/linux/index.html и в High-Availability-HOWTO для Linux http://sunsite.unc.edu/pub/Linux/ALPHA/linux-ha/High-Availability-HOWTO.html

Высокая надежность

Для предотвращения полный краха системы при единичных случаях отказа используется избыточность. Станция с одной сетевой платой или одним SCSI диском имеет две потенциальные точки отказа. Цель состоит в сокрытии от пользователей незапланированных сбоев и возможности максимально быстро позволить пользователям возобновить работу. Программное обеспечение обеспечения высокой надежности - это набор скриптов и инструментальных средств, которые автоматически контролируют и обнаруживают отказы, предпринимая соответствующие шаги для восстановления нормальной работы и сообщая об этом администратору системы.

RAID

RAID, сокращение для Избыточного Массива Недорогих Дисков, является методом, с помощью которого информация располагается на нескольких дисках, используя методы типа дискового striping (RAID уровня 0) и зеркального отображения диска (RAID уровня 1), чтобы достигнуть избыточности, более малого времени ожидания и/или большей скорости чтения и/или записи, и восстановимости после сбоев жесткого диска. Имеется свыше шести различных типов конфигураций RAID. Для пользователей Linux доступны три вида реализации RAID: программный RAID, внешние корзины DASD и контроллеры RAID.

Программный RAID:

Исключительно программная реализация RAID осуществляет различные уровни RAID в дисковом коде ядра.

Внешние корзины DASD:

DASD (Устройство Памяти Прямого доступа) - отдельные модули, которые поставляются с их собственным питанием, обеспечивают шкаф/блок для закрепления жестких дисков, и видны в Linux как SCSI устройства. Во многих случаях они предоставляют наиболее продуманное решение RAID.

Контроллеры RAID:

Контроллеры - платы адаптера, которые подключают к шине ISA/EISA/PCI. Точно так же как и обычные платы дискового контроллера, кабель присоединяется к дисководам. В отличие от обычных контроллеров дисков, контроллеры RAID реализуют RAID непосредственно на самой плате, выполняя все необходимые операции по обеспечению различных уровней RAID.

How-tos: http://sunsite.unc.edu/mdw/HOWTO/mini/DPT-Hardware-RAID.html

http://sunsite.unc.edu/mdw/HOWTO/Root-Rescue.html

http://sunsite.unc.edu/mdw/HOWTO/mini/Software-RAID.html

RAID в linas.org: http://linas.org/linux/raid.html

Избыточность в сетях

IP Address Takeover (IPAT). Когда сбоит плата сетевого адаптера, ее адрес IP должен переназначиться рабочей сетевой плате на том же самом хосте или на другом хосте. MAC Address Takeover: когда происходит перераспределение IP адресов, надо удостовериться, что все узлы в сети модифицировали свои ARP кэши (отображение между IP и MAC адресами). См. High-Availability How-To для подробностей: http://sunsite.unc.edu/pub/Linux/ALPHA/linux-ha/High-Availability-HOWTO.html

Операционная система Linux - самый популярный представитель так называемого «свободного программного обеспечения». Система Linux не лучше и не хуже Windows - она другая. У нее есть тысячи поклонников по всему миру, многие из которых принимали участие в написании системы, есть и противники. Однако единственный способ понять, нужна ли вам Linux, - попробовать с ней поработать.

Возможности, которые предоставляет ОС Linux пользователям:

q ОС Linux дает возможность всем бесплатно и легально иметь современную ОС для использования, как на работе, так и дома;

q Обладает высоким быстродействием;

q Работает надежно, устойчиво;

q Позволяет использовать полностью все возможности современных ПК,

q Эффективно управляет многозадачностью и приоритетами;

q Фоновые задачи (длительный расчет, передача электронной почты по модему и т.д.) не мешают интерактивной работе;

q Позволяет легко интегрировать ПК в локальные и глобальные сети, в т.ч. в Internet;

q Работает с сетями;

q Позволяет выполнять представленные в формате загрузки прикладные программы других ОС;

q Обеспечивает использование огромного числа разнообразных программных пакетов, накопленных в мире Unix и свободно распространяемых вместе с исходными текстами;

q Предоставляет богатый набор инструментальных средств для разработки прикладных программ любой степени сложности, включая системы класса клиент-сервер, объектно-ориентированные, с многооконным текстовым и/или графическим интерфейсом, пригодных для работы как в Linux, так и в других ОС;

q Дает всем желающим попробовать свои силы в разработке, организовать общение и совместную работу через Internet с любыми из разработчиков ОС Linux и сделать свой вклад, став соавтором системы.

Linux является полной многозадачной многопользовательской ОС точно также, как и другие версии Unix. Она была создана с помощью многих Unix - программистов в рамках проекта GNU Free Software Foundation Camdridge, Massachusetts, но в него внесли лепту и энтузиасты из Internet и всего мира.

Специфические внутренние черты Linux включают контроль работ по стандарту POSIX, используемый оболочки - csh, bash, всевдотерминалы - pty, поддержку национальных и стандартных клавиатур динамически загружаемых драйверами клавиатур.

Ядро ОС Linux.

Ядро системы Linux состоит из нескольких основных частей: блок управления процессами, блок управления памятью, драйверы устройств, драйверы файловых систем, блок управления сетью а также другие небольшие процедуры.

Наиболее важные составляющие ядра (обеспечивающие жизнеспособность системы) - это блок управления памятью и процессами. Блок управления памятью обеспечивает распределение областей памяти и swap-областей между процессами, составляющими ядра и для кэш-буфера. Блок управления процессами создает новые процессы и обеспечивает многозадачность путем переключения задач.

На самом нижнем уровне ядро содержит драйверы устройств для каждого типа поддерживаемого оборудования. Существует довольно большой набор различных драйверов, так как постоянно разрабатываются новые типы устройств. Существует довольно много одинаковых устройств, которые различаются только тем, как происходит взаимодействие между самим устройством и драйвером. Такое сходство позволяет использовать классы драйверов, поддерживающих одинаковые операции. В каждом члене такого класса используется однотипный интерфейс для ядра, но различные схемы взаимодействия с устройством. Например, все драйверы жесткого диска представляются для ядра абсолютно одинаково, то есть у них у всех имеются такие операции как "инициализация жесткого диска", "чтение сектора N", "запись сектора N".

Некоторые функции, предоставляемые ядром, имеют одинаковые свойства. Например, различные сетевые протоколы объединены в один программный интерфейс - BSD socket библиотеку. Вот другой пример - различные файловые системы, поддерживаемые системой Linux. Ядро содержит виртуальную файловую систему (Virtual File System - VFS) которая включает в себя все функции, используемые для работы системы, а также драйвер для каждой поддерживаемой файловой системы. При попытке доступа к какой-либо файловой системе запрос проходит через VFS, откуда перенаправляется к соответствующему драйверу файловой системы.

Для увеличения объема доступной памяти Linux осуществляет разбиение диска на страницы: на диске выделяется пространство для свопинга (swap space)., причем в область свопинга выгружается только отдельные части в которых нет необходимости.

Ядро поддерживает универсальный пул памяти для пользовательских программ и дискового кэша. При этом для кэша может использоваться как вся память, так и кэш уменьшается при работе больших программ.

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

Иногда при работе ядра или различных системных программ возникают ошибки, предупреждения и другие сообщения. Программа Syslog записывает все сообщения в файл так, что он может быть впоследствии просмотрен. Syslog можно сконфигурировать так, что сообщения будут сортироваться и записываться в разные файлы по приоритету. Например, сообщения ядра часто направляются в отдельный файл, так как эти сообщения наиболее важные и должны регулярно просматриваться во избежание серьезных проблем.

Совместимость.

Linux предоставляет собой комбинации BSD Unix и System V Release 4 Unix. Linux достаточно хорошо совместима с рядом стандартов на уровнях исходных текстов, включая IEEE POSIX.1., System V и BSD.

Графический интерфейс пользователя.

В Linux графический интерфейс пользователя не встраивается в ядро системы. Вместо этого он представляется программами пользовательского уровня. Это применяется как к текстовым, так и к графическим оболочкам.

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

Первоначально используемой с системой Linux графической оболочкой была система X Window System (сокращенно X). X не реализует пользовательский интерфейс, а только оконную систему, т.е. средства, с помощью которых может быть реализован графический интерфейс. Три наиболее популярных версии графических интерфейсов на основе X - это Athena, Motif и Open Look.

Одновременное выполнение нескольких программ.

Так называемая виртуальная мультиконсоль дает возможность на одном дисплее организовать работу нескольких консолей. На первой консоли запускается процесс трансляции. Комбинацией клавиш Alt-F2 следует переход на вторую консоль. Трансляция продолжается, но при этом первая консоль на экране дисплея заменяется новой картинкой второй консоли. В которой, например, запускается редактор текста. Комбинацией Alt-F3 следует переход на третью консоль, в которой запускается отладчик и т.д. Обычно в системе 8 консолей, но можно установить до 64-х. В любой момент времени можно переключиться на любую консоль.

На отдельной консоли может работать как текстовая, так и графическая программа. На одной из свободных консолей можно запустить оконную графическую систему X Window System. Открываете окно на экране и играете в DOOM. Можно через сеть с партнером. А в других окнах - база данных, почта, редактор, трансляция и т.д.

Таким образом, одновременно работает много консолей, а на одной из консолей еще и много окон X Window System.

Кроме того, в системе одновременно работают фоновые процессы, которые не выдают информации на дисплей, но делают свою работу, например, передают данные по модему, печатают на принтере, передают почту по сети и т.д. Фоновый процесс может инициировать как пользователь, так и сама ОС в соответствии со сложившимися условиями (есть почта для отправки, данные для печати, наступило время связи по модему и т.п.). Linux обеспечивает физическое распараллеливание вычислений на многопроцессорных машинах (до 32 процессоров), но это не имеет прямого отношения к одновременному выполнению нескольких программ. Операционная система позволяет одновременно выполнять несколько задач на одном процессоре, сотни раз в секунду переключая процессор с задачи на задачу.

Структура файловой системы.

Поддерживаемые файловые системы Linux позволяют работать с различными типами файловых систем, а некоторые из них как например, EXT2/3, ReiserFS и JFS считаются базовыми для Linux. Поддержка FAT (файловая система MS-DOC) позволяет непосредственно обращаться к файлам на жестком диске.

Файловая система разделяется на несколько частей: файловая система root, состоящая из каталогов /bin, /lib, /etc, /dev и некоторых других, файловая система /usr, где хранятся различные программы и данные не подлежащие изменению, файловая система /var, где содержатся изменяемые файлы (такие как log файлы и др.) и файловая система /home, которая состоит из личных каталогов пользователей. Разделение может существенно отличатся от выше указанного в зависимости от работы системного администратора и конфигурации аппаратного обеспечения.

Работа с сетью.

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

Сетевые возможности Linux обеспечивают полный набор протоколов ТСР/Р для работы в Internet и поддерживается весь спектр клиентов и услуг ТСР/Р, таких как FTP,TELNET, NNTP и SMTP. Имеется возможность долучения доступа к сетям Internet без установки сетевого адаптера посредством установки модема и протокола РРР. ОС Linux обеспечивает эффективный и надежный шлюз РРР для удаленных пользователей по коммутативной линии.

Подключение к системе через сеть работает несколько иначе, чем обычное подключение. Существуют отдельные физические последовательные линии для каждого терминала, через которые и происходит подключение. Для каждого пользователя, подключающегося к системе, существует отдельное виртуальное сетевое соединение и их может быть любое количество. Однако не представляется возможным запустить отдельный процесс getty для каждого возможного виртуального соединения. Существуют также и другие способы подключения к системе посредством сети. Например, telnet и rlogin - основные службы в TCP/IP сетях.

При использовании сети для подключения к системе, кроме большого количества процессов getty используется отдельная программа-демон (при использовании как telnet так и login используются различные программы-демоны), которая отслеживает все попытки соединения с компьютером. Если опpеделяется попытка соединения, то программа создает новый процесс - создает сама себя для обработки этого соединения - а затем продолжает отслеживание новых соединений. Создаваемый процесс идентичен программе getty.

Электронная почта является самым важным средством связи между компьютерами. Электронные письма хранятся в одном файле в специальном формате. Для чтения и отправления писем применяются специальные программы.

У каждого пользователя имеется отдельный "почтовый ящик" (т.е. файл, где информация хранится в специальном формате), в котром хранится приходящая почта. Если на комьютер приходит письмо, то программа обработки почты находит файл почтового ящика соответвующего пользователя и добавляет туда полученное письмо. Если же почтовый ящик пользователя находится на другом компьютере, то письмо перенаправляется на этот компьютер, где проходит его последующая обработка.

Почтовая система состоит из множества различных программ. Доставка писем к локальным или удаленным почтовым ящикам производится одной программой (например, sendmail или smail), в то время как для обычной отправки или просмотра писем применяется большое количетсво различных программ (например, Pine или elm). Файлы почтовых ящиков обычно хранятся в каталоге /var/spool/mail.

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

Программа обслуживания очереди к принтеру помещает информацию, которая должна быть распечатана, на диск, то есть текст располагается на диске, в то время как задание находится в очереди. Это позволяет прикладным программам достаточно быстро распечатывать тексты, помещая их в очередь, так как для продолжения работы приложению не требуется дожидаться окончания распечатки.

Оборудование, на котором работает Linux.

Linux вместе с X Windows работает на большом количестве марок компьютеров и ноутбуков

Версии ОС Linux имеют различные дистрибутивы - Mandrake, Red Halt, Alt и другие. Дистрибутив системы Linux содержит подробный перечень поддерживаемого оборудования, включая типы графических адаптеров, контроллеров, сетевых плат и т.д.

При работе с Linux прежде всего необходимо правильно подобрать оборудование для работы с Linux в нужных режимах. В состав ОС Linux входят сотни различных программ, которые предоставляют пользователю широчайший спектр возможностей для решения самых разнообразных задач. Все эти программы подробно документированы. Для того, чтобы освоить Linux не требуется знание ОС Unix, хотя среди пользователей бытует мнение, что ОС Linux слишком сложная и предназначена она только для специалистов. Сегодня это не более чем фраза, дошедшая до нас из далекого прошлого. Нынешний Linux - это не просто альтернативная операционная система, но и стандарт качества и удобства, в чем может убедиться, без преувеличения, каждый пользователь ПК.

Применение информационных технологий в образовательном процессе требует использования соответствующих программ. Альтернативой коммерческим и подчас дорогим продуктам является так называемое свободно распространяемое программное обеспечение.

Назначение и основные возможности операционной системы Linux

Разработка пакета свободного отечественного программного обеспечения (далее – ПО) – одна из центральных задач, которую необходимо решить для информационной безопасности России. Об этом неоднократно заявлял Президент РФ Дмитрий Медведев. По его словам, до 2010 г. в России должна быть создана собственная операционная система (далее – ОС) с открытым кодом и полный комплект приложений для обеспечения эффективной работы государственных органов и бюджетных организаций.

История появления свободного ПО

Осенью 2007 г. в России был проведен первый открытый конкурс по разработке и поставке пакета свободного, бесплатного ПО. Победила группа “Армада”. Соисполнителем по этому конкурсу стала компания ALT Linux. В рамках проекта сотрудниками ALT Linux был разработан и протестирован пакет свободного программного обеспечения (далее – ПСПО), который был внедрен более чем в тысяче школ трех пилотных регионов России: Республике Татарстан, Пермском крае и Томской области. В этих регионах была отработана технология не только внедрения, но и организации технической поддержки. Несмотря на то, что пилотных регионов было только три, любая школа России могла добровольно присоединиться к проекту и бесплатно получить комплект ПСПО. Для популяризации этой возможности и проекта в целом был проведен ряд семинаров в разных уголках страны. По итогам 2008 г. в проекте внедрения участвовала 2151 школа.
Давайте разберемся, что представляет собой ОСLinux . Это одна из ветвей развития ОС Unix, разработанная финским программистом Линусом Торвальдсом в 1991 г. для архитектуры процессоров семейства Intel х86. Сегодня она перенесена на ряд различных аппаратных платформ.

Понятие дистрибутива

Дистрибутив – это набор программного обеспечения, включающий четыре основные составные части ОС:
¦ ядро (основная, определяющая часть ОС, которая управляет аппаратными средствами и выполнением программ);
¦ файловая система (способ организации хранения файлов на запоминающих устройствах);
¦ интерпретатор команд пользователя (программа, организующая взаимодействие пользователя с компьютером);
¦ утилиты (отдельные программы, выполняющие различные служебные функции).
Ядро ОС Linux разрабатывается под общим руководством Линуса Торвальдса и распространяется свободно, как и огромное количество другого ПО, утилит и прикладных программ. Одним из следствий свободного распространения ПО для Linux явилось то, что большое число разных фирм и компаний, а также просто независимых групп разработчиков стали выпускать дистрибутивы на основе ядра Linux. На сегодняшний день существует множество дистрибутивов Linux. Поскольку Торвальдс продолжает координировать разработку ядра, его версии развиваются последовательно, а не ветвятся, как дистрибутивы.
Дистрибутивы отличаются друг от друга по составу включенных в них программ – они содержат как стандартные для всех дистрибутивов программы (например, оболочку или ядро), так и уникальные разработки авторов дистрибутива (например, программы для конфигурирования системы, разные графические оболочки, утилиты для работы с ядром и т. д.). Некоторые дистрибутивы выпускаются фирмами на коммерческой основе, другие распространяются на условиях лицензии GNU GPL , т. е. бесплатно.
На протяжении 15 лет с момента выхода первой версии ядра в мире уже существует несколько десятков различных дистрибутивов Linux. Наибольшее распространение получили три вида пакетов: rpm (формат Red Hat Linux), deb (формат Debian) и tgz (формат Slackware).

Описание дистрибутивов ОС Linux

Использование ПО с открытым исходным кодом

Сегодня пользователи все чаще стараются приобрести лицензионное ПО или же использовать open source software или freeware * аналоги. Коротко рассмотрим наиболее популярное ПО, распространяемое по лицензии GPL.
OpenOffice.org – международный проект с открытыми исходными кодами, созданный для того, чтобы разработать универсальный офисный пакет, работающий на разных операционных платформах, имеющий открытый API ** и формат файлов, основанный на XML ***.
GNU Image Manipulation Program или GIMP – растровый графический редактор, программа для создания и обработки растровой графики. Частично поддерживается векторная графика.
GNU Compiler Collection (используется сокращение GCC) – набор компиляторов для различных языков программирования, разработанный в рамках проекта GNU. GCC является свободным программным обеспечением, распространяется фондом свободного программного обеспечения (FSF) на условиях GNU GPL и GNU LGPL и является ключевым компонентом GNU toolchain. Он используется как стандартный компилятор для свободных Unix-подобных операционных систем, и в нескольких проприетарных ОС, в т. ч. Apple Mac OS X.
Mozilla Firefox (ранее известен как Phoenix и Firebird) – второй по популярности в мире браузер и первый с открытым исходным кодом, который добился такой популярности. Mozilla Suite и Mozilla Firefox были основаны на исходном коде Netscape Navigator, выпущенного под свободной лицензией MPL (Mozilla Public License).
KDevelop – свободная среда разработки ПО для Unix-подобных ОС. Проект стартовал в 1998 г. KDevelop не включает в свой состав компилятор, вместо этого он использует GNU Compiler Collection (или любой другой компилятор) для создания исполняемого кода.
Свободно распространяемое программное обеспечение по предоставляемым возможностям не уступает своим платным аналогам. Из технических преимуществ GNU/Linux стоит отметить, что данная ОС практически не подвержена заражению вирусами .
Информацию, касающуюся других сфер применения Linux, таких, как организация совместного доступа к файлам и принтерам, обеспечение безопасности можно прочитать на сайте Linux Pipeline (http://www.linuxpipeline.com).

Преимущества и недостатки ОС Linux

Долгое время ОС Microsoft представляла собой наиболее разумный выбор для пользователя. Однако в последнее время ОС Linux достаточно развилась, чтобы составить ей серьезную конкуренцию.
Преимуществами ОС Linux можно назвать:
¦ открытые исходные коды;
¦ стабильность;
¦ многопользовательность;
¦ возможность полноценного удаленного управления;
¦ сравнительно низкие требования к аппаратным ресурсам;
¦ наличие собственных ресурсов в сети Интернет (через которые можно получить поддержку и т. д.);
¦ минимальный объем ядра и возможность использования во встраиваемых системах, что позволяет добиться единообразия операционной среды;
¦ возможность (ограниченная) выполнения DOS и Windows приложений.
К недостаткам ОС можно отнести некоторую несовместимость между версиями Linux и дистрибуциями, затрудняющую использование приложений на разных Linux, а также относительную сложность конфигурирования.
К сожалению, практически отсутствуют под Linux системы разработки с развитой средой типа Inprise Delphi, MS Visual Studio.
Основная же проблема сейчас заключается в количестве прикладных программ для Linux, хотя эксперты утверждают, что в ближайший год произойдет резкое увеличение числа прикладных пакетов. Еще одна проблема – слабая поддержка Linux производителями аппаратуры, однако и она постепенно решается.
По мере совершенствования Linux будет получать все более широкое распространение. С присоединением коммерческих поставщиков, таких, как Oracle, Sybase, Informix и Corel (WordPerfect), и с появлением собственных инноваций от разработчиков проникновение Linux на рынки, занятые другими ОС, будет усиливаться. Red Hat, Caldera и другие поставщики коммерческих версий Linux намереваются расширять линейки продуктов, заниматься собственными разработками и вводить техническую поддержку. Всем вместе им будет вполне по силам играть заметную роль на рынке, а это должно увеличить доверие со стороны тех, кто пока опасается поручать Linux серьезные задачи.
Интернет-провайдеры (ISP) переходят на Linux из-за лучшей управляемости, режима работы 24x7 (24 ч в сутки, 7 дней работы) при больших нагрузках.
Многие организации предпочитают поддержку, которую обеспечивает семейство Linux, поддержке Microsoft. Можно не только настроить рабочий стол Linux, чтобы он выглядел как Windows, но и запускать пакеты приложений, которые по функциональности эквивалентны MS Office (Open Office). Реализация новых стандартов и протоколов происходит раньше в Linux, поскольку исходный код легко доступен, заплаты для дефектов в ПО для Linux иногда выходят в тот же день.
После установки необходимого ПО и русских шрифтов Linux-машина становиться более полноценным рабочим местом, нежели Windows-машина. В стандартную установку Linux входят множество программ для работы с интернетом, несколько текстовых редакторов уровня “Блокнота” Windows, текстовый процессор TEX, компилятор языка C++, интерпретатор Perl, редактор EMACS. Отдельный вопрос – работа Linux в сети. В стандартной инсталляции есть web-сервер, ftp-сервер и mail-сервер. Это позволяет работать как в обычной файловой сети, так и обмениваться письмами и файлами как в Интернет. Разумеется, это более безопасный и надежный способ.
Таким образом, можно сделать следующие выводы :
¦ открытые исходные тексты позволяют иметь полный контроль над функциями ОС и обеспечить отсутствие компонентов с несанкционированными функциями, что принципиально важно для использования в критических приложениях;
¦ стабильность и надежность ОС Linux позволяет эффективно выполнять ставящиеся задачи, обеспечивает надежное сохранение данных, уменьшает стоимость сопровождения;
¦ свободное распространение ОС Linux позволяет оснастить этой системой необходимое количество компьютеров с минимальными затратами и решить проблему нелегального использования ПО;
¦ сравнительно низкие требования к аппаратным ресурсам позволяют использовать относительно устаревшие и не слишком мощные компьютеры как полноценные рабочие станции;
¦ наличие собственных ресурсов в сети Интернет позволяет без покупки и установки дополнительного ПО использовать ПК с Linux как сервер или как сетевую рабочую станцию;
¦ минимальный объем ядра и возможность использования во встраиваемых системах позволяет добиться единообразия операционной среды от серверов до встроенных систем;
¦ возможность (ограниченная) выполнения DOS и Windows приложений позволяет не отказываться от унаследованных приложений;
¦ наличие офисных приложений, достаточных для создания полноценного рабочего места, позволяет использовать ПК с ОС Linux для обработки документов.
На основании приведенных данных можно заключить, что ОС Linux может рассматриваться как альтернатива ОС фирмы Microsoft во всех областях применения, хотя есть прикладные области, в которых (пока еще) необходимо применение ОС фирмы Microsoft.


Linux - это операционная система, создана Линусом Торвальдсом (Linus Torvalds) для персональных компьютеров и датирована 17 сентября 1991 года. Linux, а также программное обеспечение, построенное на принципах Открытого кода и лицензии GPL. Фактически Linux и СПО является совершенным продуктом постиндустриального общества, когда человек открыт для новых идей. Благодаря этому к развитию системы подключилось большое число независимых разработчиков. Результат этой совместной работы - самая современная, устойчивая, надежная и быстроразвивающаяся система, почти мгновенно вбирающая в себя самые последние технологические новшества.

Интерфейс (внешний вид) и приемы работы с Linux идентичны таковым в Windows, есть темы оформления и уже давно существует возможность использовать трехмерный рабочий стол, что преподносится как новинка в Windows Vista только сейчас.

При переходе на Linux Вы получаете надежную операционную систему, отвечающую самым высоким требованиям и стандартам и не уступающую коммерческим ОС например таким как Windows. Одним словом, переход на Linux сохранит для вас привычный стиль работы на компьютере, а также сохранит возможность удобной работы с вашими привычными программами.

Сегодня пользователей операционной системы Linux насчитывается более 20 000 000 и постоянно увеличивается число ее приверженцев во всем мире. Существует множество офисных и мультимедийных приложений, позволяющие комфортно работать в интернете, общаться, просматривать видео, слушать музыку, играть, работать со своими документами, таблицами и презентациями, записывать диски CD и DVD и многое другое, предназначенное как для домашнего использования, так и для полностью функциональных рабочих станций.

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

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

Практически у всех программ, которыми Вы пользуетесь в Windows, есть бесплатные, а порой и прямые аналоги в OC Linux, которые прекрасно открывают, обрабатывают и сохраняют файлы-документы, созданные в Windows-ПО. Это и прекрасная замена MS Office (Word, Excell и др.) – OpenOffice, и Gimp – замена PhotoShop, Brasero – вместо Nero, InkScape – вместо CorelDRAW, Scribus – замена PageMaker/QuarkExpress… Более того: даже меню, панели инструментов похожи на платных Windows-собратьев.

Если возникает необходимость запустить Windows-программу – это тоже не вызывает проблем. На Linux гарантируется работоспособность незаменимых windows-программ, таких как 1С, Гарант, Консультант Плюс, Adobe Photoshop, CorelDraw, MS Visio и многих других. Стандартный дистрибутив Linux имеет примерно такие же возможности, как последние версии Windows с установленным программным обеспечением на $5000. И даже более того - он более стабилен и менее требователен к аппаратным средствам.

Похожие статьи