Ледачий набір або Відключення зайнятого диска в Linux


19

Я прочитав, що можна "налаштувати" диск, який інакше зайнятий, використовуючи опцію "ледачий". Сторінка сторінки має про це сказати:

umount - відключення файлових систем

-Линий відключити. Відключіть файлову систему від ієрархії файлової системи зараз та очистіть усі посилання на файлову систему, як тільки вона більше не зайнята. Ця опція дозволяє відключити "зайняту" файлову систему. (Потрібно ядро ​​2.4.11 або новішої версії.)

Але який би був сенс у цьому? Я розглядав, чому ми взагалі демонтуємо розділи:

  1. Щоб видалити обладнання
  2. Виконувати операції з файловою системою, які було б небезпечно робити під час встановлення

В будь-якому з цих випадків, все "ледаче" відключення обслуговує IMHO, це ускладнює визначення, чи диск дійсно демонтований, і ви можете реально продовжувати ці дії. umount -lЗдається, єдиним додатком для недосвідчених користувачів є "відчуття", ніби вони досягли чогось, чого не зробили.

Чому б ти використовував ледачий демонтаж?

Відповіді:


10

Через те, що ти лінивий - хочеш відключити їх після того, як будуть виконані операції з диском.

Ось імовірний сценарій:

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


Якщо ви лінувалися, напевно, ви хочете заощадити БІЛЬШИЙ час, не використовуючи аргумент, тому що, повернувшись, ви зрозуміли, що можете його негайно демонтувати зараз, коли резервна копія закінчена? Або зробити демонтаж приводної частини операцій після резервного копіювання?
de0202392

Подумайте про це так: диск більше не зайнятий - відключіть його зараз. Він більше не змонтований, тому більше нічого не може написати на нього. Це "роби це, коли зможеш", а не помилятися.
Брам


5

Це фактично реалізовано для отримання більше часу для виконання подальших завдань з адміністративних завдань.

Якщо подальші завдання, незалежні від цього, чекають в конвеєрі, то ви можете ліниво-відключити і продовжувати роботу з іншими в партії.

Приклад : Завдання 1 і завдання 2 - це два адміністративні завдання, заплановані назад до спини.

Завдання 1 Щоденне резервне копіювання

Це копіює велику кількість файлів з розділу проекту на резервний розділ, скажімо, / mnt / backupProj, який буде встановлений на льоту та відключений в кінці цього завдання. На копіювання йде значна кількість часу.

Завдання 2 Оновлення переглядів SQL

Виконує серію оновлень перегляду баз даних на спеціальному сервері.

Завдання 2, очевидно, повністю не залежить від завдання 1, тому ми можемо ліниво-відключити / mnt / backupProj, не чекаючи завершення завдання резервного копіювання.


1
Чи можете ви навести приклад? У якій ситуації це було б "виграш / заощадження часу"?
de0202392

4

Я використовую лінивий umount у випадках, коли він, очевидно, застряг з різних причин (наприклад, сервер nfs вниз), а також тоді, коли мені потрібно побачити оригінальний вміст каталогу, який був змонтований монтом. В обох випадках кріплення зайняте. Я думаю, що є й інші випадки, але ці 2 є найпоширенішими причинами, коли я використовував цей варіант.


Рекомендує --forceдля випадку NFS.
Том Хейл

3

Розглянемо базування прив'язки, як ви могли бачити під час роботи з chroot:

mount --rbind /proc /mnt/proc
# do stuff
umount /mnt/proc

Якщо у вас у вашій системі демон, який постійно допитується /proc(я дивлюся на вас ksysguardd), ви не зможете umount /mnt/proc. Ледачий дозволить тобі umountв цьому випадку.


Чому б не використати --forceтут замість цього?
Том Хейл

2

USB-накопичувачі іноді затримуються через збій обладнання. Навіть якщо фізично підключити накопичувач, ви отримаєте інше ім’я пристрою. Стару назву пристрою неможливо нормально відключити. сума-змусив мертвий вхід зникнути.


1

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

За допомогою ледачого відключення, ви можете спокійно відключити гучність, поки програмне забезпечення все ще працює, встановити інший том на цю ж точку монтажу та надати команду програмному забезпеченню для повторного відкриття файлів.

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

Перефразовуючи сторінку сторінки, це означає, що якщо в томі є відкриті файли, коли він ліниво відключений, насправді він залишається встановленим, але просто недоступним через файлову систему та є справді відключеним лише тоді, коли останній відкритий файл закритий.


1
Завдяки це звучить як корисна програма. Буде чи lsofпоказувати відкриті файли на старому монтування? Також мені цікаво, як би вона розмежувала відкриті файли від старого та нового?
de020239

0

Я використовую encfs для шифрування частини моїх конфіденційних даних.

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

Якщо лінь відкрутити його, папка відходить від моєї ієрархії та прихована. А коли фоновий процес закінчується, його успішно відключають.

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