Page 1 of 2
USE-Flags für Gentoo 64bit Server
Posted: 2005-10-31 09:40
by simcen
Hallo Zusammen
Ich habe in der Vergangenheit bemerkt, dass meine USE-FLags nicht optimal sind.
Im Moment sehen sie folgendermassen aus:
Code: Select all
USE="-gpm acl -acpi -alsa apache2 -apm -arts -bonobo bzlib berkdb crypt cups curl ftp gd gif -gnome -gdbm -ghoto2 -gtk -gtk2 imap innodb -ipv6 jpeg -kde ldap libwww mai dir mbox mcal mime ming mysql -motif ncurses nls pear pam pdflib perl png posix ssl session sharedmem simplexml sockets tcpd truetype tiff -xmms zlib xml xml2 xmlrpc xpm xsl -oss java qt zlib vhosts -X"
Hat jemand diese schon optimiert für 0815-Dienste wie LAMPS, FTP(s) usw. und hat die Güte, diese hier mal zu präsentieren?
Freue mich auf eine angeregte Diskussion was sinnvoll oder weniger sinnvoll ist :)
Gruss
Simon
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-10-31 10:25
by Roger Wilco
-cups (wozu brauchst du CUPS auf einem dedizierten Server?)
+ipv6 (kommt auf das Einsatzgebiet an. Ich brauche das z. B.)
-ldap (hast du vor bei einem einzelnen Server OpenLDAP einzurichten?)
-pdflib (nur wenn du sie wirklich brauchst)
-sockets (ist sicherer ;))
-java (nur wenn du es wirklich brauchst)
-qt (QT? Auf einem Server?)
+hardenedphp (wenn du PHP einsetzen willst, nimm den Hardened-Patch)
Ansonsten solltest du vielleicht alle (globalen) USE-Flags in /usr/portage/profiles/use.desc nochmal durchgehen und dir überlegen, was du davon wirklich brauchst.
Die effektiven USE-Flags bekommst du dann mit `emerge info` angezeigt. Die Profile setzen nämlich selbst schon gewisse Flags.
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-10-31 11:34
by Joe User
Grundsätzlich solltest Du in der make.conf zuerst alle USEflags deaktivieren (
USE="-*") und danach nur die notwendigen globalen USEflags deklarieren. Alle anderen USEflags deklarierst Du über die
/etc/portage/packages.use. Hier mal ein (nicht perfektes) Beispiel von meiner Bastelkiste:
Code: Select all
test ~ # emerge --info
Portage 2.0.53_rc6 (hardened/x86/2.6, gcc-3.3.6, glibc-2.3.5-r2, 2.6.13-hardened-r2 i686)
=================================================================
System uname: 2.6.13-hardened-r2 i686 Intel(R) Celeron(R) CPU 2.40GHz
Gentoo Base System version 1.12.0_pre9
dev-lang/python: 2.4.2
sys-apps/sandbox: 1.2.13
sys-devel/autoconf: 2.13, 2.59-r7
sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils: 2.16.1
sys-devel/libtool: 1.5.20
virtual/os-headers: 2.6.11-r2
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -pipe -march=pentium4 -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -pipe -march=pentium4 -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks sandbox sfperms strict"
GENTOO_MIRRORS="ftp://ftp6.uni-muenster.de/pub/linux/distributions/gentoo ftp://ftp.mesh-solutions.com/gentoo http://distfiles.gentoo.org"
LANG="en_US.UTF-8"
LC_ALL="en_US.UTF-8"
LDFLAGS="-Wl,-O1"
LINGUAS="en"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="acl apache2 authdaemond bcmath berkdb bzip2 calendar cli crypt dba dlloader erandom fam ftp gd gdbm geoip glibc-omitfp gmp hardened iconv imap ithreads jpeg memlimit mhash mysql mysqli ncurses nls no-htdocs no-suexec nocd nptl nptlonly pam pcntl pcre pear perl pic png posix pwdb python readline sasl session simplexml soap sockets spl srp ssl symlink sysvipc tcpd threads tiff tokenizer truetype ucs2 udev unicode urandom userlocales vda x86 xml xml2 xmlrpc xsl zlib linguas_en userland_GNU kernel_linux elibc_glibc"
Unset: ASFLAGS, CTARGET, MAKEOPTS
test ~ # cat /etc/portage/package.use
dev-db/mysql -berkdb -ssl -utf8
net-libs/courier-authlib -gdbm -mysql
net-mail/courier-imap -gdbm -mysql
dev-libs/cyrus-sasl -gdbm -mysql
mail-mta/postfix -mysql
net-www/apache mpm-prefork -ssl -threads
dev-lang/php flatfile inifile libedit -ncurses -readline -sasl -threads
net-misc/openssh chroot libedit
HTH
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-10-31 18:51
by simcen
Joe User wrote:Grundsätzlich solltest Du in der make.conf zuerst alle USEflags deaktivieren (USE="-*") und danach nur die notwendigen globalen USEflags deklarieren. Alle anderen USEflags deklarierst Du über die /etc/portage/packages.use. Hier mal ein (nicht perfektes) Beispiel von meiner Bastelkiste:
Sorry hab ich nicht ganz kopiert. Wozu ein USE="-*" wenn ich nachher sowieso wieder meine benötigten Packages deklariere?
Ist dazwischen ein
revdep-rebuild nötig?
@Roger Wilco
Danke für deine Hinweise! Allerdings wenn ich ein -ldap und ein devrep-rebuild anschliessend, verhauts mir den Apachen... Suche noch nach der Ursache.
Liebe Grüsse
Simon
PS: Freut mich dass das Interesse an Gentoo 64bit doch recht gross ist :)
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-10-31 19:31
by Roger Wilco
epox wrote:Sorry hab ich nicht ganz kopiert. Wozu ein USE="-*" wenn ich nachher sowieso wieder meine benötigten Packages deklariere?
Weil in den Profilen auch USE-Flags gesetzt werden, die du vermutlich nicht brauchst. Je nachdem welche Kombination du wählst, ist es schneller erstmal alle USE-Flags zu deaktivieren und dann die gewünschten wieder reinzunehmen.
epox wrote:Ist dazwischen ein revdep-rebuild nötig?
Kommt darauf an, was du änderst. Du kannst dir ja `emerge -upDv --newuse world` angucken. ;)
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-10-31 19:42
by Joe User
epox wrote:PS: Freut mich dass das Interesse an Gentoo 64bit doch recht gross ist :)
Bei mir beschränkt es sich auf 32bit, aber die Grundlagen sind eh die Gleichen ;)
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-11-01 13:34
by simcen
Roger Wilco wrote:Weil in den Profilen auch USE-Flags gesetzt werden, die du vermutlich nicht brauchst. Je nachdem welche Kombination du wählst, ist es schneller erstmal alle USE-Flags zu deaktivieren und dann die gewünschten wieder reinzunehmen.
Hm, in der /etc/profile, /etc/profile.env oder in /etc/env.d finde ich keine Dateien, die USE-Flags setzen. Eine ~/.profile existiert auch nicht... Was gehört alles noch zum "Profil"?
PS:
Versuche mod_php zu mergen.
Beim configure bricht er mit folgender Meldung ab:
checking for yp_match in -lnsl... no
checking for yp_match in -lc... no
configure: error: Unable to find required yp/nis library
Habe bereits lange nachgeforscht, aber kein Package gefunden, welches mir dieses Problem löst. Ã?berall steht nur "YP Support"... Was das ist und wo ich das finde - kein Plan...
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-11-01 18:36
by Roger Wilco
simcen wrote:Hm, in der /etc/profile, /etc/profile.env oder in /etc/env.d finde ich keine Dateien, die USE-Flags setzen. Eine ~/.profile existiert auch nicht... Was gehört alles noch zum "Profil"?
Schau mal in /usr/portage/profiles/ bzw. dem Verzeichnis, auf das /etc/make.profile linkt.
simcen wrote:Versuche mod_php zu mergen.
Nimm lieber gleich dev-lang/php mit den entsprechenden USE-Flags.
simcen wrote:Habe bereits lange nachgeforscht, aber kein Package gefunden, welches mir dieses Problem löst. Ã?berall steht nur "YP Support"... Was das ist und wo ich das finde - kein Plan...
YP = Yellow Pages. Hast du vielleicht das USE-Flag "nis" gesetzt?
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-11-01 19:28
by simcen
Roger Wilco wrote:
Schau mal in /usr/portage/profiles/ bzw. dem Verzeichnis, auf das /etc/make.profile linkt.
Danke, das hat geholfen!
Roger Wilco wrote:YP = Yellow Pages. Hast du vielleicht das USE-Flag "nis" gesetzt?
Nö - nirgends:
Code: Select all
celina ~ # emerge --info
Portage 2.0.51.22-r3 (default-linux/amd64/2005.1, gcc-3.4.4, glibc-2.3.5-r2, 2.6.13-gentoo-r3 x86_64)
=================================================================
System uname: 2.6.13-gentoo-r3 x86_64 AMD Athlon(tm) 64 Processor 3000+
Gentoo Base System version 1.6.13
dev-lang/python: 2.3.5, 2.4.2
sys-apps/sandbox: 1.2.12
sys-devel/autoconf: 2.13, 2.59-r6
sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils: 2.15.92.0.2-r10
sys-devel/libtool: 1.5.20
virtual/os-headers: 2.6.11-r2
ACCEPT_KEYWORDS="amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=k8 -fomit-frame-pointer -funroll-loops -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=k8 -fomit-frame-pointer -funroll-loops -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks sandbox sfperms strict"
GENTOO_MIRRORS="ftp://sunsite.cnlab-switch.ch/mirror/gentoo"
LINGUAS="de"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="amd64 acl apache2 avi berkdb bitmap-fonts bzlib crypt curl dir eds emboss encode foomaticdb fortran ftp gd gif gstreamer hardenedphp imap imlib innodb ipv6 jpeg libwww lzw lzw-tiff mai mbox mcal mime ming mp3 mpeg mysql ncurses nls opengl pam pear perl png posix python quicktime readline sdl session sharedmem simplexml ssl tcpd tiff truetype truetype-fonts type1-fonts udev usb userlocales vhosts xml xml2 xmlrpc xpm xsl xv zlib linguas_de userland_GNU kernel_linux elibc_glibc"
Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, PORTDIR_OVERLAY
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-11-02 17:31
by Joe User
Geht es wirklich um einen Server, oder eher einen Desktop? Für einen Server würde ich Dir (basierend auf Deiner obigen Konfiguration) folgende /etc/make.conf und ein Rekompilieren des kompletten Systems empfehlen:
Code: Select all
cat > /etc/make.conf << "EOF"
ACCEPT_KEYWORDS="amd64"
CFLAGS="-O2 -march=k8 -fomit-frame-pointer -funroll-loops -pipe"
CXXFLAGS="-O2 -march=k8 -fomit-frame-pointer -funroll-loops -pipe"
GENTOO_MIRRORS="ftp://sunsite.cnlab-switch.ch/mirror/gentoo http://distfiles.gentoo.org"
USE="-* acl apache2 berkdb bzip2 bzlib crypt curl ftp gd gdbm gif gmp hardenedphp iconv imap innodb jpeg libwww lzw lzw-tiff mbox mcal memlimit mhash mime ming mysql ncurses nls nocd pam pcntl pcre pear perl png posix pwdb python readline sasl session sharedmem simplexml sockets ssl symlink tcpd tiff truetype ucs2 udev unicode userlocales vhosts xml xml2 xmlrpc xsl zlib"
PORTAGE_NICENESS="3"
PORTDIR="/usr/portage"
PORTAGE_TMPFS="/dev/shm"
PORTAGE_TMPDIR="/var/tmp"
PKGDIR="/usr/portage/packages"
PORT_LOGDIR="/var/log/portage"
DISTDIR="/usr/portage/distfiles"
PORTDIR_OVERLAY="/usr/local/portage"
RSYNC_EXCLUDEFROM="/etc/portage/rsync_excludes"
FETCHCOMMAND="/usr/bin/wget -t 3 --passive-ftp -P ${DISTDIR} ${URI}"
RESUMECOMMAND="/usr/bin/wget -c -t 3 --passive-ftp -P ${DISTDIR} ${URI}"
FEATURES="-* autoconfig distlocks sandbox sfperms strict"
AUTOCLEAN="yes"
LINGUAS="de en"
EOF
emerge -DNe system && etc-update
emerge -DNe world && etc-update
Anschliessend wäre die Ausgabe von folgendem Befehl hilfreich:
HTH
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-11-03 20:28
by simcen
Hello Joe User
Tausend Dank für die wertvollen Tipps. Ich denke, dass ich jetzt ein sauberes, lauffähiges System habe!
Die ausgabe von
emerge -p --depclean findest du hier:
http://celina.simcen.net/emerge.txt
Gibt es Kommentare dazu?
Versuche nun mal weitere Komponenten zu aktivieren!
Gruss, Simon
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-11-03 20:33
by Joe User
Einige Pakete können/sollten noch deinstalliert werden:
Code: Select all
emerge -C gpm ttmkfdir fontconfig openldap glib opengl-update
Edit: Was ergibt Folgendes?
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-11-04 11:24
by simcen
Code: Select all
celina log # emerge -pP world
>>> These are the packages that I would unmerge:
sys-libs/db
selected: 1.85-r2
protected: 4.2.52_p2
omitted: none
sys-kernel/gentoo-sources
selected: 2.6.13-r3
protected: 2.6.13-r5
omitted: none
media-libs/freetype
selected: 2.1.9-r1
protected: 1.3.1-r4
omitted: none
sys-devel/automake
selected: 1.5 1.8.5-r3 1.6.3 1.7.9-r1 1.4_p6
protected: 1.9.6-r1
omitted: none
dev-lang/python
selected: 2.3.5
protected: 2.4.2
omitted: none
sys-devel/autoconf
selected: 2.13
protected: 2.59-r6
omitted: none
>>> 'Selected' packages are slated for removal.
>>> 'Protected' and 'omitted' packages will not be removed.
Ich habe momentan noch Probleme mit php. Werde gleich noch die Fehlermeldungen dazu posten.
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-11-04 11:46
by simcen
Also. Weder php5 noch php4 können kompiliert werden.
PHP5
celina ~ # cat /etc/portage/package.use
=dev-lang/php-5.0.5-r2 dba cli -sasl
sys-libs/glibc userlocales
celina ~ # ACCEPT_KEYWORDS="~amd64" emerge -av dev-lang/php
<snip>
rypto -ldl -lxml2 -lz -lm -lcrypt -lxml2 -lz -lm -lxslt -lxml2 -lz -lm -lcrypt -o sapi/cli/php
ext/ming/ming.o(.text+0x657): In function `zif_swfaction___construct':
: undefined reference to `compileSWFActionCode'
collect2: ld returned 1 exit status
make: *** [sapi/cli/php] Error 1
!!! ERROR: dev-lang/php-5.0.5-r2 failed.
!!! Function php5_0-sapi_src_compile, Line 506, Exitcode 2
!!! make failed
!!! If you need support, post the topmost build error, NOT this status message.
PHP4
celina ~ # emerge -av dev-php/php
<snip>
checking whether to include YP support... yes
checking for yp_match in -lnsl... no
checking for yp_match in -lc... no
configure: error: Unable to find required yp/nis library
!!! Please attach the config.log to your bug report:
!!! /var/tmp/portage/php-4.4.0-r1/work/php-4.4.0/config.log
!!! ERROR: dev-php/php-4.4.0-r1 failed.
!!! Function econf, Line 485, Exitcode 0
!!! econf failed
!!! If you need support, post the topmost build error, NOT this status message.
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-11-04 12:13
by Joe User
Python 2.3 kannst Du ebenfalls noch deinstallieren:
Code: Select all
python-updater
emerge -P python
rm -rf /usr/lib/python2.3
Dein PHP-Problem liegt an dem USEflag ming:
Code: Select all
ACCEPT_KEYWORDS="~amd64" USE="-ming" emerge -av 'dev-lang/php-5*'
HTH
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-11-04 18:44
by simcen
Hey, you're my man :-)
Wie kann ich dir nur danken? 8)
Lieber Gruss
Simon
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-11-04 19:26
by Joe User
simcen wrote:Wie kann ich dir nur danken? 8)
5 Arbeitseinheiten zu je xxEUR ;) SCNR
Falls wir uns mal treffen sollten (nächstes RootForum-Treffen?), trinke ich ein Bierchen auf Deine Kosten 8)
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-11-04 19:52
by simcen
Hrhr :-)
Hm, wäre wirklich mal eine Reise wert, ausser im Europapark war ich noch kaum in Deutschland :oops:
Naja, bis dahin lass uns ma virtuell prosten 8)
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-11-04 20:07
by oxygen
ich würde auf jeden Fall auch nptl aufnehmen. Besonders auf Servern mit vielen Threads (das sollte eigentlich auf jeden Server zutreffen) bringt das ordentlich was.
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-11-04 20:16
by Joe User
Ich muss in den nächsten Tagen eh einen neuen Server (Gentoo-Hardened) aufsetzen und werde meine Vorgehensweise mitschreiben (eventuell auch kommentieren :roll: ). Bei Interesse stelle ich meine Notizen anschliessend gerne zur Verfügung.
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-11-04 20:52
by simcen
Das tönt sehr vielversprechend!
Natürlich bin ich da interessiert. Würde mich auch auf eine noch nicht definierte Art revanchieren ;)
@øxygen
Danke für den Tipp! Werde das bei Gelegenheit ausprobieren.
Zum GLück habe ich ein Server zum basteln :)
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-11-04 22:18
by andreask2
Joe User wrote:Ich muss in den nächsten Tagen eh einen neuen Server (Gentoo-Hardened) aufsetzen und werde meine Vorgehensweise mitschreiben (eventuell auch kommentieren :roll: ). Bei Interesse stelle ich meine Notizen anschliessend gerne zur Verfügung.
Wie wäre es mit einem Beitrag im rootiewiki?
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-11-06 14:12
by simcen
Hei Joe User
Habe noch eine Frage:
Hat es einen speziellen Grund, dass du mbox in deinen USE-Flags verwendest?
Ich persönlich bevorzuge maildir, aber deine Meinung interessiert mich 8)
Cheers!
Simon
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-11-06 14:18
by Joe User
Ich nutze auf meinen Kisten kein mbox. Das USEflag stammt aus Deiner Ursprungskonfiguration, auf dessen Basis ich Dir eine optimierte Version Deiner /etc/make.conf erstellte ;)
Re: USE-Flags für Gentoo 64bit Server
Posted: 2005-11-06 14:20
by simcen
Uff, muss schon sagen dass ich jetzt ein wenig erleichtert bin... Naja, auf meine ursprünglichen USE-Flags zu schauen, war wohl nicht die beste Idee.
Also dann ändere ich das Ding mal auf Maildir :)
Bis Dann!