upgrade reset php.ini. I should have remembered that

I have some custom php code on my workstation that relies on an accurate representation of the local time. At some point before the Mavericks upgrade, I had added the timezone to /etc/php.ini. That time zone change did not carry over after the upgrade. I saw that there was a new file, /etc/php.ini.default, plus copies of the php.ini file that was there before. I added the timezone to /etc/php.ini.default, but it would display incorrectly when I ran phpinfo(). I realized I needed to rename php.ini.default to php.ini. Once I did that and restarted Apache, the correct time zone appeared in phpinfo() and the correct local time was used in my local php code.

What a pain. I hope I got everything, but I’m not sure.

.htaccess and Mavericks upgrade

After the Mavericks upgrade, I noticed in my Apache error logs that I was not seeing the blocked requests I expected to see from non-work IP addresses. I discovered that the Mavericks upgrade updated /etc/apache2/httpd.conf, which is no surprise. What I should have done was checked to see exactly what changes took place in httpd.conf.

It turns out that the AllowOverride directive in DocumentRoot was changed back to its original value in the upgrade, or ‘None’. When I first started using this box, I changed that and allowed .htaccess in the DocumentRoot to allow access.

In the new httpd.conf, I changed that directive back to “AllowOverride All” for DocumentRoot only and restarted Apache. (I always forget: > sudo apachectl restart). Apache is running again. I checked it against the local (beta) sites running on this box. A day later, I see the familiar line in the error log file: Access blocked.

Homebrew investigation

After the Mavericks upgrade, I noticed that my copy of Python3 had disappeared. I don’t see the point in staying with Python 2, when Python 3 exists, so I started working with that earlier this year. I discovered that others don’t share my view. For my own material (and as a way to learn something new), I installed Python 3 onto a Mac running Lion. Like I said, Mavericks got rid of it.

After some clean up, I discovered that I needed Python 3 to run the scripts that I had written before the upgrade. I had a clean system (more or less), and I did have some minor trouble when I installed Python 3 the last time. I looked at Homebrew again and thought it could be useful. However, I did not want to get caught by surprises again on my machine. Enter the department laptop.

There’s almost no development software installed on that machine. As it happens, when I ran the instructions on the homebrew web page, I was reminded that I had a non-dev machine. I had to install the Xcode command line tools. (In this case, I think that means GCC.) Any after a successful brew install, I used it to install Python 2 on the laptop.

Like I mentioned, Python 2 is already on the laptop. Brew installs everything into /usr/local and does not wipe out software that already exists, which is helpful. However, the python version was still the old one (2.7.5) and it was still pointing to the original location (/usr/bin/python). “> brew doctor” reminded me that my $PATH had expected locations in the wrong order. It helpfully gave me the one-liner to update my ~/.bash_profile, which I ran. Once it was done and I opened a new terminal window, I had the latest version of Python (2.7.8) and the correct path (/usr/local/bin/python). Upgrading setuptools and pip through pip worked as expected.

I feel confident enough to run brew on the main machine … another day.

Lion to Mavericks upgrade

I finally had enough time to install the Mavericks upgrade to my work machine. It’s a good thing, too, since I was strongly encouraged to make the migration as soon as possible.

I downloaded the installer from the Mac App Store and ran it after downloading. I immediately ran into a problem. The message read:

The OS X upgrade couldn’t be installed because the disk ‘Mac HD’ is damaged and can’t be repaired. After your computer restarts, backup your data, erase your disk and try installing again.” I thought it would be safe to start off of one my duplicated hard drives, so I switched over to that one.

After some discussion with campus tech support, they suggested I get an external Time Machine backup and be ready to erase the hard drive. The backup finished after work, so I decided to run the installer the next work day. While I waited for the backup, I did a little research and discovered that a “Recovery Partition” could be used to solve the hard drive issue.

The next work day, I did some quick work, then ran one more backup. I switched back to Mac HD, restarted and hit the key sequence to start in the recovery partition (Command-R). I did not see anything that looked like a recovery application running or a recovery partition during startup. I eventually logged into my account on the hard drive, then ran the Mavericks installer again. This time I noticed no error messages or warning. After about an hour, I was running in Mavericks (OS X 10.9.4).

There some things to fix after the restart. I found this page that described what I needed to do. The short version goes like this:

  • Apache had to be turned on again
  • PHP had to be reset (running 5.4.24, OS X is always behind)
  • MySQL had be reinstalled (5.6.19 this time)
  • The MySQL socket error is still around, so I fixed that
  • installed phpMyAdmin (4.2.5). It’s a lot easier now, but I still have to install the dumps from the last version. However, I forgot to record the passwords for all the accounts that use phpMyAdmin and MySQL. Finding them all was fun. Get that info before running the upgrade.

I still have to check on Python and my day-to-day apps. I lost Parallels, but I haven’t used it in a while, so that’s OK. Carbon Copy Cloner may not run in its current version, so I’ll have to upgrade ($40!).