Archive

Archive for the ‘Linux / Unix / OS X’ Category

Dropbox and Mac OS X: Access your files from everywhere

Written on July 14th 2009, 19:07 by sYnie

Today, Neakro showed me a tool called “Dropbox”. It’s like a virtual hard drive, you can use to store files on a server, online. Some folders are private, some folders are public. So you can access your data from everywhere. This idea isn’t new, is it? But Dropbox has some very nice features.

menuThe basic account – which is completely free – provides 2 GB storage, which is, in my mind, a lot of space to share and store files at. There’s an OS X client, which will be integrated into the functions of Finder. The Linux client needs Nautilus, which will surely piss off some KDE users ;-) .

After installing the OS X client, you’ll have a new menu icon on the top right of your screen. You can access all the basic functions and preferences there, as well as opening the web frontend in your browser. But the real magic happens in Finder itself.

There will be a new folder within your home directory called “Dropbox” (you can rename this one). It’s an ordinary folder, except, that it’ll be mirrored on the servers of Dropbox. So if you install Dropbox on other machines, you’ll always have the same files. It’s also possible to share specific folders in order to work with other people collaboratively.

You can easily work with the Dropbox folder, as with any other folder:
place_files

And a pretty nice feature is, to generate URL’s to the files you want to share. In the picture above, I have placed a file called “test.rtf” in my public folder. Rightclicking this file will give me the following option:
publish_files

I can easily generate an URL and publish the link to friends, co-workers etc in order to download this file. In my case it is: http://files.getdropbox.com/u/1537208/test.rtf. I’ll try to keep this file online.

Another very nice feature is the web frontend. You can access all your files from any computer, where Dropbox isn’t installed. You can create new public folders, share folders, download everything, browse through fotos and so on. IMHO the best feature is the history option. You can see everything that happened (creating folders, deleting files, editing files, etc), compare the differences and even undo changes or restore deleted files and folders:
webinterface

When I heard about Dropbox my first thought was like “Why not using SMB / NFS with Apache, etc”. But after testing it, I saw some really unique and perfectly integrated features. It’s not only for sharing some files on multiple computers. It has its own TimeMachine, it’s perfect for collaborative work, I can generate URLs to local files with one click and so on. Besides all that, it doesn’t just upload your local files. It uploads only changes, which saves a lot of traffic, when you edit large files.

I’ll keep using it the next few weeks and hope, I won’t find some disadvantages.
Neakro said, he’s going to try to simulate a similar service using rsync, apache and git. I’m really curious about whether he’ll be successful.

Everyone who’s interested in this service – you can give it a try at:
http://www.getdropbox.com
If you want to do me a favour, use this URL to register. It’ll give me and you some extra MB space ;-)
https://www.getdropbox.com/referrals/NTE1MzcyMDg5

EeePC & OS X: W-Lan (Hackintosh)

Written on April 27th 2009, 09:04 by sYnie

I installed OS X on my little EeePC 900a. After using some different Images and also trying to Install my original copy of Leopard, I ended up with iATKOS 5i. Most of the Hardware worked out of the box. Even hotplug, what didn’t work before.
There are some things that didn’t work:

  • Display resolution
  • Ethernet
  • WiFi
  • Sound

I got it managed to make them work, by now. Well, almost ;-)
As soon as I’m finished with this OS X on EeePC, I’ll post all the things I had to do to get them running. But before this, I want to share my experience with the built in Atheros WiFi card.
Vendor ID: [168c:001c]
Subsystem: [1a3b:1026]

Different OS’ display this device with different names. But as far as I know, it’s an AR5007EG. There are various tutorials out there to get this card working. Well, at least in some way.
Have a look at this discussion:
http://www.insanelymac.com/forum/index.php?showtopic=138351
18 Pages – all about this card and different types of it. There are some ways, that really work. But you’ll need Kismac to make this device see wireless networks after every reboot. It works like this:

  • Before you shutdown your EeePC, you must turn the Airport off.
  • After booting, turn it on.
  • Run Kismac and scan for wirelless networks with Airport Extreme Passive Drivers.
  • Now your Airport will notice all the new networks.

And if you get Kernel Panics:

  • Remove Extensions.mkext* before every shutdown.

