It is best if the web server runs the version of Red Hat Linux as is being upgraded to. If it runs an earlier version, then do not rebuild the operating system on this machine and install anaconda-runtime from the later operating system.
Copy the Linux distribution to a local web server using a mirroring utility like wget. Alternatively the files can be copied from the distribution CDs to the web server.
bash$ mkdir --mode=664 --parents /var/www/html/redhat/linux/7.1/en/os/i386 bash$ umask 002 bash$ wget -nh -nH -r -N -nr -l0 -k -np -X SRPMS ftp://ftp.redhat.com/pub/redhat/linux/7.1/en/os/i386/ -P /var/www/html/redhat/linux/7.1/en/os/i386 |
It's best to use a mirror site in place of Red Hat's FTP site used in the example above.
It is very important not to gain files along the way. Delete any files generated by FTP servers, web servers and CD-ROMs.
bash$ cd /var/www/html/redhat bash$ # Files added by FTP server bash$ find . -name '.listing' -print -exec rm {} \; bash$ find . -name 'ls-*' -print -exec rm {} \; bash$ # Files added by a wget from a HTTP server bash$ find . -name '\?*' -print -exec rm {} \; bash$ # Files added by a CD-ROM bash$ find . -name 'TRANS.TBL' -print -exec rm {} \; |
We now need to add the latest updates to the distributed software. This is done to avoid the machine being compromised immediately following the upgrade.
Adding the updates is essential for Red Hat Linux 7.1, see Section A.2.
Collect together the updates RPMs from ftp://ftp.redhat.com/pub/updates/7.1/en/os/ in the subdirectories i386, i486, i586 i686, images and noarch.
Merge these updates into the copy of the distribution. For each updated RPM file, remove the original RPM file then replace it with the updated RPM file. For example:
bash$ cd /var/www/html/redhat/linux/7.1/en/os/i386/RedHat/RPMS bash$ ls /var/www/html/redhat/updates/7.1/en/os/i386 SysVinit-2.78-17.i386.rpm bash$ ls SysVinit-*.rpm SysVinit-2.78-15.i386.rpm bash$ rm SysVinit-2.78-15.i386.rpm bash$ cp /var/www/html/redhat/updates/7.1/en/os/i386/SysVinit-2.78-17.i386.rpm . bash$ chmod u=rw,g=r,o=r SysVinit-2.78-17.i386.rpm |
Merge the RPMs from the updates subdirectories i386, i686 and noarch into /var/www/html/redhat/linux/7.1/en/os/i386/RedHat/RPMS. Merge the files from the directory /var/www/html/redhat/updates/7.1/en/os/images into the directory /var/www/html/redhat/linux/7.1/en/os/i386/images.
The file /var/www/html/redhat/linux/7.1/en/os/i386/RedHat/base/hdlist and hdlist2 contain the list of the RPMs to install. This needs to be modified to contain the names of the updated RPMs.
Install the anaconda-runtime RPM on the HTTP server. This RPM should be the same version as the Red Hat Linux being upgraded to.
Now create a new hdlist with the commands:
bash$ cd /usr/lib/anaconda-runtime bash$ rm /var/www/html/redhat/linux/7.1/en/os/i386/RedHat/base/hdlist* bash$ umask 002 bash$ ./genhdlist --withnumbers --hdlist /var/www/html/redhat/linux/7.1/en/os/i386/RedHat/base/hdlist /var/www/html/redhat/linux/7.1/en/os/i386 |
The distribution plus the updates can now be used for a network install. They cannot be used for a CD install, but that doesn't concern us.
As the distribution plus the updates is different from the original distribution, we should not use the version number of the original distribution. Appending the date to which the updates have been applied seems best.
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |