Відмінності між версіями «Завантаження, перезавантаження системи»

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук
 
(не показані 2 проміжні версії цього учасника)
Рядок 1: Рядок 1:
'''Завантаження.'''
+
[[Файл:GRUB screenshot.png|Знімок екрану завантажувача GRUB|300px|thumb]]
 +
'''Заванта́ження операці́йної систе́ми''' (англ. booting) — це багатокроковий процес запуску комп'ютера. Заванта́жувач операційної системи (англ. bootloader) — це програма, для виконання завантаження операційної системи. Завантажувач операційної системи звичайно міститься у секторі завантажування. Послідовність завантаження (англ. boot sequence) — це початковий набір дій, що при цьому виконується комп'ютером.
  
Для того, щоб завантажити встановлений Linux-Mandrake RE, не потрібно робити нічого складного. Після перезавантаження, з'явиться меню з різними варіантами завантаження. Просто виберіть - linux, або потрібне.
+
== Типи завантаження ==
Процедура входу в систему.
+
* '''Початкове завантаження''' — Завантажування після того, як комп'ютер увімкнено користувачем.
 +
* '''Перезавантаження '''
  
Linux - система для багатьох користувачів. Для того, щоб війти в систему, Вам треба бути ідентифікованим системою, - це і є процедура входу. Введіть ім'я користувача, якого створено для Вас та його пароль.
+
=== Жорстке перезавантаження ===
Коли Вам знадобиться виконувати завдання, для яких треба повноважень наглядача, користуйтеся командою su + пароль наглядача, або налаштуйте для таких випадків sudo.
+
Жорстке перезавантаження (англ. hard reboot) відбувається, коли на короткий час зникає живлення комп'ютера, або коли на процесор надсилається спеціальний сигнал (найчастіше така кнопка міститься на передній панелі комп'ютера). Це початкове завантаження без попереднього виконання завершальних процедур операційної системи. Для багатьох операційних систем, особливо тих що використовують дисковий кеш, після жорсткого перезавантаження файлова система може містити неузгодженості через незавершеність дискових операцій вводу-виводу; щоб виправити ці помилки запускається процедура сканування файлової системи на цілісність структури ще до того, як матиме місце нормальне завантаження. Жорстке перезавантаження може бути спричинено ненавмисно, через випадкове відключення живлення, або ж зроблене навмисно як остання спроба вийти з неприємного стану на комп'ютері, наприклад критичної помилки системи, чи вірусної атаки, чи DoS-атаки з інтернету.
  
Під час підключення користувача (так саме як і при одержанні прав наглядача командою su) запускається нова командна оболонка (shell). Вийти з поточного shell можно за допомогою команди exit або натиснувши комбінацію клавіш Ctrl-D.
+
=== М'яке перезавантаження ===
 +
М'яким (англ. soft reboot) перезавантаження називається тоді, коли воно відбувається під контролем програмного забезпечення, без порушень в електроживленні і натискання кнопки перезавантаження на передній панелі. Як правило, але не завжди, це означає звичайне штатне завершення роботи машини і наступне перезавантаження.
 +
Комбінація клавіш клавіатури Control-Alt-Delete на оригінальному комп'ютері IBM PC була назначена для виконання м'якого перезавантаження для скорішого і зручнішого (і, дехто стверджує, менш стресового для компонентів системи) рестарту, порівняно із тим, коли вимикається живлення комп'ютера.
 +
Ядро Linux має опціональну підтримку системного виклику kexec, який зупиняє поточне робоче ядро і переключає виконання на інше. Це процес повністю незалежний від програм, зашитих в залізо (firmware). Зауважимо, що ядро, яке запускається, може навіть і не бути ядром Linux.
  
'''Вимикання.'''
+
== Функціональність завантажувача операційної системи ==
 +
* забезпечує необхідні засоби для діалогу з користувачем комп'ютера (наприклад, завантажувач дозволяє вибрати ядро операційної системи для завантаження);
 +
* приводить апаратуру комп'ютера в стан, необхідний для старту ядра операційної системи (наприклад, на не-x86 архітектурі перед запуском ядра завантажувач повинен правильно налаштувати віртуальну пам'ять);
 +
* завантажує ядро операційної системи в оперативну пам'ять. Завантаження ядра операційної системи не обов'язково відбувається з твердого диску.
 +
* Завантажувач може отримувати ядро з мережі. Ядро може зберігатися в постійній пам'яті або завантажуватися через послідовні інтерфейси (це може стати в нагоді на ранній стадії зневадження створюваної комп'ютерної системи);
 +
* формує параметри, що передаються ядру операційної системи (наприклад, ядру Linux передаються параметри, що вказують спосіб підключення кореневої файлової системи);
 +