And believe me – it’s not nice to do this every boot/shutdown. I wrote scripts, that do exactly this. I still need Kismac for making the Airport notice the networks, but I’m on it. Kismac replaces the Airport drivers during scan to use it in monitor mode. I’m still finding out how everything works, and so on. But have a look into the Resources directory within Kismac. It provides all the kext files. Also there is a driver called “viha” which uses the WLanDriver.kext. Viha is an Airport driver and W-Lan utility, which also provides a shell based network stumbler. I think this is the way to go … But I’m still experimenting.

If you’re annoyed by turning on/off the Airport, removing the Extensions.kext and firing up Kismac, then use these scripts. They work for me:

1. Preparing
Open System Preferences and go to Network. Write down your Location at the top. Mine is called AON, but usually yours is named “Automatic”. Create a new one and call it “AOFF”. Within “AOFF” you’ll have to remove Airport from the list on the right side. Add another (unused) service, if you can’t remove Airport. Switch back to “Automatic”, apply and close it.
AOFF will be used to switch off the Airport. You can’t do this via shell, but you can switch those network profiles via shell. If you switch to a profile, that has no Airport service, it’ll be turned off. You can try this by switching between these networks, applying them, and looking for what happens with your Airport symbol on the top of your screen.

2. Login-/LogoutHooks:
Create two files, somewhere (Mine are located in /Library) which will be used for Airport and Extensions. I’ve called them wlankickstart and wlankickstop ;-)

wlankickstart looks like this:

#!/bin/bash
scselect Automatic

Replace “Automatic” with your default network Location, or leave it, if you’re not sure.

wlankickstop looks like this:

#!/bin/bash
scselect AOFF
rm /System/Library/Extensions.mkext*

If you don’t have random kernel panics during boot time, then remove the last line, because it causes an annoying system message during shutdown.

Make those files executable (chmod a+x filename) and store them somewhere.
Now we’re gonna make them executed while login/logout:
sudo defaults write com.apple.loginwindow LoginHook “/path/to/wlankickstart”
sudo defaults write com.apple.loginwindow LogoutHook “/path/to/wlankickstop”

Now Extensions.mkext will be beleted and Airport will be turned on/off during boot/shutdown.

3. Kismac
If you don’t have it, download and install it. Open Script Editor from /Applications/AppleScript and write a new script:

tell application “KisMAC”
activate
startScan
delay 5
stopScan
quit
end tell

Try it. It’ll run Kismac, scan for 5 secs and turn it off. Make sure, Kismac uses the Airport Extreme Passive Driver. Compile this script and save it as an Applications (without “Startup Screen”). Now Open up System Preferences, go to Accounts, select your user, go to Login Items and add the previous compiled application.

You’re done. Reboot and enjoy. Now you’ll only have to select your W-Lan Network after a reboot instead of doing this process by your own.
It works? Give me a comment ;-)

Hibernate on EeePC 900A

Written on October 18th 2008, 00:10 by sYnie

Before I start to talk about hibernate, I want to mention a very strange behavior of the 900A. The internal SSD is named sda OR sdb, depending on whether there is a card in the card reader at the system startup. So if there is a card plugged in, the internal SSD will be flagged as sdb. If there is no card, it will be sda. WTF? I really have no idea what this is caused by. But I think this causes a problem with hibernation.

At first, I didn’t even realize, that the internal SSD changes its device name. I use Ubuntu eee and during the installation, the fstab and menu.lst were filled with UUID’s instead of the device names – So there is no problem with booting and mounting them.

Anyway, I tried to get hibernation aka suspend to disk to work using this tutorial:
http://www.ubuntu-eee.com/wiki/index.php5?title=Fix:_hibernate

Everything seemed to work. s2disk caused the notebook to hibernate (as long as i didn’t insert/remove a card), but the wakeup ended in a ordinary boot, without resuming the written image. After hours, I got it work. Just do exactly the same, as it’s described in the tutorial, except for one step.
When you’re asked to change the /etc/uswsusp.conf, don’t use any device names in it. Do it, as Ubuntu did it during the installation: Use UUID’s.
To get to know the UUID of the internal SSD, we have to find out, how it’s labeled:

mount

This will return something like this:

/dev/sdb1 on / type ext3 (rw,noatime,errors=remount-ro)
proc on /pro....

Now, we know our SSD is /dev/sdXX (sdb1 in my case), because it’s mounted to /. In the next step, we’ll get to know the UUID:

sudo vol_id /dev/sdXX |grep UUID=

This will return the UUID. In my case:

ID_FS_UUID=16fa07c8-8416-5f10-85c6-a8410fad510

And now we’ll use this UUID instead of the device name in /etc/uswsusp.conf:

# /etc/uswsusp.conf(8) -- Configuration file for s2disk/s2both
resume device = /dev/disk/by-uuid/16fa07c8-8416-5f10-85c6-a8410fad510
compress = y
early writeout = y
image size = 0
RSA key file = /etc/uswsusp.key
shutdown method = platform
resume offset = XXX

If you’ve found this site after you already tried the tutorial mentioned above, then just do the changes and run this at the end:

sudo update-initramfs -k `uname -r` -u

Otherwise hibernate will create the image but it won’t be booted.

And now, for me, it works *woohoo*
I hope this will help ;-)

Mr Burns

Written on July 11th 2007, 03:07 by sYnie

I was searching for a tool to burn CDs and DVDs on Mac OS X without any GUI or interface. I’m used to the shell, as I’m a Linux user. The only option was to use hdiutil, whose commands I found too hard to remember. So I coded a small program, which makes use of hdiutil in order to easily burn DVDs and CDs using the terminal. The name of it is “Mr Burns” ;-)

Download:

After copying the applications to a path within your $PATH variable, it can be used like this:

  • `mrburns` for copying disc2disc (with the first 2 drives found)
  • `mrburns -o devicenumber` defines the drive you want to burn with
  • `mrburns -i file|folder|image|devicenumber` defines the file or image or device you want to burn.
  • `mrburns -l` lists all the devicenumbers (for usage with -o or -i)
  • `mrburns –help` to read what i just wrote

Examples:

  • `mrburns -i 2` uses device number two to read from
  • `mrburns -i /Users/synie/a_folder -o 1` burns the content of this folder to the disc in device 1
  • `mrburns -i ~/foo.iso` burns this iso to the default burning device

A lot of mac users aren’t used to the shell in a way, that they would even use it to burn discs. But maybe this app is helpful for some Linux guys who sometimes work with macs ;-)

Linux on USB

Written on November 30th 2006, 13:11 by sYnie

Once this was a very detailed post about which distribution to use on a USB stick and how to get that managed. As I just translated it for devl.net, I keep it short.

I have used Slax in order to install it on a USB stick. Just plug it into any (new) computer, and it’ll boot from it (as long as the mainboard is able to do this and as long as it’s activated in the BIOS). Every Linux user will know the benefits of a full OS on a USB stick.

This is a short how-to about installing Slax on a USB stick:

  1. Plug in the stick and type `dmesg |tail` in order to get to know how the stick is named. Usually it’s sda or the partition sda1, which I’m also using furtheron. (Use your own device name instead of sda)
  2. Create partition table: `cfdisk /dev/sda`. Format the whole stick as Fat32 (Type 0B). Also give it a “Bootable Flag”. After writing, it should look something like this: sda1 Boot Primary W95 FAT32 [ ] 1022.92
  3. Format: `mkdosfs -F 16 /dev/sda1` creates a Fat16 partition, which can be also read by windows.
  4. Create a directory called “usb” (or whatever) in /mnt and mount /dev/sda to it: `mkdir /mnt/usb && mount /dev/sda1 /mnt/usb`
  5. Download Slax. It’s not important which version you use. I downloaded Slax Popcorn Edition.
  6. Open a shell and go to the directory where you have downloaded slax to  (`cd /home/you/whereever/downloads`) and create a directory called ‘usbslax’ by typing `mkdir usbslax`.
  7. Mount the iso to the just created directory: `mount -o loop slax-*.iso usbslax`.
  8. `cp -r slax/* /mnt/usb` will copy all the data to the USB stick.
  9. Go to the stick (`cd /mnt/usb`)
  10. copy isolinux.cfg to syslinux.cfg, as we want to use syslinux: `mv isolinux.cfg syslinux.cfg`
  11. Copy the kernel and initrd to the root directory of the stick, as it won’t be a live CD: `cp boot/vmlinuz boot/initrd.gz ./`
  12. Open syslinux.cfg in a any text edit tool (e.g. `vim syslinux.cfg`) change every  ‘/boot/vmlinuz’ to ‘vmlinuz’ and ‘/boot/initrd.gz’ to ‘initrd.gz’.
  13. Unmount: `cd .. && umount /dev/sda1`
  14. Install Lilo to the stick: `lilo -M /dev/sda` [grub didn't work for me]
  15. Make it bootable: `syslinux -s /dev/sda1`
  16. Reboot and enjoy: `sudo reboot`