Показаны сообщения с ярлыком Linux. Показать все сообщения
Показаны сообщения с ярлыком Linux. Показать все сообщения

суббота, 11 сентября 2010 г.

Система безопасности Linux


Итак мы уже говорили о том как устанавливать приложения из исходников и пакетов, а теперь самое время поговорить о безопасности Linux. История системы безопасности Linux уходит в те времена когда Билли был всего лишь одним из кодеров IBM, а уж о Балмере вобще никто не знал, за то UNIX правила бал. И главное для ее концепции безопасности было то, что работает она в многопользовательском режиме. Система UNIX обязана обеспечить корректную работу нескольких пользователей в системе. Что мы в данном случае понимаем под корректностью работы:
а) Изменения произведенные одним пользователем не должны затрагивать другого пользователя в большинстве случаев.
б)Должна быть предусмотрена легкая система переключения активных пользователей
в) Должна быть реализована возможность назначения разным процессам, разных прав.
г) Должна быть реализована надежная система защиты аунтетификационных данных пользователя.
Ну это конечно грубый список требований. Рассмотрим как все это реализуется в Linux.
Начнем с процесса аунтентификации и идентификации пользователя. Итак определимся для начала с терминами. Пользователь это тот кто использует систему с определенным уровнем прав, то есть разрешенных действий. Ну например пользователю root можно все и немножечко больше:) А вот обычному пользователю системы можно далеко не все, например изменить системные библиотеки ему не дадут, а вежливо пошлют например фразой acess dined:).Но сама система узнать кто ее включил не может и был придуманы различные механизмы идентификации пользователя. Мы не будем говорить о такой экзотике как биометрия или что нибудь такое, а поговорим про рабоче-крестьянский пароль и логин. Это старая добрая система, используемая практически всюду.
Итак когда вы вводите пароль, то система проверяет наличие вашего имени в системе, а так же корректность введенного пароля. Но было бы слишком не осмотрительно хранить такую важную информацию как пароль открытым текстом. Что же придумали для решения этой проблемы? Пароли не хранятся в открытом виде и даже не шифруются, вместо этого хранятся их хеши. Что такое хеш? Хеш это некое контрольное значение вычисленное на основе пароля, в нашем случае, при чем по самому значение пароль невосстановим в идеальном случае кроме как подбором.То есть даже если я получу хеш, то мне придется долго сидеть и придумывать различные комбинации разных символов, в надежде что я таки угадаю пароль:) Это можно перепоручить компьютеру тогда процесс ускорится, но все ж не настолько как хотелось бы.Мы можем себя поздравить: Linux умеет надежно защищать наши пароли. Однако есть несколько проблем: если мы этим паролем будем светить везде, то... ну вы поняли). Сейчас есть довольно таки много словарей, где есть миллионы слов даже очень заковыристых, а потому слова даже сложные как пароль не годятся. Клички животных ваших, имена вас и ваших знакомых, друзей, родных то же. Слишком маленькие пароли(не более 5 символов) ломаются к сожалению довольно быстро. С другой стороны не делайте пароли суперсложными, чобы потом сами не помнили. Ну ладненько хватит нам теории перейдем ближе к практике.
1 фаза общения с системой для вас это старт загрузчика GRUB. Он позволит вам выбрать ту операционную систему, которую вы хотите загрузить сейчас. Вы можете установить пароль на доступ к GRUB, см. здесь.
2 фаза это запуск оболочки. Оболочка это процессор командной строки, который может принимать от вас текстовые команды и выполнять их. Обычно это bash. Именно через оболочку защитные механизмы системы запрашивают логин/пароль для входа.
3 фаза Запуск графической оболочки(среды) в современных дистрибутивах обычно все настроено таким образом, что сразу после запуска оболочки(шелла) происходит старт X-сервера(подсистемы графических возможностей UNIX системы), а после этого графической среды рабочего стола например GNOME или KDE.У них есть собственные системы аунтентификации пользователя и именно с ними вы и сталкиваетесь, когда система запрашивает пароль окном следующего вида:
(картинку)
4 фаза: работа в системе как обычного пользователя, а в случае выполнения каких то важных для системы действий получения прав root.
  Теперь поговорим о таком понятии как группы  и пользователи в Linux.В Linux пользователь обладает правами на выполнение определенных файлов, доступа к определенным каталогам, а вот те файлы, для которых пользователь не прописан в разрешенных ему будут не доступны. Действует жесткое правило: все что явно не разрешено, то запрещено.
