Які переваги та недоліки монтажу різних каталогів на окремих перегородках?


41

Встановлюючи Ubuntu з опцією «щось інше», я з’ясував, що існує багато папок, які можна встановити на окремих розділах, як ви бачите на зображенні нижче.

багато папок можна встановити на окремих перегородках

Тож які переваги та недоліки монтують ці папки (або каталоги) на окремих розділах?

Зокрема, це каталоги

  1. /boot
  2. /home
  3. /tmp
  4. /usr
  5. /var
  6. /srv
  7. /opt
  8. /usr/local


6
@CharlesGreen Це питання описує використання цих каталогів. Мені цікаво знати переваги та недоліки їх монтажу на окремих перегородках. Тож ці питання не однакові.
Зареєстрований користувач

Відповіді:


54

Давно давно ...

... Був час, коли люди встановлювали Linux і конфігурували його вручну для своїх конкретних потреб. Деякі з них справді навіть сьогодні для серверів. Вибір, який ви бачите, gpartedє одним із популярних для тих, хто мав дуже різні потреби порівняно із середніми користувачами настільних ПК, призначеною аудиторією для робочого столу Ubuntu.

Візьмемо їх по черзі. Я пропущу ті, про кого я мало знаю.

  1. /bootбув час, коли файлова система Linux була неміцною, а жорсткі диски були невеликими. Люди боялися, що вінчестер заповниться або пошкодиться, і Ubuntu не завантажиться. Утримання ядер в окремому розділі допомогло системі завантажитися, коли інші речі пішли не так. У ті часи користувачі Linux використовували для збирання власного ядра та очищення старих. Нещодавно, як і для Ubuntu 16.04 LTS , програма Software Updater встановила останнє оновлення ядра, але не видалила старі ядра. В результаті невеликий /bootрозділ, наповнений старими ядрами, і система припинила завантаження, якщо один не періодично його очищав. Подивіться, що сталося, якщо у вас був окремий /bootрозділ і забули його регулярно чистити: Як звільнити більше місця в / завантаженні? В Ubuntu 18.04 LTS Software Updater, відвідайте додаток не тільки тримає систему в актуальному стані , але також видаляє старі ядра.
  2. З іншого боку, якщо ви хочете зашифрувати /розділ (для захисту секретного програмного забезпечення, над яким ви працюєте), вам знадобиться окремий (і незашифрований) /bootрозділ. Інакше система не завантажиться. Аналогічно, якщо у вас є привід RAID, зберігання /bootв не-RAID-розділі може бути корисним. Багато людей вважають, що наявність окремих /bootрозділів є дуже хорошою ідеєю з цих та інших причин.
  3. /homeУтримання будинку в окремій перегородці все ще має певний сенс. У цій папці / розділі є ваші особисті файли, а їх розміщення в окремому розділі дозволяє відформатувати /та перевстановити Ubuntu, зберігаючи ваші файли недоторканими. Останні версії програмного забезпечення для встановлення Ubuntu включає вибір оновлення з DVD / USB. Ця опція залишається /homeнедоторканою, навіть якщо вона не знаходиться на окремому розділі. Якщо у вашого основного диска з /розділом не вистачає місця. Ви можете додати новий диск і створити єдиний /homeрозділ на новому диску.
  4. /tmpкуди йдуть тимчасові файли. Якщо ви працюєте з сервером, який створює великі тимчасові файли, вони можуть заповнити весь диск на диску і зупинити ваш сервер. Якщо зберегти його в окремому розділі, він заповнить лише цей розділ і може зупинити процес, який створював великі тимчасові файли, але не зупинить решту системи. Мені кажуть, що легше мати справу з заповненим /tmpрозділом, ніж тимчасова папка під /розділом.
  5. /usr/, /opt/і - /usr/localце всі місця, де програми та програми зберігаються за різних умов. Якщо ви розробляєте програмне забезпечення для Linux, можливо, має сенс зберігати їх в окремих розділах, так що якщо ви перевстановите Ubuntu, ви не будете видаляти програми, написані або над якими працювали.
  6. Зберігання /opt/та /usr/localроздільний розділ також має сенс, якщо ви встановлюєте програми з джерела (свого власного чи з іншого місця) та хочете використовувати їх в іншому дистрибутиві (скажімо, Red Hat), встановленому на тому ж комп’ютері, у власному розділі. Тоді обидва дистрибутива, Ubuntu та Red Hat можуть спільно використовувати розділи /optта /usr/local. (Дякую Рмано!)
  7. /srvі /varособливо корисні як окремі розділи, якщо ви запускаєте сервери або розробляєте веб-сторінки. Для середнього користувача робочого столу ці папки не займають багато місця і не містять нічого корисного для користувача. Для веб-розробника втрата /var/wwwможе означати втрату роботи.

Зрозуміло, що це не єдині каталоги, які можна монтувати як розділи. В Linux можна встановити розділ як будь-яку папку в будь-якому місці. Розділи часто монтуються як підкаталоги /mnt/та /media.

Сподіваюся, це допомагає


+1, приємна відповідь. Ви також можете побачити мою позицію в askubuntu.com/a/379212/16395 та askubuntu.com/a/379019/16395
Rmano

1
Дякую @Rmano, я вже бачив вашу детальну відповідь. Я запозичу у вашої другої відповіді і відредагую свою.
user68186

2
Це нормально (хоча я роблю це, щоб змусити їх пережити повну перевстановку --- новіші інсталятори здатні економити, /homeале ні /usr/local. ) людей, які роблять це.
Рмано,

2
Історична причина наявності / завантаження як окремого розділу - це дні, коли жорсткий диск був більшим, ніж BIOS міг обробити, тому якщо ядро ​​було в недоступній частині диска, воно не могло бути завантажене. Поставивши / boot partiton спочатку на диску, було забезпечено, що BIOS завжди може отримати доступ до ядра, щоб Linux міг завантажуватися.
Thorbjørn Ravn Andersen

1
Також зауважте, що диски можуть бути додані, щоб отримати більше місця, але в Unix вам потрібно десь встановити їх, а не просто призначити літеру диска. Наприклад, якщо диск запустився повністю, був придбаний новий диск для зберігання / дому, і поточний вміст перемістився туди.
Thorbjørn Ravn Andersen

15

Загальні переваги наявності декількох розділів:

  1. Ви можете використовувати різні диски / LUN та мати кращі показники. Це може підвищити продуктивність баз даних, оскільки ви можете мати журнал транзакцій у сховищі та файли даних на іншому. Аналогічно для інтенсивних веб-додатків для дискових вводу / виводу.
  2. Ви можете використовувати різні параметри кріплення (які підвищують рівень безпеки або впливають на продуктивність або стабільність більш детально)
  3. Ви можете мати різні файлові системи
  4. Ви керуєте простором окремо. Таким чином, у вас може бути неприємний додаток, яке заповнює простір, що не впливає на інші програми.
  5. Фрагментація однієї секції не залежить від іншої.
  6. Ви можете самостійно робити знімок, монтувати, змінювати, форматувати, дефрагментувати, контролювати продуктивність цих файлових систем.
  7. Ви можете мати шифрування на певних томах.
  8. Ви можете монтувати обсяги на вимогу.

Загальні недоліки наявності декількох розділів:

  1. Це збільшує накладні витрати адміністрації.
  2. Ви будете мати більше шансів витратити більше місця на диску.
  3. У вас буде більше випадків, пов’язаних із повним завантаженням диска.
  4. Складніше створити послідовний знімок програми, що працює в різних томах.
  5. Він використовує трохи більше ресурсів.
  6. Залежно від типу гучності (ярлик MS-DOS, LVM, btrfs ...), можливо, вам не вдасться легко виділити простір з тома, зменшивши інший. Особливо в Інтернеті.

Ще один спосіб розділити вашу систему - використовувати LVM, btrfs або zfs для /. Виділіть лише мінімальний простір для / і при необхідності створити логічні томи або розширити /. Це залишає вам вибір згодом розподілити за обсягами і має менші витрати на обслуговування.

Тепер конкретні речі:

  • / boot добре бути окремим розділом. Файлова система повинна підтримуватися вашим завантажувачем (зазвичай GRUB).
  • Якщо ви використовуєте EFI / UEFI, це вимога мати системний розділ EFI.
  • / home добре відокремити користувацькі речі від ОС та програм.
  • / tmp можна монтувати за допомогою noexec, nodev, nosuid. Це може бути fs, відображене на пам'ять, як tmpfs.
  • / usr можна встановлювати лише для читання і лише перераховувати rw для оновлень, він може бути віддаленим, як поділка NFS.
  • / srv / opt збереже додаток та дані програми. Якщо у вас є інтенсивне введення / виведення програми, ви можете використовувати кращу дискову підсистему (наприклад, SSD)
  • / usr / local - це за замовчуванням, що використовується програмами, встановленими локально на поточній машині. Наприклад, у вас є все інше на NFS і локальний диск ...

Немає ідеального рішення. Якщо у вас немає чіткої причини, чому створити новий розділ, тоді не робіть цього. Єдиний розділ, який вам може знадобитися створити крім / є / boot.

Для настільних / ноутбуків приємно мати / дім, щоб ви могли перевстановити ОС незалежно від ваших даних.


Будь ласка. Я не погоджуюся з тим, що є доброю ідеєю мати окремий /bootрозділ для середнього користувача робочого столу. Старі ядра не очищаються автоматично, а нові додаються. Тоді це відбувається!
user68186

1
Якщо він заповниться, користувач не зможе встановити новіші ядра, і оновлення не вдасться. Але система буде функціональною.
Mircea Vutcovici

1
З іншого боку, якщо ви використовуєте файлову систему, яка не підтримується GRUB, або шифруєте / розділ, ви повинні використовувати / boot розділ.
Мірча Вутковичі

Домовилися в обох пунктах.
user68186

1
Я відредагував свою відповідь, щоб видалити обов'язкову вимогу / завантажувати розділ.
Mircea Vutcovici

2

Для робочого столу?

Без різниці.

Для сервера?

Управління та резервне копіювання простору.

Якщо у вашій системі є багато користувачів, ви можете зробити додатковий розділ для / home /, тоді користувачі не зможуть виконати, що простір та root (/) не вплинуть.

Ви також можете встановити NFS, SMB або розділ на інші фізичні диски цих папок. Наприклад :

/ dev / sda1 / boot (1 ГБ)

/ dev / sda2 / (60 Гб)

nfs: // IP / папка / домашня сторінка (X TB)

/ dev / sdb1 / var (1 ТБ для / var / www або / var / ftp)

Для ноутбука

/ на m-sata (швидко)

/ var / home / opt / tmp на hdd (повільно)


1
Чи можете ви детальніше зупинитися на останньому пункті? Ще одна публікація радила не мати цих розділів на окремому диску, через створення додаткової точки збою: тепер, якщо будь-який диск вийшов з ладу, ви залишаєтесь без робочої системи. Не кажучи вже про те, що це сповільнить час завантаження, оскільки зараз / чекає, коли розділи HDD змонтуються.
Хашир

2

Відповідь przemo, imo, найбільше вражає практичні моменти. Ось кілька додаткових практичних міркувань:

Корпоративні середовища зазвичай використовують окремі розділи для оренди /, / home, / opt, / var, / boot та додаткових файлових систем (1 на програму чи команду додатків) під / opt. Це перш за все, щоб уникнути запуску системи поза простором через те, що хтось із домашнього каталогу стає масовим (/ home), журналами, які виходять з-під контролю (/ var), або програмами, що споживають тонни місця (/ opt, / opt // тощо) , та / boot, щоб інші розділи могли бути вбудовані в LVM, а також для того, щоб ви могли отримати щось із оболонки відновлення, якщо основний розділ системи з певних причин стане пошкодженим.

Для власного особистого використання, яке не використовується сервером, я просто зберігаю роздільні /, / завантажувальні та / домашні розділи, щоб я міг подвоїти декілька ОС Linux / UNIX та використовувати для них той самий / домашній розділ.

У випадку створення VM в Oracle Virtualbox, VMWare Player / Workstation / Fusion тощо для особистого користування, насправді немає жодної практичної причини для створення декількох розділів з різними точками монтажу за рахунок приємних можливостей спільного використання папок, що надаються принаймні VirtualBox і VMWare Player / Workstation / Fusion. Єдиним винятком може бути / boot з причини оболонки відновлення, наведеної в моєму пункті "корпоративне середовище".


2

Якщо під час оновлення чи капітального оновлення версій щось піде не так, наявність / home на іншому розділі дозволяє завантажуватись з компакт-диска, а потім повністю стерти і перевстановити операційну систему, не втрачаючи ваших даних. Крім того, це робить можливим багаторазове завантаження з різними дистрибутивами Linux, деякі люди люблять оцінювати ці поряд.


Окреме / дім - це одна з моїх мильних коробок, але я все-таки згорів, коли я встановив пікантність в інший розділ лише для тестування на тетраді в одинарному блокноті, і це зіпсувало купу файлів конфігурації в моєму спільному домі / дому, що зробило oneiric дуже нещасним, коли Я перезавантажився.
Джо

0

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

Ви можете обмінятися даними з іншою операційною системою, наприклад Windows, і потрібно використовувати файлову систему, яка підтримує і Linux, і підтримку.

Можливо, у вас є спеціалізовані випадки використання, які дозволяють мати різні налаштування (одного і того ж типу файлової системи, наприклад, розділу EXT4 для безлічі невеликих файлів та розділу EXT4 для кількох великих файлів (таких як віртуальні машини), оптимізувати зберігання та продуктивність для обох випадків використання.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.