Sophie

Sophie

distrib > Mandriva > 2010.1 > x86_64 > by-pkgid > 965e33040dd61030a94f0eb89877aee8 > files > 2190

howto-html-en-20080722-2mdv2010.1.noarch.rpm

<HTML
><HEAD
><TITLE
>Appendix: Updating from YellowDog 2.3 (Dayton) to 3.0 (Sirius)</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
REL="HOME"
TITLE="Installing GNU/Linux on the IBM RS/6000 43P model 7248 HOWTO"
HREF="t1.htm"><LINK
REL="PREVIOUS"
TITLE="Frequently Asked Questions"
HREF="x812.htm"><LINK
REL="NEXT"
TITLE="Appendix: Using cfdisk to partition your harddisk"
HREF="x900.htm"></HEAD
><BODY
CLASS="SECT1"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>Installing GNU/Linux on the IBM RS/6000 43P model 7248 HOWTO</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="x812.htm"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="x900.htm"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="SECT1"
><H1
CLASS="SECT1"
><A
NAME="SIRIUS"
></A
>Appendix: Updating from YellowDog 2.3 (Dayton) to 3.0 (Sirius)</H1
><A
NAME="AEN863"
></A
><P
>  Here's how to update Yellow Dog Linux from 2.3 (Dayton) to 3.0
  (Sirius). This assumes being done just after finishing the base
  install (ie: very few packages installed)</P
