Повільне завантаження - "запущене завдання запуску для dev-disk-by ..."


108

Я не пам'ятаю, коли проблема почала виникати, але, ймовірно, коли я перемістив своє зображення VMWare Ubuntu на зовнішній SSD, щоб я міг використовувати ОС на будь-якому моєму ПК. У Google не так багато посилань на цю проблему, але про них, як видається, йдеться fstab. Наприклад, повільне завантаження - що таке "Запуск завдання працює для dev-disk-by ..."? - Форум OpenSUSE .

Знімок екрана

Згадує про необхідність видалити розділ swap та створити його заново.

Я можу спробувати це зробити з Gparted, але моя головна стурбованість - це втрата поточного налаштування в Ubuntu, оскільки я не зовсім впевнений, що станеться, якщо я зіпсуюся з свопом, як запропоновано в потоці. Хтось може допомогти?


Ви можете клонувати свій SSD, а потім можете вибити себе :) (Спробуйте CloneZilla для цього)
Grammargeek

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

1
Я закінчив це виправити. Я не думаю, що коли-небудь мінявся обмін, якщо я поїду Gparted. Я закінчив створити один і змінити запис у fstab. Це спрацювало і не більше 90 секунд завантаження
cpd1

1
якщо ви вирішили власну проблему, зробіть власну відповідь і натисніть прапорець, щоб позначити її як
вирішену

1
Має сенс ... Я додав це
cpd1

Відповіді:


115

Якщо ви отримаєте "стартову роботу, запущену dev-disk-by .." з подальшим затримкою на 90 секунд під час кожного завантаження, виконайте наступні дії:

  1. Встановіть gparted за допомогою Центру програмного забезпечення
  2. Відкрийте gparted і подивіться, які розділи зараз використовує Ubuntu
  3. Відредагуйте файл fstab за допомогою рядка нижче.

    sudo -H gedit /etc/fstab
    
  4. Знайдіть пристрій, яким ви зараз не користуєтесь

  5. Вставте а #та пробіл на початку цього рядка, прокоментуйте його.

  6. Скиньте, сподіваємось, це працює для вас!


3
Покрокові інструкції допоможіть усім! Дякую!
Джон Холл

Я позначив твою як відповідь, оскільки ти дав кроки
cpd1

9
+1 ... для тих, хто не може його знайти /etc/fstab, ви також можете перевірити це /etc/crypttab- це був мій випадок.
Гжегож

7
Якщо це ідентифікатор блоку, який змінився, замість того, щоб коментувати його, я вважаю за краще виправити ідентифікатор пристрою. Використовуйте lsblk -f, щоб побачити, який пристрій асоціюється з тим, який ідентифікатор, і замініть його.
user1708042

3
Що для мене працювало - це змінити крок 4 на: "Скопіюйте UUID, знайдений у gparted для пристрою, який викликає затримку під час завантаження", а крок 5 - на "Замініть його там, де пристрій знайдено у файлі fstab". Іноді, коли ви змінюєте переміщення розділів, UUID змінюються, і саме це викликає проблему. Вам просто потрібно виправити новий UUID для зміненого розділу.
m4l490n

35

Схоже, проблема виникла через те, що хоча fstab мав запис для своп, насправді такого не було. Я використовував GParted для зміни розміру розділу та створив новий Swap. Потім я скопіював UUID у файл fstab ...

  1. Зараз у мене є своп
  2. І завантаження знизиться протягом декількох секунд проти 90+ секунд

5
Я змінив розмір свого основного розділу (видалення / відтворення свопу) і наткнувся на цю проблему. Я використовував 'sudo blkid' для перерахування пристроїв UUID, а потім використовував новий UUID в / etc / fstab.
Бред Госс

32

У мене була така ж проблема після зміни розміру мого основного розділу на моєму VM, оскільки gparted live змусив мене видалити & повторно ініціалізувати мій своп, щоб це зробити. Це призвело до встановлення нового UUID, який не відповідав файлу fstab.

