Archive

Archive for February, 2010

WordPress auto-update

February 15th, 2010 staze Comments off

Just a quick note. WordPress 2.9.2 came out today, and I found that since my server upgrade, the core auto-update/upgrade feature wasn’t working. It wanted me to have FTP access.

Turns out that the website folder itself (in my case, since I host on a Mac, a folder within /Library/WebServer/Documents) wasn’t owned by www. Once I chowned that to www, the auto-upgrade worked perfectly.

Everything else was already owned by www… so, just make sure, the folder wordpress resides in is also owned by the web user (the user httpd runs as).

Good luck! And remember, Happiness is only a chown away.

Finally got SVN going…

February 12th, 2010 staze Comments off

I finally got svn working. So the “Code” tab on the title bar now works.

This is mainly thanks to this article on Apple’s developer website. It doesn’t seem to have any wrong data, even though it’s for 10.5.

I’ve updated the few links on my site, as well as the InstallRRD script I posted yesterday to reflect the change in location for these files.

Now if I could just get a resume posted, all the above links work be “valid”. Maybe in a week or two.

Categories: Coding Tags: 10.6, SVN, webdav

Installing RRDTool 1.4 in Snow Leopard (Server) 10.6

February 11th, 2010 staze 7 comments

Wanting to get some info on mail traffic on our mail server, I wanted to get mailgraph installed and functioning on our server. While there are a few sources of info on the web on getting RRDTool installed in 10.6, one of them only deals with RRDTool 1.2, and the other is in Japanese, though it does cover RRDTool 1.4.2.

While I thought I would take the time to write up an article on how to install RRDTool 1.4.2 on 10.6, I lost interest somewhat, so I’ve just made up a basic script to install it for you. The only requirement is to install Xcode 3.2.1, and you’ll want to `sudo su -` before running the script. It will make a src directory in whatever path you run it in, download all the source, and compile it. It will log all the output to a file “build.log” in your current directory. By default, it installs everything in /usr/local. If you want to change that, you’ll need to modify the first few lines in the script.

Feel free to use, and if you want to see what it’s doing, just take a look at the script.

RRDTool install script: here

Good luck!

PHP 5.3.1 compiled from source on 10.6.2 Server

February 3rd, 2010 staze 14 comments

Apple unfortunately forgot to include freetype support in GD with their stock version of PHP 5.3.0 in 10.6 Server at least up to 10.6.2.

So, there’s some info online about compiling freetype into GD in 10.6, but it doesn’t specifically address 10.6 Server, and it references downloading the PHP 5.3.0 source from Apple’s servers, rather than directly from php.net.

So, here’s the info.

  1. Create a directory for the src.
    sudo mkdir /src
  2. Chown that over to yourself.
    sudo chown username /src
  3. Change into that directory.
    cd /src
  4. Create pcre directory.
    mkdir pcre
  5. Change into pcre directory.
    cd pcre
  6. Download pcre source.
    curl ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.01.tar.gz -O
  7. Download php5.3.1 source.
    curl http://us3.php.net/distributions/php-5.3.1.tar.gz -O
  8. Download libjpeg-v7 source.
    curl http://www.ijg.org/files/jpegsrc.v7.tar.gz -O
  9. Untar all of the above.
    find *.tar.gz -exec tar xfvz {} \;
  10. Change into pcre source directory.
    cd pcre-8.01
  11. configure pcre.
    ./configure --disable-shared --enable-static
  12. Make, and install pcre.
    make && make install DESTDIR=/src/pcre/pcre-local
  13. Change into the jpeg directory.
    cd ../../jpeg-7
  14. Copy some config files into the current directory.
    cp /usr/share/libtool/config/config.sub .; cp /usr/share/libtool/config/config.guess .
  15. Config libjpeg.
    export MACOSX_DEPLOYMENT_TARGET=10.6
    CFLAGS="-arch x86_64" \
    CXXFLAGS="-arch x86_64" \
    LDFLAGS="-arch x86_64" \
    ./configure --enable-shared
  16. Make, and Make install.
    make; sudo make install
  17. Change directory into PHP source folder.
    cd ../php-5.3.1
  18. Modify line 186 of ./ext/iconv/iconv.c and change #define iconv libiconv to #define iconv iconv
  19. Configure PHP.
    MACOSX_DEPLOYMENT_TARGET=10.6
    CFLAGS="-arch x86_64 -g -Os -pipe -no-cpp-precomp"
    CCFLAGS="-arch x86_64 -g -Os -pipe"
    CXXFLAGS="-arch x86_64 -g -Os -pipe"
    LDFLAGS="-arch x86_64 -bind_at_load"
    export CFLAGS CXXFLAGS LDFLAGS CCFLAGS MACOSX_DEPLOYMENT_TARGET
    ./configure --prefix=/usr \
    --mandir=/usr/share/man \
    --infodir=/usr/share/info \
    --disable-dependency-tracking \
    --sysconfdir=/private/etc \
    --with-apxs2=/usr/sbin/apxs \
    --enable-cli \
    --with-config-file-path=/etc \
    --with-libxml-dir=/usr \
    --with-openssl=/usr \
    --with-kerberos=/usr \
    --with-zlib=/usr \
    --enable-bcmath \
    --with-bz2=/usr \
    --enable-calendar \
    --with-curl=/usr \
    --enable-exif \
    --enable-ftp \
    --with-gd \
    --with-jpeg-dir=/usr/local/lib \
    --with-png-dir=/usr/X11R6 \
    --with-freetype-dir=/usr/X11R6 \
    --with-xpm-dir=/usr/X11R6 \
    --with-ldap=/usr \
    --with-ldap-sasl=/usr \
    --enable-mbstring \
    --enable-mbregex \
    --with-mysql=mysqlnd \
    --with-mysqli=mysqlnd \
    --with-pdo-mysql=mysqlnd \
    --with-mysql-sock=/var/mysql/mysql.sock \
    --with-iodbc=/usr \
    --enable-shmop \
    --with-snmp=/usr \
    --enable-soap \
    --enable-sockets \
    --enable-sysvmsg \
    --enable-sysvsem \
    --enable-sysvshm \
    --with-xmlrpc \
    --with-iconv-dir=/usr \
    --with-xsl=/usr \
    --with-pcre-regex=/src/pcre/pcre-local/usr/local
  20. Make PHP.
    export EXTRA_CFLAGS="-lresolv"; make
  21. Backup your php.ini
    sudo cp /private/etc/php.ini /private/etc/php.ini.bak
  22. Install new PHP
    sudo make install
  23. Restore php.ini, and restart apache.
    sudo cp /private/etc/php.ini.bak /private/etc/php.ini; sudo apachectl graceful

