PDA

View Full Version : Gentoo install log



MentholMoose
12-28-2006, 03:05 PM
I had some spare time so I decided to reinstall the OS on my laptop. The last time I did this was when I bought the laptop, about 1.5 years ago. My laptop is an IBM ThinkPad T42p, with 1GB DDR RAM, ATI FireGL2, and 1.8GHz Dothan.

I use Gentoo, so it took a few hours to get the base system up and ready to have other software installed (window manager, office applications, etc.).

My laptop is my primary desktop and I don't like any downtime on it. I have an extra laptop hard drive and external enclosure. I did not download any installer CDs. I connected the new hard drive to my laptop and proceeded to install Gentoo on it from my existing Gentoo installation. I thought that someone possibly might be slightly interested in seeing one way to install Gentoo, so here it is.

First, I prepare the new disk for installation (partition, format, mount, etc.).




mentholmoose@pinchy ~ $ su -
Password:
root@pinchy ~ # fdisk /dev/sda
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won't be recoverable.


The number of cylinders for this disk is set to 38154.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

Command (m for help): p

Disk /dev/sda: 40.0 GB, 40007762432 bytes
64 heads, 32 sectors/track, 38154 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes

Device Boot Start End Blocks Id System

Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-38154, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-38154, default 38154): +40M

Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (40-38154, default 40):
Using default value 40
Last cylinder or +size or +sizeM or +sizeK (40-38154, default 38154): +20000M

Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 3
First cylinder (19114-38154, default 19114):
Using default value 19114
Last cylinder or +size or +sizeM or +sizeK (19114-38154, default 38154): 36700

Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Selected partition 4
First cylinder (36701-38154, default 36701):
Using default value 36701
Last cylinder or +size or +sizeM or +sizeK (36701-38154, default 38154):
Using default value 38154

Command (m for help): t
Partition number (1-4): 4
Hex code (type L to list codes): 82
Changed system type of partition 4 to 82 (Linux swap / Solaris)

Command (m for help): a
Partition number (1-4): 1

Command (m for help): p

Disk /dev/sda: 40.0 GB, 40007762432 bytes
64 heads, 32 sectors/track, 38154 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes

Device Boot Start End Blocks Id System
/dev/sda1 * 1 39 39920 83 Linux
/dev/sda2 40 19113 19531776 83 Linux
/dev/sda3 19114 36700 18009088 83 Linux
/dev/sda4 36701 38154 1488896 82 Linux swap / Solaris

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
root@pinchy ~ # mkfs.ext2 /dev/sda1
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
10000 inodes, 39920 blocks
1996 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=40894464
5 block groups
8192 blocks per group, 8192 fragments per group
2000 inodes per group
Superblock backups stored on blocks:
8193, 24577

Writing inode tables: done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 22 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
root@pinchy ~ # mkfs.ext3 /dev/sda2
mke2fs 1.39 (29-May-2006)
warning: 512 blocks unused.

Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
2445984 inodes, 4882432 blocks
244147 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=8388608
149 block groups
32768 blocks per group, 32768 fragments per group
16416 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 26 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
root@pinchy ~ # mkfs.ext3 /dev/sda3
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
2252160 inodes, 4502272 blocks
225113 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=8388608
138 block groups
32768 blocks per group, 32768 fragments per group
16320 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 36 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
root@pinchy ~ # mkswap /dev/sda4
Setting up swapspace version 1, size = 1524625 kB
no label, UUID=78135b38-7a77-4ae2-a75e-679fab61d392
root@pinchy ~ # swapon /dev/sda
sda sda1 sda2 sda3 sda4
root@pinchy ~ # swapon /dev/sda4
root@pinchy ~ # mkdir /mnt/gentoo
root@pinchy ~ # mount /dev/sda2 /mnt/gentoo/
root@pinchy ~ # mkdir /mnt/gentoo/boot
root@pinchy ~ # mkdir /mnt/gentoo/home
root@pinchy ~ # mount /dev/sda1 /mnt/gentoo/boot/
root@pinchy ~ # mount /dev/sda3 /mnt/gentoo/home/



Next, I download and extract a Gentoo "stage" archive. This is basically a minimal environment used to install Gentoo. I also download and extract a portage snapshop. Then I do some other necessary preparations.




root@pinchy /mnt/gentoo # wget ftp://ftp.ucsb.edu/pub/mirrors/linux/gentoo/releases/x86/2006.1/stages/stage1-x86-2006.1.tar.bz2
--14:17:27-- ftp://ftp.ucsb.edu/pub/mirrors/linux/gentoo/releases/x86/2006.1/stages/stage1-x86-2006.1.tar.bz2
=> `stage1-x86-2006.1.tar.bz2'
Resolving ftp.ucsb.edu... 128.111.24.43
Connecting to ftp.ucsb.edu|128.111.24.43|:21... connected.
Logging in as anonymous ... Logged in!
==> SYST ... done. ==> PWD ... done.
==> TYPE I ... done. ==> CWD /pub/mirrors/linux/gentoo/releases/x86/2006.1/stages ... done.
==> PASV ... done. ==> RETR stage1-x86-2006.1.tar.bz2 ... done.
Length: 26,302,805 (25M) (unauthoritative)

100%[================================================== =========>] 26,302,805 135.05K/s ETA 00:00

14:20:36 (135.40 KB/s) - `stage1-x86-2006.1.tar.bz2' saved [26302805]

/mnt/gentoo # wget ftp://ftp.ucsb.edu/pub/mirrors/linux/gentoo/releases/x86/2006.1/stages/stage1-x86-2006.1.tar.bz2.asc
--14:20:46-- ftp://ftp.ucsb.edu/pub/mirrors/linux/gentoo/releases/x86/2006.1/stages/stage1-x86-2006.1.tar.bz2.asc
=> `stage1-x86-2006.1.tar.bz2.asc'
Resolving ftp.ucsb.edu... 128.111.24.43
Connecting to ftp.ucsb.edu|128.111.24.43|:21... connected.
Logging in as anonymous ... Logged in!
==> SYST ... done. ==> PWD ... done.
==> TYPE I ... done. ==> CWD /pub/mirrors/linux/gentoo/releases/x86/2006.1/stages ... done.
==> PASV ... done. ==> RETR stage1-x86-2006.1.tar.bz2.asc ... done.
Length: 189 (unauthoritative)

100%[================================================== =========>] 189 --.--K/s

14:20:47 (9.02 KB/s) - `stage1-x86-2006.1.tar.bz2.asc' saved [189]

root@pinchy /mnt/gentoo # gpg --verify stage1-x86-2006.1.tar.bz2.asc
gpg: Signature made Fri Sep 29 05:43:19 2006 PDT using DSA key ID 17072058
gpg: Good signature from "Gentoo Linux Release Engineering (Gentoo Linux Release Signing Key) <releng@gentoo.org>"
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: D99E AC73 79A8 50BC E47D A5F2 9E64 38C8 1707 2058
root@pinchy /mnt/gentoo # tar xjpf stage1-x86-2006.1.tar.bz2
root@pinchy /mnt/gentoo # ls
bin dev home lost+found opt root stage1-x86-2006.1.tar.bz2 sys usr
boot etc lib mnt proc sbin stage1-x86-2006.1.tar.bz2.asc tmp var
root@pinchy /mnt/gentoo # wget http://ftp.ucsb.edu/pub/mirrors/linux/gentoo/snapshots/portage-20061225.tar.bz2
--14:25:15-- http://ftp.ucsb.edu/pub/mirrors/linux/gentoo/snapshots/portage-20061225.tar.bz2
=> `portage-20061225.tar.bz2'
Resolving ftp.ucsb.edu... 128.111.24.43
Connecting to ftp.ucsb.edu|128.111.24.43|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 34,680,019 (33M) [application/x-tar]

100%[================================================== =========>] 34,680,019 122.58K/s ETA 00:00

14:29:38 (128.61 KB/s) - `portage-20061225.tar.bz2' saved [34680019/34680019]

root@pinchy /mnt/gentoo # wget http://ftp.ucsb.edu/pub/mirrors/linux/gentoo/snapshots/portage-20061225.tar.bz2.md5sum
--14:31:01-- http://ftp.ucsb.edu/pub/mirrors/linux/gentoo/snapshots/portage-20061225.tar.bz2.md5sum
=> `portage-20061225.tar.bz2.md5sum'
Resolving ftp.ucsb.edu... 128.111.24.43
Connecting to ftp.ucsb.edu|128.111.24.43|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 59 [application/x-tar]

100%[================================================== =========>] 59 --.--K/s

14:31:01 (3.75 MB/s) - `portage-20061225.tar.bz2.md5sum' saved [59/59]

root@pinchy /mnt/gentoo # md5sum -c portage-20061225.tar.bz2.md5sum
portage-20061225.tar.bz2: OK
root@pinchy /mnt/gentoo # tar xjf portage-20061225.tar.bz2 -C usr/
root@pinchy /mnt/gentoo # vim etc/make.conf
root@pinchy /mnt/gentoo # cat etc/make.conf
# These settings were set by the catalyst build script that automatically built this stage
# Please consult /etc/make.conf.example for a more detailed example
CFLAGS="-O3 -march=pentium-m -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
MAKEOPTS="-j2"
GENTOO_MIRRORS="ftp://ftp.ucsb.edu/pub/mirrors/linux/gentoo"
USE="-ipv6 -gtk -gnome -oss -apm -xmms acpi acl sse sse2 mmx kdeenablefinal kdexdeltas qt kde alsa samba xprint"
VIDEO_CARDS="fbdev vesa fglrx radeon vga r128"
INPUT_DEVICES="evdev keyboard mouse synaptics"
root@pinchy /mnt/gentoo # cp -L /etc/resolv.conf /mnt/gentoo/etc/resolv.conf
root@pinchy /mnt/gentoo # mount -t proc none /mnt/gentoo/proc/



The installation environment is set up, so I chroot into it and proceed with the installation. This is a "stage1" install, so I have to run the included bootstrap script to further prepare the installation environment.




root@pinchy /mnt/gentoo # chroot /mnt/gentoo/ /bin/bash
pinchy / # env-update && source /etc/profile
>>> Regenerating /etc/ld.so.cache...
pinchy / # emerge --sync
[snip]
>>> Updating Portage cache: 100%


* An update to portage is available. It is _highly_ recommended
* that you update portage now, before any other packages are updated.
* Please run 'emerge portage' and then update ALL of your
* configuration files.
* To update portage, run 'emerge portage'.

pinchy / # echo "sys-libs/glibc userlocales" >> /etc/portage/package.use
pinchy / # cat /etc/portage/package.use
sys-libs/glibc userlocales
pinchy / # /usr/portage/scripts/bootstrap.sh -p
[snip]
pinchy / # gcc-config -l
[1] i386-pc-linux-gnu-4.1.1 *
pinchy / # /usr/portage/scripts/bootstrap.sh -f
Running in fetch-only mode ...
[snip]
pinchy / # time /usr/portage/scripts/bootstrap.sh
[snip]

real 75m43.341s
user 60m4.169s
sys 8m10.127s



The bootstrap process is done and now more of the base system can be installed. I faced a couple errors that were easy to fix and not worth mentioning.




pinchy / # emerge -pv system

These are the packages that would be merged, in order:

Calculating system dependencies... done!
[ebuild N ] sys-apps/hotplug-base-20040401 40 kB
[ebuild N ] sys-fs/udev-103 USE="(-selinux)" 195 kB
[ebuild U ] app-arch/gzip-1.3.5-r10 [1.3.5-r8] USE="nls* -build* -pic -static" 323 kB
[ebuild N ] sys-apps/hdparm-6.6 44 kB
[ebuild N ] sys-libs/gpm-1.20.1-r5 USE="(-selinux)" 559 kB
[ebuild U ] sys-libs/ncurses-5.5-r3 [5.5-r2] USE="gpm* unicode* -bootstrap -build* -debug -doc -minimal -nocxx -trace%" 2,259 kB
[ebuild U ] app-shells/bash-3.1_p17 [3.1_p16] USE="nls* -afs -bashlogger -vanilla% (-build%*)" 2,515 kB
[ebuild N ] perl-core/Test-Simple-0.64 69 kB
[ebuild N ] virtual/perl-Test-Simple-0.64 0 kB
[ebuild N ] dev-perl/Locale-gettext-1.05 7 kB
[ebuild N ] sys-apps/help2man-1.36.4 USE="nls" 83 kB
[ebuild N ] sys-devel/autoconf-wrapper-3.2-r2 0 kB
[ebuild U ] sys-devel/m4-1.4.7 [1.4.4] USE="nls*" 499 kB
[ebuild N ] sys-devel/autoconf-2.60 USE="-emacs" 1,334 kB
[ebuild N ] sys-devel/automake-wrapper-2-r1 0 kB
[ebuild U ] sys-devel/gnuconfig-20060702 [20060227] 38 kB
[ebuild N ] sys-devel/automake-1.9.6-r2 747 kB
[ebuild N ] sys-devel/libtool-1.5.22 2,853 kB
[ebuild N ] dev-libs/openssl-0.9.8d USE="sse2 zlib -bindist -emacs -test" 3,237 kB
[ebuild N ] app-misc/ca-certificates-20050804 91 kB
[ebuild N ] sys-libs/db-4.2.52_p4-r2 USE="-bootstrap -doc -java -nocxx -tcl -test" 3,989 kB
[ebuild N ] sys-libs/gdbm-1.8.3-r2 USE="berkdb" 223 kB
[ebuild N ] dev-libs/expat-1.95.8 USE="-test" 310 kB
[ebuild U ] dev-lang/python-2.4.3-r4 [2.4.3-r1] USE="berkdb* gdbm* ncurses* readline* ssl* -bootstrap -build* -doc -ipv6 -nocxx -tk% -ucs2 (-X%) (-tcltk%)" 7,827 kB
[ebuild U ] sys-apps/findutils-4.3.0 [4.1.20-r2] USE="nls* -build* (-selinux) -static" 1,102 kB
[ebuild U ] sys-devel/make-3.81 [3.80-r4] USE="nls* -static (-build%*)" 1,124 kB
[ebuild U ] sys-apps/sed-4.1.5 [4.1.4-r1] USE="nls* -static (-bootstrap%) (-build%*)" 780 kB
[ebuild N ] app-crypt/hashalot-0.3-r2 78 kB
[ebuild N ] sys-libs/com_err-1.39 USE="nls" 3,608 kB
[ebuild N ] sys-libs/ss-1.39 USE="nls" 0 kB
[ebuild N ] sys-fs/e2fsprogs-1.39 USE="nls -static" 0 kB
[ebuild N ] sys-apps/util-linux-2.12r-r4 USE="crypt nls perl -old-crypt (-selinux) -static" 1,504 kB
[ebuild N ] sys-apps/which-2.16 122 kB
[ebuild U ] app-arch/tar-1.16-r2 [1.15.1-r1] USE="nls* -static (-build%*) (-bzip2%)" 1,743 kB
[ebuild N ] sys-apps/groff-1.19.2-r1 USE="X" 2,835 kB
[ebuild N ] sys-apps/man-1.6d USE="nls" 263 kB
[ebuild N ] sys-process/psmisc-22.2 USE="X nls -ipv6 (-selinux)" 238 kB
[ebuild N ] sys-devel/automake-1.6.3 465 kB
[ebuild N ] dev-libs/popt-1.7-r1 USE="nls" 561 kB
[ebuild N ] sys-apps/attr-2.4.28-r1 USE="nls" 104 kB
[ebuild N ] sys-apps/acl-2.2.34 USE="nls" 141 kB
[ebuild U ] net-misc/rsync-2.6.9-r1 [2.6.8-r2] USE="acl* -ipv6 -static -xinetd (-build%*)" 792 kB
[ebuild N ] sys-apps/busybox-1.2.2.1 USE="-debug -make-symlinks -netboot -savedconfig -static" 1,380 kB
[ebuild N ] app-arch/cpio-2.6-r5 USE="nls" 437 kB
[ebuild N ] sys-libs/pwdb-0.62 USE="(-selinux)" 130 kB
[ebuild N ] dev-util/pkgconfig-0.20 USE="-hardened" 947 kB
[ebuild N ] sys-apps/tcp-wrappers-7.6-r8 USE="-ipv6" 115 kB
[ebuild N ] sys-libs/cracklib-2.8.9-r1 USE="nls python" 562 kB
[ebuild N ] sys-libs/pam-0.78-r3 USE="berkdb -nis -pam_chroot -pam_console -pam_timestamp -pwdb (-selinux)" 6,345 kB
[ebuild N ] sys-apps/shadow-4.0.18.1 USE="cracklib nls pam -nousuid (-selinux) -skey" 1,480 kB
[ebuild N ] net-misc/openssh-4.4_p1-r6 USE="pam tcpd -X -X509 -chroot -hpn -kerberos -ldap -libedit (-selinux) -skey -smartcard -static" 1,019 kB
[ebuild N ] sys-process/procps-3.2.6 USE="(-n32)" 272 kB
[ebuild N ] sys-apps/module-init-tools-3.2.2-r1 USE="-no-old-linux" 394 kB
[ebuild U ] sys-apps/gawk-3.1.5-r2 [3.1.5-r1] USE="nls* (-build%*)" 2,256 kB
[ebuild N ] sys-apps/kbd-1.12-r8 USE="nls" 867 kB
[ebuild U ] sys-devel/bison-2.2 [2.1] USE="nls* -static" 1,052 kB
[ebuild U ] sys-apps/file-4.18 [4.17-r1] USE="python* (-build%*)" 523 kB
[ebuild U ] sys-apps/net-tools-1.60-r12 [1.60-r11] USE="nls* -static" 297 kB
[ebuild U ] sys-apps/coreutils-6.4 [5.94-r1] USE="acl* nls* (-selinux) -static (-build%*)" 5,216 kB
[ebuild U ] app-editors/nano-2.0.1 [1.3.11-r2] USE="ncurses* nls* spell* unicode* -debug -justify -minimal -slang (-build%*)" 1,268 kB
[ebuild U ] sys-apps/debianutils-2.15-r1 [2.15] USE="-build* -static" 181 kB
[ebuild N ] net-misc/iputils-021109-r3 USE="-doc -ipv6 -static" 418 kB
[ebuild N ] sys-apps/man-pages-2.42 USE="nls" 1,777 kB