Для определения кому что можно действуют так называемые ACL Posix списки, где явно прописаны  права для всех пользователей. Права есть такие: чтение, запись и выполнение. Всего есть три категории с точки зрения ACL POSIX: пользователь владелец файла, группа пользователей в которую входит пользователь -владелец файла и остальные. Права на файл можно назначать и в графическом режиме:(контекстное меню файла->свойства->права )

И в консольном.Вот с последним разберемся подробнее.Но прежде подытожим насчет ACL POSIX общую информацию:

  1. Списки ACL POSIX позволяют назначать различные права разным пользователям на основе групп. Группа это набор пользователей, который для системы безопасности имеют одинаковые права. Система идентифицирует  принадлежность пользователя к той или иной группе при помощи специального параметра GUID. Это особый идентификатор, который хранится вместе с другой информацией об учетной записи и именно по нему подсистема безопасности в ядре узнает а к какой группе пользователей относится данный пользователей. Сам пользователь ядру известен по UID (User ID). Пользователь с UID это root, а называться он может по разному. Важно отметить что любой пользователь входит в группу, если ее не назначает администратор, то система создает группу одноименную с логином пользователя(то есть пользователь с именем exampuser будет по умолчанию входить в группу exampuser )      
  2. Система    ACL POSIX различает: пользователя-владельца, который может менять любые права у файла, вплоть до удаления из системы, группу пользователей куда входит владелец, остальных. Каждой группе может быть назначена своя комбинация прав. 
  3. Права: чтение/запись, выполнение. По поводу последнего права: UNIX система, когда решает нужно ли выполнять файл смотрит отнюдь не на расширение, расширение может быть любым, она смотрит на то выставлен ли у файла бит разрешающий выполнение, если бит выставлен то она его выполнит без лишних вопросов. Поэтому будьте внимательны при даче такого права: во первых если файл например просто текст, то система будет пытаться его выполнить, что может привести к зависанию. И второе : файл может быть вирусом. Не давайте права выполнение тем кому это не надо даже если программа безобидна, то же самое переполнение буфера правильно использованное хакером сделает из безопасной программы крайне опасный таран системы безопасности любой ОС.     
Теперь рассмотрим как в консоли выставить права для файла . Есть такая команда chmod. Вот при помощи нее такие вопросы и решаются.Для начала создадим файлик Test и напишем туда веселое  echo "Hello Linux!", а на первой строчке #!/bin/bash. Таким образом наш файлик будет таков:

#!/bin/bash
echo "Hello Linux!" 

У меня он хранится в папке /home/gur/python_compitation. Итак первое мы хотим посмотреть права, которые есть:
сделаем переход в папку:

cd /home/gur/python_compitation
 ls -l  test
-rw-r--r-- 1 gur gur 20 2010-08-31 20:28 Test
 
Допустим мы хотим наделить наш файл правом выполнения Для этого напишем
chmod +x Test

Такой командой мы добавили себе право на выполнение этого файла, а если напишем
chmod user_name +x Test  то тем самым дадим право заданному пользователю.
Вот какие права есть в Linux:
r-чтение
w-запись
x-выполнение
такая комбинация как rw означает одновременную комбинацию прав чтение и запись.
более подробно о правах на файлы можно прочесть здесь
Рассмотрим теперь вопрос о том какие есть дополнительные средства безопасности в Linux.
Есть во всех UNIX системах такая вещь как chroot.   Что это такое? Это ни что иное как средство ограничения  для определенных программ. Точнее даже их обмана. Это системный вызов, который меняет для программы корневой каталог. В обычных условиях мы знаем что это ни что иное как / . А сhroot позволяет сказать что для некоторой программой корневой папкой является myroot. Что это значит на практике? На практике это означает что программа даже и знать не будет о тех файлах и папках. которые не находятся внутри подставного корневого каталога. Так должно быть в идеале. На практике в реализации chroot, выявлялись ошибки, которые приводили к тому что программы могли сами обмануть chroot. Чаще всего сам chroot одинокий никому не интересен, он интегрируется в комплекс программ реализующих концепцию Jail(темница ). Это концепция и реализующая политика безопасности позволяет:
-Запускать программу с измененным корневым каталогом, что позволит создать изолированное окружение  для подопытной программы
-Наделять теми привилегиями, которые минимально необходимы службе или программе для выполнения
-Накладывать ограничения на расход ресурсов программой находящейся в Jail(память и процессор)
-Жестко ограничивать и контролировать сетевую активность приложения
 Правда неплохо? Да, но все же не забывайте, что все же остаются методы вырваться узнику из темницы. Например, если программа под правами root (Суперпользователя), то она может выполнить системный вызов chroot повторно, а в некоторых UNIX-системах ядро может некорректно его обработать... и темница разлетится в вдребезги.