* передає управління ядру операційної системи.
  
Існує багато способів вимикання вашої Linux системи, але до них не належить вимикання кнопкою живлення! Насправді, як і багато інших операційних систем, Linux інтенсивно користується кеш-пам'ятю для прискорення процесів вводу/виводу. Невірне вимикання системи може привести до втрати данних. Тому, треба виключати систему вірно. Для цього існує маса способів:
+
На комп'ютерах архітектури IBM РС запуск завантажувача здійснюється програмним забезпеченням BIOS, записаною в постійній пам'яті комп'ютера (зараз це найчастіше флеш-пам'ять), після успішного закінчення процедури POST.
  
    Перебуваючи в системі з повноваженнями root, наберіть "poweroff", через деякий час система перестане працювати та живлення буде вимкнено автоматично.
+
Процедура, за допомогою якої відбувається завантаження ОС з твердого диску IBM РС має таку послідовність: BIOS проводить читання і запис 512 байт першого сектора диску в оперативну пам'ять за адресою 0x00007C00 (0x07C0:0x0000 у форматі реального режиму), потім прочитаному коду передається керування. Цей код читає і аналізує таблицю розділів твердого диска, а потім, залежно від виду завантажувача, або передає керування завантажувальному коду активного розділу твердого диску, або самостійно завантажує ядро з диску в оперативну пам'ять і передає йому керування. Спочатку завантажувач працює в режимі реальної адресації при вимкненій адресній лінії A20, що створює певні труднощі при написанні завантажувачів.
  
    Перебуваючи в системі з повноваженнями root, наберіть "halt" та почекайте появи повідомленя "System halted" (Система зупинена), а потім можете вимикати живлення.
+
== Завантажувальні пристрої ==
 +
Завантажувальний пристрій — з якого вантажиться операційна система. BIOS сучасних комп'ютерів підтримує завантаження з різних пристроїв, зазвичай це локальний жорсткий диск (HDD) (або одна з частин логічного чи фізичного розділу на диску), пристрій читання оптичних дисків, USB-диск (у варіантах флеш-диску, зовнішнього твердого, магнитооптичного чи оптичного диску тощо), або інтерфейсна мережева карта (з використанням PXE). Старіші, вже менш поширені варіанти завантаження, включають дисковод гнучких дисків, SCSI-пристрої, Zip-дисководи, або пристрої LS-120.
 +
Зазвичай BIOS дозволяє користувачу обрати і впорядкувати спосіб завантаження. Якщо порядок завантаження встановлено так «по-перше, DVD-дисковод; по-друге, твердий диск», тоді BIOS намагатиметься завантажити систему з DVD, і якщо спроба виявиться неуспішною (наприклад, у дисководі відсутній диск), тоді відбудеться наступна спроба завантажитися з твердого диску.
  
    Більш швидкий варіант - це натиснути клавіши ctrl-alt-del одночасно (як в Dos/Windows). Потім ваша система размонтує всі диски. Дочекайтесь реініціалізаціі (перезавантаження) системи та вимикайте живлення.
+
== Поширені завантажувачі ==
  
    Якщо Ви користуєтесь KDM, натисніть "Вимкнути...", і знов виберіть "Вимкнути". Як для пункту 1 дочекайтесь зупинки системи та вимикайте живлення. Майте на увазі, що Ви можете також вимкнути цю можливість в "Центрі керування KDE".
+
* LILO (LInux LOader)— завантажувач, в основному для завантаження ядра Linux
 +
* GRUB — використовується для завантаження ядрі  Linux і Hurd
 +
* cygwin— завантажувач для вбудованих систем
 +
* SILO (SPARC Improved bootLOader)— завантажувач Linux і Solaris для машин з архітектурою SPARC.
 +
* Loadlin — завантажує Linux з під DOS або Windows
 +
* Syslinux — завантажує Linux з під DOS або Windows
 +
* BOOTP — застосовується для завантаження по мережі
 +
* Yaboot — завантажувач Linux на PowerPC
 +
* Das U-Boot
 +
* SyMon
  