><P
>  If we are running X (the following is based on the "base" install, so
  we probably aren't), switch to text mode (/sbin/init 3). We assume
  we have some network access, the fatter the better. We are going to
  download some packages manually, so check that you're able to do
  that. Some console-based download tool like ncftp (ftp) or lynx (http)
  might come handy. </P
><P
>  Note for the following: If you get errors from rpm that are not noted
  here, you can always do an 
<PRE
CLASS="SCREEN"
>rm -f /var/lib/rpm/__* ; rpm --rebuilddb</PRE
>
  This repairs the rpm database in most cases.</P
><P
>  First, ensure that we are running latest versions of all
  software. This may not be necessary, but whatever.

<PRE
CLASS="SCREEN"
>apt-get update; apt-get dist-upgrade </PRE
>

  Now we change /etc/apt/sources.list to include repositories for 3.0
  Note that there are only three repositories for 3.0: base, main,
  update. Fire up your favourite editor (at least vi should be
  installed) and update the file. A working sources.list may look like
  like this:

<PRE
CLASS="SCREEN"
>rpm ftp://ftp.uninett.no/linux/yellowdog/apt 3.0 base main update
rpm-src ftp://ftp.uninett.no/linux/yellowdog/apt 3.0 base main update</PRE
>

  Now let's update the package list and check how far-fetched a
  complete dist-upgrade is:

<PRE
CLASS="SCREEN"
>apt-get update
apt-get -s dist-upgrade  </PRE
>

  Woha! Lots of errors there. Let's resolve the worst of them. Start
  with removing lots of packages. Note that after this, we can't read
  man pages.

<PRE
CLASS="SCREEN"
>rpm -e kudzu kernel-pcmcia-cs rpm-python yup yi pspell aspell groff man</PRE
>

  What's status now?

<PRE
CLASS="SCREEN"
>apt-get -s dist-upgrade again</PRE
>

  Still errors, and quite unresolvable. We have to take some more
  low-level action. The really pain is to get a new version of rpm
  installed, so let's start with that. Manually download the following
  packages:

<PRE
CLASS="SCREEN"
>  glibc-2.3.1-51a.ppc.rpm 
  glibc-common-2.3.1-51a.ppc.rpm 
  libelf-0.8.2-2.ppc.rpm 
  popt-1.7-9d.ppc.rpm
  rpm-4.1-9d.ppc.rpm 
  librpm404-4.0.4-8x.27.ppc.rpm
  apt-0.5.5cnc4.1-1b.ppc.rpm
  libgcc-3.2.2-2a.ppc.rpm
  libstdc++-3.2.2-2a.ppc.rpm
  expat-1.95.4-1.ppc.rpm
  fontconfig-2.1-3.ppc.rpm
  freetype-2.1.3-4.ppc.rpm
  XFree86-libs-4.3.0-2.1c.ppc.rpm 
  XFree86-libs-data-4.3.0-2.1c.ppc.rpm
  XFree86-Mesa-libGL-4.3.0-2.1c.ppc.rpm</PRE
>

  We don't have use for apt for a while, so let's just remove it:

<PRE
CLASS="SCREEN"
>rpm -e apt</PRE
>

  So far, so good. Now, let's upgrade glibc and rpm. This is the most
  critical part. If we succeed in this, the rest is simple. If we get
  this wrong, a reinstall may be the only solution. rpm has some
  dependencies, so we have to include them now.

<PRE
CLASS="SCREEN"
>rpm -Uvh glibc-common-2.3.1-51a.ppc.rpm \ 
         glibc-2.3.1-51a.ppc.rpm        \
         libelf-0.8.2-2.ppc.rpm         \
         popt-1.7-9d.ppc.rpm            \
         rpm-4.1-9d.ppc.rpm             \
         librpm404-4.0.4-8x.27.ppc.rpm </PRE
>

  If your setup is like mine, we're stuck with the following
  unresolvable error:

<PRE
CLASS="SCREEN"
>rpmlib(PartialHardlinkSets) &#60;= 4.0.4-1 is needed by glibc-common-2.3.1-51a</PRE
>

  This seems to be a problem overseen by the packagers of YellowDog (and
  to be honest, I think they inherited this error from RedHat), so we
  just ignore it, use some force, and hope this won't bite us later.

<PRE
CLASS="SCREEN"
>rpm -Uvh --nodeps --force glibc-2.3.1-51a.ppc.rpm                \
                          glibc-common-2.3.1-51a.ppc.rpm         \
                          libelf-0.8.2-2.ppc.rpm                 \
                          popt-1.7-9d.ppc.rpm                    \
                          rpm-4.1-9d.ppc.rpm                     \
                          librpm404-4.0.4-8x.27.ppc.rpm </PRE
>

  Uh-oh. Ugly errors from rpm. Let's check if the rpm database still works.

<PRE
CLASS="SCREEN"
>rpm -qa</PRE
>

  Well, looks like we've really done it. Now what? Sorry to say, but
  I've tricked you into ruining your computer installation. Get out
  and get a life instead of looking on these old dust-collectors. Just
  kidding. Luckily, rpm is able to rebuild it's databases, so we just
  remove the old one and build a new.

<PRE
CLASS="SCREEN"
>rm -f /var/lib/rpm/__*
rpm --rebuilddb</PRE
>

  Now the database should work again, right?

<PRE
CLASS="SCREEN"
>rpm -qa</PRE
>

  If this works, we collect 250 bonus points and two silver stars, and
  can continue our quest for 3.0. Find the dagger and throw it at the
  dragon.</P
><P
>  If we don't have any special parameters for nsswitch and
  gconv-modules, we'll use the new ones (if existing):

<PRE
CLASS="SCREEN"
>mv -f /etc/nsswitch.conf.rpmnew /etc/nsswitch.conf
mv -f /usr/lib/gconv/gconv-modules.rpmnew /usr/lib/gconv/gconv-modules</PRE
>

  Now let's reinstall apt. Is also have a lot of dependencies that have
  to be fixed:

<PRE
CLASS="SCREEN"
>rpm -Uvh apt-0.5.5cnc4.1-1b.ppc.rpm            \
         expat-1.95.4-1.ppc.rpm                \
         freetype-2.1.3-4.ppc.rpm              \
         fontconfig-2.1-3.ppc.rpm              \
         libgcc-3.2.2-2a.ppc.rpm               \
         libstdc++-3.2.2-2a.ppc.rpm            \
         XFree86-libs-4.3.0-2.1c.ppc.rpm       \
         XFree86-libs-data-4.3.0-2.1c.ppc.rpm  \
         XFree86-Mesa-libGL-4.3.0-2.1c.ppc.rpm \</PRE
>

  I've sometimes got rpm to hang at this place. It's a known bug in
  rpm and can hit you anytime. If you experience this, get another
  terminal (Alt+F2 if you're on the main console) , kill rpm, and
  remove and rebuild the database. Then do the wanted rpm command
  again.

<PRE
CLASS="SCREEN"
>killall -9 rpm
rm -f /var/lib/rpm/__*
rpm --rebuilddb</PRE
>

  Now; the installation of apt may have changed our sources.list, so
  check it out, and copy back the original if you want to.

<PRE
CLASS="SCREEN"
>mv /etc/apt/sources.list /etc/apt/sources.list.3.0.orig
mv -f /etc/apt/sources.list.rpmsave /etc/apt/sources.list</PRE
>

  We should now probably resync the local apt database and check the
  status

<PRE
CLASS="SCREEN"
>apt-get update &#38;&#38; apt-get -s dist-upgrade</PRE
>

  Still some unresolved dependencies, but we're getting there. With
  apt installed, the rest is like chewing boiled fish. Nothing to care
  about. Ouch! a bone.

<PRE
CLASS="SCREEN"
>apt-get install pam</PRE
>

  Drags in the following packages:
  chkconfig cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-md5 cyrus-sasl-plain db4
  hesiod openldap openssh openssh-clients openssh-server openssl perl
  perl-Filter python sendmail</P
><P
>  Unless you have done some special pam configuration, use the new values for 
  system authetication. Then go on updating.

<PRE
CLASS="SCREEN"
>mv -f /etc/pam.d/system-auth.rpmnew /etc/pam.d/system-auth

apt-get install passwd</PRE
>

  Drags in the following packages:
  glib2 libuser

<PRE
CLASS="SCREEN"
>apt-get install kbd</PRE
>

  Drags in the following packages:
  initscripts util-linux

<PRE
CLASS="SCREEN"
>apt-get install compat-db compat-pwdb</PRE
>

  Drags in the following packages:
  compat-libstdc++

<PRE
CLASS="SCREEN"
>apt-get -s dist-upgrade</PRE
>

  If no errors, we're with all the difficult parts. Good! Now the
  final hurdle: A full dist-upgrade. Do an

<PRE
CLASS="SCREEN"
>apt-get -y dist-upgrade</PRE
>

  and enjoy getting to the end of this quest. You get all the
  points. Just kiss the frog and you'll get the princess too. You may
  want to reboot, just to check that everything comes up like you
  wish.</P
><P
>  You may want to reinstall some packages again. For example "man" may
  become handy.

<PRE
CLASS="SCREEN"
>apt-get install kudzu rpm-python pspell aspell groff man </PRE
>

  That's all there is to it. It wasn't that difficult, was it?</P
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="x812.htm"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="t1.htm"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="x900.htm"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>Frequently Asked Questions</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
>&nbsp;</TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Appendix: Using cfdisk to partition your harddisk</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>