Еще один важный механизм безопасности Linux это SElinux.Данная система позволяет создавать сложные политики безопасности, которые позволят контролировать доступ к различным системным компонентам со стороны программ. При чем здесь речь идет отнюдь не только о файлах, но и многом другом.
Последней системой безопасности, которую мы не рассмотрим в этой заметке будут системы актуализации. В чем ее суть? На физической машине имитируется виртуальная при чем все ее компоненты важные для запуска программ. Поэтому практически вы получаете в распоряжение второй компьютер, на который вам нужно установить операционную систему и вы можете работать с программами. При этом чащ всего, если только это неспециально написанный вредный код, ошибки и сбои программ никак не выходят за рамки виртуальных машин. Есть простые пользовательские решения типа Virtual Box, а есть решения, которые могут использовать целые наборы компьютеров балансировать нагрузки на них. Одно из них это XEN.Очень часто именно на нем организуют виртуальные серверы VPS.          
Ссылки:  
подсистема Jail
XEN 
SELinux
                        
              

          

среда, 18 августа 2010 г.

Заметки о python в народном хозяйстве linuxoида: разбор командной строки

Linux и командная строка это единое целое, командная строка это душа Linux. В ней можно ттворить чудесные вещи  в том числе и программно. Python программист имеет возможность активного взаимодействия с командной строкой Linux. Один пример  мы уже разобрали ранее, а теперь рассмотрим тот случай, когда сам скрипт вызывают из командной строки. Самое важное для нас здесь это разбор того что ввел пользователь. Python для этого предоставляет нам модуль sys и optget. Поэтому Америки я вам не открою, если скажу что начнем мы наш скрипт строчкой:
import sys,optget      
Модуль sys предоставляет нам структуру argv. Первый ее элемент мало интересен, это имя скрипта, а вот дальше пойдет компрамат на юзверя:) Но python этим не ограничивается, в нем есть интересная фича: name option, это и позволяет нам предложить пользователю написать не myprog 1 1 2, myprog --mode 1 --depth 1 --time 2 . A как все  это реализовать на практике?
Смотрим следующий скрипт:

import sys,getopt
def Test ():
    
 options,args=getopt.getopt(sys.argv[1:],' ', ['a=', 'b=', 'c=', 'd='])
 print options
 for option,value in options: 
    if option=='--a':
        print 'a=',value
    elif option=='--b':
        print 'b',value
    elif option=='--c':
        print 'c',value
    elif option=='--d':
        print 'd',value
               
Test()      
Что происходит? Объект getopt возвращает нам аргументы командной строки в виде списка двухэлементных кортежей, где первый элемент имя параметра, а второй его значение. А далее мы проходим циклом for по списку, и в две переменные считываем по два элемента из каждого кортежа, а при помощи оператора if ...elif предпринимаем необходимые действия. В переменную option считывается имя параметра, а в переменную value само значение. А что попадает в переменную args? Там находятся все значения командной строки, которые не имеют своего ключа. Удачи в использовании Python           



  

среда, 11 августа 2010 г.

Установка приложений в Linux: часть 1(записки Windows эмигранта)