Що може статися коли Ви просто вимкнете живлення вашого ПК? Під час завантаження Linux, будуть перевірені всі диски, що не були вірно размонтовані. Ця операція має назву "fsck" (Filesystem Check - перевірка файлової системи). Вона займе декілька хвилин. Коли повезе, то потім ваша система завантажиться нормально. '''
+
==Покрокові інструкції==
  
Командні оболонки (shell)
+
===Завантаження===
  
Після реєстрації в системі, якщо Ви не вибрали автоматичний запуск X Windows, Ви побачите запрошення - рядок, що містить символ ''$'' (далі, цей символ буде позначати командний рядок). Програма очікує ваших команд. Роль командного інтерпретатора - передавати ваши команди оперційній системі. За своїми функціями він відповідає command.com в DOS, але незрівняно потужніше. При допомозі командних інтерпретаторів можно писати невеличкі програми - сценарії (scripts). В Linux доступні наступні командні оболонки:
+
Для того, щоб завантажити встановлений Linux-Mandrake RE, не потрібно робити нічого складного. Після перезавантаження, з'явиться меню з різними варіантами завантаження. Просто виберіть - linux, або потрібне.
 +
Процедура входу в систему.
  
bash - сама поширена оболонка під linux. Вона веде історію команд та надає можливість іх редагування
+
Linux - система для багатьох користувачів. Для того, щоб війти в систему, Вам треба бути ідентифікованим системою, - це і є процедура входу. Введіть ім'я користувача, якого створено для Вас та його пароль.
 +
Коли Вам знадобиться виконувати завдання, для яких треба повноважень наглядача, користуйтеся командою su + пароль наглядача, або налаштуйте для таких випадків sudo.
  
pdksh - клон korn shell, добре відомої оболонки в UNIX(tm) системах.
+
Під час підключення користувача (так саме як і при одержанні прав наглядача командою su) запускається нова командна оболонка (shell). Вийти з поточного shell можно за допомогою команди exit або натиснувши комбінацію клавіш Ctrl-D.
  
tcsh - покращена версія C shell.
+
===Вимикання===
  
zsh - сама нова з прерахованих тут оболонок.
+
Існує багато способів вимикання вашої Linux системи, але до них не належить вимикання кнопкою живлення! Насправді, як і багато інших операційних систем, Linux інтенсивно користується кеш-пам'ятю для прискорення процесів вводу/виводу. Невірне вимикання системи може привести до втрати данних. Тому, треба виключати систему вірно. Для цього існує маса способів:
  
Стандартною оболонкою є "Bash" (Bourne Again Shell ) Щоб перевірити, яку оболонку Ви використовуєте, наберіть команду:
+
Перебуваючи в системі з повноваженнями root, наберіть "poweroff", через деякий час система перестане працювати та живлення буде вимкнено автоматично.
  
echo $shell
+
Перебуваючи в системі з повноваженнями root, наберіть "halt" та почекайте появи повідомленя "System halted" (Система зупинена), а потім можете вимикати живлення.
  
У кожної оболонки свій синтаксис. Ми рекомендуємо Вам використовувати Bash. В подальшому ми будемо будувати свої приклади з використанням цієї оболонки.
+
Більш швидкий варіант - це натиснути клавіши ctrl-alt-del одночасно (як в Dos/Windows). Потім ваша система размонтує всі диски. Дочекайтесь реініціалізаціі (перезавантаження) системи та вимикайте живлення.
Командна оболонка Bash.
+
  
В bash є декілька прийомів для роботи з рядком команд. Наприклад, користуючись клавіатурою, Ви можете:
+
Якщо Ви користуєтесь KDM, натисніть "Вимкнути...", і знов виберіть "Вимкнути". Як для пункту 1 дочекайтесь зупинки системи та вимикайте живлення. Майте на увазі, що Ви можете також вимкнути цю можливість в "Центрі керування KDE".
 +
Що може статися коли Ви просто вимкнете живлення вашого ПК? Під час завантаження Linux, будуть перевірені всі диски, що не були вірно размонтовані. Ця операція має назву "fsck" (Filesystem Check - перевірка файлової системи). Вона займе декілька хвилин. Коли повезе, то потім ваша система завантажиться нормально. '''
 +
Командні оболонки (shell)
 +
Після реєстрації в системі, якщо Ви не вибрали автоматичний запуск X Windows, Ви побачите запрошення - рядок, що містить символ ''$'' (далі, цей символ буде позначати командний рядок). Програма очікує ваших команд. Роль командного інтерпретатора - передавати ваши команди оперційній системі. За своїми функціями він відповідає command.com в DOS, але незрівняно потужніше. При допомозі командних інтерпретаторів можно писати невеличкі програми - сценарії (scripts). В Linux доступні наступні командні оболонки:
  
Ctrl + A перейти на початок рядка.
+
bash - сама поширена оболонка під linux. Вона веде історію команд та надає можливість іх редагування
  
Ctrl + U видалити поточний рядок.
+
pdksh - клон korn shell, добре відомої оболонки в UNIX(tm) системах.
  
Ctrl + C зупинити активне завдання.
+
tcsh - покращена версія C shell.
  
Ви можете використовувати '';'' для того, щоб ввести декілька команд одним рядком. Клавіши ''вгору'' та ''вниз'', дозволяють Вам пересуватися по історіі команд. Для того, щоб знайти певну команду в переліку набранних, не продивляючись всю історію, наберіть:
+
zsh - сама нова з прерахованих тут оболонок.
  
history
+
Стандартною оболонкою є "Bash" (Bourne Again Shell ) Щоб перевірити, яку оболонку Ви використовуєте, наберіть команду:
  
Команди, що є в історіі, відображуються в переліку пронумерованими. Для того, щоб запустити потрібну команду наберіть:
+
echo $shell
  
! номер команди
+
У кожної оболонки свій синтаксис. Ми рекомендуємо Вам використовувати Bash. В подальшому ми будемо будувати свої приклади з використанням цієї оболонки.
 
+
Командна оболонка Bash.
коли Ви введете:
+
 
+
!!
+
 
+
запуститься остання з набраних команд.
+
 
+
Іноді в Unix, назви програм та команд надто довгі. На щастя, Bash сам може завершувати назви. Натиснувши клавішу [TAB], Ви можете завершити назву команди, програми чи каталогу. Наприклад, нехай, Ви бажаєте використати програму розпакування bunzip2. Для цього наберіть:
+
 
+
bu
+
 
+
потім натисніть [TAB]. Коли нічого не відбувається, то можливо існує декілька варіантів завершення команди.
+
 
+
Нтиснувши клавішу [TAB] ще раз, Ви отримаєте перелік назв, що починаються з "bu".
+
 
+
Наприклад у Вас є:
+
 
+
$ bu buildhash builtin bunzip2
+
 
+
Наберіть:
+
 
+
n
+
 
+
(bunzip - це єдина назва, де третя літера "n"), а потім натисніть клавішу табуляціі. Оболонка доповнить назву і Вам залишиться лише натиснути "Enter", щоб запустити команду!
+
 
+
Зауважимо, що програму, яка викликається з командного рядка, bash щукає в каталогах, що визначаються в змінній оточення PATH. Стандартно, в цей перелік каталогів не входить поточний каталог, позначаємий./ (крапка коса) (якщо тіки Ви не обрали один з двох самих слабих рівнів захисту, див. про це нижче). Тому для запуску програми prog з поточного каталога, треба дати команду:
+
 
+
./prog
+
+
Базові команди оболонки Bash
+
 
+
 
+
Всі команди, що наведені нижче, можуть бути виконані як в режимі консолі, так і в графічному режимі (xterm, консоль KDE). Для отримання більш детальних відомостей використовуйте команду man. Наприклад:
+
 
+
man ls
+
 
+
Команда su:
+
 
+
Дозволяє Вам отримати права наглядача. Коли Ви наберете su, оболонка запитає у Вас пароль наглядача (root). Введіть пароль та натисніть Enter: зараз Ви отримали прівілеї суперкористувача. Щоб повернутися до прав вашого користувацького рахунку, наберіть exit.
+
 
+
Команда cd
+
 
+
Дозволяє змінити каталог. Вона працює як з абсолютними, так і з відносними шляхами. Припустимо, що Ви знаходитесь у свйому домашньому каталозі та бажаєте перейти до його підкаталогу docs/. Для цього, введіть відносний шлях:
+
 
+
cd docs/
+
 
+
Щоб перейти до каталогу /usr/bin, наберіть (абсолютний шлях):
+
 
+
cd /usr/bin/
+
 
+
Деякі варіанти команди:
+
 
+
cd ..
+
 
+
дозволяє Вам "піднятися" в дереві каталогів на горішній рівень (звертайте увагу на пустий проміжок між cd та ..).
+
 
+
cd -
+
 
+
дозволяє Вам повернутися до попереднього каталогу. Команда cd, без параметрів переводить Вас до Вашого домашнього каталогу.
+
 
+
Команда ls:
+
 
+
ls (list) видасть перелік файлів в поточному каталозі. Два головних параметра: -a - перегляд всіх файлів, серед них приховані, -l - відображення більш детальних відомостей.
+
 
+
Команда rm:
+
 
+
Ця команда використовується для видалення файлів. Увага: видаливши файл, Вы не зможете його відновити!
+
 
+
Синтаксис:
+
 
+
rm назва_файла
+
 
+
У цієї програми існує ряд параметрів. Найчастіше використовують: -i - запит на видалення файла, -r - рекурсивне видалення (тоб-то, видалення разом з підкаталогами та прихованими файлами).
+
 
+
Приклад:
+
 
+
rm -i ~/html/*.html
+
 
+
видаляє всі файли html, в вашому каталозі html.
+
 
+
Команди mkdir та rmdir:
+
 
+
Команда mkdir дозволяє Вам створити каталог, тоді як rmdir видаляє каталог, за умови, що він пустий.
+
 
+
Синтаксис:
+
 
+
mkdir назва_каталога
+
 
+
rmdir назва_каталога
+
 
+
Команда rmdir часто замінюється командою rm -rf, яка дозволяє Вам видаляти каталоги, навіть коли вони не пусті.
+
 
+
Команда less:
+
  
less дозволяє Вам продивлятися текст сторінками.
+
В bash є декілька прийомів для роботи з рядком команд. Наприклад, користуючись клавіатурою, Ви можете:
  
Синтаксис:
+
Ctrl + A перейти на початок рядка.
  
less назва_файла
+
Ctrl + U видалити поточний рядок.
  
Вкрай корисно, подивитись фойл до початку його редагування. Для виходу натисніть q.
+
Ctrl + C зупинити активне завдання.
  
Команда grep:
+
Ви можете використовувати '';'' для того, щоб ввести декілька команд одним рядком. Клавіши ''вгору'' та ''вниз'', дозволяють Вам пересуватися по історіі команд. Для того, щоб знайти певну команду в переліку набранних, не продивляючись всю історію, наберіть:
  
Ця команда має багато параметрів та надає можливості пошуку символьного рядка у файлі.
+
history
  
Синтаксис:
+
Команди, що є в історіі, відображуються в переліку пронумерованими. Для того, щоб запустити потрібну команду наберіть:
 +
! номер команди
 +
коли Ви введете:
 +
!!
 +
запуститься остання з набраних команд.
  
grep шаблон_пошуку файл
+
Іноді в Unix, назви програм та команд надто довгі. На щастя, Bash сам може завершувати назви. Натиснувши клавішу [TAB], Ви можете завершити назву команди, програми чи каталогу. Наприклад, нехай, Ви бажаєте використати програму розпакування bunzip2. Для цього наберіть:
  
Команда ps:
+
bu
  
Відображує перелік поточних процесів. Колонка PID(номери процесів) показує номер процесу в системі (цей номер використовують для дій над процесом, наприклад, щоб вбити його командою kill), колонка CMD виводить назву процесу.
+
потім натисніть [TAB]. Коли нічого не відбувається, то можливо існує декілька варіантів завершення команди.
  
Синтаксис:
+
Нaтиснувши клавішу [TAB] ще раз, Ви отримаєте перелік назв, що починаються з "bu".
  
ps аргументи
+
Наприклад у Вас є:
  
Аргумент u виводить більше відомостей, ax дозволяє Вам продивитись ті процеси, що Вам не належать (такі як ті, що були запущені під час завантаження).
+
$ bu buildhash builtin bunzip2
  
Команда kill:
+
Наберіть:
  
Коли програма перестала відповідати чи зависла, використовуйте цю команду, щоб її завершити.
+
n
  
Синтаксис:
+
(bunzip - це єдина назва, де третя літера "n"), а потім натисніть клавішу табуляціі. Оболонка доповнить назву і Вам залишиться лише натиснути "Enter", щоб запустити команду!
  
kill PID_номер
+
Зауважимо, що програму, яка викликається з командного рядка, bash щукає в каталогах, що визначаються в змінній оточення PATH. Стандартно, в цей перелік каталогів не входить поточний каталог, позначаємий./ (крапка коса) (якщо тіки Ви не обрали один з двох самих слабих рівнів захисту, див. про це нижче). Тому для запуску програми prog з поточного каталога, треба дати команду:
  
Іноді необхідно буде використовувати kill -9 PID_number (коли звичайна команда kill не дає бажаного результату). Номер PID з'ясовують за допомогою команди "ps".
+
./prog
 
   
 
   
Використання багатозадачності Linux.
 
  
  
Linux - це багатозадачна система, і Ви, звичайно, маєте бажання скористатися всіма перевагами цього (наприклад, блукати в мережі, одночасно компілюючи програму). Продемонструємо на двох прикладах, як це можно використовувати.
+
Linux - це багатозадачна система, і Ви, звичайно, маєте бажання скористатися всіма перевагами цього (наприклад, блукати в мережі, одночасно компілюючи програму). Продемонструємо на двох прикладах, як це можно використовувати.
  
Приклад перший - запуск програмы в фоновому режимі. Для того, щоб це зробити, Вам треба, лише, набрати "&" після назви програми. Після цього, оболонка дає Вам можливість запускати інші програми. Будьте обережними, бо деякі програми потребують Вашої реакції, щоб продовжувати працювати,і їх запуск в фоновому режимі не має сенсу. Для того, щоб повернути їх з фонового режиму, наберіть:
+
Приклад перший - запуск програми в фоновому режимі. Для того, щоб це зробити, Вам треба, лише, набрати "&" після назви програми. Після цього, оболонка дає Вам можливість запускати інші програми. Будьте обережними, бо деякі програми потребують Вашої реакції, щоб продовжувати працювати,і їх запуск в фоновому режимі не має сенсу. Для того, щоб повернути їх з фонового режиму, наберіть:
  
fg назва_програми
+
fg назва_програми
  
Другий метод - запуск декількох незалежних сеансів, або використання програми, що імітує декілька таких сеансів (screen). Коли ви в графічному режимі, просто запустіть Xterm або емулятор терміналу. В режимі консолі, натисніть "alt" та одну з клавіш, що знаходяться в інтервалі від "F1" до "F6". На екрані з'явиться нове запрошення системи, і Ви зможете розпочати новий сеанс. цей метод також дозволяє Вам працювати на іншій консолі, коли консоль, що Ви використовували до того, не відповідає, або Вам необхідно зупинити програму, що зависла.
+
Другий метод - запуск декількох незалежних сеансів, або використання програми, що імітує декілька таких сеансів (screen). Коли ви в графічному режимі, просто запустіть Xterm або емулятор терміналу. В режимі консолі, натисніть "alt" та одну з клавіш, що знаходяться в інтервалі від "F1" до "F6". На екрані з'явиться нове запрошення системи, і Ви зможете розпочати новий сеанс. цей метод також дозволяє Вам працювати на іншій консолі, коли консоль, що Ви використовували до того, не відповідає, або Вам необхідно зупинити програму, що зависла.

Поточна версія на 19:12, 20 січня 2013

Знімок екрану завантажувача GRUB

Заванта́ження операці́йної систе́ми (англ. booting) — це багатокроковий процес запуску комп'ютера. Заванта́жувач операційної системи (англ. bootloader) — це програма, для виконання завантаження операційної системи. Завантажувач операційної системи звичайно міститься у секторі завантажування. Послідовність завантаження (англ. boot sequence) — це початковий набір дій, що при цьому виконується комп'ютером.

Типи завантаження

  • Початкове завантаження — Завантажування після того, як комп'ютер увімкнено користувачем.
  • Перезавантаження

Жорстке перезавантаження

Жорстке перезавантаження (англ. hard reboot) відбувається, коли на короткий час зникає живлення комп'ютера, або коли на процесор надсилається спеціальний сигнал (найчастіше така кнопка міститься на передній панелі комп'ютера). Це початкове завантаження без попереднього виконання завершальних процедур операційної системи. Для багатьох операційних систем, особливо тих що використовують дисковий кеш, після жорсткого перезавантаження файлова система може містити неузгодженості через незавершеність дискових операцій вводу-виводу; щоб виправити ці помилки запускається процедура сканування файлової системи на цілісність структури ще до того, як матиме місце нормальне завантаження. Жорстке перезавантаження може бути спричинено ненавмисно, через випадкове відключення живлення, або ж зроблене навмисно як остання спроба вийти з неприємного стану на комп'ютері, наприклад критичної помилки системи, чи вірусної атаки, чи DoS-атаки з інтернету.

М'яке перезавантаження

М'яким (англ. soft reboot) перезавантаження називається тоді, коли воно відбувається під контролем програмного забезпечення, без порушень в електроживленні і натискання кнопки перезавантаження на передній панелі. Як правило, але не завжди, це означає звичайне штатне завершення роботи машини і наступне перезавантаження. Комбінація клавіш клавіатури Control-Alt-Delete на оригінальному комп'ютері IBM PC була назначена для виконання м'якого перезавантаження для скорішого і зручнішого (і, дехто стверджує, менш стресового для компонентів системи) рестарту, порівняно із тим, коли вимикається живлення комп'ютера. Ядро Linux має опціональну підтримку системного виклику kexec, який зупиняє поточне робоче ядро і переключає виконання на інше. Це процес повністю незалежний від програм, зашитих в залізо (firmware). Зауважимо, що ядро, яке запускається, може навіть і не бути ядром Linux.

Функціональність завантажувача операційної системи

  • забезпечує необхідні засоби для діалогу з користувачем комп'ютера (наприклад, завантажувач дозволяє вибрати ядро операційної системи для завантаження);
  • приводить апаратуру комп'ютера в стан, необхідний для старту ядра операційної системи (наприклад, на не-x86 архітектурі перед запуском ядра завантажувач повинен правильно налаштувати віртуальну пам'ять);
  • завантажує ядро операційної системи в оперативну пам'ять. Завантаження ядра операційної системи не обов'язково відбувається з твердого диску.
  • Завантажувач може отримувати ядро з мережі. Ядро може зберігатися в постійній пам'яті або завантажуватися через послідовні інтерфейси (це може стати в нагоді на ранній стадії зневадження створюваної комп'ютерної системи);
  • формує параметри, що передаються ядру операційної системи (наприклад, ядру Linux передаються параметри, що вказують спосіб підключення кореневої файлової системи);
  • передає управління ядру операційної системи.

На комп'ютерах архітектури IBM РС запуск завантажувача здійснюється програмним забезпеченням BIOS, записаною в постійній пам'яті комп'ютера (зараз це найчастіше флеш-пам'ять), після успішного закінчення процедури POST.

Процедура, за допомогою якої відбувається завантаження ОС з твердого диску IBM РС має таку послідовність: BIOS проводить читання і запис 512 байт першого сектора диску в оперативну пам'ять за адресою 0x00007C00 (0x07C0:0x0000 у форматі реального режиму), потім прочитаному коду передається керування. Цей код читає і аналізує таблицю розділів твердого диска, а потім, залежно від виду завантажувача, або передає керування завантажувальному коду активного розділу твердого диску, або самостійно завантажує ядро з диску в оперативну пам'ять і передає йому керування. Спочатку завантажувач працює в режимі реальної адресації при вимкненій адресній лінії A20, що створює певні труднощі при написанні завантажувачів.

Завантажувальні пристрої

Завантажувальний пристрій — з якого вантажиться операційна система. BIOS сучасних комп'ютерів підтримує завантаження з різних пристроїв, зазвичай це локальний жорсткий диск (HDD) (або одна з частин логічного чи фізичного розділу на диску), пристрій читання оптичних дисків, USB-диск (у варіантах флеш-диску, зовнішнього твердого, магнитооптичного чи оптичного диску тощо), або інтерфейсна мережева карта (з використанням PXE). Старіші, вже менш поширені варіанти завантаження, включають дисковод гнучких дисків, SCSI-пристрої, Zip-дисководи, або пристрої LS-120. Зазвичай BIOS дозволяє користувачу обрати і впорядкувати спосіб завантаження. Якщо порядок завантаження встановлено так «по-перше, DVD-дисковод; по-друге, твердий диск», тоді BIOS намагатиметься завантажити систему з DVD, і якщо спроба виявиться неуспішною (наприклад, у дисководі відсутній диск), тоді відбудеться наступна спроба завантажитися з твердого диску.

Поширені завантажувачі

  • LILO (LInux LOader)— завантажувач, в основному для завантаження ядра Linux
  • GRUB — використовується для завантаження ядрі Linux і Hurd
  • cygwin— завантажувач для вбудованих систем
  • SILO (SPARC Improved bootLOader)— завантажувач Linux і Solaris для машин з архітектурою SPARC.
  • Loadlin — завантажує Linux з під DOS або Windows
  • Syslinux — завантажує Linux з під DOS або Windows
  • BOOTP — застосовується для завантаження по мережі
  • Yaboot — завантажувач Linux на PowerPC
  • Das U-Boot
  • SyMon

Покрокові інструкції

Завантаження

Для того, щоб завантажити встановлений Linux-Mandrake RE, не потрібно робити нічого складного. Після перезавантаження, з'явиться меню з різними варіантами завантаження. Просто виберіть - linux, або потрібне. Процедура входу в систему.

Linux - система для багатьох користувачів. Для того, щоб війти в систему, Вам треба бути ідентифікованим системою, - це і є процедура входу. Введіть ім'я користувача, якого створено для Вас та його пароль. Коли Вам знадобиться виконувати завдання, для яких треба повноважень наглядача, користуйтеся командою su + пароль наглядача, або налаштуйте для таких випадків sudo.

Під час підключення користувача (так саме як і при одержанні прав наглядача командою su) запускається нова командна оболонка (shell). Вийти з поточного shell можно за допомогою команди exit або натиснувши комбінацію клавіш Ctrl-D.

Вимикання

Існує багато способів вимикання вашої Linux системи, але до них не належить вимикання кнопкою живлення! Насправді, як і багато інших операційних систем, Linux інтенсивно користується кеш-пам'ятю для прискорення процесів вводу/виводу. Невірне вимикання системи може привести до втрати данних. Тому, треба виключати систему вірно. Для цього існує маса способів:

Перебуваючи в системі з повноваженнями root, наберіть "poweroff", через деякий час система перестане працювати та живлення буде вимкнено автоматично.

Перебуваючи в системі з повноваженнями root, наберіть "halt" та почекайте появи повідомленя "System halted" (Система зупинена), а потім можете вимикати живлення.

Більш швидкий варіант - це натиснути клавіши ctrl-alt-del одночасно (як в Dos/Windows). Потім ваша система размонтує всі диски. Дочекайтесь реініціалізаціі (перезавантаження) системи та вимикайте живлення.

Якщо Ви користуєтесь KDM, натисніть "Вимкнути...", і знов виберіть "Вимкнути". Як для пункту 1 дочекайтесь зупинки системи та вимикайте живлення. Майте на увазі, що Ви можете також вимкнути цю можливість в "Центрі керування KDE". Що може статися коли Ви просто вимкнете живлення вашого ПК? Під час завантаження Linux, будуть перевірені всі диски, що не були вірно размонтовані. Ця операція має назву "fsck" (Filesystem Check - перевірка файлової системи). Вона займе декілька хвилин. Коли повезе, то потім ваша система завантажиться нормально. Командні оболонки (shell) Після реєстрації в системі, якщо Ви не вибрали автоматичний запуск X Windows, Ви побачите запрошення - рядок, що містить символ $ (далі, цей символ буде позначати командний рядок). Програма очікує ваших команд. Роль командного інтерпретатора - передавати ваши команди оперційній системі. За своїми функціями він відповідає command.com в DOS, але незрівняно потужніше. При допомозі командних інтерпретаторів можно писати невеличкі програми - сценарії (scripts). В Linux доступні наступні командні оболонки:

bash - сама поширена оболонка під linux. Вона веде історію команд та надає можливість іх редагування

pdksh - клон korn shell, добре відомої оболонки в UNIX(tm) системах.

tcsh - покращена версія C shell.

zsh - сама нова з прерахованих тут оболонок.

Стандартною оболонкою є "Bash" (Bourne Again Shell ) Щоб перевірити, яку оболонку Ви використовуєте, наберіть команду:

echo $shell

У кожної оболонки свій синтаксис. Ми рекомендуємо Вам використовувати Bash. В подальшому ми будемо будувати свої приклади з використанням цієї оболонки. Командна оболонка Bash.

В bash є декілька прийомів для роботи з рядком команд. Наприклад, користуючись клавіатурою, Ви можете:

Ctrl + A перейти на початок рядка.

Ctrl + U видалити поточний рядок.

Ctrl + C зупинити активне завдання.

Ви можете використовувати ; для того, щоб ввести декілька команд одним рядком. Клавіши вгору та вниз, дозволяють Вам пересуватися по історіі команд. Для того, щоб знайти певну команду в переліку набранних, не продивляючись всю історію, наберіть:

history

Команди, що є в історіі, відображуються в переліку пронумерованими. Для того, щоб запустити потрібну команду наберіть: ! номер команди коли Ви введете: !! запуститься остання з набраних команд.

Іноді в Unix, назви програм та команд надто довгі. На щастя, Bash сам може завершувати назви. Натиснувши клавішу [TAB], Ви можете завершити назву команди, програми чи каталогу. Наприклад, нехай, Ви бажаєте використати програму розпакування bunzip2. Для цього наберіть:

bu

потім натисніть [TAB]. Коли нічого не відбувається, то можливо існує декілька варіантів завершення команди.

Нaтиснувши клавішу [TAB] ще раз, Ви отримаєте перелік назв, що починаються з "bu".

Наприклад у Вас є:

$ bu buildhash builtin bunzip2

Наберіть:

n

(bunzip - це єдина назва, де третя літера "n"), а потім натисніть клавішу табуляціі. Оболонка доповнить назву і Вам залишиться лише натиснути "Enter", щоб запустити команду!

Зауважимо, що програму, яка викликається з командного рядка, bash щукає в каталогах, що визначаються в змінній оточення PATH. Стандартно, в цей перелік каталогів не входить поточний каталог, позначаємий./ (крапка коса) (якщо тіки Ви не обрали один з двох самих слабих рівнів захисту, див. про це нижче). Тому для запуску програми prog з поточного каталога, треба дати команду:

./prog


Linux - це багатозадачна система, і Ви, звичайно, маєте бажання скористатися всіма перевагами цього (наприклад, блукати в мережі, одночасно компілюючи програму). Продемонструємо на двох прикладах, як це можно використовувати.

Приклад перший - запуск програми в фоновому режимі. Для того, щоб це зробити, Вам треба, лише, набрати "&" після назви програми. Після цього, оболонка дає Вам можливість запускати інші програми. Будьте обережними, бо деякі програми потребують Вашої реакції, щоб продовжувати працювати,і їх запуск в фоновому режимі не має сенсу. Для того, щоб повернути їх з фонового режиму, наберіть:

fg назва_програми

Другий метод - запуск декількох незалежних сеансів, або використання програми, що імітує декілька таких сеансів (screen). Коли ви в графічному режимі, просто запустіть Xterm або емулятор терміналу. В режимі консолі, натисніть "alt" та одну з клавіш, що знаходяться в інтервалі від "F1" до "F6". На екрані з'явиться нове запрошення системи, і Ви зможете розпочати новий сеанс. цей метод також дозволяє Вам працювати на іншій консолі, коли консоль, що Ви використовували до того, не відповідає, або Вам необхідно зупинити програму, що зависла.