Archive for ‘Apple’ Category
Browse:
Apple »
Subcategories:

Using iCloud to sync files just like dropbox

datePosted on 13:41, November 2nd, 2011 by Many Ayromlou

If you didn’t know, iCloud has a really neat feature that allows it to act just like dropbox. If you activate the “Document & Data” synching option in the iCloud pref panel, it allows you to sync any file using iCloud. This is contrary to what Apple is selling the service as being just for “Custom” Apps that have the iCloud feature (i.e.: keynote, numbers, etc.).

So here is how you take advantage of this. Once you’ve turned on the feature in the preferences panel, you open up Finder. Hold down the “option/alt” key and from the finder menus choose “Go/Library“. This should land you in your not so secret Library directory. You need to hold down the option key to see this, since OSX Lion hides the users Library directory by default. Now in the Finder window find the “Mobile Documents” folder (and if you like) drag it to the favourites list in Finder (in the left pane). Done. Now whatever file you save into “Mobile Documents” folder from any application will “sync” with all the other mac’s you’ve setup with this feature. You can treat it like your “free” 5GB dropbox account.

Share

Lion Tip: Adding your digital signature to PDF files….

datePosted on 11:24, August 4th, 2011 by Many Ayromlou

If you ever are in need of signing a PDF file, you don’t need to print/sign/scan it anymore, Lion’s new preview app lets you insert/sign those pdf docs in a flash. Here is how you get your signature “scanned”.

  1. Use a Sharpie marker and sign your name on a plain piece of paper. Make sure it’s a plain sheet of paper with nothing written on either side.
  2. Open the Preview App and go to Preferences>Signatures and Press the small + button to add a new signature.
  3. A new window will pop up with your webcam video inside.
  4. Hold up the paper with your signature in front of the camera and make sure there is enough light in the room for the camera to get a clean image
  5. Align the signature — by moving it back and forth — with the blue line and wait for the machine to give you the clean scan of it in the window beside it.
  6. Press Enter to accept the signature when you’re ready.

I had to do this twice, but it’s very easy and quick to do. You can even have multiple pics taken of your signatures (or other peoples sig in your household).

Share

Lions new Finder Tricks….

datePosted on 15:21, July 26th, 2011 by Many Ayromlou

Now that I’m getting settled in the latest OSX, I thought I share with you a couple of finder gems that might not be obvious right from the get go:

1) You now have the ability to select multiple files in a folder and right click on them to choose “New Folder with X Selections”. This will create a new folder and move the selected files into that folder. Kinda neat and makes the process of moving large number of files a bit simpler.

2) You can now “move” files and folders from one place to another. First “copy” the file/folder in question by selecting it and using the command-c shortcut. Then find the place you want to move them to and instead of using the usual command-v (which copies the files/folders) use command-option-v instead. Yeaaaaa, we can finally be just like our windows cousins :-) .

3) To remove something from the finder sidebar, hold the command key as you drag it out.

4) In the Finder’s “Go” menu hold the option key to reveal a “Go to Library” menu item.

Although not strictly a new finder gem, Window resizing now supports standard modifier keys, so holding Shift while resizing a window constrains it to its existing aspect ratio, while holding Option resizes the window from its center point.

Share

Tethering iphone 3GS and ipad 1G using bluetooth…

datePosted on 22:21, March 19th, 2011 by Many Ayromlou

Yep, it works. I was kinda disappointed when firmware 4.3 was introduced and the 3GS owners were left in the cold as far as wifi hotspot sharing. Apple only activated that function on the iphone 4. Anyhow, after messing around with the menus a bit tonite, I figured out how to do something similar to wifi tethering (hotspot) of ipad to the iphone 3GS using bluetooth. Here is how you do it:

  1. Turn wifi off on your 3GS and ipad device. I’m testing from home so I wanted to make sure I was NOT using wifi.
  2. Turn on Bluetooth on both your 3GS and ipad device. This is under Settings/General
  3. On the iphone 3GS turn on “Personal Hotspot”.
  4. On the ipad go back to the Bluetooth menu and let it scan for a second. You’ll find a Entry for your iPhone soon. Click on the entry and connect.
  5. You’ll be prompted on the iphone and the ipad to make sure you see the same code. Just say Okay/Yes.
  6. Viola, you’re tethering your ipad to your iphone 3GS using bluetooth. You should see a Blue throbbing menu bar on top of your iphone 3GS saying “Personal Hotspot: 1 Connection”.

To stop turn Personal Hotspot off on the iphone. If you need to connect again, turn Personal Hotspot on (assuming BT is on already) and click on the iPhone entry in the Bluetooth menu on your ipad.

N.B. The iphone can also “share” it’s wifi connection with the ipad using bluetooth. Neato :-) . Oh and that GPS location transfer thing that people are talking about using wifi tethering doesn’t seem to work when using BT…..Oh well, small price to pay.

UPDATE: After a bit of testing here are some numbers. These were done around midnight on Rogers/Fido Network through bluetooth (iphone 3GS on 3G):

  • Ping: ~320ms
  • Download: 1.53 Mbps
  • Upload: 0.23 Mbps

Not bad for bluetooth I guess.

Share

Adding mcrypt support to builtin php5 on OSX Leopard….

datePosted on 17:51, February 4th, 2011 by Many Ayromlou

I got a request to add mcrypt support to our Leopard server today and here is a brief step-by-step installation instruction. This works well under the current 10.5.8 server installation. It should also work for 10.6 (snow leopard), but I have not tried it. Before you start here are the requirements:

  • Backup your system
  • Install (and update) the latest XCode (I’ve got version 3)
  • Install X11 client stuff from your server install DVD
  • install X11 SDK stuff from your server install DVD
  • Ensure you have server 10.5.8 (latest update as of Feb.04.2011)
  • Make sure you have not tried to install mcrypt using another method. We need a “virgin” 10.5.8 install (as far as homebrew/local installs)
  • BACKUP

Please note that this will add mcrypt support to php. This is NOT the same as compiling mcrypt.

Okay, so now that we have all the requirements, you need to get a command line window opened and get a root shell (sudo -i). The rest of this document assumes you’re typing the commands in a root shell.

There is one dependency that we need to clear before we actually get down and dirty and that is libmcrypt. Follow the instructions below to get this installed:

mkdir /SourceCache
cd /SourceCache
curl http://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.bz2/download -o libmcrypt-2.5.8.tar.bz2 -L

This is the latest version as of this writing (Feb.04.2011).

NOTE: If you’re compiling on a G5 machine you’ll need to tell the compiler that you want to build/configure for a ppc64 target so instead of the below configure command you need to use this:

MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS=" -arch ppc64 -g -Os -pipe -no-cpp-precomp" CCFLAGS=" -arch ppc64 -g -Os -pipe" CXXFLAGS="-arch ppc64 -g -Os -pipe" LDFLAGS="-arch ppc64 -bind_at_load" ./configure --enable-shared
tar -xjvf libmcrypt-2.5.8.tar.bz2
cd libmcrypt-2.5.8/
./configure
make
make -n install

The last command will simulate the installation process. Make sure the stuff is getting installed in /usr/local/lib

make install

At this point you should have a working installation of libmcrypt. This next command prints out the current version of your php engine. In my case under 10.5.8 it’s php 5.2.14.

server:libmcrypt-2.5.8 root# php -v
PHP 5.2.14 (cli) (built: Oct  6 2010 16:57:10)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies

Grab the appropriate php-5.2.XX.tar.bz2 file from php.net. I just grabbed the stock PHP 5.2.14, since I wanted a perfect match between my php engine and the extension. I transferred the file using sftp to the /SourceCache folder on the server.

NOTE: If you’re compiling on a G5 machine you’ll need to tell the compiler that you want to build/configure for a ppc64 target so instead of the below configure command you need to use this:

MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS=" -arch ppc64 -g -Os -pipe -no-cpp-precomp" CCFLAGS=" -arch ppc64 -g -Os -pipe" CXXFLAGS="-arch ppc64  -g -Os -pipe" LDFLAGS=" -arch ppc64  -bind_at_load" ./configure --with-php-config=/Developer/SDKs/MacOSX10.5.sdk/usr/bin/php-config
cd /SourceCache
tar xjvf php-5.2.14.tar.bz2
cd /SourceCache/php-5.2.14/ext/mcrypt
phpize
./configure --with-php-config=/Developer/SDKs/MacOSX10.5.sdk/usr/bin/php-config
make
make test
make -n install

The last command will simulate the installation process. Make sure the stuff is getting installed in /usr/lib/php/extensions/no-debug-non-zts-20060613

make install

Now we need to modify our php.ini file and tell the php5 engine of the availability of this new module. To do this you need to copy php.ini.default to php.ini (in /etc directory). For details of why have a look at this article.

cd /etc
cp php.ini.default php.ini

Edit the newly created/copied php.ini using your favourite editor. Add the following line to the appropriate location (read the comments in the file to find the location):

extension=mcrypt.so

Still in the same file find the variable “extension_dir” and change it’s value to “/usr/lib/php/extensions/no-debug-non-zts-20060613″ path instead of “./”. Save the php.ini and use the following command to see if mcrypt extensions are available:

server:etc root# php -i |grep mcrypt
mcrypt
mcrypt support => enabled
mcrypt.algorithms_dir => no value => no value
mcrypt.modes_dir => no value => no value

Done. Restart Apache service from the server manager (just for the sake of completeness).

Share

Adding GD support to builtin php5 on OSX Leopard….

datePosted on 15:17, February 4th, 2011 by Many Ayromlou

I got a request to add GD support to our Leopard server today and here is a brief step-by-step installation instruction. This works well under the current 10.5.8 server installation. It should also work for 10.6 (snow leopard), but I have not tried it. Before you start here are the requirements:

  • Backup your system
  • Install (and update) the latest XCode (I’ve got version 3)
  • Install X11 client stuff from your server install DVD
  • install X11 SDK stuff from your server install DVD
  • Ensure you have server 10.5.8 (latest update as of Feb.04.2011)
  • Make sure you have not tried to install GD using another method. We need a “virgin” 10.5.8 install (as far as homebrew/local installs)
  • BACKUP

Please note that this will add GD support to php. This is NOT the same as compiling the GD graphics library (libgd).

Okay, so now that we have all the requirements, you need to get a command line window opened and get a root shell (sudo -i). The rest of this document assumes you’re typing the commands in a root shell.

There is one dependency that we need to clear before we actually get down and dirty and that is libjpeg (known as jpegsrc). Follow the instructions below to get this installed:

mkdir /SourceCache
cd /SourceCache
curl -O http://www.ijg.org/files/jpegsrc.v8c.tar.gz

This is the latest version as of this writing (Feb.04.2011).

NOTE: If you’re compiling on a G5 machine you’ll need to tell the compiler that you want to build/configure for a ppc64 target so instead of the below configure command you need to use this:

MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS=" -arch ppc64 -g -Os -pipe -no-cpp-precomp" CCFLAGS=" -arch ppc64 -g -Os -pipe" CXXFLAGS="-arch ppc64 -g -Os -pipe" LDFLAGS="-arch ppc64 -bind_at_load" ./configure --enable-shared
tar -zxvlf jpegsrc.v8c.tar.gz
cd jpeg-8c/
./configure
make
make test
make -n install

The last command will simulate the installation process. Make sure the stuff is getting installed in /usr/local/lib

make install

At this point you should have a working installation of libjpeg. Now we double check our php version.

server:jpeg-8c root# php -v
PHP 5.2.14 (cli) (built: Oct  6 2010 16:57:10)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies

Notice in the output that I have php 5.2.14 installed on the machine (again the latest update as of Feb.04.2011). Apple does not provide source code for this exact version of PHP. On top of that The numbering scheme that they use is weird. On my machine it is “apache_mod_php-44.6″, you can find yours using the following:

server:jpeg-8c root# php -i |more
phpinfo()
PHP Version => 5.2.14

System => Darwin saturn.rcc.ryerson.ca 9.8.0 Darwin Kernel Version 9.8.0: Wed Ju
l 15 16:55:01 PDT 2009; root:xnu-1228.15.4~1/RELEASE_I386 i386
Build Date => Oct  6 2010 16:55:34
Configure Command =>  '/SourceCache/apache_mod_php/apache_mod_php-44.6/php/confi
gure'  '--prefix=/usr' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--
disable-dependency-tracking' '--with-apxs2=/usr/sbin/apxs' '--with-ldap=/usr' '-
-with-kerberos=/usr' '--enable-cli' '--with-zlib-dir=/usr' '--enable-trans-sid'
'--with-xml' '--enable-exif' '--enable-ftp' '--enable-mbstring' '--enable-mbrege
x' '--enable-dbx' '--enable-sockets' '--with-iodbc=/usr' '--with-curl=/usr' '--w
ith-config-file-path=/etc' '--sysconfdir=/private/etc' '--with-mysql-sock=/var/m
ysql' '--with-mysqli=/usr/bin/mysql_config' '--with-mysql=/usr' '--with-openssl'
 '--with-xmlrpc' '--with-xsl=/usr' '--without-pear'

