Tw-city.info

IT Новости
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Создание операционной системы linux

Обзор Линукс (Linux) — просто о сложном

Это вступительная статья про операционную систему Линукс (Linux). В ней мы пробежимся по основным моментам и особенностям ОС Линукс. Весь материал ориентирован на новичков и написан доступным языком.

1. Что такое Линукс простыми словами

Главная «фишка» операционной системы Линукс в том, что она бесплатна в соответствии с GNU (свободного и открытого программного обеспечения. Например, за привычный всем Windows придется заплатить где-то $100-$200.

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

Существует несколько графических интерфейсов или GUI (мы рассмотрим их далее). В большинстве случаев он очень напоминает X Window System, поэтому, кто умеет пользоваться Windows легко освоит и Linux.

Кто является владельцем

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

Собственно говоря усилиями десятков тысяч программистов и был создан Линукс. Изначально первыми пользователями были опытные пользователи ПК. Сейчас все больше становится и обычных пользователей Линукса.

Отличительно и то, что Линукс работает на всех архитектурах: DEC Alpha, x86, x86-64, ARM и PowerPC.

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

Зачастую в различных источниках можно увидеть название «GNU/Linux» (по сути это то же самое, что и Linux). Однако в среде профессионалов даже разгораются жаркие дискуссии по этому поводу.

Тех, кто пользуюется ОС Линукс зачастую называют «линуксойдам».

Говоря про Linux нельзя не упомянуть про проект GNU — это концепция свободного бесплатного программного обеспечения. Основатель Ричард Столлман.

2. История появления Linux

Первым разработчиком и создателем Linux считается «Линус Торвальдс». Собственно в честь его имени и была названа ОС. Торговая марка «Linux» принадлежит его создателю.

В далеком 1981 году он стал работать над собственной операционной системой семейства Unix. В 1984 году на свет появилась первая ее версия доступная для скачивания. В то время ей пользовались буквально пару человек.

Однако широкое распространение система получила лишь 10 лет спустя. После этого сообщество программистов подхватили основную идею GNU и стали вкладывать свои усилия в развитие проекта.

Логотипом и талисманом Linux является пингвин «Tux». От «обычных» пингвинов отличается жёлтым цветом клюва и лап. Придуман и запатентован в 1996 году Ларри Юингом.

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

3. Особенности Linux

Перечислим основные особенности ОС Linux.

1 Большинство пользователей среду Линукса являются программисты и администраторы. Это довольно опытные и «прошаренные» пользователи. Поэтому их не пугает то, что очень много действий приходится делать через терминал (консольная строка). Для любителей Windows это покажется настоящим «маразмом», но со временем к терминалу быстро привыкаешь:

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

2 Большинство серверов (хостинги, хранилища и прочее) используют в качестве основной ОС Линукс. Это связано с тем, что она бесплатна, проще настраивается и более стабильна. Однако среди обычных пользователей бесспорное лидерство занимает Windows. Лишь 5% населения пользуются Линуксом в качестве домашней операционной системы.

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

4 В Linux нету жестких дисков, как на Windows. Здесь все хранится в едином каталоге, который начинается с «/» (корневой каталог, root directory). Файлы пользователей лежат в каталогах «/home/name_users/».

5 Программные оболочки bash или tcsh. С помощью них Linux выполняет команды пользователей. Отдаваемая команда относится к текущему каталогу (current directory). Домашний каталог можно обозначать символом «

» (тильда). Это аналог «/home/name_users/»

6 Файловые системы в Linux отличны от Windows:

  • ext4 — журналируемая файловая система (стандарт для Linux)
  • btrfs — новая файловая система, основанная на структурах B-деревьев
  • xfs — данную файловую систему отличает достаточно высокая производительность в части записи и чтения данных.

Стоит отметить, что Линукс поддерживает очень много файловых систем (в том числе Windows-ие NTFS, FAT32). Напомню, что Windows не поддерживает ext4. Про файловые системы Linux будет рассказано более подробно в отдельной статье.

7 Существует два вида дистрибутивов Linux, которые делятся по способу организации и управления программным обеспечением (пакетами)

  1. DEB — используются в дистрибутиве Debian и во всех основанных на нем дистрибутивах
  2. RPM — менеджер пакетов, использующийся в дистрибутиве Red Hat, а также во многих других популярных дистрибутивах (Fedora)

8 Процессы разделены по ресурсам. Чтобы добавить новое устройств нужен драйвер. Его можно написать самостоятельно и запустить в ядре. Драйверы устройств либо интегрируются непосредственно в ядро, либо добавляются в виде модулей, загружаемых во время работы системы.

9 В Linux все считается файлами: жесткие диски, разделы, папки, приводы оптических дисков, съемные носители информации.

4. Дистрибутивы Linux — что это и какие они бывают

Говоря простыми словами:

Существуют множество видов дистрибутивов Linux. Самые распространённые в мире дистрибутивами являются:

  • Linux Mint . Самый простой для пользователя дистрибутив. Очень напоминает Windwos 7. Основан на Ubuntu и Debian
  • Ubuntu . Долгое время считался самым популярным дистрибутивом. Стабильная и интуитивно понятная версия для ежедневного использования Основан на Debian
  • Debian . Лег в основу множества других популярных Линуксов.
  • Mageia . Предок бывшей и популярной ОС Mandriva.
  • Fedora . Универсальный, быстро развивающейся и современный Linux. Каждый год появляются новые версии.
  • OpenSUSE . стабильный и мощный дистрибутив
  • ArchLinux . Современный и быстро обновляющейся дистрибутив.
  • CentOS
  • PCLinuxOS
  • Slackware . Консервативный подход разработки и использования

Интересными дистрибутивами также являются и те, которые можно самостоятельно собрать. К таким относятся LFS, Gentoo, CRUX.

Линукс также практикует такой вид дистрибутивов, которые не требуют установки на жесткий диск. Они работают в режиме «LiveCD». Информация загружается в оперативную память и уже работает с нее. Примеры таких систем: Knoppix, Fedora.

Существуют и чисто российские версии:

  • Rosa
  • ALT Linux
  • ASPLinux
  • НауЛинукс
  • Calculate Linux
  • Runtu
  • Rosinka
  • Astra Linux

5. Интерфейсы Linux

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

  • GNOME (GNU Network Object Model Environment) и Unity . Концепцию значков лаунчеров и отображения в стиле панели мониторинга для выбора
  • KDE (K Desktop Environment). Традиционная среда рабочего стола, но она имеет огромное количество функций и основной набор приложений
  • Cinnamon . Основан на GNOME. Традиционная среда рабочего стола, которая похожа на Windows 7.
  • LXDE (Lightweight X11 Desktop Environment). Легкая и приятная среда.
  • MATE является продолжением классического интерфейса GNOME
  • XFCE быстрая и легкая

6. Репозиторий Linux

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

Для Линукса репозиторий это аналог Play Market для Android.

Чтобы скачать пакет необходимо в терминале написать:

История создания linux

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

Операционная система

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

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

Линус Торвальдс

Возмутитель спокойствия или благодетель?

Финский студент, на тот момент ему было 22 года, Линус Торвальдс создал Linux, когда учился в Университете, Хельсинки. В 1991 он опубликовал открытый код, улучшающий ОС MINIX. Многие члены сетевого сообщества признали потенциал новой операционной системы, несмотря на многочисленные недостатки и недоработки. Тогда же и появилось название “Linux”, как сочетание Minix от Линуса, и все согласились с этим именем новой ОС.

Линус Бенедикт Торвальдс родился 28 декабря 1969 в Хельсинки, Финляндия. Его родители, шведы по национальности, в начале 60-х прошлого века были радикально настроенными студентами, учившимися в Финляндии. После учебы остались в Хельсинки, умерили свои взгляды, стали журналистами местных изданий.

Единственного сына Торвальдсы назвали в честь дважды нобелевского лауреата американского химика Лайнуса Полинга, известного также как активного миротворца. “Зимний” мальчик был самым младшим и маленьким в школьном классе. Рос тихим и незаметным, увлекался математикой и физикой. Коммунистические взгляды отца дополнительно усложняли жизнь ребёнку в школе, но именно такое детство укрепило в дальнейшем характер. Умение дать отпор на незаслуженные нападки, убедить окружающих в собственной правоте помогли Линусу при распространении программы.

Первое знакомство с компьютером

Дедушка одиннадцатилетнего Линуса, математик по профессии, первым познакомил внука с компьютером. Это был Commodore VIC20. Модель выпускалась с середины 1980 года, а уже к концу следующего года было продано более 1 млн штук этих микрокомпьютеров.

Аппарат для домашнего пользования был укомплектован 8-ми разрядным процессором с частотой 1МГц и сопроцессором VIC для обработки видео- и аудио- сигналов. Объем оперативной памяти из 5,5 Кб на треть был занят системой, в 16 Кб ПЗУ размещались низкоуровневая ОС и интерпретатор BASIC. Простые математические вычисления можно было легко запрограммировать на Бейсике, что и делал Линус под присмотром деда.

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

Собственный компьютер

Школьные успехи в точных науках не остались не замеченными, Линусу назначили стипендию за успехи в изучении математики. Деньги он тратил на свои увлечения компьютерами. За достаточно большую сумму даже для взрослого человека, 2000$, Линус купил мини-ЭВМ «Sinclair QL».

Модель выпускалась с начала 1984 по апрель 1986. Была задумана как 32-х разрядная компактная версия знаменитого ZX Spectrum. Технические характеристики на порядок выше, чем VIC20:

— 32-х разрядный процессор с частотой 7,5МГц;

— оперативная память 128Кб, при желании владельца расширялась в 5 раз до 640Кб;

— подключение к монитору или телевизору;

— графическая программа занимала до 64Кб ОЗУ;

Читать еще:  Дистрибутив linux это

— операционная система QDOS.

Многозадачная ОС QDOS включала в себя интерпретатор SuperBASIC и была “вшита” в ПЗУ – энергонезависимую память. Конкуренция за выход в свет первой 32-х разрядной мини-ЭВМ стала причиной многочисленных недоделок Sinclair. Пусть этот компьютер анонсировали на неделю раньше, чем Apple, но качество ПО оказалось хуже ожидаемого.

Операционная система не отрабатывала нормально даже общие функции, финский школьник всерьёз занялся усовершенствованием QDOS. В журналах публиковалась лишь отрывочная информация об операционных системах, открытых кодов не было в помине. На помощь опять пришёл дедушка Лео, он подсказал что надо читать.

Занимательный учебник

Книгой, изменившей жизнь, стал университетский учебник Эндрю Таненбаума «Операционные системы: разработка и реализация». Книга трижды переиздавалась в России, считается лучшей по построению операционных систем.

Аппаратная начинка Sinclair была лучше Яблока, один процессор Motorola чего стоил. Но вот прослойка между устройствами и пользовательскими программами была откровенно слабой. Линус, уже хорошо разбиравшийся в компьютерных вопросах, это понимал. Попытка просто доработать баги QDOS не дала заметного улучшения работы компьютера, а переустановка другой ОС стоила больших денег.

На тот момент существовала операционная система UNIX 7, купить лицензию на которую могли лишь коммерческие организации. Открытый код этой ОС не публиковался для защиты от копирования. Э. Таненбаум, преподаватель университета, создал упрощенный аналог ОС под названием MINIX. Им можно было пользоваться всем студентам.

Преимуществом Мinix стала свобода работы с ней, без всяких лицензионных ограничений. Полностью совместимая с UNIX OS была модульной по структуре, обработка файлов и памяти не входили в ядро, были независимыми программами. Студенты университетов могли копаться в тонкостях кода, исправлять его и пробовать созданные клоны ОС MINIX.

То же самое пытался сделать школьник Линус Торвальдс, установив на свой компьютер MINIX, заменив неудачную QDOS.

Хельсинкский университет

После окончания школы в 1988 году Линус поступил в университет города Хельсинки. Как у всех студентов его учеба была временно прервана армейской службой. Вернувшись через год в университет, Торвальдс продолжил обучаться информатике. В 1996 окончил университет, получил степень магистра кибернетики.

В начале 1991 он приобрел IBM-совместимый компьютер, которые продавались с предустановленной MS DOS.

Линус не был доволен MS-DOS и хотел использовать UNIX, как он привык в университете.

Когда он намеревался получить копию UNIX для личного использования, он обнаружил, что наименее дорогой UNIX, который он мог бы купить, стоил около 5000 долларов США.

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

Линус Тровальдс отправил письмо и автору “Операционных систем” Эндрю Таненбауму. Тот раскритиковал Линукс безжалостно, он просто не учёл, что это всего лишь первая версия операционки. Но некоторые замечания были существенны, в начальной версии Торвальдс не предусмотрел переносимость системы на процессоры других типов. Процессоры 8086 уходили с рынка, освобождали место кристаллам с архитектурой RISC. Критика, как и в школьные годы, задела Линуса. Отсутствие переносимости он принял, но в остальном стоял на своём.

Преимущества ОС

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

Подробнее о Linux можно прочитать в данной статье.

Открытость и монолитность ядра, которую написал финн, разрешила использовать ОС в других Open Source проектах, это привело к росту количества дистрибутивов Linux. Более 100 разработчиков работали над Linux в течение следующих лет. В марте 1994 группа выпустила версию 1.0 ядра Linux.

В каждом случае исходный код свободен, но в некоторых случаях дистрибутив не свободен – двоичные файлы, скомпилированный код не свободен. Например, для запуска Red Hat Enterprise Linux необходимо оплатить лицензию. Тем не менее Red Hat выпускает свой исходный код для загрузки.

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

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

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

История создания операционной системы на базе Linux

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

История создания Linux началась в 1991 году, финский аспирант Линус Торвальдс, приобретя пакет операционной системы MINIX, разочаровался в эмуляции терминала входящего в комплект системы. И решил переписать ее, при этом не привязывая ни к одной операционной системе. Появилось подобие операционной системы, исходный код которой выложил в открытый доступ на сервер, и благодаря усилиям энтузиастов программистов появилась полноценная операционная система. Проект многое впитал от существующей в то время операционной системы UNIX. Свое название Linux получил не сразу, первоначально его назвали Freax (от английского слова free свободный, бесплатный и freak чудной, а окончание от UNIX). Однако, когда Линус выкладывал код на сервере, проект получил свое окончательной имя и логотип. Пингвин по имени Такс является официальным талисманом ядра Linux. Некоторые верят, что Линуса Торвальдса однажды клюнул пингвин во время экскурсии по зоопарку в городе Канберра в Австралии и поэтому он решил олицетворить его в виде официального значка. Если посмотреть интернет, то существует много баек по поводу талисмана Linux, и я не буду в это углубляться, а то рассуждения по поводу пингвина могут послужить еще одним отдельным очерком, конечно если кому будет интересно, то пишите, я подберу материал и напишу об этом.

Символ Linux

Стоит упомянуть об операционной системе UNIX по принципам которой была создана Linux. Работа над ней началась в далеких 1969 годах, разработчиком стал работник компании AT&T Bell Labs Кен Томпсон, который пытался написать усеченный вариант операционной системы MULTICS. В результате чего у него получилась операционная система, написанная полностью на ассемблере и получившая название UNICS в переводе на русский «примитивная информационная и вычислительная служба». Затем для удобства была переименована в UNIX, т.к. окончание читается в обоих случаях одинаково. В дальнейшем к проекту присоединился Деннис Ритчи, а в последующем и весь отдел. В процессе своего развития UNIX была перенесена с языка ассемблер на язык высокого уровня СИ. В то время операционные системы не были удобными и поэтому UNIX охотно приняли везде от крупных компаний до университетов. Вместе с операционной системой распространялся и ее исходный код, для того чтобы пользователи или программисты могли изменять его и добавлять новые возможности делая ее пригодной под себя. В связи с этим появилось множество подверсий UNIX, которые существенно отличались от оригинала, но самой удачной версией стала разработка университета Беркли и ее версия UNIX называлась 1BSD (First Berkley Software Distribution). Программисты существенно дополнили систему новыми возможностями и программами, тем самым внесли большой вклад в развитие операционной системы, и она стала конкурентом оригиналу.

На протяжении долгого времени UNIX разрабатывался каждым программистом под свои нужны и программы, написанные для одной версии, могли не работать на другой, почему и не приходилось думать о коммерческом успехе данного проекта. Для стандартизации был создан документ, который содержал основные стандарты и которыми должны были придерживаться программисты при написании программ, тем самым повысилась совместимость версий UNIX. В то время известность получили следующие версии UNIX: BSD, MINIX (разработчик Эндрю Таненбаум), SCO UNIX, System V(оригинальная версия AT&T), Solaris (компания SUN), XENIX (компания Microsoft) и LINUX.

После многих лет создания UNIX впоследствии долгого развития и усовершенствования Линусом Торвальдсом и многими другими разработчиками Linux стал полноценным некоммерческим клоном UNIX. Официально выходом первой версии Linux принято считать 1994 год, в себе она содержала все необходимые функции, включая работу с сетями. К разработке подключилось довольно много программистов, и Linux уверено завоевывал авторитет. В 1995 году был зарегистрирован товарный знак Linux, а в 1996 году вышла новая версия Linux 2.0. Контроль над развитием операционной системы до сих пор сохраняет за собой Линус Торвальдс. Linux распространяется как свободное программное обеспечение по лицензии GPL (General Public License – стандартная общественная лицензия). Каждый пользователь в праве получить доступ к исходному коду операционной системы, дополнить, изменить или использовать код в своих проектах. Но все это возможно с одним условием, что модифицированный код будет доступен любому пользователю, и также как оригинал будет распространяться по лицензии GPL. На сегодняшний день Linux работает на разных типах компьютеров и устройств начиная от мобильных телефонов, игровых приставок, серверов, суперкомпьютеров и все благодаря своей гибкостью и возможностями переноса на другие платформы.

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

Хочется отметить положительные стороны Linux.

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

Надежность. Операционная система на базе Linux позволяет годами работать компьютеру без перезагрузки и зависаний, а кнопку «reset» вообще можно забыть.

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

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

Читать еще:  Linux это просто

Большинство пользователей наслышаны о трудностях в использовании операционной системы, но скажу одно это всего лишь миф. Трудности есть небольшие, но лишь в период адаптации, который проходит довольно таки быстро. На своем примере, я использую две операционные системы Windows 10 и Linux Mint 18.2. Первая у меня служит в основном только по одной причине, иногда хочется скоротать время и немного поиграть. Хотя игрушки и приложения Windows довольно таки просто ставятся под Linux, но пока я не такой спец в этом, и убедился на практике, что очень сильно падает fps в играх. Linux использую для полноценной работы, хотя скажу откровенно знаю его всего лишь чуть-чуть и можно сказать прохожу тот самый период адаптации. Пока устраивает во всем, правда перед тем что либо сделать приходиться много читать и штудировать форумы, слава богу недостатка информации нет.

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

Linux Mint

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

Debian

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

Manjaro

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

Ubuntu

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

Antergos

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

OpenSUSE

Дистрибутив от компании Nowell, использующий по умолчанию оболочку KDE. Разрабатывается компанией и имеет корпоративную версию и является стабильным. Пакеты обновлений всегда свежие, ошибок не наблюдается, кроме официальных репозиториев можно найти множество пакетов в Open SUSE Build System. Программы можно устанавливать из браузера в несколько кликов.

Deepin

Продукт китайскиx разработчиков с собственным окружением рабочего стола и набором дополнительных приложений. Красивое окружение в котором все настройки находятся на боковой панели, подобие Windows 8. Дистрибутив основан на Debian и достаточно стабилен.

Fedora

Разрабатывается сообществом при поддержке компании Red Hat, можно сказать на нем компания тестирует все нововведения, которые в последующем будут добавлены в корпоративную версию Red Hat Enterprice Linux. Можно сделать вывод что тут всегда будут самые свежие пакеты и самые новые технологии. Многие пользователи используют его на домашних ПК.

Zorin OS

Дистрибутив рассчитан для начинающих пользователей, основан на Ubuntu и использует Gnome в качестве рабочего стола. Благодаря разработчикам которые переделали интерфейс и сделали его похожим на Windows. Система достаточна стабильно и проста в работе.

Elemenraty OS

Основана на Ubintu, но разработчики попытались сделать ее похожей на MacOS от компании Apple. Использует собственной окружение Phanteon на основе Gnome. Система не совсем стабильна и при работе с ней могут возникать некоторые проблемы.

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

Краткая история Linux

Введение

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

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

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

Чтобы понять роль Linux в рамках сообщества разработчиков (и за ее пределами), в этой статье будут изложены краткая история Linux путем Unix, а также обсудим некоторые популярные дистрибутивы Linux.

Корни в Unix

Linux имеет свои корни в Unix и Multics, два проекта, общие цели создания надежной многопользовательской операционной системы.

Начала Unix

Unix разработан из проекта Multics в компьютерных наук Научно-исследовательский центр The Bell Laboratories. Разработчики, работающие над Multics в Bell Labs и в других местах были заинтересованы в создании многопользовательской операционной системы с хранением одноуровневого, динамическое связывание (в котором запущенный процесс может запросить добавление другого сегмента в адресное пространство, позволяя ему выполнять код этого сегмента) и иерархической файловой системой.

Bell Labs прекратила финансирование проекта Multics в 1969 году, но группа исследователей, в том числе Кен Томпсон и Деннис Ритчи, продолжали работать с основными принципами проекта. В 1972-3 они приняли решение переписать систему в C, который сделал Unix однозначно портативным: в отличие от других современных операционных систем, он может одновременно перемещаться и переживать свое оборудование.

Исследования и разработки в Bell Labs (позже AT & T), продолжение с Unix System Laboratories развивают версию Unix, в сотрудничестве с Sun Microsystems, которая будет широко принята коммерческими поставщиками Unix. В то же время, исследования продолжались в академических кругах, прежде всего компьютерных систем Research Group в Университете Калифорнии в Беркли. Эта группа подготовила Berkeley Software Distribution (BSD), который вдохновил целый ряд операционных систем, многие из которых до сих пор используются сегодня. Два дистрибутива BSD для исторической справки, является NeXTStep, операционной система начата с ​​NeXT, которая стала основой для MacOS, среди других продуктов, и MINIX, образовательная операционной система, которая сформировала как базовую основу для Линуса Торвальдса, вследствии этой основы и разработал Linux.

Основные возможности Unix

Unix ориентирован вокруг принципов ясности, переносимости и одновременности.

  • Ясность: модульная конструкция Unix позволяет запускать функции в ограниченном и определенным образом. Его файловая система является единой и иерархической, что упрощает обработку данных. В отличие от некоторых своих предшественников, Unix реализует сотни (а не тысячи) системных вызовов, каждый из которых предназначен для прямой и ясной цели.
  • Переносимость: Написав Unix в C, группа в Bell Labs позиционируется Unix для широкого использования и принятия. C был разработан, чтобы иметь низкоуровневый доступ к памяти, минимальную задержку времени выполнения и эффективную связь между языком и машинными инструкциями. Базис в C делает Unix более гибким и легко работающим на различных аппаратных средствах.
  • Одновременность: Ядро Unix адаптировано к цели (совместно с проектом Multics) поддерживать нескольких пользователей и рабочих процессов. Пространство ядра остается отличным от пространства пользователя в Unix, что позволяет одновременно запускать несколько приложений.

Эволюция Linux

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

Эксперименты с открытым исходным кодом

Ричард Столлман был центральной фигурой среди разработчиков, которые были вдохновлены, чтобы создать не запатентованные альтернативы Unix. Работая в лаборатории искусственного интеллекта Массачусетского технологического института, он приступил к работе над проектом GNU (рекурсивный от «GNU не Unix!»), В конце концов покинул лабораторию в 1984 году, чтобы он мог распространять компоненты GNU как свободное программное обеспечение. GNU ядро, известное как GNU Hurd, стало в центре внимания Фонда свободного программного обеспечения (FSF), основанный в 1985 году и в настоящее время во главе с Столлмана.

Между тем, другой разработчик разработал другую бесплатную альтернативу Unix: финский студент Линус Торвальдс. После того, как становится разочарованием в связи с MINIX для получения лицензии, Торвальдс объявил группу пользователей MINIX 25 августа 1991 года, он начал разрабатывать свою собственную операционную систему, которая напоминала MINIX. Хотя первоначально разработана на MINIX с помощью компилятора GNU C, Linux ядро ​​быстро стало уникальным проектом с ядром разработчиков, выпущенной версию 1.0 ядра с Торвальдсом в 1994 году.

Торвальдс был исполнителем GNU кода, включая GNU C Compiler, с его ядром, и это остается верным, что многие дистрибутивы Linux опираются на компоненты GNU. Столлман лоббировала расширить термин «Linux» в «GNU/Linux», как он утверждает, захватит и роль проекта GNU в развитии системы Linux и основные идеалы, в которых способствовал проект GNU и ядро Linux. Сегодня «Linux» часто используется для обозначения как наличие ядра Linux и GNU элементов. В то же время встроенные системы на многих портативных устройствах и смартфонах часто используют ядро Linux с небольшим количеством компонентов GNU.

Основные возможности Linux

Хотя ядро Linux ​​унаследовало многие цели и свойство от Unix, он отличается от предыдущей системы следующим:

  • Его основной компонент ядра, который разрабатывается независимо от других компонентов операционной системы. Это означает, что Linux заимствует элементы из различных источников (например, GNU), которое объединяет всю операционную систему.
  • Это бесплатно и с открытым исходным кодом. Поддержка сообщества разработчиков, ядро под лицензией GNU General Public License (ответвление работы FSF по проекту GNU), и доступны для скачивания и модификации. GPL предусматривает, что производная работа должна поддерживать лицензионные условия оригинального программного обеспечения.
  • Он имеет монолитное ядро, похожее на Unix, но оно может динамически загружать и выгружать код ядра по требованию.
  • Он имеет симметричную многопроцессорную (SMP) поддержку, в отличие от традиционных реализаций Unix. Это означает, что одна операционная система может иметь доступ к нескольким процессорам, которые разделяют основную память и доступ ко всем устройствам ввода/вывода.
  • Ядро является превентивным, еще одно отличие от Unix. Это означает, что планировщик может принудительно переключиться на драйвер или другую часть ядра во время выполнения.
  • Ядро ​​не различает между потоками и обычными процессами.
  • Включает в себя интерфейс командной строки (CLI), а также может включать в себя графический интерфейс пользователя (GUI).

Популярные дистрибутивы Linux

Разработчики сегодня поддерживают множество популярных дистрибутивов Linux. Среди самых давних является Debian, бесплатный и с открытым исходным кодом, который имеет 50000 пакетов программного обеспечения. Debian вдохновил другой популярный дистрибутив, Ubuntu, финансируемый Canonical Ltd. Ubuntu использует инструменты формата пакета deb и управления пакетами Debian.

Читать еще:  Ошибка 43 видеокарта на ноутбуке

Аналогичная зависимость существует между Red Hat, Fedora и CentOS. Red Hat создала дистрибутив в 1993 году, а спустя десять лет разделила свои усилия на Red Hat Enterprise Linux и Fedora, сообщества на основе операционной системы, которая использует ядро Linux и элементы из проекта GNU. Red Hat также имеет отношение к проекту CentOS, другим популярным дистрибутивом Linux для веб-серверов. Это соотношение, однако, не включает оплачиваемое техническое обслуживание. Debian, CentOS поддерживается сообществом разработчиков.

Вывод

В этой статье мы рассмотрели корни в Linux в Unix и некоторые из их характерных черт. Все замечания можно оставлять внизу в комментариях.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Собираем собственную ОС на базе Linux

Архив номеров / 2006 / Выпуск №3 (40) / Собираем собственную ОС на базе Linux

Илья Александров

Создаём собственную ОС на базе Linux

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

За долгие годы работы с Linux мною было использовано огромное количество различных дистрибутивов: Mandriva, Fedora, SlackWare, Debian, Ubuntu и многие другие. Какой-то проект нравился больше, какой-то – меньше. Но во всех дистрибутивах неминуемо приходилось сталкиваться с серьезными недостатками, которые сильно затрудняли работу. Один слишком требователен к ресурсам, в другом нет поддержки всего нужного оборудования, в третьем не хватает различного ПО. Вот тогда я вспомнил известную восточную мудрость: если нужно что-то сделать хорошо, сделай это сам.

Linux from Scratch

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

Стремление талантливого программиста вылилось в проект Linux from Scratch (www.linuxfromscratch.org), сокращенно – LFS. Этот проект, позволяет сконструировать «с нуля», из исходных кодов, свою операционною систему на базе Linux. Компиляция LFS проходит на компьютере с уже установленной Linux-системой, впрочем, подойдет и «продвинутый» Live-CD, например, Knoppix [6].

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

Как известно, Линус Торвальдс разрабатывал свою операционную систему под девизом «Just for fun!» – то есть только ради удовольствия. Нужно признать, что LFS действительно не часто можно встретить на серверах, используют эту систему, как правило, компьютерные энтузиасты. Установка и работа с Linux from Scratch поможет вам разобраться во взаимосвязи компонентов ОС, что пригодится при собственных разработках Linux-дистрибутива, причем не только на базе LFS. Поэтому LFS во многом рассчитан на тех людей, для которых процесс сборки собственного дистрибутива увлекателен и интересен – а таких людей, поверьте, немало.

Итак, если вы готовы потратить на конструирование системы целый день (а то и больше), то рекомендую скачать с сайта (2) LFS-packages-6.0, LFS-book, и продолжить читать эту статью.

Разбиение диска и создание дерева каталогов

Для лучшего понимания материала опишем весь ход процесса в общих чертах (см. рис. 1).

Рисунок 1. Схема сборки LFS

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

На протяжении всего процесса ваш главный помощник – документация из пакета LFS-book, русский перевод которой можно взять тут: http://multilinux.sakh.com/download/lfsbook.tar.bz2. В книге подробно описан каждый шаг создания ОС, поэтому обязательно обращайтесь к этому руководству в случае возникновения проблем (данная статья не призвана заменить такую обширную документацию).

Создаем новый раздел – в моем случае это /dev/hda5, так как раздел /dev/hda1 уже занят установленным на жесткий диск Linux Slackware. Рекомендуется предварительно сделать бэкап системы, дабы можно было ее восстановить в случае повреждения, хотя вероятность подобного близка к нулю. И тут, думаю, все понятно: выделяем нужное количество (достаточно 23 Гб) под корневой каталог, пространство, равное удвоенному объему ОЗУ – под swap-раздел, по желанию можно создать отдельные разделы для домашнего каталога (/home) и для /boot. Впрочем, излюбленный многими вариант разбиения – отвести под корневой каталог все доступное пространство минус swap, и последующее создание собственно swap – также вполне допустимо при сборке LFS. На компьютере автора и Linux Slackware, являющийся родительской ОС, и LFS, используют один жесткий диск, впрочем, установить LFS на другой винчестер тоже труда не составит.

Файловую систему выбирайте на ваше усмотрение: и с Ext3, и с ReiserFS никаких проблем под LFS не было. А вот поклонников XFS придется огорчить – попытки заставить Linux From Scratch работать с этой ФС не увенчались успехом.

Теперь монтируем раздел, отведенный под новую ОС :

$ mount /dev/hda5 /mnt/mylin

Для удобства определим переменную MYLIN:

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

$ chown –R mylin $MYLIN

Нужно создать дерево каталогов в корне нового раздела:

$ mkdir –p bin boot dev etc home lib mnt opt root sbin usr/ var

В каталогах usr, usr/X11R6, usr/local создаем необходимую структуру : подкаталоги bin, etc, include, lib, sbin, share, src.

Затем то же самое проделаем для каталогов /var и /opt будущей системы:

Не будем забывать, что существуют более глубокие иерархии, например, /usr/share/man/man1. Но объем статьи не позволяет привести здесь всю информацию о структуре файлового дерева, поэтому нужно либо воспользоваться документом Filesystem Hierarhy Standart (можно найти по адресу: http://linux-ve.net/MyLDP/file-sys/fhs-2.2-rus), либо внимательно изучить структуру уже установленной у вас ОС семейства Linux. После подготовки жесткого диска приступаем к статической сборке.

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

Но когда мы посредством команды chroot установим корневой каталог для вновь собираемой системы, библиотеки «родительской», установленной системы, находящиеся в /lib, /usr/lib, и прочих, станут уже недоступны, поэтому динамически скомпилированные программы работать откажутся, вдобавок совместимость версий никем не гарантирована.

Чтобы избежать этого, все необходимое программное обеспечение для нашей будущей системы мы для начала соберем статически. Начнем, пожалуй, с командного интерпретатора bash. (Поклонники ZSH или TCSH могут установить любимые интерпретаторы после установки системы, но на этапе сборки их использование не предусмотрено автором LFS). Следует проверить, есть ли у вас файл /usr/lib/libcurses.a и если его нет – установите пакет nсursesdev. Все пакеты надо собирать с флагами статической сборки: «—enable-static-link», «—disable-shared» или «—static». Какой именно подходит в каждом конкретном случае, можно узнать из документации к конкретному пакету или из вывода конфигурационного сценария, запущенного с параметром «—help».

Чтобы не спутать позже статически скомпилированные программы с «динамическими», создадим для них специальный каталог:

При сборке и установке пакетов не забываем добавлять параметр «—prefix=$MYLIN/stat» для перемещения файлов именно в этот каталог. И , наконец , ставим bash:

$ ./configure –-enable-static-link —prefix=$MYLIN/stat

По такой же схеме собираем остальные необходимые пакеты : binutils, bzip2, textutils, texinfo, tar, sh-utils, gcc, grep, gzip, gawk, diffutils, fileutils, make, patch, sed, и , собственно , linux-kernel.

Да, при компиляции ядра не забываем, что для старых версий ядер (2.2.x-2.4.x) нужно использовать gcc 2.95, а для текущей версии 2.6.x рекомендуется применить gcc 3.x, дабы не возникло проблем.

Не забываем заглядывать в соответствующие разделы LFS-book, там сказано об этом и многих других нюансах. В целом же компиляция ядра в LFS не отличается от подобной процедуры, проводимой при использовании установленного на HDD дистрибутива. Разархивируем исходники ядра в $MYLIN/usr/src/linux-2.6.xx, после чего конфигурируем, запуская:

Процесс настройки параметров ядра многократно описан в Интернете (6), вряд ли есть необходимость останавливаться на этом подробнее. Далее даем следующие команды в папке с исходными текстами Linux-kernel:

Все, по адресу $MYLIN/usr/src/linux-2.6.xx/arch/i386/boot/bzImage находится новое ядро.

Далее создаем файлы $MYLIN/etc/passwd и $MYLIN/etc/group. В первом прописываем пока единственного пользователя – root с любым паролем, а во втором группы пользователей (для начала одной группы root тоже будет достаточно).

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

Теперь нам нужно сменить корневой каталог на /mnt/mylin, где мы будем пользоваться только статически собранными утилитами – к помощи инструментов из «родительской» ОС мы уже прибегать не сможем. Даем команду в консоли:

$ chroot $MYLIN/usr/bin/env –i

>HOME=/root TERM=$TERM PS1=’u:w$’

>PATH=/bin: /usr/bin: /sbin: /usr/sbin: /stat/sbin

Этой командой мы указали пути к исполняемым файлам, тип терминала, интерпретатор и вид приглашения командной строки.

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

$ mount proc /proc -t proc

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

При сборке мы указывали параметр «—prefix=$MYLIN/stat», поэтому при смене корня все статически собранные пакеты окажутся в каталоге /stat раздела новой ОС.

Итак, распаковываем архив glibc-2.x.x.tar.gz (например, в директорию /usr/src/) и переходим в каталог glibclinuxthreads. Придется немного подправить исходный код ввиду того, что на данном этапе в системе невозможна идентификация пользователя по имени (как раз из-за отсутствия glibc и других библиотек), и того, что для установки glibc нужен интерпретатор Perl, которого у нас нет.

Заменяем имя пользователя root в файле login/Makefile на его uid, то есть 0, а переменную $PERL в файле malloc/Makefile следует заменить на путь к интерпретатору – /usr/bin/perl – и при конфигурировании он просто будет проигнорирован.

$ /usr/src/glibc-2.x.x/configure —prefix=/usr —enable-add-ons —libexecdir=/usr/bin &&

Если вы все сделали правильно, glibc скомпилируется, в строке приглашения наконец-то появится «root», и можно будет динамически перекомпилировать все программы.

Завершим установку ядра :

Чтобы переместить новое ядро в каталог /boot, выполняем еще одну команду:

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

Таблица 1. Необходимый набор пакетов для сборки

Ссылка на основную публикацию
Adblock
detector