Admin/UpdateLinux: различия между версиями
(Import from wiki.etersoft.ru) |
|||
Строка 1: | Строка 1: | ||
== Обновление Linux-систем == | == Обновление Linux-систем == | ||
Описание того, как перевести систему на следующую версию. | Описание того, как перевести систему на следующую версию. | ||
Строка 14: | Строка 8: | ||
=== Fedora === | === Fedora === | ||
Устанавливаем последние обновления для системы: | Устанавливаем последние обновления для системы: | ||
yum -y update | yum -y update | ||
Если жалко, можно попробовать только yum install rpm yum | Если жалко, можно попробовать только | ||
yum install rpm yum | |||
Чистим кэш yum: yum clean all | Чистим кэш yum: | ||
yum clean all | |||
Устанавливаем пакет fedora-release: | Устанавливаем пакет fedora-release: | ||
rpm -Uvh | rpm -Uvh http://mirror.yandex.ru/fedora/linux/releases/16/Fedora/x86_64/os/Packages/fedora-release-16-1.noarch.rpm | ||
и выполняем | и выполняем | ||
yum update | yum update | ||
* http://fedoraproject.org/wiki/YumUpgradeFaq http://fedoraproject.org/wiki/YumUpgradeFaq | |||
Обновление 14->15 | Обновление 14->15 | ||
rpm --import | rpm --import https://fedoraproject.org/static/069C8460.txt | ||
yum update yum | |||
yum update yum | yum clean all | ||
yum --releasever=15 --disableplugin=presto distro-sync | |||
yum clean all | |||
yum --releasever=15 --disableplugin=presto distro-sync | |||
* http://fedoraproject.org/wiki/Upgrading_Fedora_using_yum | |||
Установка пакетов для разработки: | Установка пакетов для разработки: | ||
yum groupinstall 'Development Tools' | |||
yum groupinstall 'Development Tools' | |||
Строка 65: | Строка 49: | ||
=== [http://wiki.etersoft.ru/CentOS CentOS] === | === [http://wiki.etersoft.ru/CentOS CentOS] === | ||
Для обновления [[CentOS]] 5.x до следующего релиза, достаточно выполнить команду "yum update", предварительно проверить какие пакеты подлежат обновлению можно через "yum list updates", а убедится, что обновление прошло успешно - "rpm -q centos-release". | |||
Для обновления [ | |||
=== Mandriva === | === Mandriva === | ||
Удалить старые репозитории: | Удалить старые репозитории: | ||
urpmi.removemedia -av | |||
urpmi.removemedia -av | |||
Установить новые: | Установить новые: | ||
urpmi.addmedia --distrib <div style="display: inline; color: red;">URL</div> | |||
urpmi.addmedia --distrib <div style="display: inline; color: red;">URL</div> | |||
Например, | Например, | ||
urpmi.addmedia --distrib [http://mirror.yandex.ru/mandriva/devel/2010.2/i586/ http://mirror.yandex.ru/mandriva/devel/2010.2/i586/] | |||
urpmi.addmedia --distrib [http://mirror.yandex.ru/mandriva/devel/2010.2/i586/ http://mirror.yandex.ru/mandriva/devel/2010.2/i586/] | |||
Обновиться: | Обновиться: | ||
urpmi --auto-update --replacefiles | |||
urpmi --auto-update --replacefiles | |||
Строка 96: | Строка 72: | ||
Сначала смотрим все репозитории командой | Сначала смотрим все репозитории командой | ||
zypper sl | |||
zypper sl | |||
Потом надо удалить все репозитории командой | Потом надо удалить все репозитории командой | ||
zypper rr <номер_репозитория> | |||
zypper rr < | |||
Добавляем репозиторий от 11.1 ветки | |||
zypper ar [http://mirror.yandex.ru/opensuse/distribution/11.1/repo/oss http://mirror.yandex.ru/opensuse/distribution/11.1/repo/oss] 11.1oss | |||
Теперь у нас есть репозиторий с именем 11.1 | |||
Дальше обновляем репозитории командой | |||
zypper ref | |||
Сначала следует обновить rpm | Сначала следует обновить rpm | ||
zypper in rpm | |||
zypper in rpm | |||
также необходимо обновить zypper | также необходимо обновить zypper | ||
zypper in zypper | |||
zypper in zypper | |||
Теперь запускаем команду | Теперь запускаем команду | ||
zypper dist-upgrade | |||
zypper dist-upgrade | |||
и система обновляется. | и система обновляется. | ||
Строка 146: | Строка 105: | ||
=== PCLinux === | === PCLinux === | ||
В /etc/apt/sources.list изменить номер релиза, проверить на зеркале наличие соответствующих папок updates, main и т.д. | В /etc/apt/sources.list изменить номер релиза, проверить на зеркале наличие соответствующих папок updates, main и т.д. | ||
#apt-get update | # apt-get update | ||
# apt-get upgrade | |||
#apt-get upgrade | |||
=== Arch Linux === | === Arch Linux === | ||
Зеркала настраиваются в /etc/pacman | Зеркала настраиваются в /etc/pacman | ||
Для обновления системы запускаем pacman -Syu | Для обновления системы запускаем pacman -Syu | ||
=== Ubuntu === | === Ubuntu === | ||
Строка 172: | Строка 122: | ||
Команда для создания chroot: | Команда для создания chroot: | ||
# debootstrap --variant=buildd --arch i386|amd64 oneiric /path/to/chroot [http://mirror.url.com/ubuntu/ http://mirror.url.com/ubuntu/] | |||
# debootstrap --variant=buildd --arch i386|amd64 oneiric /path/to/chroot [http://mirror.url.com/ubuntu/ http://mirror.url.com/ubuntu/] | |||
Мануал взят с [https://help.ubuntu.com/community/BasicChroot https://help.ubuntu.com/community/BasicChroot] | Мануал взят с [https://help.ubuntu.com/community/BasicChroot https://help.ubuntu.com/community/BasicChroot] | ||
Строка 185: | Строка 132: | ||
/com/ubuntu/upstart: Connection refused" при установке новых пакетов вылечена: | /com/ubuntu/upstart: Connection refused" при установке новых пакетов вылечена: | ||
# dpkg-divert --local --rename --add /sbin/initctl | # dpkg-divert --local --rename --add /sbin/initctl | ||
Adding 'local diversion of /sbin/initctl to /sbin/initctl.distrib' | |||
# ln -s /bin/true /sbin/initctl | |||
=== Slackware === | |||
# epm repolist | |||
Смотрим, какой репозиторий указан и в каком файле. Исправляем путь до новой версии. | |||
# epm update | |||
# epm upgrade | |||
* ftp://ftp.slackware.com/pub/slackware/slackware-current/UPGRADE.TXT | |||
=== [http://wiki.etersoft.ru/FreeBSD FreeBSD] === | === [http://wiki.etersoft.ru/FreeBSD FreeBSD] === | ||
Строка 206: | Строка 159: | ||
Качаем исходники для этого релиза: | Качаем исходники для этого релиза: | ||
cvsup -g -L 2 /etc/supfile | |||
cvsup -g -L 2 /etc/supfile | |||
Обновляемся: | Обновляемся: | ||
cd /usr/src | |||
cd /usr/src | make buildworld | ||
make buildkernel KERNCONF=YOUR_KERNEL_HERE (YOUR_KERNEL_HERE - название ядра которое лежит в папке /usr/src/sys/i386/conf. Но заметьте, вы путь не указываете, а указываете только имя файла. Советую переименовать файл, чтобы скомпилилось новое ядро, а не то что было до обновления системы) | |||
make buildworld | make installkernel KERNCONF=YOUR_KERNEL_HERE | ||
reboot | |||
make buildkernel KERNCONF=YOUR_KERNEL_HERE (YOUR_KERNEL_HERE - название ядра которое лежит в папке /usr/src/sys/i386/conf. Но заметьте, вы путь не указываете, а указываете только имя файла. Советую переименовать файл, чтобы скомпилилось новое ядро, а не то что было до обновления системы) | mergemaster -p | ||
make installworld | |||
make installkernel KERNCONF=YOUR_KERNEL_HERE | mergemaster | ||
reboot | |||
reboot | |||
mergemaster -p | |||
make installworld | |||
mergemaster | |||
reboot | |||
Строка 235: | Строка 177: | ||
=== Монтирование FTP разделов === | === Монтирование FTP разделов === | ||
Для облегчения жизни при установке новой системы (дабы не скачивать iso'шник) можно смонтировать ftp-сервер(например ftp.mirror.yandex.ru) на машине и подсунуть | Для облегчения жизни при установке новой системы (дабы не скачивать iso'шник) можно смонтировать ftp-сервер (например ftp.mirror.yandex.ru) на машине и подсунуть VirtualBox'у iso'шник лежащий на сервере. | ||
Все, что необходимо - это маленькая программка [ | Все, что необходимо - это маленькая программка [[CurlFtpFS]]. | ||
Для установки: | Для установки: | ||
$ sudo apt-get install curlftpfs | |||
:$ sudo | Для монтирования FTP-раздела, например ftp://mirror.yandex.ru, в каталог /mnt/ftp используется команда: | ||
$ sudo curlftpfs ftp://mirror.yandex.ru /mnt/ftp -o allow_other | |||
(параметр -o allow_other позволяет читать содержимое смонтированного каталога всем пользователям) | |||
[[Category:admin]] | |||
Версия 13:01, 6 ноября 2012
Обновление Linux-систем
Описание того, как перевести систему на следующую версию.
По возможности используем зеркало на http://mirror.yandex.ru.
Fedora
Устанавливаем последние обновления для системы:
yum -y update
Если жалко, можно попробовать только
yum install rpm yum
Чистим кэш yum:
yum clean all
Устанавливаем пакет fedora-release:
rpm -Uvh http://mirror.yandex.ru/fedora/linux/releases/16/Fedora/x86_64/os/Packages/fedora-release-16-1.noarch.rpm
и выполняем
yum update
Обновление 14->15
rpm --import https://fedoraproject.org/static/069C8460.txt yum update yum yum clean all yum --releasever=15 --disableplugin=presto distro-sync
Установка пакетов для разработки:
yum groupinstall 'Development Tools'
CentOS
Для обновления CentOS 5.x до следующего релиза, достаточно выполнить команду "yum update", предварительно проверить какие пакеты подлежат обновлению можно через "yum list updates", а убедится, что обновление прошло успешно - "rpm -q centos-release".
Mandriva
Удалить старые репозитории:
urpmi.removemedia -av
Установить новые:
urpmi.addmedia --distrib
Например,
urpmi.addmedia --distrib http://mirror.yandex.ru/mandriva/devel/2010.2/i586/
Обновиться:
urpmi --auto-update --replacefiles
SUSE
Сначала смотрим все репозитории командой
zypper sl
Потом надо удалить все репозитории командой
zypper rr <номер_репозитория>
Добавляем репозиторий от 11.1 ветки
zypper ar http://mirror.yandex.ru/opensuse/distribution/11.1/repo/oss 11.1oss
Теперь у нас есть репозиторий с именем 11.1
Дальше обновляем репозитории командой
zypper ref
Сначала следует обновить rpm
zypper in rpm
также необходимо обновить zypper
zypper in zypper
Теперь запускаем команду
zypper dist-upgrade
и система обновляется.
Если возникают проблемы с /var/lib/zypp/cache/.../DATA/descr/packages, необходимо создать этот файл.
PCLinux
В /etc/apt/sources.list изменить номер релиза, проверить на зеркале наличие соответствующих папок updates, main и т.д.
# apt-get update # apt-get upgrade
Arch Linux
Зеркала настраиваются в /etc/pacman
Для обновления системы запускаем pacman -Syu
Ubuntu
Для создания chroot использовал пакет debootstrap (предварительно собрав его).
Команда для создания chroot:
# debootstrap --variant=buildd --arch i386|amd64 oneiric /path/to/chroot http://mirror.url.com/ubuntu/
Мануал взят с https://help.ubuntu.com/community/BasicChroot
Проблема с "start: Unable to connect to Upstart: Failed to connect to socket
/com/ubuntu/upstart: Connection refused" при установке новых пакетов вылечена:
# dpkg-divert --local --rename --add /sbin/initctl Adding 'local diversion of /sbin/initctl to /sbin/initctl.distrib' # ln -s /bin/true /sbin/initctl
Slackware
# epm repolist
Смотрим, какой репозиторий указан и в каком файле. Исправляем путь до новой версии.
# epm update # epm upgrade
FreeBSD
Обновление через cvsup:
Указываем в /etc/supfile (можно скопировать standard-supfile из /usr/share/examples/cvsup/)
- default tag=RELENG_7_2
7_2 - релиз, до которого планируем обновляться.
Качаем исходники для этого релиза:
cvsup -g -L 2 /etc/supfile
Обновляемся:
cd /usr/src make buildworld make buildkernel KERNCONF=YOUR_KERNEL_HERE (YOUR_KERNEL_HERE - название ядра которое лежит в папке /usr/src/sys/i386/conf. Но заметьте, вы путь не указываете, а указываете только имя файла. Советую переименовать файл, чтобы скомпилилось новое ядро, а не то что было до обновления системы) make installkernel KERNCONF=YOUR_KERNEL_HERE reboot mergemaster -p make installworld mergemaster reboot
Монтирование FTP разделов
Для облегчения жизни при установке новой системы (дабы не скачивать iso'шник) можно смонтировать ftp-сервер (например ftp.mirror.yandex.ru) на машине и подсунуть VirtualBox'у iso'шник лежащий на сервере.
Все, что необходимо - это маленькая программка CurlFtpFS.
Для установки:
$ sudo apt-get install curlftpfs
Для монтирования FTP-раздела, например ftp://mirror.yandex.ru, в каталог /mnt/ftp используется команда:
$ sudo curlftpfs ftp://mirror.yandex.ru /mnt/ftp -o allow_other
(параметр -o allow_other позволяет читать содержимое смонтированного каталога всем пользователям)