The thing you’re looking for (“apache_mod_php-44.6″) is under Configure Command. If you go to the following URL (http://www.opensource.apple.com/source/apache_mod_php/) in your browser (safari, firefox) you’ll soon discover these weird directory names with numbers that don’t match the php versions. Again, as of this writing (Feb.04.2011), I can’t find apache_mod_php-44.6 folder in the listing so I grabbed the nearest numbers apache_mod_php-44.2 which is php 5.2.8…….close enough. It seems to work. Follow the steps below to get the file and compile the GD portion of it. Remember we’re not recompiling the entire php, just the GD plugin portion.

UPDATE: You CAN install the exact version of your PHP’s GD extension. Instead of grabbing the file from Apple, figure out the version of your PHP using “php -v” and grab the appropriate file from php.net instead. I just recompiled the GD portion of PHP 5.2.14, since I wanted a perfect match between my php engine and the extension. The instructions below (except curl which needs to be modified) work.

NOTE: If you’re compiling on a G5 machine you’ll need to tell the compiler that you want to build/configure for a ppc64 target so instead of the below configure command you need to use this:

MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS=" -arch ppc64 -g -Os -pipe -no-cpp-precomp" CCFLAGS=" -arch ppc64 -g -Os -pipe" CXXFLAGS="-arch ppc64  -g -Os -pipe" LDFLAGS=" -arch ppc64  -bind_at_load" ./configure --with-zlib-dir=/usr --with-jpeg-dir=/usr/local/lib --with-png-dir=/usr/X11R6 --with-freetype-dir=/usr/X11R6 --with-xpm-dir=/usr/X11R6
cd /SourceCache
curl -O http://www.opensource.apple.com/source/apache_mod_php/apache_mod_php-44.2/php-5.2.8.tar.bz2
tar xjvf php-5.2.8.tar.bz2
cd /SourceCache/php-5.2.8/ext/gd
phpize
./configure --with-zlib-dir=/usr --with-jpeg-dir=/usr/local/lib --with-png-dir=/usr/X11R6 --with-freetype- dir=/usr/X11R6 --with-xpm-dir=/usr/X11R6
make
make test
make -n install

The last command will simulate the installation process. Make sure the stuff is getting installed in /usr/lib/php/extensions/no-debug-non-zts-20060613

make install

Now we need to modify our php.ini file and tell the php5 engine of the availability of this new module. To do this you need to copy php.ini.default to php.ini (in /etc directory). For details of why have a look at this article.

cd /etc
cp php.ini.default php.ini

Edit the newly created/copied php.ini using your favourite editor. Add the following line to the appropriate location (read the comments in the file to find the location):

extension=gd.so

Still in the same file find the variable “extension_dir” and change it’s value to “/usr/lib/php/extensions/no-debug-non-zts-20060613″ path instead of “./”. Save the php.ini and use the following command to see if GD extensions are available:

server:etc root# php -i |grep GD
GD Support => enabled
GD Version => bundled (2.0.34 compatible)

Done. Restart Apache service from the server manager (just for the sake of completeness).

Share

Hauppauge Broadway: OTA ATSC streaming for iOS devices….

datePosted on 23:27, January 16th, 2011 by Many Ayromlou

Yep, just like the title says, hauppauge has announced the Broadway, a new “set-top” aimed at iPhone, iPad and iPod touch users. The hardware streams live OTA HDTV to an Apple handheld after first compressing the video using H.264. The resulting media can be delivered locally over Wi-Fi, or to a remote place using any Internet connection. Over-The-Air ATSC signals can be captured using a built-in ATSC tuner, while cable is supported through clear QAM. Pricing is a bit steep at $199 and the box is scheduled for February release.

Share

Optimizing Snow Leopard for SSD drives….

datePosted on 22:13, January 16th, 2011 by Many Ayromlou

I just installed a new 128GB SSD drive in my older C2D 17″ macbook Pro and let me tell you….WOW….This thing is on fire. The system is extremely responsive and apps literally jump onto the screen. The machine now boots up to full desktop in roughly 17 seconds. Now that’s nice. I did do a bunch of changes to the way Snow Leopard is setup to optimize a couple of things that are normally tuned for HDD’s.

  • Turn off Sudden Motion Sensor (SMS): If you are replacing your primary (and only) HDD internal drive with a SSD, you can get a bit of a performance boost by turning off the Sudden Motion Sensor technology that comes with your laptop. Remember your SSD doesn’t use read/write head on rigid platters so there is no reason to keep this feature turned on. You can safely turn it off by issuing the command below in Terminal, type in administrator password when asked.
    sudo pmset -a sms 0
  • Turn off hibernation and delete sleepimage file: Using SSD, you can achieve under 20 seconds boot-up time. Why bother using Hibernation and waste too much space on your SSD. To do so, issue the commands below in Terminal, enter administrator password when asked.
    sudo pmset -a hibernatemode 0
    sudo rm /var/vm/sleepimage
  • Reduce disk I/O by mouting partition with noatime: Stop OSX from updating “last access time” or atime everytime a file is touched on your filesystem. This is IO expensive and unnecessary. In a terminal window create a file called com.nullvision.noatime.plist under /Library/LaunchDaemons folder and stick the following lines in the file. Save the file (you need to sudo when you edit the file) and reboot your machine.
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
            "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
        <dict>
            <key>Label</key>
            <string>com.nullvision.noatime</string>
            <key>ProgramArguments</key>
            <array>
    		<string>mount</string>
                	<string>-vuwo</string>
                	<string>noatime</string>
                	<string>/</string>
            </array>
            <key>RunAtLoad</key>
            <true/>
        </dict>
    </plist>

    Once the machine has rebooted you can check to make sure your root partition is mounted with noatime by issuing the following command

    mount | grep "/"

    and look for something similar to this in the output

    /dev/disk0s3 on / (hfs, local, journaled, noatime)

This should do it. Have fun with your new SSD drive.

Share

Five minute Augmented Reality via Quartz Composer….

datePosted on 21:40, January 16th, 2011 by Many Ayromlou

Great little video on how to setup AR marker recognition under QC. Even has a nice mellow background music :-) .

Share

I wonder what it will look like in 2020….

datePosted on 13:49, October 19th, 2010 by Many Ayromlou

10 years

Share

Terminal Tip: Finding information about a mp3 audio file…

datePosted on 13:24, October 19th, 2010 by Many Ayromlou

Here is a quick tip for you OSX command line fans. If you want to find metadata information about a mp3 file use the “afinfo” command. Very quick and scripting friendly. Here is a example:

$ afinfo 08_\ Lily\ Allen\ -\ Fk\ You.mp3
File:           08_ Lily Allen - Fk You.mp3
File type ID:   MPG3
Data format:     2 ch,  44100 Hz, '.mp3' (0x00000000) 0 bits/channel, 0 bytes/packet, 1152 frames/packet, 0 bytes/frame
                no channel layout.
estimated duration: 215.249 sec
audio bytes: 5167920
audio packets: 8240
audio 9490176 valid frames + 576 priming + 1728 remainder = 9492480
bit rate: 192000 bits per second
packet size upper bound: 1052
maximum packet size: 731
audio data file offset: 32353
optimized
----
Share

Map any network drive to Mac OS X that auto mounts after system reboot

datePosted on 13:34, September 20th, 2010 by Many Ayromlou

Here is a quick recipe for making a network drive auto mount on your OSX machine. This works with pretty much any protocol supported by Finders “Connect to Server” option. Here is how you do it:

  1. From the Finder, hit Command+K or select Connect to Server from the Go menu.
  2. You’ll see the following window, enter the relevant information (ie: the network drive location, be it afp:// or smb:// or http://) and hit Connect button.
  3. Enter your login/password and click “OK
  4. Make sure your Finder Preferences are set so Network Drives are visible on your desktop:
  5. At this point you should have a icon like on your desktop
  6. Now go to System Preferences under the Apple menu
  7. Click on the Accounts icon under System and select Login Items tab (you might have to unlock this panel by clicking the small lock icon on the bottom left of that screen):
  8. Click the “+” sign to add a Login Item to the list and in the following screen go to your Computer icon (on the left under Devices) and select the mounted volume icon from the list on the right and click Add:
  9. You’ll end up with a screen similar to the one below. Click on Show All and exit Preferences. Reboot and make sure it all works.

That’s it…..Enjoy :-)

Share

Reset iTunes 10 window control buttons

datePosted on 15:57, September 2nd, 2010 by Many Ayromlou

Not sure what’s happening lately in the Apple UI design department. Someone over there decided to reposition the window control buttons (you know x,-,+ aka. close,minimize,maximize) vertically in the latest itunes10 (see pics below).

If you prefer the old (proper) way of having them ordered horizontally (see picture above), you can use the commands below:

defaults write com.apple.iTunes full-window -1

If you need to reset it back, you can use the commands below:

defaults write com.apple.iTunes full-window -0

Share

OSX Server: Could not setup Mach task special port 9

datePosted on 12:57, August 26th, 2010 by Many Ayromlou

com.apple.launchd[1] (0x10f860.cron[43786]): Could not setup Mach task special port 9: (os/kern) no access

If you’re seeing this warning/error in your OSX Server log files, it is more than likely caused by cron running jobs for mailman subsystem. Even if the Mail process is disabled in Server Admin, OSX will try to run these cron jobs. The way around this (only do this if you’re NOT running mail server or mailman mailing list manager on your box) is to comment out all lines in /usr/lib/cron/tabs/_mailman file (insert a # character at the beginning of each line that doesn’t have it). This fixed the problem for me…..hopefully it will also work for you :-) .

Share

Duplicating service settings under OSX Server…

datePosted on 14:17, August 25th, 2010 by Many Ayromlou

This mainly applies to how you deal with a backup DHCP server and it’s configuration, but might also be useful for backing up other service settings. One of the things that kinda bugs me about how some services are configured in OSX Server is the fact that the configurations are stored in the directory. For example, if you have a DHCP server servicing a subnet with a ton of reservations hardcoded in it, there is no way of editing and/or moving the information from the command line (ie: there is no single config file that contains the current configuration) to another server. That’s where the “serveradmin” commandline program comes to rescue. If you have two identical servers (ie: both running the same OSX server version), you can use serveradmin to export the settings from a specific service and then move the file to the new server and import it there. All using the CLI.

  • To Export the settings (in this case the DHCP service):
  • sudo serveradmin settings dhcp > dhcp-config.txt
  • To Import the settings on the other server:
  • sudo serveradmin settings < dhcp-config.txt
Share

MySQL Replication howto for Snow Leopard…

datePosted on 16:58, August 23rd, 2010 by Many Ayromlou

We recently upgraded our servers from old XServe G5′s running Tiger to the latest greatest running Snow Leopard. In this small howto I will deal with the procedure I followed to setup mysql master-slave replication between two new servers. I start out with two (master, slave) empty DB’s, setup the replication and then import my data from a third server (my old G5 X-Serve). Of course like anything else I will try to show you how to get out of — what I like to call — Steve Jobs Hell Holes :-) . There are other ways of doing this procedure, for more info check out this page.

- First things first….the magic command that stops mysql server from command line, just in case you screw something up and need to restart (This should be used on your master and slave servers prior to them going live…..DO NOT USE THIS ON A LIVE SERVER):

sudo launchctl unload /System/Library/LaunchDaemons/org.mysql.mysqld.plist

This will stop the launch Daemon from continously launching mysql when trouble is brewing. This usually happens when you screw something up badly and the symptom is that the Server Manager Status for MySQL will say “Starting up“, but never changes to “Running“.

- Next I want to blow away my DB files on the master and slave (remember these are NOT production servers yet…..I’m still rebuilding them. You DO NOT want to remove the DB’s on your production servers). You’ll need to find the path in the “Settings” tab of the server manager, under “Database Location“. I removed everything in that directory (rm -rf *) from the command line. AGAIN, I CAN NOT STRESS THIS ENOUGH, BE CAREFUL WHERE YOU ISSUE THESE COMMANDS.

- I did this on both the master and the slave.

- Now on the Master change the following in /etc/my.cnf (You should have this file, if you’ve got a my.cnf.default, copy it my.cnf).

[mysqld]
log-bin=mysql-bin
server-id=1
innodb_flush_log_at_trx_commit=1
sync_binlog=1

- On the Master still, check the “Allow Network Connections” check box in Server Manager and set the root password (for mysql) by pressing the “Set MySQL Root Password…” button. Then press “Save” followed by “Start MySQL“. This will initialize mysql with the default tables and setup the root password.

- Now on the Slave change the following in /etc/my.cnf (You should have this file, if you’ve got a my.cnf.default, copy it my.cnf).

[mysqld]
log-bin=mysql-bin
server-id=2

- Back on the Master, you need to create a user (I call it repl) that has REPLICATION SLAVE privilege. Use the following two commands (make sure you replace mydomain.com and slavepass….LEAVE repl as the userid:

mysql> CREATE USER 'repl'@'%.mydomain.com' IDENTIFIED BY 'slavepass';
mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%.mydomain.com';

- Next we need to flush the tables and issue a read lock (yes, just because we can):

mysql> FLUSH TABLES WITH READ LOCK;

- Still on the master we find out the current binary log file name and position:

mysql> show master status;
 +------------------+----------+--------------+------------------+
 | File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
 +------------------+----------+--------------+------------------+
 | mysql-bin.000004 |      340 |              |                  |
 +------------------+----------+--------------+------------------+
 1 row in set (0.00 sec)

Note down the filename and the Position number. We will need them later.

- Back on the Slave, go to Server Manager and set the root password (for mysql) by pressing the “Set MySQL Root Password…” button. Then press “Save” followed by “Start MySQL“. Connect to the DB as root and issue the following command:

CHANGE MASTER TO MASTER_HOST='master.mydomain.com', MASTER_USER='repl', MASTER_PASSWORD='slavepass', MASTER_LOG_FILE='mysql-bin.000004', MASTER_LOG_POS=340;

This will setup the slave to talk to the Master and do it’s thing. While we are here, we might as well verify that the repl user can log into the master from the slave:

mysql -h maste.mydomain.com -u repl -p

should prompt you for password and if you type in the ‘slavepass’ you assigned above, you should be able to get in.

- Back on the master unlock the tables:

mysql> UNLOCK TABLES;

- Last but not least on the slave, turn on the slave mode:

mysql> START SLAVE;

Done…..Now you can go to your production server and suck it’s brains (ahemm…..DB’s) out and import it into your master. Your slave should follow and replicate whatever you import into the master Server. I used the following command (you mileage might/will vary):

mysqldump -x -c --add-drop-table --add-drop-database -u root -p --databases dbname1 dbname2 dbname3 >goodies.sql

Transfer “goodies.sql” text file from your production server to the master server (ssh/scp/ftp….whatever).

mysql -u root -p < goodies.sql

Share

Okay so this only works in Boot Camp 3.0+ which comes with Snow Leopard (10.6). If you ever find yourself in Windows and need to quickly — using command line — change your boot option to reboot into OSX (process known under OSX as blessing) you can use the following command:
c:\progra~1\Bootca~1\bootcamp.exe -StartupDisk "Mac OS" Shutdown /r /t 0
This will reboot your windows session and boot the machine back using the Volume named “Mac OS”. If you omitt -StartupDisk option, then the system will boot into the first Mac OS X volume located by BootCamp.exe. Done :-)

Share

Forcing 64-bit mode when booting OSX 10.6 (Snow Leopard)…

datePosted on 11:36, August 5th, 2010 by Many Ayromlou

You all probably know about the trick with holding down 6 and 4 keys on your keyboard to force OSX 10.6 to boot using the 64-bit kernel. What you might not know is that it’s temporary and the next time you reboot, you’re back to using the 32 bit kernel. Now I can’t guarantee that your machine will not catch fire and blow up (just kidding)…..but if you know what you’re doing and want to have 64-bit kernel goodness all the time you can do the following:
sudo vi /Library/Preferences/SystemConfiguration/com.apple.Boot.plistModify the file to make it look like this:<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Kernel</key>
<string>mach_kernel</string>
<key>Kernel Flags</key>
<string>arch=x86_64</string>
</dict>
</plist>
basically add “arch=x86_64″ (without the quotes) to the line that reads<string></string>
That’s it….reboot and enjoy Full 64-bitness….to undo this (if something breaks), edit the file and make it look like this:<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Kernel</key>
<string>mach_kernel</string>
<key>Kernel Flags</key>
<string></string>
</dict>
</plist>
Save and reboot and you’re back to stock Snow Leopard. The way you check for this — running 32 or 64-bit kernel and extensions — is to run System Profiler (Apple Menu/About This Mac/More Info…) and check the software tab. If you’re in 64-bit mode you’ll find “yes” as the value of “64-bit Kernel and Extensions” entry.

Share

Undo Closed Tabs in Safari 5.0

datePosted on 11:15, August 3rd, 2010 by Many Ayromlou

This is a neat new feature in safari 5. If you close one of your tabs by mistake you can “undo” it by pressing Cmd+z (in OSX) or Ctrl-z (in Windows). Neato :-)

Share
123456Next