Проблемы при установке пакетов в примонтированном образе
Есть образ флеш карты flash.img , которая содержит в себе дистрибутив lenny.
Я хочу обновить на ней дистрибутив до sid (или просто установить много других пакетов).
Я монтирую образ в каталог 'flash':
mount -o loop,offset=16384 -t ext2 flash.img flash/
и вхожу в этот каталог под окружением chroot:
LC_ALL=C chroot flash/ /bin/bash
Затем я редактирую файл с репозиториями 'nano /etc/apt/source.list' и заменяю там
'lenny' на 'sid'.
После я получаю список доступных пакетов: 'aptitude update'.
Затем запускаю процесс обновления дистрибутива 'aptitude upgrade -y',
и все необходимые пакеты скачиваются и настраиваются.
После завершения процесс я выхожу из chroot.
Теперь у меня есть образ флешки с sid. Теперь самое интересное.
Когда я пытаюсь отмантировать образ, то получаю предупреждение:
#umount flash/
umount: /home/debuser/work/flash: device is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
Я ищу по процессам и вижу что пара процессов до сих пор привязана к этому образу:
#fuser -m /home/debuser/work/flash
/home/debuser/work/flash: 2832rce 8811rce
Если я сделаю:
#fuser -m -k /home/debuser/work/flash
то эти процессы убьются. При этом, если я выполняю эти действия на сервере, может сломаться ssh сервис,
и я больше не могу попасть на этот сервер. Иногда сервер вообще перестает работать до полной перезагрузки.
Я пытался использовать 'fakeroot' но ничего не получилось.
Можно ли как-то избежать таких последствий? Чтобы установка и работа с образом происходила изолированно
от основной системы? Как вообще правильно делать в такой ситуации?
Reply to: