Admin/UpdateLinux: различия между версиями

Материал из Etersoft wiki
Перейти к навигацииПерейти к поиску
(Import from wiki.etersoft.ru)
 
Строка 1: Строка 1:
[[Category:admin]]
{{MovedFromWikiEterSoftRu|admin/UpdateLinux}}
== Обновление 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 [http://mirror.yandex.ru/fedora/linux/releases/16/Fedora/x86_64/os/Packages/fedora-release-16-1.noarch.rpm http://mirror.yandex.ru/fedora/linux/releases/16/Fedora/x86_64/os/Packages/fedora-release-16-1.noarch.rpm]
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]


* http://fedoraproject.org/wiki/YumUpgradeFaq http://fedoraproject.org/wiki/YumUpgradeFaq




Обновление 14->15
Обновление 14->15


rpm --import [https://fedoraproject.org/static/069C8460.txt https://fedoraproject.org/static/069C8460.txt]
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 http://fedoraproject.org/wiki/Upgrading_Fedora_using_yum]
 


* 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".
 
Для обновления [http://wiki.etersoft.ru/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




Добавляем репозиторий от 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




Дальше обновляем репозитории командой
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


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) на машине и подсунуть [http://wiki.etersoft.ru/VirtualBox'у VirtualBox'у] iso'шник лежащий на сервере.
Для облегчения жизни при установке новой системы (дабы не скачивать iso'шник) можно смонтировать ftp-сервер (например ftp.mirror.yandex.ru) на машине и подсунуть VirtualBox'у iso'шник лежащий на сервере.


Все, что необходимо - это маленькая программка [http://wiki.etersoft.ru/CurlFtpFS CurlFtpFS].
Все, что необходимо - это маленькая программка [[CurlFtpFS]].


Для установки:
Для установки:
$ sudo apt-get install curlftpfs


:$ sudo apt-get install curlftpfs
Для монтирования FTP-раздела, например ftp://mirror.yandex.ru, в каталог /mnt/ftp используется команда:
$ sudo curlftpfs ftp://mirror.yandex.ru /mnt/ftp -o allow_other


Для монтирования FTP-раздела, например [ftp://mirror.yandex.ru ftp://mirror.yandex.ru], в каталог /mnt/ftp используется команда:
(параметр -o allow_other позволяет читать содержимое смонтированного каталога всем пользователям)


:$ sudo curlftpfs [ftp://mirror.yandex.ru ftp://mirror.yandex.ru] /mnt/ftp -o allow_other
[[Category:admin]]
 
(параметр -o allow_other позволяет читать содержимое смонтированного каталога всем пользователям)

Версия 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

URL

Например,

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 позволяет читать содержимое смонтированного каталога всем пользователям)