Щоб уникнути проблеми, /etc/fstabви можете будь-яке

  • Замініть підкачку UUID на новий (запустіть, sudo blkidщоб знайти його) після зміни розміру основного розділу.

  • Або прокоментуйте розділ swap до (або після) зміни розміру основного розділу.

Я рекомендував би попередній, оскільки це спосіб налаштування ОС.


Допомагав і мені після переміщення мого розділу swap
po.pe

17

У моєму випадку я раніше використовував зашифрований своп, і згадувалося завдання запуску /dev/mapper/cryptswap1. Щоб вирішити проблему, мені довелося також видалити файл /etc/crypttab, крім кроків, описаних у відповіді Вільяма Макдональда.


6

Під час зміни розміру або видалення розділів з gparted часто доводиться створювати новий розділ swap.

Потім необхідно активувати своп через gparted після його створення (є команда "Активувати своп").

Крім того, вам доведеться скопіювати новий UUID в / etc / fstab, щоб встановити його в іншому випадку під час завантаження ОС намагатиметься знайти його, але марно, оскільки файл fstab містить UUID, що посилається на старий своп. Gparted доставляє інформацію для UUID, але ви можете легко запустити в терміналі:

sudo blkid

щоб знайти його.


4

У мене була така ж проблема при завантаженні.

У моєму /etc/fstabфайлі мої розділи, де визначено як /dev/sda1, /dev/sda2і т. Д., Але під час завантаження кілька разів з'являлося повідомлення " Запускається завдання для dev-sdx " ("x" визначає, на який підрозділ чи розділ вплинуло).

Щоб вирішити це, я змінив значення /dev/sdxUUID розділу. Щоб побачити UUID, з запуску терміналу lsblk -f. Потім скопіюйте UUID зачіпаючого розділу та запишіть його у /etc/fstabфайл, замінивши /dev/sdaxнаступним чином: /dev/sda1зміни в UUID=xxxxxxxxxxxxxxxxxx.

Це працювало для мене, сподіваюся, ця інформація корисна.


Так. Це саме проблема, яку вирішує UUID. Система змонтує будь-який розділ із цим ідентифікатором, незалежно від того, на якому пристрої він знаходиться чи де розташований розділ. З недоліком, що вам потрібно змінювати UUID кожного разу, коли ви знищуєте / створюєте розділ або встановлюєте новий диск. А дублювання розділу (gparted copy / paste) створить копію з тим самим UUID, що може спричинити проблеми, якщо оригінал та копія одночасно є онлайновими. Для більшості людей це нормально, але потрібно пам’ятати про це при клонуванні / заміні накопичувачів.
Девід К.

3

Моє завантаження сповільнилося, тому що я поміняв свій диск і UUID не збігався. Це спричинило сканування Ubuntu під час завантаження.

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

# <file system> <mount point>   <type>  <options>       <dump>  <pass>
/dev/sda1 /               ext4    errors=remount-ro 0       1
/dev/sda2 none            swap    sw              0       0

Як ця пропозиція прискорить завантаження? Будь-яка довідка?
Мостафа Ахангарха

Я відповідав на його питання про помилку, що спричинило повільне завантаження. Я зрозумів свою відповідь.
Dan

1
Так, встановлення за назвою пристрою дозволяє уникнути проблеми, але це також створює проблему, яку мали вирішити UUID (та мітки гучності) - приєднання диска до різних місць (наприклад, від одного інтерфейсу SATA до іншого) змінить назву пристрою, ламаючи ваші кріплення. Вам потрібно вирішити, з якою проблемою легше жити, але обов'язково пам’ятайте про своє рішення, оскільки це може бути дуже засмучуючим, коли виникає проблема, тому що ви забули.
Девід К.

3

Основна ситуація:

Вже детально відповіли ... (Вам потрібно перевірити UUID під цими файлами)

/etc/crypttab 
/etc/fstab
/etc/grub.d/40_custom 
/boot/grub2/grub.cfg