Когда автор еще считал верхом поэзии невнятные звуки агу-агу на свет появилась Linux и была она младенцем с большим потенциалом, но которого надо было учить всему и вся, и собирать по кусочкам. Linux выросла из пеленок и теперь сама в некоторых странах знакомит маленьких с миром информатики(проект Edubuntu) . Одним из самых сложных процессов в младенчестве Linux была установка программ. А какая же ОСь нужна без программ? Вобщем-то никакая! Вот и поговорим мы о том, что было есть и будет в этой важной сфере любой операционной системы.
Начиналось все с сурового пути самоотречения от всех удобств и прямой сборки программ из исходников. Такой путь самурая вел к полному  контролю над  системой и собой:) Но время самураев прошло и Linux стала поворачиваться лицом и к простым смертным. И появились системы deb и rpm.
Основная суть пакетной системы в том, что deb и rpm пакет, содержит все файлы, которые нужны программе и может определить зависимости, которые необходимо соблюсти для установки приложения. Фактически deb и rpm пакеты это особые типы архивов. Еще одним важным свойством таких систем является, что они ведут базу данных установленных пакетов в системе и их зависимостей. А что такое зависимости? Все просто: зависимости это компоненты системы и сторонние компоненты, которые нужны для функционирования программы, которую вы устанавливаете.  Пакет содержит список зависимостей для программы и поэтому вас проинформирует установщик о неустановленных зависимостях. К тому же пакет может содержать в себе скрипты, проверяющие например какие либо параметры системы.Таким образом deb пакет представляет собой очень неплохой аналог различного рода установщиков из мира Windows.
Важно отметить что есть две основные системы пакетной установки: deb и rpm совпадающие в своем названии с форматами пакетов. deb система применяется во всех дистрибутивах основанных на Linux Debian(например Ubuntu), а rpm в системах базирующихся на Linux Red Hat (например Linux Fedore Core ). Между собой форматы не совместимы. Но в принципе предоставляют равные возможности. Рассмотрим установки на основе deb системы.
Можно скачать сам deb пакет и два раза по нему кликнуть, а если программа распространенная, то скорее всего она содержится в репозиториях вашего дистрибутива. Репозиторий это хранилище пакетов и исходниных текстов программ, которые позволяют устанавливать приложения по сети. С репозиториями (жаргонная "репа")  работает в deb системах приложение apt. При использовании Ubuntu вы можете использовать Центр приложений
Приложения->Центр приложений
или из командной строки
sudo apt-get install <имя пакета> . Вам придется ввести свой пароль, так как apt-get изменяет системные компоненты. Например установим читалку DjView ридер.
вводим в консоли sudo apt-get install djview, свой пароль и ждем когда все сделают за нас:) Еще нас попросят подтвердить скачивание пакетов.
Удалить пакет можно либо через Центр приложений, либо через команду sudo apt-get remove <имя пакета>.
В следующей части будем учиться сборке из исходников интересных для нас приложений.
 
                                         

воскресенье, 1 августа 2010 г.

работаем с жестким диском или OpenSource PartitionMagic

Всем нам рано или поздно приходится сталкиваться с задачей переразметки диска. Тем более это актуально в свете нашего предыдущего разговора Установка Linux, заметки по горячим следам(записки Windows эмигранта). Стандартным решением здесь может быть Partition Magic. Однако  у него есть существенный минус и даже два: чтобы его использовать необходим кряк и второе более существенное на системах Windows Vista и 7 эта программа просто откажется работать, Microsoft закрыла прямой доступ к диску, в борьбе за безопасность пользователей, однако на деле это привело к усложнению жизни. В каком то блоге я читал о не совсем документированных способах доступа, однако недокументированный подход это зло. Есть еще  LiveCD,основанный на WinXP. Юридических аспектов применения данного решения мы обсуждать не будем, однако  коснемся следующих моментов:
1) Файловые системы не поддерживаемые Win обойдены вниманием, что и понятно ведь разработчики ориентировались лишь на Windows.
2)  Закачка с файлообменников на которых он обычно и храниться дело не самое благодарное.
Что же нам предлагает OpenSource сообщество? KNOPPIX один из первых LiveCD дистрибутивов открыл для Linux сообщества путь продвижению в совершенно различные области. Но все же рассмотрим что такое LiveCD? LiveCD это ни что иное? как операционная система, измененная особым образом для того, чтобы  ее можно было запустить с CD или DVD. При чем она спроектирована так, чтобы вся ее активность затрагивала лишь ОЗУ, а HDD оставался бы в святом неведении о происходящем. LiveCD дистрибутивов появилось великое множество от LiveCD для пробы новой системы как у большинства главных дистрибутивов Linux и до дистрибутивов для тестирования сетей на безопасность типа BackTrack Но мы обратимся сегодня к вполне мирному LiveCD под названием GParted (GNOME Partition Editor). GParted это библиотека и одноименный инструмент для редактирования разделов жесткого диска. Кстати эта программа конечно же доступна и для обычных систем: для Linux Ubuntu зайдите в Центр приложений и напишите в поиске: Gparted и вы сможете ее установить или в Терминале:  sudo apt-get install gparted. Эта утилита обладает вполне дружелюбным интерфейсом, хотя что я говорю, сами взгляните:
  Как мы видим утилита предоставляет нам информацию в двух видах . Наименование для устройств даются во вполне стандартной манере UNIX dev/sdaN. Gparted позволяет вам:
