Не удается обновить opensuse с 11.4 до 12.1 из-за недостатка места в /var
Я пытаюсь обновить opensuse с версии 11.4 до 12.1. Требуемый размер загрузки составляет более 1,0 ГБ, но моя файловая система /var
составляет точно 1,0 ГБ, поэтому zypper останавливается при загрузке пакетов.rpm из-за нехватки места в /var
,
Какие есть решения этой проблемы?
2 ответа
Увеличить пространство в /var
путем изменения размеров вещей.
Выясните, куда идет загрузка /var/tmp
,/var/cache/
или где-то еще. При обновлении подключите или вставьте символическую ссылку в другое место с достаточным пространством (возможно, вам придется скопировать некоторые файлы).
Если у вас было много места в /srv
и нет места в /var
и загрузки идут в /var/cache
тогда вы можете сделать что-то вроде этого.
lsof -n | grep '/var/cache'
# stop anything using that folder
rsync -va /var/cache /srv/tmp_var_cache/
mount -o bind /srv/tmp_var_cache /var/cache/
# restart anything you stopped.
Извините, хотя идея обоснована (используйте пробел в / srv вместо в /var), предлагаемое решение в основном неверно.
mount --bind
делает каталог альтернативно доступным в новом месте. По сути, это жесткая ссылка для каталога (которая также не должна оставаться в той же файловой системе, как жесткие ссылки). Вы по-прежнему не получаете больше места ни в / var / cache, ни в /srv/tmp_var_cache, поскольку после монтирования --bind это одно и то же.
Вам нужно использовать /srv/tmp_var_cache вместо / var / cache. И вам нужно сделать это только для управления пакетами, то есть /var/cache/zypp, а не для всего / var / cache, и вы можете просто использовать символическую ссылку, а не mount --bind. Поэтому решение таково:
# move content (will take a while)
mv /var/cache/zypp /srv/tmp_var_cache_zypp
# Create pointer
ln -s /srv/tmp_var_cache_zypp /var/cache/zypp
Если вы хотите использовать mount --bind, вам нужно
# move content (as above)
# create mount point
mkdir /var/cache/zypp
# mirror directory
mount --bind /srv/tmp_var_cache_zypp /var/cache/zypp
Вам нужно запускать mount --bind после каждой перезагрузки и перед началом автоматической проверки обновлений, иначе будут адские звонки. Я бы сначала попробовал символическую ссылку...
Конечно, нужно обратить внимание и на то, нужно ли просто изменить расположение кэша пакетов в /etc/zypp/zypp.conf ...