Партнерка на США и Канаду по недвижимости, выплаты в крипто
- 30% recurring commission
- Выплаты в USDT
- Вывод каждую неделю
- Комиссия до 5 лет за каждого referral
Что же такое Linux
Linux (полное название GNU/Linux, произносится «гну слэш ли́нукс», также в некоторых языках «GNU+Linux», «GNU-Linux» и др.) — общее название UNIX-подобных операционных систем на основе одноимённого ядра и собранных для него библиотек и системных программ, разработанных в рамках проекта GNU.
Linux — многопользовательская сетевая операционная Unix-подобная система с сетевой оконной графической системой X Window System. Linux поддерживает стандарты открытых систем и протоколы сети Internet и совместима с системами Unix, DOS, MS Windows. Все компоненты системы, включая исходные тексты, распространяются с лицензией на свободное копирование и установку для неограниченного числа пользователей. Linux широко распространена на различных платформах Intel и завоевывает позиции на ряде других платформ (DEC AXP, Power Macintosh и др.).
Разработка Linux выполнена Линусом Торвальдсом (Linus Torvalds) из университета Хельсинки и не поддающейся подсчету обширной командой из тысяч пользователей сети Internet, сотрудников исследовательских центpов, фондов, университетов и т. д.
В отличие от большинства других операционных систем, GNU/Linux не имеет единой «официальной» комплектации. Вместо этого GNU/Linux поставляется в большом количестве так называемых дистрибутивов, в которых программы GNU соединяются с ядром Linux и другими программами. Наиболее известными дистрибутивами GNU/Linux являются Ubuntu, Debian GNU/Linux, Red Hat, Fedora, Mandriva, SuSE, Gentoo, Slackware, Archlinux. Российские дистрибутивы — ALT Linux и ASPLinux
Свободные программы
Ядро Linux, основные компоненты системы, большинство пользовательских приложений — свободные программы. Их можно запускать на любом количестве компьютеров, передавать без ограничений за деньги или бесплатно, получать исходные тексты этих программ и вносить в них любые исправления.
Основные программы для Linux выходят под лицензией GNU General Public License, которая не только гарантирует свободу, но и защищает ее, разрешая дальнейшее распространение программ только под той же лицензией. Поэтому код ядра Linux, компиляторов, библиотеки glibc, пользовательских оболочек KDE и GNOME не может быть использован для создания приложений с закрытым кодом. В этом принципиальное отличие Linux от свободных ОС BSD (FreeBSD, NetBSD, OpenBSD), фрагменты которых вошли в семейство Windows и даже стали основой Mac OS X. Linux включает в себя многие наработки BSD, но компиляторы и системные библиотеки разработаны в рамках проекта GNU.
Разработка Linux
В отличие от Windows, Mac OS и коммерческих UNIX-подобных систем, Linux не имеет географического центра разработки. Нет и фирмы, которая владеет этой ОС; нет даже единого координационного центра. Программы для Linux — результат работы тысяч проектов. Некоторые из этих проектов централизованы, некоторые сосредоточены в фирмах, но большинство объединяют программистов со всего света, которые знакомы только по переписке. Создать свой проект или присоединиться к другому может любой и, в случае успеха, результаты работы станут известны миллионам пользователей. Пользователи принимают участие в тестировании свободных программ, общаются с разработчиками напрямую, что позволяет быстро находить и исправлять ошибки и реализовывать новые возможности.
Защищенность
ОС Linux унаследовала от UNIX надежность и отличную систему защиты. Система разграничения доступа к файлам позволяет не бояться многих вирусов, терроризирующих мир ОС Windows. Тем не менее, программ без ошибок не бывает, и Linux исключением не является. Однако, благодаря открытости исходного кода программ, его аудит может осуществить любой специалист без подписок о неразглашении и необходимости работать в стенах нанявшей его компании. Именно поэтому ошибки защиты выявляются особенно эффективно и быстро исправляются. Механизм оповещения и исправления ошибок в защите создан сообществом Linux, в нем задействованы специалисты фирм-разработчиков и независимые программисты.
Возможности, предоставляемые ОС Linux
ОС Linux:
· дает возможность бесплатно и легально иметь современную операционную систему;
· обладает высоким быстродействием;
· работает надежно, устойчиво, совершенно без зависаний;
· не подвержена вирусам;
· позволяет использовать полностью возможности современных ПК, снимая ограничения, присущие DOS и MS Windows по использованию памяти машины и ресурсов процессора(ов);
· эффективно управляет многозадачностью и приоритетами, фоновые задачи (длительный расчет, передача электронной почты по модему, форматирование дискеты и т. п.) не мешают интерактивной работе;
· позволяет легко интегрировать компьютер в локальные и глобальные сети, в т. ч. в Internet; работает с сетями на базе Novell и MS Windows;
· позволяет выполнять представленные в формате загрузки прикладные программы других ОС — различных версий Unix, DOS и MS Windows;
· обеспечивает использование огромного числа разнообразных программных пакетов, накопленных в мире Unix и свободно распространяемых вместе с исходными текстами;
· предоставляет богатый набор инструментальных средств для разработки прикладных программ любой степени сложности, включая системы класса клиент-сервер, объектно-ориентированные, с многооконным текстовым или графическим интерфейсом, пригодных для работы как в Linux, так и в других ОС;
· дает пользователю и особенно разработчику замечательную учебную базу в виде богатой документации и исходных текстов всех компонент, включая ядро самой ОС;
· дает всем желающим попробовать свои силы в разработке, организовать общение и совместную работу через Internet с любым из разработчиков ОС Linux и сделать свой вклад, став соавтором системы.
Кому и зачем может понадобиться ОС Linux
В применении Linux по разным причинам могут быть заинтересованы пользователи разных категории. Привести исчерпывающий список невозможно. Однако, вот ряд примеров:
· Linux — полноценная 32-х разрядная (64-х разрядная на платформе DEC AXP) операционная система, которая использует компьютер на полную мощность. Linux с легкостью превращает персональный компьютер IBM PC рабочую станцию;
· выигрыш в цене очень большой, так как помимо экономии на оборудовании, программное обеспечение в Linux поставляется со свободной лицензией, разрешающей бесплатное неограниченное копирование системы;
· выигрыш только на программном обеспечении может составить от тысяч до десятков тысяч долларов. Для многих пользователей в России свободная лицензия — единственная возможность легально снабдить себя полноценным набором программного обеспечения;
· большой интерес Linux представляет для потребителей и разработчиков прикладных систем для работы которых необходимы: многоплатформенный компилятор, мощная многооконная система отладки, эмуляторы и системы совместимости. Все это есть в Linux;
· научным работникам и техническим писателям Linux предлагает:
· процессор документов LyX, использующий концепцию логического проектирования и позволяющий создавать красивые, хорошо структурированные документы;
· издательские системы TeX и Scribus.
Характерные особенности Linux
Характерными особенностями Linux как операционной системы являются:
· многозадачность: одновременно выполняется множество программ;
· многопользовательский режим: большое число пользователей одновременно работают на одной и той же машине;
· защищенный режим процессора (386 protected mode);
· защита памяти процесса; сбой программы не может вызвать зависания системы;
· экономная загрузка: Linux считывает с диска только те части программы, которые действительно используются для выполнения;
· разделение страниц по записи между экземплярами выполняемой программы. Это значит, что процессы-экземпляры программы могут использовать при выполнении одну и ту же память. Когда такой процесс пытается произвести запись в память, то 4-x килобайтная страница, в которую идет запись, копируется на свободное место. Это свойство увеличивает быстродействие и экономит память;
· виртуальная память со страничной организацией (т. е. на диск из памяти вытесняется не весь неактивный процесс, а только требуемая страница); виртуальная память в самостоятельных разделах диска и/или файлах файловой системы; объем виртуальной памяти до 2 Гбайт; изменение размера виртуальной памяти во время выполнения программ;
· общая память программ и дискового кэша: вся свободная память используется для буферизации обмена с диском;
· динамические загружаемые разделяемые библиотеки;
· дамп программы для пост-мортем анализа: позволяет анализировать отладчиком не только выполняющуюся, но и завершившуюся аварийно программу;
· совместимость со стандартами System V и BSD на уровне исходных текстов;
· наличие исходного текста всех программ, включая тексты ядра, драйверов, средств разработки и приложений. Эти тексты свободно распространяются. В настоящее время некоторыми фирмами для Linux поставляется ряд коммерческих программ без исходных текстов, но все, что было свободным так и остается свободным;
· управление заданиями в стандарте POSIX;
· эмуляция сопроцессора в ядре, поэтому приложение может не заботиться об эмуляции сопроцессора. Конечно, если сопроцессор в наличии, то он и используется;
· поддержка национальных алфавитов и соглашений, в т. ч. для русского языка; возможность добавлять новые;
· множественные виртуальные консоли: на одном дисплее несколько одновременных независимых сеансов работы, переключаемых с клавиатуры;
· поддержка ряда распространенных файловых систем (MINIX, Xenix, файловые системы System V); наличие собственной передовой файловой системы объемом до 4 Терабайт и с именами файлов до 255 знаков;
· прозрачный доступ к разделам DOS (или OS/2 FAT): раздел DOS выглядит как часть файловой системы Linux; поддержка VFAT;
· специальная файловая система UMSDOS, которая позволяет устанавливать Linux в файловую систему DOS;
· поддержка всех стандартных форматов CD ROM;
· поддержка сети TCP/IP, включая ftp, telnet, NFS и т. д.
Одновременное выполнение нескольких программ
Так называемая виртуальная мультиконсоль дает возможность на одном дисплее организовать работу нескольких консолей. На первой консоли запускается процесс трансляции. Комбинацией клавиш Alt-F2 следует переход на вторую консоль. Трансляция продолжается, но при этом первая консоль на экране дисплея заменяется новой картинкой второй консоли, в которой запускается, например, редактор текста. Комбинацией Alt-F3 следует переход на третью консоль, в которой запускается отладчик и т. д. Обычно в системе 6 консолей, но можно установить до 64-х. В любой момент времени можно переключиться на любую консоль.
На отдельной консоли может работать как текстовая, так и графическая программа.
На одной из свободных консолей можно запустить оконную графическую систему X Window System. Открываете окно на экране и играете в DOOM (можно через сеть с партнером). В других окнах: база данных, почта, редактор, трансляция и т. д.
Таким образом, одновременно работает много консолей, а на одной из консолей еще и много окон X Window System.
Кроме того, в системе одновременно работают фоновые процессы, которые не выдают информации на дисплей, но делают свою работу, например, передают данные по модему, печатают на принтере, передают почту по сети и т. д. Фоновый процесс может инициировать как пользователь, так и сама ОС в соответствии со сложившимися условиями (есть почта для отправки, данные для печати, наступило время связи по модему и т. п.).
Linux обеспечивает физическое распараллеливание вычислений на многопроцессорных машинах (до 32 процессоров), но это не имеет прямого отношения к одновременному выполнению нескольких программ. Операционная система позволяет одновременно выполнять несколько задач на одном процессоре, сотни раз в секунду переключая процессор с задачи на задачу.
Работа нескольких пользователей на одной машине
Пользователь получает доступ к системе в результате регистрации. На консоль система выводит приглашение login:, а пользователь в ответ вводит свое имя и пароль доступа. После проверки прав доступа система выдает приглашение вводить команды на выполнение программ, принимает команды и выполняет их, например:
Обычная практика состоит в том, что пользователь регистрируется на разных виртуальных консолях под разными именами. Например, для выполнения административных функций на консоли 1 пользователь регистрируется как root, для выполнения прикладной программы как oleg на консоли 2 и т. д. Смысл такого подхода в том, что различные пользователи обладают различными индивидуальностями в системе: правами доступа к ресурсам, начальными установками, файлами и т. д.
Если машина включена в сеть, то возможна удаленная регистрация пользователя с машины A в машину B, даже тогда, когда эти машины расположены на разных континентах (связь машин в планетарном масштабе обеспечивает сеть Internet).
Помимо сетевого подключения машина может иметь десятки терминалов, подключенных через последовательные порты. Терминал представляет собой экран и клавиатуру, т. е. консоль, на которой пользователь может регистрироваться обычным образом. Только в этом случае консоль не виртуальная, а представлена специализированным отдельным устройством. Терминалом может служить персональный компьютер, на котором выполняется программа, имитирующая логику работы консоли (прозрачный ввод с местной клавиатуры в Linux-машину и прозрачный вывод на местный дисплей данных от Linux-машины).
Все перечисленные способы регистрации пользователей в системе действуют совместно. Таким образом, в одной машине десятки и сотни пользователей, вошедших в систему по различным каналам связи, могут одновременно выполнять тысячи задач.
Документированность Linux
Операционная система Linux документирована так полно, как ни одна из коммерческих ОС. По Linux имеются книги, руководства, справочники и то, что недоступно в коммерческой системе — полные исходные тексты ОС с пояснениями и комментариями.
Объем документации по Linux непрерывно пополняется и расширяется, динамично отслеживая развитие системы.
Те, кто привык иметь дело с пиратскими программами, страдая от недостатка документации, в Linux столкнутся с ситуацией совершенно противоположного рода. Проблема не в том, что в Linux мало документации, а в том, что ее очень много, она представлена в многообразных формах и доступна из массы различных источников. Для того, чтобы сориентироваться в этом богатстве выбора, потребуются определенные усилия.
Из оригинальной документации по Linux можно выделить следующие основные, но не исчерпывающие формы: книги, руководства HOWTO, справочники FAQ, гипертекстовые справочники INFO, оперативные руководства MAN, описания программных пакетов. Книги распространяются в печатном и электронном виде, остальные формы, как правило, электронные, т. е. представленные в виде файлов в составе дистрибутивов системы Linux и пакетов программ, распространяемых через Internet и на компакт-дисках.
Часто один и тот же электронный документ доступен в виде нескольких файлов одного содержания, но разных форматов, например, ascii, postsсript, html. Один формат удобен для просмотра и поиска ключевых слов на текстовом экране дисплея, другие форматы приспособлены для печати с типографским качеством на лазерном принтере или для просмотра на графическом экране.
В сети новостей Usenet регулярно публикуются последние версии некоторых документов по Linux (одновременно они появляются на серверах Internet, откуда их можно получить различными способами, в т. ч. по электронной почте).
Отличие Linux от других ОС со свободной лицензией
Существует ряд других операционных систем, которые имеют лицензию, разрешающую свободное копирование. Из них в России наиболее популярна система FreeBSD.
Работа в Linux или FreeBSD для опытного специалиста не представляет труда. Но для новичка Linux проще в освоении и удобнее в эксплуатации.
Linux и FreeBSD сильно различаются концепцией развития. Более того, среди операционных систем Linux вообще уникальна по своей философии.
Это система, которую пользователи сделали для пользователей.
Linux не просто свободная система, которую каждый может копировать без ограничений. Это система со свободной открытой разработкой, и любой человек, будь он житель Вашингтона или Екатеринбурга, может стать соавтором Linux, сделав свой вклад, не имеет значения, большой или маленький.
Система Linux состоит из множества программ и утилит. Каждый компонент системы Linux представлен в виде пакета. Все операции, связанные с изменением состава системы — установка, удаление, проверка, обновление компонентов — производятся над пакетами. Таким образом, пакет позволяет администратору, изменяющему или обновляющему программное наполнение системы, работать не с файлами, а с определенными функциями самой системы. Система Linux состоит из множества программ и утилит. Каждый компонент системы Linux представлен в виде пакета. Все операции, связанные с изменением состава системы — установка, удаление, проверка, обновление компонентов — производятся над пакетами. Таким образом, пакет позволяет администратору, изменяющему или обновляющему программное наполнение системы, работать не с файлами, а с определенными функциями самой системы.
Формат пакета
В системе Linux существует несколько форматов пакетов.
Одним из самых распространенных форматов пакетов является rpm, используемый в дистрибутивах Fedora Core, Mandriva, ASP Linux, ALT Linux. Пакет в формате rpm представляет собой единый файл со всеми необходимыми данными. Для установки, удаления, обновления и проверки пакетов в формате rpm используется программа-установщик, называемая rpm.
В Debian используется формат deb и утилита-установщик dpkg. В Slackware Linux используется формат tgz и установщик pkgtool, а в CRUX — pkg. tar. gz с утилитой pkgadd, т. е. пакеты представляют собой обычные файловые архивы tar, сжатые упаковщиком gzip.
Следует принимать во внимание то, что любой пакет, содержащий программы для системы Linux, не является универсальным, т. к. дистрибутивы могут различаться размещением файлов и процедурами, предусмотренными для интеграции в систему программного обеспечения, не говоря уже о том, что в разных дистрибутивах используется разный формат пакетов. Это значит, что пакет, подготовленный в расчете на один дистрибутив, может оказаться несовместимым с другим.
Несмотря на некоторые различия, дистрибутивы Linux представляют собой варианты одной и той же системы, поэтому в конечном итоге любую программу, работающую в одном дистрибутиве, можно „приспособить“ к любому другому. Только для этого нужно располагать исходными текстами соответствующей программы, т. е. в данном случае необходим пакет, содержащий исходные тексты программ. Доступность исходных кодов — обязательное условие распространения большей части программного обеспечения для Linux. При отсутствии готового пакета со скомпилированными файлами можно установить исходный пакет и скомпилировать программу самостоятельно. При успешной компиляции из исходного пакета получается соответствующий двоичный, который уже можно установить в системе.
Зависимости
Потребность пакета в ресурсах, находящихся в другом пакете, называют зависимостью этого пакета от другого. В процедуре установки rpm проверяет, все ли зависимости устанавливаемого пакета удовлетворены (т. е. все ли необходимые пакеты уже установлены в системе), и если чего-то не хватает — прекращает установку.
Наиболее часто возникают зависимости на библиотеку. Поскольку библиотеки нужны нескольким программам, они обычно оформляются в виде отдельного пакета. Если библиотека не будет установлена, использующая ее программа просто не будет работать. Кроме того, версии библиотек должны быть согласованы с версией программного обеспечения. Например, программа может отказаться работать даже при наличии библиотеки, если эта библиотека слишком старая либо слишком новая по сравнению с самой программой.
Конфликты файлов пакетов
Одна из основных причин возникновения конфликтов — наличие в пакетах файлов с совпадающими именами. Кроме того, каждый пакет, помимо имени, обозначен и номером версии, указывающим степень обновленности содержащегося в пакете программного обеспечения и самого пакета. В системе одновременно может быть установлена только одна версия любого пакета, со всеми остальными версиями она конфликтует. Такой подход вполне понятен, поскольку файлы в пакете имеют строго определенный путь, по которому они должны быть размещены в файловой системе. Поэтому при использовании пакетов не должно (и не может) возникнуть ситуации, когда одна и та же программа установлена в разных местах файловой системы.
Установщики пакетов
Для выполнения всех операций над пакетами требуется специальная программа — установщик пакетов. В ее задачи входит весь цикл работ с пакетом: от создания пакета (компиляции исходного пакета в двоичный), до его установки, удаления, обновления, а также хранение и вывод по запросу пользователя или системы информации об установленных и неустановленных пакетах, принадлежащих им файлах.
Менеджеры пакетов
Менеджеры пакетов позволяют устанавливать, удалять или обновлять любой пакет или группы пакетов, выполняя автоматически все необходимые для этого процедуры (доставку пакетов из удаленных репозиториев, вычисление зависимостей и установку требуемых по ним пакетов, удаление замещаемых пакетов и т. п.).
Наиболее известным и популярным менеджером пакетов является APT (Advanced Package Tool). Первоначально он был разработан в рамках дистрибутива Debian и работал только с установщиком пакетов dpkg, впоследствии для других дистрибутивов была разработана версия, работающая с rpm.
Кроме APT, есть еще несколько менеджеров пакетов. Большинство из них специфичны для определенного дистрибутива, как, например, emerge для Gentoo или YaST для SuSE. Их задачи и возможности примерно совпадают с APT.
Дистрибутив Linux — это логически связанная коллекция свободного программного обеспечения во главе с ядром операционной системы (собственно Linux).
Различия между дистрибутивами Linux
Различия между дистрибутивами Linux невелики:
· формат пакетов;
· программа установки;
· выбор прилагаемых инструментов и прикладных программ;
· соглашения о расположении некоторых системных данных на жестком диске (у большинства Linux-ов они совсем одинаковы, и размещены стандартно на жестком диске в любом дистрибутиве Linux).
Какой бы дистрибутив Linux вы не решили установить, вы, по существу, получите тот же Linux.
Наиболее популярные дистрибутивы Linux: Ubuntu, SUSE, Debian, Mandriva, Fedora.
Про консоли.
В MS DOS все программы выводят свои сообщения в одно окно (это следствие однозадачности MS DOS), это неудобно. В многозадачной Windows для вывода сообщений каждая запущенная программа создает свое окно, а между окнами пользователь может переключаться, например, пользуясь комбинацией клавиш Alt+Tab. В Linux существует понятие виртуальных консолей, которые создают видимость, что к вашему компьютеру подключены не один монитор и клавиатура, а сразу несколько. Более того, разные виртуальные консоли могут принадлежать разным пользователям. Таким образом, за одним компьютером могут «одновременно» работать несколько пользователей, не мешая друг другу. Заметьте, что и ввод с клавиатуры всегда направляется на тот монитор, который в данный момент активен.
Такое поведение монитора и клавиатуры является следствием того, что раньше центральный компьютер с операционной системой Unix не имел собственного монитора и клавиатуры, а весь обмен информацией с внешним миром осуществлялся через множество последовательных интерфейсов. То есть большие железные шкафы с электроникой стояли где-то далеко от пользователей, а на рабочих местах были только монитор и клавиатура. Для переключения между виртуальными консолями пользуются комбинацией клавиш: от Alt+F1 до Alt+F12 (номер консоли может быть от 1 до 63). В графической среде X Window комбинации Alt+Fx блокируются, но пользователю предоставляется возможность применять комбинации клавиш от Ctrl+Alt+F1 до Ctrl+Alt+F12. В этом случае переключение между консолями производит не операционная система, а приложение, которое контролирует монитор.
В процессе установки дистрибутива, как правило, можно пользоваться системой ИЗ пяти виртуальных консолей (что похоже на переключение между окнами в Windows), переключаясь с одной на другую нажатием клавиш Alt+Fn:
Alt+F1 — первая консоль, отображающая меню установки, включена по умолчанию;
Alt+F2 — режим командной строки, где можно вводить команды с клавиатуры;
Alt+F3 — консоль вывода сообщений, которые программа установки делает в процессе работы;
Alt+F4 — консоль, предназначенная для вывода разного рода системных сообщений;
Alt+F5 — здесь выводятся все остальные сообщения.
Если запущена графическая оболочка, то для перехода в нее из текстовой консоли используется комбинация Alt+F7.