--изменять размеры разделов
--создавать новые
--работать с таблицей разделов
--форматировать разделы в различных файловых системах, включая NTFS, что должно порадовать win-пользователей.
Если вы обратили внимание то напротив некоторых разделов есть знак ключа, это значит, что эти разделы монтированы системой  и пока это так система не даст их изменять, вы можете их отмантировать сделав для системы неактивными, изменить их, а потом вновь смонтировать. Итак мы практически завершаем эту заметку, т.к. главный элемент этого LiveCD GParted.
Кратко пробежимся по тому как с ним работать:
1) Скачиваем образ с SourceForge через официальный сайт дистрибутива  gparted.sf.net
2) Прожигаем болванку и записываем ISO
3) Настраиваем BIOS на опрос носителей для загрузки таким образом чтобы первым стал  CD-привод
4)  Загружаемся и если все гладко то вы увидите первый экран где нужно выбрать:

Здесь выберете в пункте Languages пункт Russian, к сожалению русифицируется не все но главное что руссифицируется Partiton Editor(GParted).После выбора начнет загружаться Linux, выдавая при своей загрузке различные сообщения.   После окончания загрузки система полностью окажется в RAM и попросит вас извлечь диск. Вы попадете в работающую систему Linux c установленной GNOME:
                
   Самыми для вас важными окажутся ярлыки Partition Editor и  Smart Control в случае наличия таковых устройств. Partition Editor=GParted и его мы уже разбирали. Справа на рабочем столе вы сможете увидеть сводку о процессах загрузки CPU и потреблении памяти.
Одно маленькое дополнение вы можете выделить нужный вам раздел в Partition Editor и из контекстного меню  и выставить го флаги, сделав например загрузочным.
  В случае если у вас при установке Ubuntu возникнут затруднения и не получется сделать режим совместного мирного сосуществования  двух систем, то возможности дистрибутива по изменению размеров раздела помогут вам потеснить Windows на жестком диске, при чем изменение раздела не затронет данных.
   Лично мне данный дистрибутив помог обнаружить пропавшие как мне казалось навсегда 300 Гб на съемном жестком диске. На самом деле там всего лишь нарушилась файловая система и после форматирования в NTFS эти 300 Гб вернулись ко мне. А я уж грешил на аппаратную часть. Дополнительные интересные LiveCD Linux перечислены в  статье LiveCD: мощное оружие профи. Обзор живых дистрибутивов Linux для системного администратораУдачи в работе с жесткими  дисками и Linux              

суббота, 31 июля 2010 г.

Установка Linux, заметки по горячим следам(записки Windows эмигранта)

Возможно что вы захотите установить Linux на свою машину. Для того чтобы это сделать нам нужно разобраться с файловой системой Linux. Итак начнем...
Любая операционная система без файловой системы это как картина на стене без гвоздя. Файловых систем в мире операционных систем очень много главное не запутаться. Если вы Windows пользователь, то привыкли пользоваться файловой системой NTFS,FAT16,FAT32. При чем конечно FAT16 здесь приведен лишь для полноты картины. Спешу обрадовать, что Linux Ubuntu да и не она одна с успехом понимает и все выше перечисленные типы файловых систем, так что доступ к своим данным Windows вы не потеряете. Какие же файловые системы встречают нас в Linux?
Из всего многообразия выделим Ext3/4 и NFS. Ext3/4(Third Extended File System/Fourth Extended File System). Это самые распространенные файловые системы Linux. Они обладают важным свойством: они ведут журнал изменений, которые происходят в них, что может помочь более быстро реанимировать файловую систему. Так же еще одной важной чертой файловых систем Linux является применение экстентов. Размещение по методу экстентов это выделение непрерывных блоков, а не отдельных малых блоков как это например делается в FAT.Таким образом достигается меньшая фрагментация файловой системы. Чуть позже мы, когда закончим базовый разговор о Linux поговорим и о журналировании данных.
Важно так же отметить что структура записи о файле в UNIX-системах не совместима c NTFS,что требует специальных инструментов в Windows для работы c Ext3/4. Теперь рассмотрим структуру каталогов и пути, а так же монтирование и демонтирование файловых систем. В Linux нет привычного для Windows понятия локального диска, вместо него есть точки монтирования. Процесс монтирования файловой системы это подключение ее к системе в режиме, когда система может с ней взаимодействовать, а точка монтирования это в виде чего Linux увидит данную файловую систему. Дело в том, что одна точка монтирования для Linux будет например местом куда сбрасывать логи (каталог var),а другой может хранить в себе данные  пользователей(каталог home). Но самым важным для Linux является странный каталог /. Каталог / это сердце всей системы, корневой каталог, который является самым начальным во всей файловой системе. Там хранится ядро, системные утилиты идущие с ядром. Это как C:/Windows. Вот его внутренности:
Папка bin хранит системные утилиты, которые можно вызвать из командной строки. Usr   сами исполняемые и дополнительные компоненты программ установленых пользователем. Об остальных каталогах поговорим чуть позже и не в этой заметке кроме двух: root и home.
  Пользователь root может делать на система все , что ему заблагорассудится. Вообще система UNIX всегда отличалась жестким подходом к вопросам безопасности, а потому там действовала система учетных записей, которая изолировала пользователя от критических мест системы и данных др. пользователей.  Исключение составляет только пользователь root, который может воздействовать  на любой элемент системы. Поэтому стандартной и совершенно правильной рекомендацией для пользователей любой *nix системы(так сокращают системы семейства UNIX)  является использование учетной записи root только в случаях, когда такие полномочия действительно нужны безальтернативно. И технологией воплотившую данную идею стало sudo. Sudo это приложение командной строки, которое позволяет динамически повышать привилегии пользователя до уровня root и снижать их после выполнения привилегированных операций. Вам это ничего не напоминает? Правильно система UAC Vista/7. Вот как sudo выглядит при работе в командной строке:
  команда find ищет файлы по заданной маске, однако без команды sudo ей будут недоступны системные каталоги и домашний каталог root. А вот в графическом режиме работы та же sudo:
   А теперь из серии зацените разницу:
Microsoft добавила аналог sudo лишь в Windows Vista/7 и все windows сообщество это всколыхнуло, а для Linux это стандарт, начиная с первых версий. Так что когда MS заявляет о меньшей защищенности Linux, усомнимся в ее словах. Root особый но все же пользователь ОС Linux, а у него могут быть какие либо материалы, которые других пользователей вообще не касаются. И потому   у него есть свой каталог. И у любого другого пользователя для своих материалов будет свой каталог в каталоге home. Имя пользователя и будет являться именем домашнего каталога.Внутри домашнего каталога можно создавать произвольные подкаталоги.
  Linux позволяет прозрачно работать с файловыми системами на удаленных машинах, устанавливаться и загружаться по сети и все это дает нам Cетевая Файловая Система(NFS).
Большинство современных файловых систем используют технологию отложенной записи на диск(кеширование ввода/ввывода). Преимущества данного решения: за счет накопления ряда изменений ФС снижается фрагментация, достигается более эффективная организация с использованием экстраситетов. Снижается нагрузка на дисковую систему. Из недостатков этого решения: в случае отключения питания данные будут потеряны, кеш файловой системы можно быть атакован, а данные в нем изменены.     
Итак суммируем все то что мы узнали о линукс перед непосредственной установкой:
1) Linux использует различные типы файловых систем, наиболее распространенные это журналируемые   ФС типа Ext3/4 несовместимые с NTFS и FAT
2) Linux умеет работать с NTFS
3)   Журналируемая  ФС это файловая система, поддерживающая запись происходящих с ней изменений в журнал с возможностью отката состояния по журналу.
4) файловая система Ext3/4 является кеширующей
5) В Linux главным каталогом  является /
6) У каждого пользователя есть домашний каталог, где он хранит свою информацию
7) Linux использует принцип монтирования ФС и точек монтирования, то есть различных представлений данной файловой системы
8) Различные компоненты системы могут быть разнесены по различным файловым системам
9) В Linux предусмотрена система учетных записей, где большинство пользователей имеют весьма ограниченные права. Но root может все и немножечко больше:) Для предотвращения проблем в Linux встроена система sudo, которая может динамически менять права.
10) Для сложных манипуляций с данными по сети и их прозрачного представления в системе используется NFS
  Теперь поговорим собственно об установке. Стандартный домашний компьютер довольно таки легко потянет Linux, проблемы могут возникнуть лишь с нестандартным оборудованием. Пройдемся по этапам установки Linux Ubuntu:
1) Сначала вам надо скачать образ cd/dvd с ubuntu.com Там жмите кнопку download и вы попадете на страницу выбора варианта Desktop дистрибутива Можете сразу нажимать download, хотя как вы можете убедится есть серверный вариант и для нетбуков. После нажатия на кнопку у вас начнется скачивание образа Ubuntu. Он весит 699 мб.
Вот он сайт системы Ubuntu,заходите сюда: здесь бывают интересные вещи:D
  Страница загрузки Ubuntu и та самая заветная большая красная,бр... оранжевая кнопка загрузки
Что ж вы загрузили диск, запишите iso образ на CD/DVD диск, либо Nero, либо штатными средствами Windows.Вставьте полученный загрузочный CD в дисковод.   После чего перезагрузите компьютер и зайдите в BIOS настроив порядок загрузки так, чтобы дисковод был первым источником загрузки.  Сохраните изменения и выходите из BIOS. Через некоторое время вы увидите такой экран, что говорит о подготовке системы к запуску инсталятора:
       Через некоторое время вы увидите ни что иное как экран приветствия:

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

О раскладке клавиатуры(вы можете проверить правильность автовыбора):

Дальше вы попадете на этап разметки диска, здесь есть несколько вариантов:
 1) использовать весь диск. Все будет стерто и установлена Ubuntu
2) Совместно использовать установленные операционные системы и установить загрузчик для выбора какую запускать. Если у вас всего один логический диск и нет свободного, то могут быть проблемы.
3) Ручная разметка.Здесь вы сможете сами наметить разделы для новой системы.
Самым важным для  нее является раздел / и вам необходимо выбрать соответствующий раздел из списка, для  него определить файловую систему, разумно оставить Ext4, а в качестве точки монтирования /. Затем необязательно но очень желательно дать системе раздел swap(выбираете раздел из списка для этой цели, файловую систему устанавливаете как swap,а тип монтирования: раздел подкачки    ). Swap раздел необходим для эффективной работы виртуальной памяти. Эта технология позволяет использовать памяти больше чем  есть физической. Она разбивается на страницы, создается таблица этих страниц, а уже они транслируются в физические адреса памяти. Все вирт страницы не могут уместится в ОЗУ и часть из них вытесняется как раз на диск в раздел swap. Для swap можно выделить 200 мб и это будет вполне приемлемо.
Важно отметить что для установки Ubuntu требуется свободное пространство, поэтому озаботесь этим заранее. И еще: сначала устанавливаем Windows, а только потом Linux это связано с тем, что Windows безцеременно перезаписывает главную загрузочную запись, исходя что она одна на машине  
Дальше можно переходить к созданию учетной записи. Выберете какой либо пароль, это очень желательно, лучше лишний раз ввести пароль, чем допустить ошибку или дать возможность вредоносному ПО навредить.

Потом вас спросят в последний раз обо всех изменениях и начнется установка:

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

Вы вводите свой пароль и увидите примерно это:

Все вы установили Linux Ubuntu 10.04 LTS Lucid!    
Из дополнительных шагов после установки:
зарегистрироваться на форуме русскоязычного коммьюнити Ubuntu.ru
И стать постоянным читателем моего блога:)              
В следующий раз обсудим более подробно подготовку жесткого диска к установке
  


                    

пятница, 30 июля 2010 г.

Windows прощай!(Записки Windows эмигранта)

Несколько дней назад я перешел в мир Linux Ubuntu. При чем знакомится  с системами Linux ваш покорный слуга еще начал год назад, но тогда все больше под эмуляторами. Первые мои эксперименты в реальности жесткого диска и его данных были весьма неудачны для Linux, но не затронули win. При чем хочу заметить что виной тому были исключительно мой подход в стиле MS: щелкнем по кнопкам и ок. Первые неудачи заставили к Linux отнестись серьезней.Что ж естественно обратился к таким источникам как ubuntu.ru   и книгам. Однако все ж главный источник просветления явилась тестовая система на Virtual Box. Теперь хотел бы кратко охарактеризовать Linux Ubuntu
Вокруг Linux сложился миф что Linux=командная строка. Ну что ж посмотрите вот моя ubuntu в штатном состоянии:
 Да жуткая командная строка и ничего больше:) А если серьезно, то к вашим услугам  и аналог меню Пуск(панель сверху) При чем мне она нравится больше чем меню Пуск, Программы это один пункт на панели, навигация по файловой системе другой, а инструменты администрирования третье. Коснемся более подробней вопроса о рабочем столе.
Все мы привыкли что он один и жестко интегрирован с ОС.  Но Linux приподнесет нам здесь первый сюрприз: для Linux интерфейс в стиле GUI так приятное дополнение и не более. Она может прекрасно работать и без него. Но все же если вы не фанат текстовых браузеров и аскетичного мерцающего курсора, то на помощь Вам приходит X-window, которая обеспечивает базовые возможности графики. Вобще сама эта система появилась тогда когда были терминалы за ними сидели юзВери, а один системный блок  обслуживал их запросы. X-window разрабатывалась с тем, чтобы обеспечить для таких систем графические возможности. Так как она обслуживала сразу много рабочих станций, то сама X-window имела клиент-серверную технологию организации. В дружелюбных Linux системах с иксами, так в народе зовут X-window, Вам сталкиваться придется редко, то пока просто помните что базовые графические возможности предоставляет именно эта система. Однако сами иксы никакого интерфейса какой вы увидили на скрине не дадут, за это отвечает так называемое рабочее окружение. А вот злдесь мы подошли к вопросу о дистрибутивах.
     Сам финский парень Линус в 1991 году написал лишь ядро и именно это и есть, строго говоря, Linux. Однако простым пользователям в ядре пользы мало.  Документы при помощи него напишешь, кино не посмотришь, взять бы его и выкинуть! Ан нет! Оно хоть и с пользователем неособо разговорчиво за то обеспечивает доступ к железу и распределение  ресурсов для иных программ. В первых системах UNIX от которых и произошла Linux единственным средством общения с ОС была командная строка. Однако дни юности UNIX прошли, система мужала и начали появляться первые разработки типа X-window, которые и проложили путь к GUI. К 1991 году наработки по этому вопросу имелись.  К этому времени уже во всю работал Ричард Столмен, развивалось GNU сообщество. Не хватало открытой ОС. И Линус Торвальдс дал ее основу.К 1998 году начались работы над одной из первых графических сред для Linux GNOME  Позже появится KDE  Но нельзя забывать и про более ранние графические среды которые предоставляли GUI обертку для командной строки. Итак что же такое дистрибутив Linux? Это ядро линукс и некоторый набор программ, которые могут содержать и графическое окружение. Сам состав  дистрибутива различен у каждого производителя. Однако все же говорить об анархии нельзя, обычно дистрибутив включает в себя: графическую среду (обычно GNOME или KDE ), естественно стандартное ядро, дополнительные приложения. Дистрибутивы делаются для различных целей, начиная от user-friendly Linux Ubuntu или Linux Mint и заканчивая специфическими Linux типа DEFT для криминалистов.
Скажем пару слов о окружении. И KDE, и GNOME это больше чем рабочий стол: они предоставляют  Вам офисные приложения аналогичные MS Office, графические инструменты настройки системы, средства работы в Интернет от браузера и программы общения до torrent клиента и средства работы с удаленными системами, видео и аудио проигрыватели и даже инструменты разработки . То есть в принципе тот же GNOME или KDE способны удовлетворить все ваши повседневные потребности.
Заключая наш обзор Linux  заметим, что в Linux все может быть перестроено под ваши нужды. Основной массив ПО под Linux распостраняется как  GNU/GPL, что дает Вам право:
1) Бесплатно их использовать. При чем как в коммерческих целях так и для себя. По условиям GPL (General Public Lience ) Универсальная общественная лицензия GNU  Деньги могут браться лишь за доставку носителя с ПО, хотя человек обязательно должен иметь способы бесплатного получения продукта
2) Вы как пользователь обязаны от производителя получить исходники его продукта при чем в таком виде, чтобы вы могли собрать рабочий образец программы
3) Вы  можете свободно модифицировать и распространять код и бинарные файлы продукта.
Но есть одно ограничение:
вы не имеете права изменять условия лицензирования и теряете авторские права на программу, так называемый принцип copyleft
На этом философское введение в Linux завершим, а завтра опишу опыт установки Linux на машину.Комментируйте,критикуйте, предлагайте новые темы, спрашивайте!