And while we're on the subject of educational software:
You can even grab the source code for this: http://chem4word.codeplex.com/
# Install HFS+ support
aptitude install hfsplus hfsprogs hfsutils
# Keep an eye on your dmesg:
tail -f /var/log/messages
# Get an idea on what partition you'd want to mount
cat /proc/partitions
# See what filesystems are supported
cat /proc/filesystems
# Check for a hfsplus LKM
modprobe -l | grep hfsplus
# Load it
modprobe hfsplus
# Check to see if it's loaded
grep hfsplus /proc/partitions
# Mount the HFS+ partition. If it's journaled, we don't need -o force.
mount -t hfsplus -o force -o rw /dev/sda2 /mnt/test
# Verify it
/dev/sda2 on /mnt/test type hfsplus (rw,force) touch /mnt/test/selftest ls -la /mnt/test/selftest
# If we're not allowed to mount with the write option, check dmesg
# If required, fsck, then remount.
/sbin/fsck.hfsplus -f /dev/sda2
# As an alternative, you can disable the journal on a MacOS:
# GUI: hold option while clicking the menu in Disk Utility. CMD:
diskutil list
sudo diskutil disableJournal /Volumes/Yourdisk
A colored unpack script using bar:
A little KSH93 function for your .profile. Now you can augomatically unpack most archives while watching the pretty progress bar.
You need bsdprogress (Solaris and Linux port of NetBSD's progress). With a bit work it also works on AIX.
I just re-wrote this for progress, so I didn't check the cpio and such yet.
# Mihai Criveti - Unpack function:
# Progress Unpack - unpack using GNU tar and bsdprogress.
function up {
for archive in $*; do
print $archive;
case $archive in
(*.tar) progress -f $archive gtar xpif - ;;
(*.tar.gz) progress -f $archive gtar -zpixf - ;;
(*.tgz) progress -zf $archive gtar -ipxf - ;;
(*.tar.bz2) progress -f $archive gtar -jipxf - ;;
(*.tbz) progress -f $archive gtar -jipxf - ;;
(*.gz) progress -f $archive gunzip -;;
(*.bz2) progress -f $archive bunzip -;;
(*.tar.Z) uncompress -c $archive | tar gxvf - ;;
(*.cpio) cpio -icd < $archive ;;
(*.Z) uncompress $archive ;;
(*.rar) unrar x $archive ;;
(*.zip) unzip $archive ;;
esac
done
}
Let's say we want to unpack files that end in *bz2 (it will automagically detect .tar.bz2 or tbz2), *gz and a specific tar archive:
cmihai@phobos:/home/cmihai/build$ up g*bz2 c*gz Python\-3.0.1.tar
gnupg-1.4.10.tar.bz2
100% |**********************************************************************| 3330 KB 296.95 KB/s 00:00 ETA
gnupg-2.0.14.tar.bz2
100% |**********************************************************************| 3888 KB 340.20 KB/s 00:00 ETA
ccache-2.4.tar.gz
100% |**********************************************************************| 86363 201.51 KB/s 00:00 ETA
Python-3.0.1.tar
91% |******************************************************** | 43320 KB 787.63 KB/s 05:00 ETA
See:
http://netbsd.gw.com/cgi-bin/man-cgi?progress++NetBSD-current
http://mac.freshmeat.net/projects/bsdprogress/
It builds fine on AIX (Makefile tweaks), Solaris and Linux. Native on NetBSD.
Other versions:
http://clpbar.sourceforge.net/
http://freshmeat.net/projects/progress