MESSAGE
DATE | 2009-12-22 |
FROM | Ruben Safir
|
SUBJECT | Subject: [NYLXS - HANGOUT] Server Upgrade report...part II
|
3) DHCPD
OK - DHCPD has a terrible history of being completely disfunctional. I have noticed this years ago with the Debian systems when Stallman's "pump" clients couldn't function with Vixie's DHCPD. And to make it all more interesting, the systems are designed to function as CLIENTS. To make them work as SERVERS is a bit more artful. I gave a quick look to see if I could just drop my /etc/dhcpd.conf file into place...no go. And YAST now has this strange MS-like idea now that you 'bind' a DHCPD server to an ethernet card...some that is COMPLETELY unecessary because DHCPD will simply ignor any cards that don't have configurations for for routes attached to cards configured in the DHCPD in the dhcpd.conf file.
So - on we go to download a the DCHPD soruce. But the chroot commands coming from god knows what config files refuse to allow for an install unless....you guess it..Ruben rewrites an entirely new init DHCPD script. That is four vital init scripts I had to write by hand...and more are coming.
4) MYSQL -
Yeah ... forget even discussing it. I have about 50 databases in my mysql directory. Not doing that through yast. Uninstalled with zyppher, dropped the database files directly from tar to their default /usr/local/var location. Installed my old my.conf file into etc and wrote yet another init script and installed with yast. installed by source....Init. Thank god for Monty Widus.
5) Apache 6) ModPerl 7) Embeprl
We have a large legacy development environment based on modeperl and apache. The default set up has a bunch of apache files spread out into little tibits with configuration files. A major PIA when I'm trying to get everything up. So download Apache and Modperl.. Compile goes smoth as hell..boy this used to be so much harder. Rewrite the Apache init script (script number 7) since modifying the existing one fails to work.
Then comes the major pot hole.
8) Installing Perl from Source
Installing Embperl is fairly simple and straight forward. You load up CPAN and type
install Embperl
and also all the other Perl modules we use including DBI:MySQL, LWP, Date::Parse, CARP, ect etc.
When trying to install Embperl with the installed openSuSE Perl I get this strange error...
which looks something like this, except it is for embperl
I'm getting weird errors like this
CPAN: Storable loaded ok (v2.18) CPAN: LWP::UserAgent loaded ok (v5.829) CPAN: Time::HiRes loaded ok (v1.9711)
I would like to connect to one of the following sites to get 'authors/01mailrc.txt.gz':
http://www.perl.org/CPAN/ ftp://ftp.perl.org/pub/CPAN/
Is it OK to try to connect to the Internet? [yes] yes Fetching with LWP: http://www.perl.org/CPAN/authors/01mailrc.txt.gz Going to read /root/.cpan/sources/authors/01mailrc.txt.gz ............................................................................DONE Fetching with LWP: http://www.perl.org/CPAN/modules/02packages.details.txt.gz Use of uninitialized value $file_length in numeric lt (<) at /usr/lib/ perl5/vendor_perl/5.10.0/LWP/UserAgent.pm line 845. Use of uninitialized value $file_length in concatenation (.) or string at /usr/lib/perl5/vendor_perl/5.10.0/LWP/UserAgent.pm line 847. Catching error: 'Transfer truncated: only out of 845183 bytes received ' at /usr/lib/perl5/5.10.0/CPAN.pm line 281 CPAN::shell() called at /usr/bin/cpan line 198 Going to read /root/.cpan/sources/authors/01mailrc.txt.gz ............................................................................DONE Fetching with LWP: http://www.perl.org/CPAN/modules/02packages.details.txt.gz Use of uninitialized value $file_length in numeric lt (<) at /usr/lib/ perl5/vendor_perl/5.10.0/LWP/UserAgent.pm line 845. Use of uninitialized value $file_length in concatenation (.) or string at /usr/lib/perl5/vendor_perl/5.10.0/LWP/UserAgent.pm line 847. Lockfile removed. Transfer truncated: only out of 845183 bytes received
.. and everything I try to download looks like this. So first, I delete the default ~/.cpan directory and reload everyhting. No luck. still broken. I do this about five time until I finally think I can't figure out how to fix this. So I post it to usenet comp.lang.perl.misc
http://groups.google.com/group/comp.lang.perl.misc/browse_thread/thread/bf82980de4152fcf/4206ac1e29107fb6?hl=en&lnk=gst&q=cpan#4206ac1e29107fb6
People try to help, but really there is no fix in view. So I decide I'll have to install a fresh Perl, because Perl without cpan is pretty useless. I download the latest perl. On the system is the broken 5.10.0. I download and compile 5.10.1 (which itself seems to have discovered another OpenSUSE 11.2 bug: See - http://groups.google.com/group/comp.lang.perl.misc/browse_thread/thread/201ee1896c1ec687/7e03ffcf522d1bba?hl=en&lnk=gst&q=mrbrklyn#7e03ffcf522d1bba
nd I have a fresh 5.10.1 installed under /usr/bin/perl and /usr/local/bin/perl5.10.1.
CPAN works, I download all the modules I needed as smoth as glass. I recompile modperl and install DBI, EMBPREL, fix the Apache2 config files, and test everything out after writing yet more init scripts for apache etc...lost count of how many I wrote at this point.
One Catch..which I discover later.... ~~~~~~~~~~~~~~~~~~~~~ Summary of my perl5 (revision 5 version 10 subversion 0) configuration: Platform: osname=linux, osvers=2.6.31, archname=i586-linux-thread-multi uname='linux build21 2.6.31 #1 smp 2009-08-15 17:53:59 +0200 i686 athlon i386 gnulinux ' config_args='-ds -e -Dprefix=/usr -Dvendorprefix=/usr -Dinstallusrbinperl -Dusethreads -Di_db -Di_dbm -Di_ndbm -Di_gdbm -Duseshrplib=true -Doptimize=-fomit-frame-pointer -fmessage-length=0 -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -Wall -pipe -Accflags=-DPERL_USE_SAFE_PUTENV' hint=recommended, useposix=true, d_sigaction=define useithreads=define, usemultiplicity=define useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef use64bitint=undef, use64bitall=undef, uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DPERL_USE_SAFE_PUTENV -DDEBUGGING -fno-strict-aliasing -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', optimize='-fomit-frame-pointer -fmessage-length=0 -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -Wall -pipe', cppflags='-D_REENTRANT -D_GNU_SOURCE -DPERL_USE_SAFE_PUTENV -DDEBUGGING -fno-strict-aliasing -pipe' ccversion='', gccversion='4.4.1 [gcc-4_4-branch revision 150839]', gccosandvers='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=4, prototype=define Linker and Libraries: ld='cc', ldflags ='' libpth=/lib /usr/lib /usr/local/lib libs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc libc=/lib/libc-2.10.1.so, so=so, useshrplib=true, libperl=libperl.so gnulibc_version='2.10.1' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E -Wl,-rpath,/usr/lib/perl5/5.10.0/i586-linux-thread-multi/CORE' cccdlflags='-fPIC', lddlflags='-shared -fomit-frame-pointer -fmessage-length=0 -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -Wall -pipe'
Characteristics of this binary (from libperl): Compile-time options: DEBUGGING MULTIPLICITY PERL_DONT_CREATE_GVSV PERL_IMPLICIT_CONTEXT PERL_MALLOC_WRAP PERL_TRACK_MEMPOOL PERL_USE_SAFE_PUTENV USE_ITHREADS USE_LARGE_FILES USE_PERLIO USE_REENTRANT_API Built under linux Compiled at Oct 24 2009 01:58:28 -at-INC: /usr/lib/perl5/5.10.0/i586-linux-thread-multi /usr/lib/perl5/5.10.0 /usr/lib/perl5/site_perl/5.10.0/i586-linux-thread-multi /usr/lib/perl5/site_perl/5.10.0 /usr/lib/perl5/vendor_perl/5.10.0/i586-linux-thread-multi /usr/lib/perl5/vendor_perl/5.10.0 /usr/lib/perl5/vendor_perl
~~~~~~~~~
see those last 3 lines? Those lines mean that Suse has specialized modules under the vendor_perl/5.10.0 and when I installed my new perl
Built under linux Compiled at Dec 17 2009 15:49:25 -at-INC: /usr/local/lib/perl5/5.10.1/i686-linux-thread-multi-ld /usr/local/lib/perl5/5.10.1 /usr/lib/perl5/site_perl/5.10.1/i686-linux-thread-multi-ld /usr/lib/perl5/site_perl/5.10.1
There is no vender directory AND that means YAST is broken. Runnung SuSE without Yast really sucks. Running Perl without cpan sucks. It all suxs. some of the system scripts also use that vender directory, and I've had to fix a few of them....
|
|