Пытаюсь обновить opensuse с версии 11.4 до 12.1. Требуемый размер загрузки более 1,0 ГБ, но моя файловая система /var
составляет ровно 1,0 ГБ, поэтому zypper останавливается при загрузке пакетов .rpm из-за нехватки места в /var
.
Какие есть решения этой проблемы?
Увеличьте пространство в /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 с этим, поскольку они остаются такими же после mount --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 ...