Альтернативна ситуація I - Удев:

Це може бути викликано udev, якщо у вас є сценарій правила,/etc/udev/rules.d/ який не призначений для запуску під час завантаження; якщо сценарій не вдасться, він зробить цей крок fstab продовженням назавжди, просто відредагуйте свій сценарій відповідно до ваших потреб або видаліть його.

Альтернативна ситуація II - Криптований Dev:

Зашифровані розділи можуть бути заплутаними, оскільки основний розділ має UUID, а відображений Розшифрований має інший UUID, відмінний від основного, для одного розділу вони повинні бути визначені в іншому місці etc/crypttabта/etc/fstab

# lsblk -o name,uuid,mountpoint
├─sda2                         727fa348-8804-4773-ae3d-f3e176d12dac
│ └─sda2_crypt (dm-0)          P1kvJI-5iqv-s9gJ-8V2H-2EEO-q4aK-sx4aDi

Реальний UUID потрібно вказати в etc/crypttab

# cat /etc/crypttab
sda2_crypt  UUID=727fa348-8804-4773-ae3d-f3e176d12dac  none  luks

Віртуальний UUID повинен бути на /etc/fstab

# cat /etc/fstab
UUID=P1kvJI-5iqv-s9gJ-8V2H-2EEO-q4aK-sx4aDi / ext4 defaults,errors=remount-ro 0 1

Альтернативна ситуація III - Ghost Dev:

Пристрій, встановлений для встановлення під час завантаження, але його немає в системі або від'єднати, як привід usb.

Оформити замовлення справжніх підключених пристроїв із lsblk -o name,uuid,mountpointта відредагувати, /etc/fstabщоб зберегти лише підключений пристрій АБО не залишати там непоєднаний пристрій, але налаштувати їх на ігнорування під час завантаження за допомогою параметра noautoта встановити такий рядок

UUID=BLA-BLA-BLA /mount ext4 option,noauto,option 0 0

Перевірка системних журналів

journalctl -ab 

systemd-analyze blame

systemd-analyze critical-chain

systemctl status dev-mapper-crypt_sda2.device

systemctl status systemd-udev-settle.service

1
Дякую, це дуже хороша відповідь, і її слід прийняти. Більшість інших відповідей тут небезпечно помиляються, і навіть якщо вони обходять проблему, вони вводять інші проблеми, які можуть бути менш очевидними, наприклад, видалення шифрувального пристрою.
Вакар Лім

2

На додаток до перевірки /etc/fstabабо /etc/crypttabяк зазначено в інших відповідях, також перевірте наявність UUID, що надходять із параметрів ядра в /etc/default/grub. Якийсь час мене дуже бентежила система, яка мала ідеально кромулентність /etc/fstabлише виявити resume=…параметр ядра в конфігурації GRUB.


1
Це допомогло мені вирішити питання. Мій / etc / fstab був добре. Потім, крім того, /etc/default/grubмені також довелося внести зміни /boot/efi/EFI/fedora/grub.cfg. Параметр linux "resume = UUID = ..." застарілий після того, як я вручну змінив розділ swap.
Stphane

1

Ви можете пропустити очікування та перейти на екран входу безпосередньо, використовуючи " Ctrl+ c", а потім працювати над рішенням. Іноді це триватиме назавжди, якщо ні.


Це буквально Ctrl, ключ плюс і c?
муру

Так, саме так :)
Рамон Суарес

0

Я знаю, що це старе, але я натрапив на цю проблему, те саме повідомлення про помилку, клонуючи інсталяцію за допомогою rsync. не маючи помилок у fstab, проблема була вирішена після оновлення initrdfs вручну. щоб досягти цього,

  1. завантажте машину в робочу установку (багатозавантажена машина, livecd в іншому випадку)

  2. змонтуйте кореневий розділ системи із проблемою

  3. mount dev, sys і proc як для робочого chroot

  4. chroot в корінь файлової системи

  5. виконати mkinitrd

  6. вихід chroot та перезавантаження.

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