Total size of downloads: 69,668 kB
pinchy / # time emerge -v system
[snip]
!!! ERROR: perl-core/Test-Simple-0.64 failed.
Call stack:
ebuild.sh, line 1546: Called dyn_compile
ebuild.sh, line 937: Called src_compile
ebuild.sh, line 1255: Called perl-module_src_compile
perl-module.eclass, line 136: Called perl-module_src_prep
perl-module.eclass, line 125: Called die

!!! Unable to build! (are you using USE="build"?)
!!! If you need support, post the topmost build error, and the call stack if relevant.


real 7m6.649s
user 4m29.957s
sys 0m58.808s
pinchy / # emerge -pv perl

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild N ] sys-libs/db-4.2.52_p4-r2 USE="-bootstrap -doc -java -nocxx -tcl -test" 3,989 kB
[ebuild N ] sys-libs/gdbm-1.8.3-r2 USE="berkdb" 223 kB
[ebuild R ] dev-lang/perl-5.8.8-r2 USE="berkdb* gdbm* -build* -debug -doc -ithreads -perlsuid" 9,886 kB
[ebuild N ] perl-core/Test-Harness-2.56 63 kB
[ebuild N ] perl-core/PodParser-1.32 91 kB

Total size of downloads: 14,254 kB
pinchy / # emerge -v perl
[snip]
pinchy / # emerge -pv system

These are the packages that would be merged, in order:

Calculating system dependencies... done!
[ebuild N ] dev-perl/Locale-gettext-1.05 0 kB
[ebuild N ] sys-apps/help2man-1.36.4 USE="nls" 83 kB
[ebuild N ] sys-devel/autoconf-wrapper-3.2-r2 0 kB
[ebuild U ] sys-devel/m4-1.4.7 [1.4.4] USE="nls*" 499 kB
[ebuild N ] sys-devel/autoconf-2.60 USE="-emacs" 1,334 kB
[ebuild N ] sys-devel/automake-wrapper-2-r1 0 kB
[ebuild U ] sys-devel/gnuconfig-20060702 [20060227] 38 kB
[ebuild N ] sys-devel/automake-1.9.6-r2 747 kB
[ebuild N ] sys-devel/libtool-1.5.22 2,853 kB
[ebuild N ] dev-libs/openssl-0.9.8d USE="sse2 zlib -bindist -emacs -test" 3,237 kB
[ebuild N ] app-misc/ca-certificates-20050804 91 kB
[ebuild N ] dev-libs/expat-1.95.8 USE="-test" 310 kB
[ebuild U ] dev-lang/python-2.4.3-r4 [2.4.3-r1] USE="berkdb* gdbm* ncurses* readline* ssl* -bootstrap -build* -doc -ipv6 -nocxx -tk% -ucs2 (-X%) (-tcltk%)" 7,827 kB
[ebuild U ] sys-apps/findutils-4.3.0 [4.1.20-r2] USE="nls* -build* (-selinux) -static" 1,102 kB
[ebuild U ] sys-devel/make-3.81 [3.80-r4] USE="nls* -static (-build%*)" 1,124 kB
[ebuild U ] sys-apps/sed-4.1.5 [4.1.4-r1] USE="nls* -static (-bootstrap%) (-build%*)" 780 kB
[ebuild N ] app-crypt/hashalot-0.3-r2 78 kB
[ebuild N ] sys-libs/com_err-1.39 USE="nls" 3,608 kB
[ebuild N ] sys-libs/ss-1.39 USE="nls" 0 kB
[ebuild N ] sys-fs/e2fsprogs-1.39 USE="nls -static" 0 kB
[ebuild N ] sys-apps/util-linux-2.12r-r4 USE="crypt nls perl -old-crypt (-selinux) -static" 1,504 kB
[ebuild N ] sys-apps/which-2.16 122 kB
[ebuild U ] app-arch/tar-1.16-r2 [1.15.1-r1] USE="nls* -static (-build%*) (-bzip2%)" 1,743 kB
[ebuild N ] sys-apps/groff-1.19.2-r1 USE="X" 2,835 kB
[ebuild N ] sys-apps/man-1.6d USE="nls" 263 kB
[ebuild N ] sys-process/psmisc-22.2 USE="X nls -ipv6 (-selinux)" 238 kB
[ebuild N ] sys-devel/automake-1.6.3 465 kB
[ebuild N ] dev-libs/popt-1.7-r1 USE="nls" 561 kB
[ebuild N ] sys-apps/attr-2.4.28-r1 USE="nls" 104 kB
[ebuild N ] sys-apps/acl-2.2.34 USE="nls" 141 kB
[ebuild U ] net-misc/rsync-2.6.9-r1 [2.6.8-r2] USE="acl* -ipv6 -static -xinetd (-build%*)" 792 kB
[ebuild N ] sys-apps/busybox-1.2.2.1 USE="-debug -make-symlinks -netboot -savedconfig -static" 1,380 kB
[ebuild N ] app-arch/cpio-2.6-r5 USE="nls" 437 kB
[ebuild N ] sys-libs/pwdb-0.62 USE="(-selinux)" 130 kB
[ebuild N ] dev-util/pkgconfig-0.20 USE="-hardened" 947 kB
[ebuild N ] sys-apps/tcp-wrappers-7.6-r8 USE="-ipv6" 115 kB
[ebuild N ] sys-libs/cracklib-2.8.9-r1 USE="nls python" 562 kB
[ebuild N ] sys-libs/pam-0.78-r3 USE="berkdb -nis -pam_chroot -pam_console -pam_timestamp -pwdb (-selinux)" 6,345 kB
[ebuild N ] sys-apps/shadow-4.0.18.1 USE="cracklib nls pam -nousuid (-selinux) -skey" 1,480 kB
[ebuild N ] net-misc/openssh-4.4_p1-r6 USE="pam tcpd -X -X509 -chroot -hpn -kerberos -ldap -libedit (-selinux) -skey -smartcard -static" 1,019 kB
[ebuild N ] sys-process/procps-3.2.6 USE="(-n32)" 272 kB
[ebuild N ] sys-apps/module-init-tools-3.2.2-r1 USE="-no-old-linux" 394 kB
[ebuild U ] sys-apps/gawk-3.1.5-r2 [3.1.5-r1] USE="nls* (-build%*)" 2,256 kB
[ebuild N ] sys-apps/kbd-1.12-r8 USE="nls" 867 kB
[ebuild U ] sys-devel/bison-2.2 [2.1] USE="nls* -static" 1,052 kB
[ebuild U ] sys-apps/file-4.18 [4.17-r1] USE="python* (-build%*)" 523 kB
[ebuild U ] sys-apps/net-tools-1.60-r12 [1.60-r11] USE="nls* -static" 297 kB
[ebuild U ] sys-apps/coreutils-6.4 [5.94-r1] USE="acl* nls* (-selinux) -static (-build%*)" 5,216 kB
[ebuild U ] app-editors/nano-2.0.1 [1.3.11-r2] USE="ncurses* nls* spell* unicode* -debug -justify -minimal -slang (-build%*)" 1,268 kB
[ebuild U ] sys-apps/debianutils-2.15-r1 [2.15] USE="-build* -static" 181 kB
[ebuild N ] net-misc/iputils-021109-r3 USE="-doc -ipv6 -static" 418 kB
[ebuild N ] sys-apps/man-pages-2.42 USE="nls" 1,777 kB

Total size of downloads: 59,439 kB
pinchy / # time emerge -v system
[snip]
Resolving www.kernel.org... failed: Temporary failure in name resolution.
!!! Couldn't download 'Linux-PAM-0.78.tar.gz'. Aborting.

real 22m53.921s
user 14m0.649s
sys 3m21.169s
pinchy / # emerge --resume
[snip]
pinchy / # etc-update
Scanning Configuration files...
The following is the list of files which need updating, each
configuration file is followed by a list of possible replacement files.
1) /etc/DIR_COLORS (1)
Please select a file to edit by entering the corresponding number.
(don't use -3, -5, -7 or -9 if you're unsure what to do)
(-1 to exit) (-3 to auto merge all remaining files)
(-5 to auto-merge AND not use 'mv -i')
(-7 to discard all updates)
(-9 to discard all updates AND not use 'rm -i'): -5

Replacing /etc/DIR_COLORS with /etc/._cfg0000_DIR_COLORS

Exiting: Nothing left to do; exiting. :)
pinchy / # emerge -v timezone-data
[snip]

pinchy / # ln -sf /usr/share/zoneinfo/America/Los_Angeles /etc/localtime



The base system is mostly installed. Now it is time to configure and install the kernel.




pinchy / # ls /usr/portage/sys-kernel/vanilla-sources/
ChangeLog vanilla-sources-2.6.16.14.ebuild vanilla-sources-2.6.17.6.ebuild
Manifest vanilla-sources-2.6.16.16.ebuild vanilla-sources-2.6.17.7.ebuild
files vanilla-sources-2.6.16.19.ebuild vanilla-sources-2.6.17.8.ebuild
metadata.xml vanilla-sources-2.6.16.20.ebuild vanilla-sources-2.6.17.9.ebuild
vanilla-sources-2.4.32.ebuild vanilla-sources-2.6.16.26.ebuild vanilla-sources-2.6.18.1.ebuild
vanilla-sources-2.4.33.1.ebuild vanilla-sources-2.6.16.27.ebuild vanilla-sources-2.6.18.2.ebuild
vanilla-sources-2.4.33.2.ebuild vanilla-sources-2.6.16.36.ebuild vanilla-sources-2.6.18.3.ebuild
vanilla-sources-2.4.33.3.ebuild vanilla-sources-2.6.17.10.ebuild vanilla-sources-2.6.18.4.ebuild
vanilla-sources-2.4.33.4.ebuild vanilla-sources-2.6.17.11.ebuild vanilla-sources-2.6.18.5.ebuild
vanilla-sources-2.4.33.5.ebuild vanilla-sources-2.6.17.12.ebuild vanilla-sources-2.6.18.ebuild
vanilla-sources-2.4.33.ebuild vanilla-sources-2.6.17.13.ebuild vanilla-sources-2.6.19.1.ebuild
vanilla-sources-2.4.34.ebuild vanilla-sources-2.6.17.14.ebuild vanilla-sources-2.6.19.ebuild
pinchy / # ACCEPT_KEYWORDS="~x86" USE="symlink" emerge -av =vanilla-sources-2.6.18.5

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild N ] sys-kernel/vanilla-sources-2.6.18.5 USE="symlink -build" 40,972 kB

Total size of downloads: 40,972 kB

Would you like to merge these packages? [Yes/No] y
[snip]

pinchy / # ls -l /usr/src/
total 4
lrwxrwxrwx 1 root root 14 Dec 26 21:48 linux -> linux-2.6.18.5
drwxr-xr-x 19 root root 4096 Dec 26 21:48 linux-2.6.18.5
pinchy / # cd /usr/src/linux
pinchy linux # make menuconfig
[snip]
#
# configuration written to .config
#


*** End of Linux kernel configuration.
*** Execute 'make' to build the kernel or try 'make help'.

pinchy linux # make && make modules_install
[snip]
pinchy linux # cp arch/i386/boot/bzImage /boot/kernel-2.6.18.5
pinchy linux # cp System.map /boot/System.map-2.6.18.5
pinchy linux # cp .config /boot/config-2.6.18.5



The kernel is installed. Here I enable the modules I need (i.e. hardware drivers).




pinchy linux # vim /etc/modules.autoload.d/kernel-2.6
bash: vim: command not found
pinchy linux # emerge -pv vim

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild N ] dev-util/ctags-5.5.4-r2 254 kB
[ebuild N ] app-editors/vim-core-7.0.17 USE="acl nls -bash-completion -livecd" 5,997 kB
[ebuild N ] app-editors/vim-7.0.17 USE="acl gpm nls perl python -bash-completion -cscope -minimal -mzscheme -ruby -vim-pager -vim-with-x" 0 kB
[ebuild N ] app-vim/gentoo-syntax-20051221-r1 USE="-ignore-glep31" 18 kB

Total size of downloads: 6,271 kB
pinchy linux # time emerge -v vim
[snip]
real 3m9.936s
user 1m53.159s
sys 0m20.917s
pinchy linux # vim /etc/modules.autoload.d/kernel-2.6



Further system configuration is now needed. I configure the table of disk partitions (fstab) and the network.




pinchy linux # cd /etc/
pinchy etc # vim fstab
pinchy etc # cat fstab
# /etc/fstab: static file system information.
/dev/hda1 /boot ext2 noauto,noatime 0 2
/dev/hda2 / ext3 noatime 0 1
/dev/hda3 /home ext3 noatime 0 2
/dev/hda4 none swap sw 0 0

/dev/cdrom /mnt/cdrom iso9660 user,noauto,ro 0 0

proc /proc proc defaults 0 0
shm /dev/shm tmpfs nodev,nosuid,noexec 0 0
pinchy etc # vim /etc/conf.d/hostname
pinchy etc # cat /etc/conf.d/hostname
# /etc/conf.d/hostname

# Set to the hostname of this machine
HOSTNAME="pinchy"
pinchy etc # vim /etc/conf.d/net
pinchy etc # cat /etc/conf.d/net
# This blank configuration will automatically use DHCP for any net.*
# scripts in /etc/init.d. To create a more complete configuration,
# please review /etc/conf.d/net.example and save your configuration
# in /etc/conf.d/net (this file :]!).
config_eth0=( "dhcp" )
dhcpcd_eth0="-h pinchy -N -Y -d -t 7"
pinchy etc # rc-update add net.eth0 default
* net.eth0 added to runlevel default



A few more services are needed.




pinchy etc # emerge -pv pcmcia-cs

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild N ] sys-apps/pcmcia-cs-3.2.8-r2 USE="-X -gtk -trusted -vanilla -xforms" 1,242 kB

Total size of downloads: 1,242 kB
pinchy etc # time emerge -v pcmcia-cs
[snip]
real 0m26.089s
user 0m13.953s
sys 0m2.884s
pinchy etc # rc-update add pcmcia default
* pcmcia added to runlevel default
pinchy etc # passwd
New UNIX password:
Retype new UNIX password:
passwd: password updated successfully
pinchy etc # time emerge -v sysklogd
[snip]
real 0m13.523s
user 0m6.976s
sys 0m0.988s
pinchy etc # rc-update add sysklogd default
* sysklogd added to runlevel default
pinchy etc # emerge -pv dcron

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild N ] net-mail/mailbase-1 USE="pam" 0 kB
[ebuild N ] mail-mta/ssmtp-2.61-r2 USE="ssl -ipv6 -mailwrapper -md5sum" 52 kB
[ebuild N ] sys-process/cronbase-0.3.2 0 kB
[ebuild N ] sys-process/dcron-2.9-r4 15 kB

Total size of downloads: 67 kB
pinchy etc # time emerge -v dcron
[snip]
real 0m22.514s
user 0m12.785s
sys 0m2.728s
pinchy etc # time emerge -v dhcpcd
[snip]
real 0m17.224s
user 0m9.033s
sys 0m2.964s



Finally, a boot loader needs to be set up. I install and configure lilo for this purpose.




pinchy etc # emerge -pv lilo

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild N ] sys-devel/bin86-0.16.17 148 kB
[ebuild N ] sys-boot/lilo-22.7-r1 USE="-devmap -minimal -pxeserial -static" 422 kB

Total size of downloads: 571 kB
pinchy etc # time emerge -v lilo
[snip]
real 0m38.402s
user 0m20.141s
sys 0m2.436s
pinchy etc # vim lilo.conf
pinchy etc # cat lilo.conf
compact
boot=/dev/hda
prompt
timeout=50
default=2.6.18.5
menu-scheme=Wb:bw:Wb:Yb

image=/boot/kernel-2.6.18.5
label=2.6.18.5
read-only
root=/dev/hda2



At this point, I wasn't sure how to have lilo configure the MBR. The new hard drive was currently connected externally and showing up as /dev/sda, but it will be eventually connected internally and will appear as /dev/hda. If I ran lilo now, I think it would configure the MBR on the current /dev/hda, which was not what I wanted.

So, I turned off the machine and replaced the old hard drive with the new one. I then booted a live CD, mounted the filesystems, did chroot into the installation environment, and ran "/sbin/lilo" to have lilo configure the MBR.

The new system worked fine after rebooting. Now, I have to install and configure a variety of software (xorg, KDE, OpenOffice, etc.). Hopefully someone found this interesting. :)

IFMU
12-28-2006, 05:57 PM
Wow... and to think that when I was looking to do a *nix install and was asking for which distro to go with, several said gentoo.

They just gotta be frackin nuts. lol
I can understand about a 6th of all that. Really wish my dayumed *nix class I was taking hadnt bottomed out. :shrug: ah well, what yea gonna do?

MentholMoose
12-28-2006, 10:01 PM
That is just one way to install it, and it actually isn't that complicated considering it is completely documented. If you don't get one part, check out the documentation; it covers the entire process.

Also, there are installers that greatly simplify the process of installing Gentoo, including a nice graphical installer.

[XC] Teroedni
12-29-2006, 12:32 AM
Gentoo is a very good Os but it is definitivly not for People new to linux.
I had to give up mine installation (Moved back to Ubuntu)as i were unable to get wireless to work(rt2570) and gtk-gnutella would not compile:/

When i have time im gonna install Gentoo on a test system again and learn from that:D Or maybe i try playing with it trough qemu:)

Btw: I know where to ask if i get problems now;)

SlicerSV
12-29-2006, 07:46 AM
uhh... i installed Gentoo as my first *nix. it took me a while to really figure out what i was doing, and i really still don't know ;)

but it's really well documented, and when it comes to sheer numbers and recentness of packages, no one beats gentoo.

Qkjhfhaiguihfma
12-29-2006, 12:49 PM
that was a stage 1 install. starting with a stage 3 tarball will knock off a few hours and simplify everything.

SlicerSV
12-31-2006, 07:34 AM
that was a stage 1 install. starting with a stage 3 tarball will knock off a few hours and simplify everything.

depends. do you want to be able to take advantage of recentness of gentoo, or not? stage 3 takes LONGER, imo, to upgrade to being more recent, than just starting at stage1 in the first place.

makatee
01-03-2007, 05:56 AM
The gentoo documentation is fantastic IFMU....Seriously, you don't have to know anything about linux and you can just follow their install docs and have a system up and running in no time...If there is something you need to ask, forums.gentoo.org is spectacular also. Everyone is very friendly and they post responses promptly...(However, just like on every other forum, search first, post second :) ) Anyways, if anyone needs any Gentoo specific help or Linux help in general, just send me a PM and Ill be glad to help you out ;)

texnofobix
01-03-2007, 04:55 PM
if you run multiple gentoo boxes you might want to set up your own local portage mirror. it isnt hard to do at all. or even just share portage using nfs.

MentholMoose
07-21-2008, 03:44 PM
My laptop install is still going strong. However, I recently built a server and installed Gentoo. Actually I've used this post for reference for a couple of installs, so I thought I should update it for the next one. :) Or, I should try out the installer, I bet it is easier than this haha.

Here is how I configured the first hard drive:



[snip]
Command (m for help): p
Disk /dev/sda: 319.9 GB, 319988695040 bytes
255 heads, 63 sectors/track, 38903 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 * 1 8 64228+ 83 Linux
/dev/sda2 9 38903 312424087+ 5 Extended
/dev/sda5 9 1053 8393931 83 Linux
/dev/sda6 1054 1576 4200966 83 Linux
/dev/sda7 1577 38380 295628098+ 83 Linux
/dev/sda8 38381 38903 4200966 82 Linux swap / Solaris

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
livecd ~ # fdisk -l /dev/sda

Disk /dev/sda: 319.9 GB, 319988695040 bytes
255 heads, 63 sectors/track, 38903 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 * 1 8 64228+ 83 Linux
/dev/sda2 9 38903 312424087+ 5 Extended
/dev/sda5 9 1053 8393931 83 Linux
/dev/sda6 1054 1576 4200966 83 Linux
/dev/sda7 1577 38380 295628098+ 83 Linux
/dev/sda8 38381 38903 4200966 82 Linux swap / Solaris


Next I create file systems on the various partitions.



livecd ~ # mkfs.ext3 -L root /dev/sda5
mke2fs 1.39 (29-May-2006)
Filesystem label=root
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
1050400 inodes, 2098482 blocks
104924 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2151677952
65 block groups
32768 blocks per group, 32768 fragments per group
16160 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 26 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
livecd ~ # mkfs.ext2 -L boot /dev/sda1
mke2fs 1.39 (29-May-2006)
Filesystem label=boot
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
16064 inodes, 64228 blocks
3211 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=65798144
8 block groups
8192 blocks per group, 8192 fragments per group
2008 inodes per group
Superblock backups stored on blocks:
8193, 24577, 40961, 57345

Writing inode tables: done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 37 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
livecd ~ # mkfs.ext3 -L home /dev/sda6
mke2fs 1.39 (29-May-2006)
Filesystem label=home
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
525888 inodes, 1050241 blocks
52512 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=1077936128
33 block groups
32768 blocks per group, 32768 fragments per group
15936 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 22 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
livecd ~ # mkfs.ext3 -L vmware /dev/sda7
mke2fs 1.39 (29-May-2006)
Filesystem label=vmware
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
36962304 inodes, 73907024 blocks
3695351 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
2256 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872, 71663616

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 35 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
livecd ~ # mkswap /dev/sda8
Setting up swapspace version 1, size = 4301783 kB
no label, UUID=1023d025-6d47-4379-b63b-4944062f1b7e


Now I mount partitions and prepare the initial environment. This is a "stage1" install.



livecd ~ # mount -t ext3 /dev/sda5 /mnt/gentoo/
livecd ~ # mkdir /mnt/gentoo/boot
livecd ~ # mkdir /mnt/gentoo/home
livecd ~ # mount -t ext2 /dev/sda1 /mnt/gentoo/boot/
livecd ~ # mount -t ext3 /dev/sda6 /mnt/gentoo/home/
livecd ~ # swapon /dev/sda8
livecd ~ # cd /mnt/gentoo/
livecd gentoo # wget http://ftp.ucsb.edu/pub/mirrors/linux/gentoo/releases/amd64/2007.0/stages/stage1-amd64-2007.0.tar.bz2
--20:35:52-- http://ftp.ucsb.edu/pub/mirrors/linux/gentoo/releases/amd64/2007.0/stages/stage1-amd64-2007.0.tar.bz2
=> `stage1-amd64-2007.0.tar.bz2'
Resolving ftp.ucsb.edu... 128.111.24.43
Connecting to ftp.ucsb.edu|128.111.24.43|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 35,648,869 (34M) [application/x-tar]

100%[================================================>] 35,648,869 54.01K/s ETA 00:00

20:41:41 (100.02 KB/s) - `stage1-amd64-2007.0.tar.bz2' saved [35648869/35648869]

livecd gentoo # time tar xjpf stage1-amd64-2007.0.tar.bz2

real 0m7.598s
user 0m6.190s
sys 0m0.770s
livecd gentoo # cd usr/
livecd usr # wget http://ftp.ucsb.edu/pub/mirrors/linux/gentoo/snapshots/portage-20080527.tar.bz2
--21:20:46-- http://ftp.ucsb.edu/pub/mirrors/linux/gentoo/snapshots/portage-20080527.tar.bz2
=> `portage-20080527.tar.bz2'
Resolving ftp.ucsb.edu... 128.111.24.43
Connecting to ftp.ucsb.edu|128.111.24.43|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 32,163,762 (31M) [application/x-tar]

100%[================================================>] 32,163,762 119.68K/s ETA 00:00

21:25:51 (105.62 KB/s) - `portage-20080527.tar.bz2' saved [32163762/32163762]

livecd usr # time tar xjf portage-20080527.tar.bz2
[snip]
real 0m11.979s
user 0m8.550s
sys 0m4.100s
livecd usr # ls
bin lib lib64 local portage-20080527.tar.bz2 share tmp
include lib32 libexec portage sbin src x86_64-pc-linux-gnu
livecd usr # cd
livecd ~ # mount -t proc proc /mnt/gentoo/proc
livecd ~ # cp -L /etc/resolv.conf /mnt/gentoo/etc/
livecd ~ # chroot /mnt/gentoo /bin/bash
livecd / # env-update && source /etc/profile
>>> Regenerating /etc/ld.so.cache...


Time to run "bootstrap.sh" (only applicable on stage1 installs)...



livecd / # /usr/portage/scripts/bootstrap.sh -f
[snip]
livecd / # time /usr/portage/scripts/bootstrap.sh
[snip]
real 50m44.080s
user 56m18.550s
sys 11m36.470s


Now I check what needs to be installed initially. There appears to be 100 packages to be installed/reinstalled now.



livecd / # emerge -vef system
[snip]
livecd / # emerge -pve system
[snip]
Total: 100 packages (34 upgrades, 44 new, 22 reinstalls), Size of downloads: 0 kB


I ran into some problems here. I possibly made a mistake somewhere, or there could be issues because the stage I used is old and is a stage1 install. This wouldn't happen with a stage3 install.



livecd / # time emerge -ve system
[snip]
gmake[1]: *** [attr.pot] Error 127
make: *** [default] Error 2
*
* ERROR: sys-apps/attr-2.4.39 failed.
* Call stack:
* ebuild.sh, line 49: Called src_compile
* environment, line 2555: Called die
* The specific snippet of code:
* emake || die
* The die message:
* (no error message)
*
* If you need support, post the topmost build error, and the call stack if relevant.
* A complete build log is located at '/var/tmp/portage/sys-apps/attr-2.4.39/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/sys-apps/attr-2.4.39/temp/environment'.
*
[snip]
real 23m2.060s
user 22m40.850s
sys 9m38.800s
[snip]
livecd / # [color=red]time emerge --resume --skipfirst
[snip]
checking for attr/xattr.h... no

FATAL ERROR: attr/xattr.h does not exist.
Install the extended attributes (attr) development package.
Alternatively, run "make install-dev" from the attr source.
[snip]
real 0m31.394s
user 0m10.070s
sys 0m4.050s
[snip]
livecd / # time emerge -v dev-libs/expat
[snip]
real 0m19.049s
user 0m12.820s
sys 0m5.370s
livecd / # time emerge --resume
[snip]
checking for attr/xattr.h... no

FATAL ERROR: attr/xattr.h does not exist.
Install the extended attributes (attr) development package.
Alternatively, run "make install-dev" from the attr source.
[snip]
real 0m18.455s
user 0m10.090s
sys 0m4.050s
livecd / # [color=red]time emerge -v sys-apps/attr
[snip]
/usr/bin/xgettext: error while loading shared libraries: libexpat.so.0: cannot open shared object file: No such file or directory
gmake[1]: *** [attr.pot] Error 127
make: *** [default] Error 2
[snip]
real 0m22.076s
user 0m12.310s
sys 0m5.740s
livecd / # emerge -v gentoolkit
[snip]
livecd / # [color=red]revdep-rebuild -pv
[snip]
Checking dynamic linking consistency...
broken /usr/bin/xgettext (requires libexpat.so.0)
broken /usr/lib/python2.4/lib-dynload/_bsddb.so (requires libdb-4.2.so)
broken /usr/lib64/python2.4/lib-dynload/_bsddb.so (requires libdb-4.2.so)
done.
[snip]
All prepared. Starting rebuild...
emerge --oneshot -pv =dev-lang/python-2.4.3-r4 =sys-devel/gettext-0.17
..........

These are the packages that would be merged, in order:

Calculating dependencies |
!!! All ebuilds that could satisfy "=dev-lang/python-2.4.3-r4" have been masked.
!!! One of the following masked packages is required to complete your request:
- dev-lang/python-2.4.3-r4 (masked by: )

For more information, see MASKED PACKAGES section in the emerge man page or
refer to the Gentoo Handbook.
[snip]
livecd / # emerge -pv dev-lang/python sys-devel/gettext

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild N ] dev-perl/Locale-gettext-1.05 0 kB
[ebuild N ] sys-apps/help2man-1.36.4 USE="nls" 0 kB
[ebuild U ] sys-devel/automake-1.10.1 [1.10] 0 kB
[ebuild N ] sys-apps/attr-2.4.39 USE="nls" 0 kB
[ebuild N ] sys-apps/acl-2.2.45 USE="nls (-nfs)" 0 kB
[ebuild R ] sys-devel/gettext-0.17 USE="acl* nls openmp* -doc -emacs -nocxx" 0 kB
[ebuild U ] sys-apps/coreutils-6.10-r2 [6.4] USE="acl* nls* (-selinux) -static -vanilla% -xattr%" 0 kB
[ebuild N ] dev-libs/openssl-0.9.8g USE="(sse2) zlib -bindist -emacs -gmp -kerberos -test" 0 kB
[ebuild N ] app-misc/ca-certificates-20070303-r1 0 kB
[ebuild U ] dev-lang/python-2.4.4-r9 [2.4.3-r4] USE="berkdb* gdbm* ipv6* ncurses* readline* ssl* -bootstrap -build* -doc -examples% -nocxx -nothreads% -tk -ucs2" 0 kB
[blocks B ] dev-perl/Locale-gettext (is blocking dev-lang/perl-5.8.8-r2)

Total: 10 packages (3 upgrades, 6 new, 1 reinstall, 1 block), Size of downloads: 0 kB
livecd / # time emerge -v dev-lang/perl
[snip]
real 3m0.727s
user 2m31.620s
sys 0m26.300s
livecd / # time emerge -v dev-perl/Locale-gettext sys-apps/help2man sys-devel/automake
[snip]
real 0m23.115s
user 0m12.390s
sys 0m6.010s
livecd / # ls -l /usr/lib/libexpat.*
-rw-r--r-- 1 root root 245644 May 28 01:03 /usr/lib/libexpat.a
-rw-r--r-- 1 root root 795 May 28 01:03 /usr/lib/libexpat.la
lrwxrwxrwx 1 root root 17 May 28 01:03 /usr/lib/libexpat.so -> libexpat.so.1.5.2
lrwxrwxrwx 1 root root 17 May 28 01:03 /usr/lib/libexpat.so.1 -> libexpat.so.1.5.2
-rwxr-xr-x 1 root root 137200 May 28 01:03 /usr/lib/libexpat.so.1.5.2
livecd / # ln -s /usr/lib/libexpat.so.1.5.2 /usr/lib/libexpat.so.0
livecd / # time emerge -v sys-apps/attr
[snip]
real 0m25.678s
user 0m14.950s
sys 0m7.770s
livecd / # rm /usr/lib/libexpat.so.0
livecd / # time emerge -v dev-lang/python sys-devel/gettext

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild N ] sys-apps/acl-2.2.45 USE="nls (-nfs)" 0 kB
[ebuild R ] sys-devel/gettext-0.17 USE="acl* nls openmp* -doc -emacs -nocxx" 0 kB
[ebuild U ] sys-apps/coreutils-6.10-r2 [6.4] USE="acl* nls* (-selinux) -static -vanilla% -xattr%" 0 kB
[ebuild N ] dev-libs/openssl-0.9.8g USE="(sse2) zlib -bindist -emacs -gmp -kerberos -test" 0 kB
[ebuild N ] app-misc/ca-certificates-20070303-r1 0 kB
[ebuild U ] dev-lang/python-2.4.4-r9 [2.4.3-r4] USE="berkdb* gdbm* ipv6* ncurses* readline* ssl* -bootstrap -build* -doc -examples% -nocxx -nothreads% -tk -ucs2" 0 kB

Total: 6 packages (2 upgrades, 3 new, 1 reinstall), Size of downloads: 0 kB
[snip]
real 8m28.228s
user 8m2.810s
sys 3m15.970s
livecd / # time emerge -v sys-apps/attr
[snip]
real 0m26.581s
user 0m15.620s
sys 0m7.870s
livecd / # time emerge --resume
[snip]
real 73m12.690s
user 73m37.750s
sys 18m11.260s


Once that was done, some configuration files had to be updated.



livecd / # etc-update
Scanning Configuration files...
The following is the list of files which need updating, each
configuration file is followed by a list of possible replacement files.
1) /etc/DIR_COLORS (1)
2) /etc/bash/bashrc (1)
3) /etc/rmt (1)
Please select a file to edit by entering the corresponding number.
(don't use -3, -5, -7 or -9 if you're unsure what to do)
(-1 to exit) (-3 to auto merge all remaining files)
(-5 to auto-merge AND not use 'mv -i')
(-7 to discard all updates)
(-9 to discard all updates AND not use 'rm -i'): -5

Replacing /etc/DIR_COLORS with /etc/._cfg0000_DIR_COLORS


Replacing /etc/bash/bashrc with /etc/bash/._cfg0000_bashrc


Replacing /etc/rmt with /etc/._cfg0000_rmt

Exiting: Nothing left to do; exiting. :)
livecd / # env-update && source /etc/profile
>>> Regenerating /etc/ld.so.cache...


Now I have to install some additional utilities.



livecd / # time emerge -v sysklogd
[snip]
real 0m11.592s
user 0m4.530s
sys 0m1.540s
livecd / # rc-update add sysklogd default
* sysklogd added to runlevel default
livecd / # time emerge -v dcron
[snip]
real 0m25.435s
user 0m13.160s
sys 0m5.470s
livecd / # rc-update add dcron default
* dcron added to runlevel default
livecd / # time emerge -v xfsprogs jfsutils reiserfsprogs
[snip]
real 2m3.519s
user 1m24.870s
sys 0m26.020s
livecd / # time emerge -v pciutils usbutils debianutils portage-utils ethtool esearch cfv screen rar vim

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild N ] app-admin/eselect-1.0.10 USE="-bash-completion -doc -vim-syntax" 150 kB
[ebuild N ] dev-libs/libusb-0.1.12-r1 USE="-debug -doc" 381 kB
[ebuild N ] app-emulation/emul-linux-x86-compat-20071125-r1 975 kB
[ebuild N ] sys-apps/pciutils-2.2.10 USE="zlib -network-cron" 230 kB
[ebuild U ] sys-apps/debianutils-2.28.2 [2.15-r1] USE="-static (-build%*)" 135 kB
[ebuild N ] app-portage/portage-utils-0.1.29 78 kB
[ebuild N ] sys-apps/ethtool-6 127 kB
[ebuild N ] app-portage/esearch-0.7.1 LINGUAS="-it" 11 kB
[ebuild N ] app-arch/cfv-1.18.1 65 kB
[ebuild N ] app-misc/screen-4.0.3 USE="pam -debug -multiuser -nethack (-selinux)" 821 kB
[ebuild N ] app-admin/eselect-vi-1.1.5 2 kB
[ebuild N ] app-admin/eselect-ctags-1.3 7 kB
[ebuild N ] sys-apps/usbutils-0.73 USE="zlib -network-cron" 170 kB
[ebuild N ] app-arch/rar-3.7.1 760 kB
[ebuild N ] dev-util/ctags-5.7 USE="-ada" 281 kB
[ebuild N ] app-editors/vim-core-7.1.266 USE="acl nls -bash-completion -livecd" 8,963 kB
[ebuild N ] app-editors/vim-7.1.266 USE="acl gpm nls perl python -bash-completion -cscope -minimal -ruby -vim-pager -vim-with-x" 0 kB
[ebuild N ] app-vim/gentoo-syntax-20070506 USE="-ignore-glep31" 19 kB

Total: 18 packages (1 upgrade, 17 new), Size of downloads: 13,167 kB
[snip]
real 6m58.038s
user 2m51.540s
sys 0m58.820s


Set the timezone...



livecd / # ln -sf /usr/share/zoneinfo/America/Los_Angeles /etc/localtime
livecd / # ls -l /etc/localtime
lrwxrwxrwx 1 root root 39 May 28 07:32 /etc/localtime -> /usr/share/zoneinfo/America/Los_Angeles


Now the real fun begins... configuring the kernel! Unfortunately, I had to miss out on the excitement, because in the case of this install, I already had a .config to use from a similar server build.



livecd / # time USE="symlink" emerge -v gentoo-sources
[snip]
real 9m22.119s
user 0m21.290s
sys 0m7.070s
livecd / # sftp 172.28.22.80
Connecting to 172.28.22.80...
[snip]
Fetching /usr/src/linux-2.6.24-gentoo-r7/.config to .config
/usr/src/linux-2.6.24-gentoo-r7/.config 100% 40KB 39.6KB/s 00:00
sftp> quit
livecd / # mv .config /usr/src/linux/
livecd / # cd /usr/src/linux
livecd / # make menuconfig
[snip]
#
# configuration written to .config
#


*** End of Linux kernel configuration.
*** Execute 'make' to build the kernel or try 'make help'.


When building the kernel, I ran into another problem, but I resolved it and was able to install the kernel, using the lilo bootloader.



livecd linux # time make && make modules_install
[snip]
/usr/src/linux-2.6.24-gentoo-r8/scripts/gen_initramfs_list.sh: line 239: mktemp: command not found
make[1]: *** [usr/initramfs_data.cpio.gz] Error 127
make: *** [usr] Error 2

real 0m3.980s
user 0m3.130s
sys 0m0.880s
livecd linux # emerge -pv mktemp

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild N ] sys-apps/mktemp-1.5 69 kB
[blocks B ] sys-apps/mktemp (is blocking sys-apps/coreutils-6.10-r2)
[blocks B ] >=sys-apps/coreutils-6.10 (is blocking sys-apps/mktemp-1.5)

Total: 1 package (1 new, 2 blocks), Size of downloads: 69 kB
livecd linux # time emerge -v coreutils

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild R ] sys-apps/coreutils-6.10-r2 USE="acl nls (-selinux) -static -vanilla -xattr" 0 kB
[snip]
* Make sure you run 'hash -r' in your active shells.
* GNU info directory index is up-to-date.

real 2m1.467s
user 1m50.680s
sys 0m34.820s
livecd linux # hash -r
livecd linux # ls /bin/mktemp
/bin/mktemp
livecd linux # make && make modules_install
[snip]
livecd linux # cp arch/x86_64/boot/bzImage /boot/kernel-2.6.24-0
livecd linux # cp .config /boot/config-2.6.24-0
livecd linux # time emerge -v lilo
[snip]
real 0m36.843s
user 0m12.720s
sys 0m3.940s
livecd linux # vim /etc/lilo.conf
[snip]
livecd linux # cat /etc/lilo.conf
compact
lba32
boot=/dev/sda
prompt
timeout=50
default=2.6.24-0
menu-scheme=Wb:bw:Wb:Yb

image=/boot/kernel-2.6.24-0
label=2.6.24-0
read-only
root=/dev/sda5
livecd linux # /sbin/lilo
Added 2.6.24-0 *


Finally, I edit the fstab and update a few settings.



livecd linux # mv /etc/fstab /etc/fstab.default
livecd linux # vim /etc/fstab
[snip]
livecd linux # cat /etc/fstab
# /etc/fstab: static file system information.
/dev/sda1 /boot ext2 noauto,noatime 1 2
/dev/sda5 / ext3 noatime 0 1
/dev/sda6 /home ext3 noatime 0 2
/dev/sda7 /opt/vmware/virtual_machines/vm0 ext3 noatime 0 2
/dev/sda8 none swap sw 0 0

/dev/cdrom /mnt/cdrom auto noauto,ro 0 0
/dev/fd/0 /mnt/floppy auto noauto 0 0

proc /proc proc defaults 0 0
shm /dev/shm tmpfs nodev,nosuid,noexec 0 0

livecd linux # mkdir /opt/vmware/
livecd linux # mkdir /opt/vmware/virtual_machines/
livecd linux # mkdir /opt/vmware/virtual_machines/vm0
livecd linux # vim /etc/conf.d/hostname
[snip]
livecd linux # vim /etc/conf.d/net
[snip]



After this, I rebooted and it worked, except that I forgot to set a root password, so I booted the install CD again and set it. After that, everything was fine.

ARC1450
07-24-2008, 05:51 PM
It kinda sucks that Gentoo doesn't support a stage1 install any more.

Back in the day (2002-ish) I did a stage1 install on a K6-3 450. 72 hours of straight compilation, baby! Boo-yeah!

The server install on my file server is still from like 2001 or 2002. :-\ I think it's time for a new install; she's gettin' a little crusty around the edges and turning flaky on me. But I still blame that on portage and the devs going downhill. :(

FreeBSD maybe. . . :-\

Anywho. . .nice to see someone else still does this stuff just for laughs. I don't feel so bad now. hehehe

MentholMoose
07-24-2008, 10:17 PM
Haha, and I thought the stage1 install I did on a P3 800 was bad. What's worse is that originally I was doing a LFS install on it... I gave up after about two days.

Upgrading my file server has also been on my agenda for a while, but she's only from 2004, so she still has some life in her. :)

Anyway, even if stage1 isn't supported, at least they still provide the stage1 tarballs, even for the latest 2008.0 release.

Unfortunately I think this install might have been a waste of time, because VMware just announced they are releasing ESXi for free, and the primary use of this server was virtualization. :(

p2501
08-03-2008, 01:19 PM
IF someone was going gentoo, I wouldn't recommend anything other than a stage1 install, that being the most teaching for the interested.

But the way you went about installing is interesting to say at least. Thumbs up! :) Haven't touched gentoo for a while now, but the fact that they even document something like this... maybe they had to, since they don't provide stage1 install isos anymore. But hell, if the tarball's still there..

Still remembering those 9:30h OOo compile sessions on my trusty old dual XP.... it was just too fun, heh. But having tried Arch on PPC and seeing how fast pacman is even on that lowend box... portage was python, right? Someone should port it to C, I think it needs to be faster in terms of database searching.. back then it got sometimes really slow on a full install with lots of ebuilds, is that still the case?

MentholMoose
08-06-2008, 09:27 PM
IF someone was going gentoo, I wouldn't recommend anything other than a stage1 install, that being the most teaching for the interested.

But the way you went about installing is interesting to say at least. Thumbs up! :) Haven't touched gentoo for a while now, but the fact that they even document something like this... maybe they had to, since they don't provide stage1 install isos anymore. But hell, if the tarball's still there..

Still remembering those 9:30h OOo compile sessions on my trusty old dual XP.... it was just too fun, heh. But having tried Arch on PPC and seeing how fast pacman is even on that lowend box... portage was python, right? Someone should port it to C, I think it needs to be faster in terms of database searching.. back then it got sometimes really slow on a full install with lots of ebuilds, is that still the case?
Yeah, portage is written in python. It can get slow, but I'm not sure how much it depends on the programming language. Hard drive performance makes a difference, and also drive fragmentation (e.g. if you wipe out /usr/portage, and restore it with a fresh tarball, portage performance will improve). There are also utilities for avoiding some of the slower tasks. For example, a tool called esearch can be used instead of "emerge --search".

p2501
08-11-2008, 09:17 AM
I knew about esearch, but I never wiped my /usr/portage. I guess we know now who's at fault here.. ^^;

ARC1450
08-15-2008, 06:35 PM
Occasionally I just do an "rm -rf /usr/portage/*" and then "emerge --sync" and let it do it's thing. I've never ran into a slow portage, though, unless the computer was just slow as balls. lol