Переустановка пакетов с помощью yum
Содержание:
1. LVM и fsck;
2. Проверка и восстановление RPM-пакетов;
3.Переустановка пакетов с помощью yum (Вы читаете данный раздел).
Если восстановление одного или двух пакетов не вызовет сложностей, то в случае необходимости в переустановке графической подсистемы или рабочего окружения это приведет к выводу очень большого списка зависимостей. В таких ситуациях весь процесс лучше перепоручить команде yum. Аналогом команды:
будет:
Переустановить пакет и необходимые зависимости можно командой:
Многие пакеты сгруппированы по группам, список которых выводится так:
Другие команды для работы с группами - это groupinstall, groupupdate и groupremove.
Каким образом происходит обновлений конфигурационных файлов (*.conf в директории /etc), содержание которых отличается от исходного и предустановленного?
> При удалении пакетов программ с помощью rpm или yum, измененные конфигурационные файлы будут сохранены в виде имя_файла.conf.rpmsave.
> При переустановке пакетов командой «yum reinstall» или установке пакета командой «rpm -i --force» новый базовый конфигурационный файл, поставляемый с данным пакетом, будет переименован в /etc/имя_файла.conf.rpmnew, а старый .conf-файл останется нетронутым.
При проверке программного обеспечения с помощью rpm -Va может появиться очень большой список ошибок:
Определив имена пакетов, к которым принадлежат проблемные или отсутствующие файлы, и переустановив их с помощью yum (включая зависимые компоненты), можно восстановить систему. Для сохранения результатов работы проверки с помощью rpm можно воспользоваться стандартным перенаправлением вывода ошибок для сохранения в файл:
В errors.txt запишется информация о проблемных и неизмененных файлах, а также отсутствующих ссылках и компонентах. Например, он может выглядеть так:
Чтобы определить RPM-пакеты, в которых поставляются нужные файлы, достаточно просто отредактировать errors.txt, приведя его к такому виду:
Затем переименовать и запустить, перенаправив вывод в packages.txt:
Получим следующий packages.txt:
Осталось скачать все необходимые пакеты и установить их с помощью «rpm -l» (ключ используется для получения списка из файла):
Во время работы этой команды могут появиться ошибки, сообщения о невозможности выполнения операции, т.к. RPM не умеет автоматически определять зависимости. В таком случае недостающие пакеты придется выявлять самостоятельно. Но удобнее будет воспользоваться командой «yum reinstall имя_пакета.rpm».
Yum вычисляет зависимости, загружает их из репозитория ПО и автоматически переустанавливает:
После переустановки пакетов с помощью yum повторите команду «rpm -Va», чтобы убедиться, что все проблемные пакеты были восстановлены. При необходимости все эти операции придётся повторить.
Описанные в статье рецепты призваны помочь с восстановлением системы в случае отсутствия серьезных проблем с ПО или железом. Напоследок пожелаю вам не забывать про бэкапы, чтобы остановки сервера происходили только при профилактических работах.
Вы вебмастер, а не серверный программист, поэтому Вас интересует гораздо больше, не работа с утилитой yum, а методы заработка на сайтах. И тут (http://www.webzarabotok.org/)Вы найдете самую исчерпывающую информацию по данной теме. В частности, узнаете, как можно максимально эффективно монетизировать свой интернет-ресурс без вреда для него!
1. LVM и fsck;
2. Проверка и восстановление RPM-пакетов;
3.
Если восстановление одного или двух пакетов не вызовет сложностей, то в случае необходимости в переустановке графической подсистемы или рабочего окружения это приведет к выводу очень большого списка зависимостей. В таких ситуациях весь процесс лучше перепоручить команде yum. Аналогом команды:
rpm -qf /путь/к_файлу
будет:
yum provides /путь/к_файлу
Переустановить пакет и необходимые зависимости можно командой:
yum reinstall имя_пакета.rpm
Многие пакеты сгруппированы по группам, список которых выводится так:
# yum grouplist
Другие команды для работы с группами - это groupinstall, groupupdate и groupremove.
Каким образом происходит обновлений конфигурационных файлов (*.conf в директории /etc), содержание которых отличается от исходного и предустановленного?
> При удалении пакетов программ с помощью rpm или yum, измененные конфигурационные файлы будут сохранены в виде имя_файла.conf.rpmsave.
> При переустановке пакетов командой «yum reinstall» или установке пакета командой «rpm -i --force» новый базовый конфигурационный файл, поставляемый с данным пакетом, будет переименован в /etc/имя_файла.conf.rpmnew, а старый .conf-файл останется нетронутым.
При проверке программного обеспечения с помощью rpm -Va может появиться очень большой список ошибок:
# rpm -Va
S.?..... /sbin/sgpio
prelink: /usr/bin/bdftopcf: at least one of file's dependencies has changed since prelinking
S.?...../usr/bin/bdftopcf
prelink: /usr/bin/mkfontscale: at least one of file's dependencies has changed since prelinking
S.?...../usr/bin/mkfontscale
…
prelink: /usr/bin/bdftopcf: at least one of file's dependencies has changed since prelinking
S.?...../usr/bin/bdftopcf
prelink: /usr/bin/mkfontscale: at least one of file's dependencies has changed since prelinking
S.?...../usr/bin/mkfontscale
…
Определив имена пакетов, к которым принадлежат проблемные или отсутствующие файлы, и переустановив их с помощью yum (включая зависимые компоненты), можно восстановить систему. Для сохранения результатов работы проверки с помощью rpm можно воспользоваться стандартным перенаправлением вывода ошибок для сохранения в файл:
# rpm -Va 2> errors.txt
В errors.txt запишется информация о проблемных и неизмененных файлах, а также отсутствующих ссылках и компонентах. Например, он может выглядеть так:
S.5.... T c /etc/snmp/snmpd.conf
missing /usr/lib/cups/backend/http
missing /usr/lib/perl5/vendor_perl/5.8.8/Mail/Sendmail.pm
......G. /var/cache/samba/winbindd_privileged
S.5.... T c /etc/ppp/chap-secret
missing /usr/lib/cups/backend/http
missing /usr/lib/perl5/vendor_perl/5.8.8/Mail/Sendmail.pm
......G. /var/cache/samba/winbindd_privileged
S.5.... T c /etc/ppp/chap-secret
Чтобы определить RPM-пакеты, в которых поставляются нужные файлы, достаточно просто отредактировать errors.txt, приведя его к такому виду:
rpm -qf /etc/snmp/snmpd.conf
rpm -qf /usr/lib/cups/backend/http
rpm -qf /usr/lib/perl5/vendor_perl/5.8.8/Mail/Sendmail.pm
rpm -qf /var/cache/samba/winbindd_privileged
rpm -qf /etc/ppp/chap-secret
rpm -qf /usr/lib/cups/backend/http
rpm -qf /usr/lib/perl5/vendor_perl/5.8.8/Mail/Sendmail.pm
rpm -qf /var/cache/samba/winbindd_privileged
rpm -qf /etc/ppp/chap-secret
Затем переименовать и запустить, перенаправив вывод в packages.txt:
# mv errors.txt packages.sh
# chmod +x packages.sh
# ./packages.sh > packages.txt
# chmod +x packages.sh
# ./packages.sh > packages.txt
Получим следующий packages.txt:
attr-2.4.32-1.1
nc-1.84-10.fc6
dos2unix-3.1-27.2.el5
dos2unix-3.1-27.2.el5
gd-2.0.33-9.4.el5_4.2
tcsh-6.14-17.el5_5.2
xsri-2.1.0-10.fc6
gstreamer-0.10.20-3.el5
nc-1.84-10.fc6
dos2unix-3.1-27.2.el5
dos2unix-3.1-27.2.el5
gd-2.0.33-9.4.el5_4.2
tcsh-6.14-17.el5_5.2
xsri-2.1.0-10.fc6
gstreamer-0.10.20-3.el5
Осталось скачать все необходимые пакеты и установить их с помощью «rpm -l» (ключ используется для получения списка из файла):
# rpm -ihv -l packages.txt
Во время работы этой команды могут появиться ошибки, сообщения о невозможности выполнения операции, т.к. RPM не умеет автоматически определять зависимости. В таком случае недостающие пакеты придется выявлять самостоятельно. Но удобнее будет воспользоваться командой «yum reinstall имя_пакета.rpm».
Yum вычисляет зависимости, загружает их из репозитория ПО и автоматически переустанавливает:
# yum reinstall 'cat packages.txt’
После переустановки пакетов с помощью yum повторите команду «rpm -Va», чтобы убедиться, что все проблемные пакеты были восстановлены. При необходимости все эти операции придётся повторить.
Заключение
Описанные в статье рецепты призваны помочь с восстановлением системы в случае отсутствия серьезных проблем с ПО или железом. Напоследок пожелаю вам не забывать про бэкапы, чтобы остановки сервера происходили только при профилактических работах.
Вы вебмастер, а не серверный программист, поэтому Вас интересует гораздо больше, не работа с утилитой yum, а методы заработка на сайтах. И тут (http://www.webzarabotok.org/)Вы найдете самую исчерпывающую информацию по данной теме. В частности, узнаете, как можно максимально эффективно монетизировать свой интернет-ресурс без вреда для него!