All and all, on a new mac mini server, this took about 20-30 minutes. And I now have a working PHP 5.3.1 install, and freetype now works with GD (allowing me to put the captcha back on my contact form under “About”. Good luck!

Reference Links:

Categories: System Administration Tags: 10.6, Freetype, GD, PHP

New Server…

February 1st, 2010 staze Comments off

Not sure if anyone knows, but previous to now, my server hosting this site was a Powerbook G4, 1.67ghz, with 2GB of ram, and an 80GB HD.

It ran 10.5 Server, and all and all, ran it pretty well. I was using Marc Liyanage’s PHP build (http://www.entropy.ch/software/macosx/PHP/), and that worked fairly well. Though, the 5.3.0 install was kinda odd. This computer also served as my weather station machine, file server, power monitor, etc.

Anyway, it worked, but it was rather slow to do any real crunching on (like elaborate SQL queries, etc). Or for that matter, running mod_deflate on my site. And while it’s power usage was pretty low, and it had a built-in UPS (it’s battery) it wasn’t as good as it could be. Also, had to add Cardbus USB card to add additional ports, and making any kind of timelapse movies from my webcam images was out of the question. So, it worked, but it was pretty loaded (load averaged about 20-40%).

So, all that in mind, Tara and I have been selling random crap on eBay the last few weeks, and managed to build up enough between that,

and me cashing out some vacation from work, to buy a brand new Mac Mini Server (also traded in my old personal powerbook for some store credit).

All and all, it’s sweet. It’s significantly faster, smaller, uses less power, and is more apt to be a server than an old powerbook. =) Sure, the picture to the left makes it look pretty messy (power supply, Keyspan USB-Serial adapter, serial cable from that to weather station), usb cable to webcam, usb cable to TED, firewire to Drobo), but I’m going to clean that up and put it all up on shelves above my desk. And yeah, the pictures in the background are of me as a kid.

Load average on the new system, about 2-4%. Not to mention, the RAM doubling in the new system (with the actual potential to go to 8GB at some point in the future. And being able to run 10.6 server, and I would imagine, 10.7 server as well (whenever it ships). It’s a speedy machine. I RAID1′d the two drives, so I’m not nearly as worried about a drive crashing at this point.

And since I never really talked about it, the Drobo is pretty nice as well. It’s not as fast as it could be, but that’s really not much of an issue. It’s mainly for storing media that we watch on the PS3, or laptops. So it’s doesn’t need to be a rocket, it just needs to work, and be reliable. Right now I’ve got two WD15EADS drives (1.5TB “Green” drives). They’re pretty nice, though I worry about the head parking overly aggressively. As you can see, it’s about 70% full, so I’ll probably buy another drive in the nearish future which will give me 3TB of storage. Not too bad given my homegrown only had 1TB. I’ll do more of a write up on the Drobo in the next week or two. I wanted to wait to write it up until I got the new server, as it acted kinda odd sometimes when it was hooked to the old Powerbook.

Here’s to a new week.