LFS 6.7 z package users

Przygotowanie do wykorzystania tej metody trzeba zacząć już na etapie budowania coreutils w rozdziale 5 książki.Dokładny opis czynności na stronie metody Package Users w sekcji: PART 2: LFS Specifics

Dodatkowo można utworzyć na czas instalacji plik /usr/lib/pkgusr/ldconfig z zawartością:

#!/bin/bash
echo ”*** ldconfig: this is a dummy. Run /sbin/ldconfig as root!”
exit 0
Zapobiegnie to błędom instalacji programów wykonujących[break] podczas instalacji polecenie ldconfig. Instalując z konta roota nie ma problemu, z konta użytkownika wystąpiłby błąd. Ponieważ ścieżka /usr/lib/pkgusr/ znajduje się na początku przeszukiwania program będzie uruchamiał nasz spreparowany ldconfig nie powodując błędu. Informacja o tym wyląduje w logu i później będzie można wykonać to polecenie ręcznie z konta root-a.

Warto też dodać do pliku /etc/pkgusr/skel-package/build własne flagi (o ile się ich używa oczywiście) np:

export MAKEFLAGS=”-j 2”

Poniżej notes dla każdego instalowanego w Rozdziale 6 pakietu:

Instalacja Linux API Headers – ok
Instalacja Man-pages – ok
Instalacja Glibc

– skrypt configure zglasza brak autoconf – to jest ok, można zignorować o ile nie dokonywało się zmian w configure.in

– zlikwidowanie błędów uprawnień:
chgrp install /usr/include/scsi/ && chmod g+w,o+t /usr/include/scsi/

– dodanie polskich znaków:
localedef -i pl_PL -f UTF-8 pl_PL.UTF-8

Instalacja Zlib – ok
Instalacja Binutils

– jeśli zamontujesz standardowo /dev/pts nie przejdziesz testów binutils. Poprawne przeprowadzenia testów wymaga zamontowania ww. katalogu w następujący sposób:
mount -vt devpts -o gid=4,mode=0620 devpts $LFS/dev/pts

– uprawnienia do /usr/share/info/dir:
chgrp install /usr/share/info/dir && chmod g+w,o+t /usr/share/info/dir

Instalacja GMP – ok
Instalacja MPFR – ok
Instalacja MPC – ok
Instalacja GCC

– z konta root:
rm -f /usr/lib/libstdc++.so
rm -f /usr/lib/libstdc++.so.6
rm -f /usr/lib/libgcc_s.so{,.1}

Instalacja Sed – ok
Instalacja Pkg-config – ok
Instalacja Ncurses – ok
Instalacja Util-linux-ng

– z konta root:
chgrp install /usr/lib/pkgconfig/
chmod g+w,o+t /usr/lib/pkgconfig/
chgrp tty /usr/bin/wall
chmod g+s /usr/bin/wall
chown root /bin/mount
chmod 4755 /bin/mount
chown root /bin/mount
chmod 4755 /bin/umount

Instalacja E2fsprogs – ok
Instalacja Coreutils

– przed przenoszeniem programów z konta root:
rm /bin/{cat,echo,pwd,stty}

Instalacja Iana-Etc – ok
Instalacja Bison

– z konta root:
chgrp install /usr/share/aclocal/
chmod g+w /usr/share/aclocal/

Instalacja Procps – ok
Instalacja Grep – ok
Instalacja Bash

przed make install pozostać zalogowanym jako user bash, zalogować się na drugiej konsoli do środowiska chroot jako root i nastepnie:
rm /bin/bash
z konta użytkownika bash:
ln -s /tools/bin/bash /bin/bash
i dopiero potem
make instal

lInstalacja Libtool – ok
Instalacja GDBM – ok
Instalacja Inetutils

– poniższe polecenia próbowały zainstalować programy z ustawionym bitem setuid. Skrypty zapobiegły temu. Jeśli jest taka potrzeba trzeba to ustawić ręcznie.
*** install -c rsh -o root -m 4775 /usr/bin/rsh
*** install -c traceroute -o root -m 4775 /usr/bin/traceroute
*** install -c rlogin -o root -m 4775 /usr/bin/rlogin
*** install -c rcp -o root -m 4775 /usr/bin/rcp
*** install -c ping -o root -m 4775 /usr/bin/ping
*** install -c ping6 -o root -m 4775 /usr/bin/ping6

Instalacja Perl

przed make install pozostać zalogowanym jako user perl, zalogować się na drugiej konsoli do środowiska chroot jako root i nastepnie:
rm /usr/bin/perl
z konta użytkownika bash:
ln -s /tools/bin/perl /usr/bin/perl
i dopiero potem make install

Instalacja Automake – ok
Instalacja Bzip2 -ok
Instalacja Diffutils – ok
Instalacja Gawk – ok
Instalacja File – ok
Instalacja Findutils – ok
Instalacja Flex – ok
Instalacja Gettext – ok
Instalacja Groff – ok
Instalacja GRUB – ok
Instalacja Gzip – ok
Instalacja IPRoute2 – ok
Instalacja Kbd – ok
Instalacja Less – ok
Instalacja Make – ok
Instalacja Man-DB – ok

– z konta root:
chgrp install /usr/share/man
chmod g+w /usr/share/man

Instalacja Module-Init-Tools – ok
Instalacja Patch – ok
Instalacja Psmisc – ok
Instalacja Shadow

– z konta root:
chgrp -R -v install /usr/share/man/
chmod -R -v g+w /usr/share/man/

po instalacji zakomentować GROUP=1000 w /etc/default/useradd żeby uniknąć komunikatów błedów podczas dodawania nowego użytkownika/instalacji pakietu

Instalacja Sysklogd

chown root:shadow /bin/su
poprawic makefile tam gdzie chce instalowac strony man – owner,group

Instalacja Sysvinit

albo usunac z src/Makefile linijek odpowiedzialnych za tworzenie /dev/initctl albo w systemie hosta utworzyc ten plik
mknod -m 600 /dev/initctl p

Instalacja Tar – ok
Instalacja Texinfo – ok
Instalacja Udev

-jako root:
mknod -m0666 /lib/udev/devices/null c 1 3

Instalacja Vim – ok
Installation of LFS-Bootscripts – ok
Instalacja Linux

– z konta root:
chgrp install /boot
chmod g+w /boot

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *