My Linux tips and tricks page part 2.

My Linux tips and tricks page, Part 2.

Go to part 1.

A session with dd.

[jason@darknet:~] dd if=/dev/zero bs=1M count=128 > out.img
128+0 records in
128+0 records out
134217728 bytes (134 MB, 128 MiB) copied, 0.112234 s, 1.2 GB/s
 
jason@darknet:~] sudo mkfs.ext4 out.img
[sudo] password for jason: 
mke2fs 1.43-WIP (15-Mar-2016)
Discarding device blocks: done                            
Creating filesystem with 131072 1k blocks and 32768 inodes
Filesystem UUID: b41c1746-8395-40a3-8905-5e98790a09db
Superblock backups stored on blocks: 
	8193, 24577, 40961, 57345, 73729
 
Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done

Mounting NTFS drives in GNU/Linux.

Just use this line in /etc/fstab to manage this.

/dev/sdb3	/mnt/mediadrive	ntfs-3g	user,auto,noexec,utf8,rw	0	0

This will mount the drive automatically and you will be able to access it as your normal user. It is that easy.

Fixing sound in Ubuntu. 8:10. When using `startx`

If you want to have sound working when you are using Ubuntu at the console and using the startx command to start Xorg and you do not get sound at all then you need to open up the /etc group file in an editor as root and follow along:

for this example the username is bejiita. If you have your username right next to the audio entry and nothing else then you will be fine.

Change the entry from this:

audio:pulse;bejiita

To this:

audio:bejiita

This is what I did, and I have sound in xfce4 loaded from the text console and it works fine.

Installing a new hard disk in GNU/Linux.

I just added a 160 Gigabyte hard drive to my Linux system. I added the partitions with cfdisk, which was not too hard, you can see the results of my editing below.

                          cfdisk (util-linux-ng 2.14)
                              Disk Drive: /dev/sdb
                       Size: 160041885696 bytes, 160.0 GB
             Heads: 255   Sectors per Track: 63   Cylinders: 19457
    Name        Flags      Part Type  FS Type          [Label]        Size (MB)
 ------------------------------------------------------------------------------
                            Pri/Log   Free Space                           1.05*
    sdb1                    Primary   NTFS             []              52428.80*
    sdb2                    Primary   Linux ext3                       79999.08*
    sdb3                    Primary   Linux ext3                       27610.36*
     [   Help   ]  [   New    ]  [  Print   ]  [   Quit   ]  [  Units   ]
     [  Write   ]
                               Print help screen

Then I had to run mkfs like so…

[email protected]:/home/bejiita# mkfs.ext3 /dev/sdb2

After I had done this for each partition, then I rebooted the machine and then setup /etc/fstab to mount the partitions with the mount points I wanted.

[ bejiita@2.6.28.7Bejiitas ]
[ Jobs 0.PWD: ~.bash 3.2.39. ] [ 6 ]
[ 14:29:19 ]
[ $ ]-> cat /etc/fstab
# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0
# /dev/sda2
UUID=8fb5b706-1f4e-4723-bbd3-95db7de0c564 ext3	relatime,errors=remount-ro 0	1
# /dev/sda3
UUID=32601595-bcc1-49de-ab60-cc6842ac5178 none	swap	sw	0	0
/dev/scd0       /media/cdrom0   udf,iso9660 user,noauto,exec,utf8 0	0
/dev/sdb2	/usr/local	ext3	relatime,errors=remount-ro 0	1
/dev/sdb3	/home/bejiita	ext3	relatime,errors=remount-ro 0	1

Then, for /home/bejiita and /usr/local, I re-named the folders /old_home/bejiita and /usr/old_local and then created empty folders in their place to mount the partitions to, then copied the folders & files back to where they belong, only they are now on new partitions. Now I have added more hard disk space to my Ubuntu 8.10 installation and now I can fit more files and music on my computer. With this installation method, it is quite painless and gives an easy way to add more storage space. Now my /home has 26 Gigabytes free instead of 515 Megabytes. And you could see from the cfdisk screen above that I also created an NTFS partition, that is to share music & movies with Windows Vista.

Creating a loopback filesystem.

[ $ ]-&gt; dd if=/dev/zero bs=1M count=512 &gt; out.img
512+0 records in
512+0 records out
536870912 bytes (537 MB) copied, 23.2713 s, 23.1 MB/s

This creates the initial file that will be our filesystem.

deusexmachina:/home/goku/Code # mkfs.ext3 out.img
mke2fs 1.39 (29-May-2006)
out.img is not a block special device.
Proceed anyway? (y,n) y
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
131072 inodes, 524288 blocks
26214 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=67633152
64 block groups
8192 blocks per group, 8192 fragments per group
2048 inodes per group
Superblock backups stored on blocks:
8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 32 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

You need to run /sbin/fdisk out.img and create a filesystem on the loopback device. This is not too different from using it in the conventional way, but you will need to visit the extra commands menu and set the cylinders. Set the value to 1024 and then press r to go back and create the partitions. Then you have this as the results of all your hard work. I have mounted it under /mnt/sdb as a loopback device and I can now copy and modify files inside it. A good way to hide sensitive files if you encrypt the file-system.

[ goku@2.6.18.2-34-Aragorn ]
[ Jobs 0.PWD: ~.bash 3.2.0. ] [ 1 ]
[ 01:15:48 ]
[ $ ]-&gt; mount
/dev/hda1 on / type ext3 (rw,acl,user_xattr)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
debugfs on /sys/kernel/debug type debugfs (rw)
udev on /dev type tmpfs (rw)
devpts on /dev/pts type devpts (rw,mode=0620,gid=5)
/dev/hda2 on /home type reiserfs (rw)
securityfs on /sys/kernel/security type securityfs (rw)
/dev/sda on /mnt/sda type vfat (rw,noexec,nosuid,nodev,user=goku)
none on /dev/shm type tmpfs (rw,size=144m)
/dev/hda4 on /mnt/hda4 type ext3 (rw)
/home/goku/Code/out.img on /mnt/sdb type ext3 (rw,loop=/dev/loop0)
/dev/hdc on /media/dvd type iso9660 (ro,noexec,nosuid,nodev,user=goku)

I have put this file-system to good use now and I have installed Damn Small Linux on it. Now I can boot it with qemu and load DSL whenever I like. Totally cool indeed. I used this command:

qemu -net none -hda out.img -hdc /dev/hdc -boot d

I ran the installer and setup the distro and I was done. I have my own installation I can run on my Linux desktop. There is a similar system for creating a file that contains a swapfile.

GNU/Linux has it good, I installed Apache http server from source code then ran /usr/local/bin/httpd -k start as root and it worked straight away. Much better than the time I tried to set it up on Windows ’98. That was quite frustrating. I had quite a time using that Operating System. I do not wish to repeat that ever again. Now we have Windows Vista which is alleged to not work with the Apple 2 Gorillas sitting against a tree.Ipod. You would need to purchase a Zune and put up with the horrible software that M$ expect you to use. I would not use that for all the Spice on Dune. I am happy with Xmms and storing my music on the hard drive. I have an xmms playlist file in the directory and I can load it up instantly and play my music. The Microsoft Software is reputed to be unstable and slow. Far worse than Media Player 9. Amarok is much better and supports the Ipod. And it does not need DRM and all the other proprietary annoyances that plague closed source software. It even got a mention in APC magazine. Australian Personal Computer magazine. This is a great compliment to the hard work of the Amarok team.

Just installed Knoppix 5.1 as my main OS on my hdd and then installed OpenSuse 10.2 to /dev/hda4. It installed it’s own bootloader over the existing Knoppix one, but kept the knoppix entry. Now I have two GNU/Linux distros installed to the one machine. The bootloader installation was done without prompting, but worked perfectly. Try that with Windows XP and Vista… I am very happy. And my rpm’s of xmms, larswm lame and mp3blaster installed perfectly in Suse. On my Knoppix installation, I am working at the console, with a kernel building on one, mplayer playing a CD on another and writing this on a third. And it works quite well indeed. Just type mplayer cdda:// to play an Audio CD disc with mplayer. Nice and easy. And as I said, I can use the Alt->arrow combination to change virtual consoles which is better than pressing alt-F2 for example. It is a much faster method of switching screens. Unless you are using screen, but I dislike that program. Mp3blaster is a good choice for playing mp3s. You load in your xmms playlist and play any track you want on the text console. I have disabled the CD sound in alsamixer and the CD still comes through. Totally cool.

I hate having the CD level up which introduces noise. Better to extract the actual data on the fly from the disc and play that. It is binary data after all, and I get crystal clear CD quality music the way it should be. Now I have unplugged the CD audio cable from the DVD drive and I can still hear it. But having the CD audio cable to play music through is such a 20th century concept and belongs in the dark ages. I would be very upset if Windows Vista does not support the direct digital audio extraction that I am using on Knoppix 5.1. The OpenSuse KDE 3.5.5 desktop has a Windows Vista styled start menu with instant Beagle searching built in. So if you are looking for your fish document then you can easily find it. You just click in the search box and type “fish” and it will be found instantly. Windows Vista users are stuck with a search tool that has to search the folders on the target drive every time, it does not build a database of all the files to be searched so that the future searches are just about instant.

That is not as good as beagle, which is fast, but not the same as that excellent search application. A good thing about the OpenSuse 10.2 installation is that it backed up my boot sector of my hard drive to /boot on /dev/hda4 so that if I uninstall Open Suse, (not likely,) I can restore the correct boot sector on the hard drive. I bet Windows 7 or Windows 8 does not have this type of feature. I just upgraded to Kernel 2.6.20.2 and it worked perfectly with my machine first time. The preemptive kernel option makes the machine faster than using the default kernel, and disabling SMP support for a single processor desktop machine makes the kernel run even faster. As well as optimising the kernel for size as shown below. Windows XP does support the digital audio extraction that I can use on Linux, so that is pretty good.

#
# General setup
#
CONFIG_LOCALVERSION="-Lorien"
CONFIG_LOCALVERSION_AUTO=y
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
# CONFIG_IPC_NS is not set
CONFIG_POSIX_MQUEUE=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_BSD_PROCESS_ACCT_V3=y
CONFIG_TASKSTATS=y
CONFIG_TASK_DELAY_ACCT=y
# CONFIG_UTS_NS is not set
CONFIG_AUDIT=y
CONFIG_AUDITSYSCALL=y
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
# CONFIG_SYSFS_DEPRECATED is not set
CONFIG_RELAY=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
# CONFIG_TASK_XACCT is not set
CONFIG_SYSCTL=y
# CONFIG_EMBEDDED is not set
CONFIG_UID16=y
CONFIG_SYSCTL_SYSCALL=y
CONFIG_KALLSYMS=y
# CONFIG_KALLSYMS_ALL is not set
# CONFIG_KALLSYMS_EXTRA_PASS is not set
CONFIG_HOTPLUG=y
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_ELF_CORE=y
CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
CONFIG_EPOLL=y
CONFIG_SHMEM=y
CONFIG_SLAB=y
CONFIG_VM_EVENT_COUNTERS=y
CONFIG_RT_MUTEXES=y
# CONFIG_TINY_SHMEM is not set
CONFIG_BASE_SMALL=0
# CONFIG_SLOB is not set

And my Processor setup.

#
# Processor type and features
#
# CONFIG_SMP is not set
# CONFIG_X86_PC is not set
# CONFIG_X86_ELAN is not set
# CONFIG_X86_VOYAGER is not set
# CONFIG_X86_NUMAQ is not set
# CONFIG_X86_SUMMIT is not set
# CONFIG_X86_BIGSMP is not set
# CONFIG_X86_VISWS is not set
CONFIG_X86_GENERICARCH=y
# CONFIG_X86_ES7000 is not set
# CONFIG_PARAVIRT is not set
CONFIG_X86_CYCLONE_TIMER=y
# CONFIG_M386 is not set
# CONFIG_M486 is not set
CONFIG_M586=y
# CONFIG_M586TSC is not set
# CONFIG_M586MMX is not set
# CONFIG_M686 is not set
# CONFIG_MPENTIUMII is not set
# CONFIG_MPENTIUMIII is not set
# CONFIG_MPENTIUMM is not set
# CONFIG_MCORE2 is not set
# CONFIG_MPENTIUM4 is not set
# CONFIG_MK6 is not set
# CONFIG_MK7 is not set
# CONFIG_MK8 is not set
# CONFIG_MCRUSOE is not set
# CONFIG_MEFFICEON is not set
# CONFIG_MWINCHIPC6 is not set
# CONFIG_MWINCHIP2 is not set
# CONFIG_MWINCHIP3D is not set
# CONFIG_MGEODEGX1 is not set
# CONFIG_MGEODE_LX is not set
# CONFIG_MCYRIXIII is not set
# CONFIG_MVIAC3_2 is not set
CONFIG_X86_GENERIC=y
CONFIG_X86_CMPXCHG=y
CONFIG_X86_XADD=y
CONFIG_X86_L1_CACHE_SHIFT=7
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
# CONFIG_ARCH_HAS_ILOG2_U32 is not set
# CONFIG_ARCH_HAS_ILOG2_U64 is not set
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_X86_PPRO_FENCE=y
CONFIG_X86_F00F_BUG=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_X86_CMPXCHG64=y
CONFIG_X86_ALIGNMENT_16=y
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_HPET_TIMER=y
CONFIG_HPET_EMULATE_RTC=y
# CONFIG_PREEMPT_NONE is not set
# CONFIG_PREEMPT_VOLUNTARY is not set
CONFIG_PREEMPT=y
CONFIG_PREEMPT_BKL=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_MCE=y
CONFIG_X86_MCE_NONFATAL=y
CONFIG_VM86=y
CONFIG_TOSHIBA=m
CONFIG_I8K=m
CONFIG_X86_REBOOTFIXUPS=y
CONFIG_MICROCODE=m
CONFIG_MICROCODE_OLD_INTERFACE=y
CONFIG_X86_MSR=m
CONFIG_X86_CPUID=m

And finally the Graphics setup for the framebuffer.

#
# Graphics support
#
CONFIG_FIRMWARE_EDID=y
CONFIG_FB=y
CONFIG_FB_DDC=m
CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y
# CONFIG_FB_MACMODES is not set
# CONFIG_FB_BACKLIGHT is not set
CONFIG_FB_MODE_HELPERS=y
CONFIG_FB_TILEBLITTING=y
CONFIG_FB_CIRRUS=m
CONFIG_FB_PM2=m
CONFIG_FB_PM2_FIFO_DISCONNECT=y
CONFIG_FB_CYBER2000=m
CONFIG_FB_ARC=m
# CONFIG_FB_ASILIANT is not set
CONFIG_FB_IMSTT=y
CONFIG_FB_VGA16=m
CONFIG_FB_VESA=y
CONFIG_FB_HGA=m
CONFIG_FB_HGA_ACCEL=y
CONFIG_FB_S1D13XXX=m
CONFIG_FB_NVIDIA=m
CONFIG_FB_NVIDIA_I2C=y
CONFIG_FB_RIVA=m
CONFIG_FB_RIVA_I2C=y
# CONFIG_FB_RIVA_DEBUG is not set
CONFIG_FB_I810=m
CONFIG_FB_I810_GTF=y
CONFIG_FB_I810_I2C=y
CONFIG_FB_INTEL=m
# CONFIG_FB_INTEL_DEBUG is not set
CONFIG_FB_INTEL_I2C=y
CONFIG_FB_MATROX=m
CONFIG_FB_MATROX_MILLENIUM=y
CONFIG_FB_MATROX_MYSTIQUE=y
CONFIG_FB_MATROX_G=y
# CONFIG_FB_MATROX_I2C is not set
CONFIG_FB_MATROX_MULTIHEAD=y
CONFIG_FB_RADEON=m
CONFIG_FB_RADEON_I2C=y
# CONFIG_FB_RADEON_DEBUG is not set
CONFIG_FB_ATY128=m
CONFIG_FB_ATY=m
CONFIG_FB_ATY_CT=y
CONFIG_FB_ATY_GENERIC_LCD=y
CONFIG_FB_ATY_GX=y
CONFIG_FB_SAVAGE=m
CONFIG_FB_SAVAGE_I2C=y
CONFIG_FB_SAVAGE_ACCEL=y
CONFIG_FB_SIS=m
CONFIG_FB_SIS_300=y
CONFIG_FB_SIS_315=y
CONFIG_FB_NEOMAGIC=m
CONFIG_FB_KYRO=m
CONFIG_FB_3DFX=m
CONFIG_FB_3DFX_ACCEL=y
CONFIG_FB_VOODOO1=m
CONFIG_FB_CYBLA=m
CONFIG_FB_TRIDENT=m
CONFIG_FB_TRIDENT_ACCEL=y
CONFIG_FB_GEODE=y
CONFIG_FB_GEODE_GX=m
# CONFIG_FB_GEODE_GX_SET_FBSIZE is not set
CONFIG_FB_GEODE_GX1=m
# CONFIG_FB_VIRTUAL is not set
#
# Console display driver support
#
CONFIG_VGA_CONSOLE=y
# CONFIG_VGACON_SOFT_SCROLLBACK is not set
CONFIG_VIDEO_SELECT=y
CONFIG_MDA_CONSOLE=m
CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
CONFIG_FONTS=y
# CONFIG_FONT_8x8 is not set
CONFIG_FONT_8x16=y
# CONFIG_FONT_6x11 is not set
# CONFIG_FONT_7x14 is not set
# CONFIG_FONT_PEARL_8x8 is not set
# CONFIG_FONT_ACORN_8x8 is not set
# CONFIG_FONT_MINI_4x6 is not set
CONFIG_FONT_SUN8x16=y
# CONFIG_FONT_SUN12x22 is not set
# CONFIG_FONT_10x18 is not set
#
# Logo configuration
#
CONFIG_LOGO=y
# CONFIG_LOGO_LINUX_MONO is not set
# CONFIG_LOGO_LINUX_VGA16 is not set
CONFIG_LOGO_LINUX_CLUT224=y
CONFIG_BACKLIGHT_LCD_SUPPORT=y
CONFIG_BACKLIGHT_CLASS_DEVICE=m
CONFIG_BACKLIGHT_DEVICE=y
CONFIG_LCD_CLASS_DEVICE=m
CONFIG_LCD_DEVICE=y

Now I am using the OpenSUSE 10.2 Gnome 2.16.1 desktop, and I have the deskbar plugin on the top panel. I can instantly search my machine and find any document or application I want. And the CD audio works without the audio cable from the DVD drive. Totally cool. This makes it better, as I can switch off the CD sound level in alsamixer and it still works. Saves having the noise introduced by the CD audio cable. I have just tried running an old Unreal Tournament demo with wine and it ran perfectly. And the original Unreal. Very nice indeed, the Command & Conquer Tiberian sun game runs perfectly if you download the rar from the Westwood website and unpack it to your home folder and run the game.exe with Wine.

Here is a screenshot of the Nautilus file manager supplied with the GNOME desktop. Which totally rules over the explorer shell. Just look at the thumbnail previews for office documents. This is a good feature, and unlike Windows XP it shows the amount of diskspace remaining in the status bar. A feature that should be brought back. And it is very fast as well. Although, regarding the diskspace option, I also get a notification pop-up that appears from the GNOME panel when I plug in a USB drive that has little disk space remaining. Very useful, and the GNOME system monitor has a tab that can display disk free space for all of your mounted partitions.

I am talking about the SUSE Enterprise Desktop 10 GNOME desktop in case you are using Ubuntuu and your GNOME desktop does not have the same features. But most of them should be fairly common across different GNU/Linux distributions.

The Nautilus File Manager provides a very easy to use and fun file manager and integrates very well when I am using FVWM and I can run nautilus to provide icons on the desktop.

Some people I have talked to have been telling me about their Windows XP machines and how they are always rebooting it and updating their antivirus software and antispyware. And they are almost proud of the fact! They are so used to this they just accept it. But Windows Vista will introduce more strict DRM and some new security features, but most people will just turn it off if it keeps popping up windows asking for permissions to perform something with root privileges. I know this for a fact. People want to sit down at the machine and do something, without having to switch to Administrator mode first. Although most users run in Administrator mode anyway, as most software will not work in a LUA. Because of the laziness of the Windows programmers, and the laziness of the programmers of the software that will not work.

And programming for DirectX is another matter as it limits games to Windows, when if they used SDL, it could be more portable. Zdoom is a good example of this, it comes in a source package and it can be compiled on Linux or Windows with the same Makefile. Try that with a commercial game. Although Half Life 2 runs on GNU/Linux with Cedega, it is not an ideal solution. Better to have a GNU/Linux binary like Doom3. Prboom also is a good Doom source port that is available for Windows and Linux. And also FreeBSD Unix. And is my preferred Doom source port.

I was once setting up a computer for someone, a Pentium III 500 and the shop had installed Norton Anti-Virus and spybot which made the machine slower than before, even though they had installed a new 80 Gigabyte hard drive. With
7200RPM speed. But having bloated software like that installed does not help, and it made the machine totally unusable. It took up all of the CPU and the computer was was way too slow to use. So slow that I had to quit the spybot scan and call it a day. Total Shite. Who would want to put up with something like that. Having multiple layers of Antivirus, Antispyware and software to protect against malicious computer users that want to break into your machine. If that machine in question was running OpenSuse 10.2 with the KDE 3.5.5 desktop, it would be very fast indeed with the 384MB of RAM it has. Windows ’98 is quite laboured running with all that anti-spyware and anti-virus.GNOME  Nautilus File Manager.

But GNU/Linux has many good things to it’s credit. Like the ability to have many text consoles to switch between with the ALT->right arrow combination. And Xemacs. A totally awesome editor. And the KDE and Gnome desktops, which are derided for being memory hungry, but are faster than the Windows Explorer shell. FVWM is faster still, being a very old Window Manager. And in GNU/Linux, you can send messages to other text consoles. Just type echo "Hello Friend" > /dev/tty3 as root, for example, and the message will be sent. I just tried this with myself logged in at text console tty3 and typing the command from tty2 using sudo. A great way to show off GNU/Linux to your friends. Or if you use an Xterm on a KDE 3.5 desktop like I do then try echo "Hello Mate" > /dev/pts/0 this works as well, just type tty to get the device name. Some distros setup the Windows key to switch virtual consoles. Nice indeed. Now there actually is a use for that key!.

Mozilla Easter Egg.

The Mozilla Easter Egg. Click on this link: about:mozilla. This should also work with Mozilla 1.7. I have had it work with Firefox 2.0 and Epiphany 2.16.1.

Misc GNU/Linux goodness.

Quake running in xdosemu!.
Quake running in xdosemu!.

To the right you can see a screenshot of Quake running in Xdosemu. This game runs just as fast as with a native DOS session. Quite fantastic. And the sound works perfectly. boom.exe also runs fine with dosemu, and I am trying to get zeth running with this emulator. I have tweaked the dosemu configuration to within an inch of it’s life and I am rewarded with a good game of emulated Quake! Those people cursed with running Windows XP could try dosbox in order to get Quake running. That might work. quake.exe will not run in Windows XP by itself. Maybe not even winquake.exe, but this is a GNU/Linux page and I am not concerned with that. Although the quake2 Debian package running with Knoppix 5.1 is nice too. I love to visit Stroggos. But running the original Unreal with wine is quite awesome. I was playing the Nali castle map and I shot at the top of a table that had books on it and they were blown off the table and bounced around the room. One book landed on top of a table on top of another book and bounced a couple of times and came to a halt. Totally sweet.

Quake v1.08 runs well in xdosemu and is easily controlled when I use the CONTROL->ALT-HOME key combination to activate the mouse grab. I just played a game in episode one and had no problems at all. Below I have included a very useful script to remove bad symlinks in the current directory.

function badlink()
# From Atomic magazine #43 August 2004. http://www.atomicmpc.com.au
{
	DEFAULT=$(tput sgr0);
	FILELIST=.badlink.list
	[ -e $FILELIST ] &amp;&amp; $( rm -fr $FILELIST )
	function checklink()
	{
	for badlink in $1/*; do
		[ -h "$badlink" -a ! -e "$badlink" ] &amp;&amp; echo \
			\"$badlink\" &gt;&gt; $FILELIST
		[ -d "$badlink" ] &amp;&amp; checklink $badlink
		done
	}
	for directory in `pwd`; do
		if [ -d $directory ] ; then
		checklink $directory;
		fi
	done
	if [ -e $FILELIST ] ; then
		for line in $(cat $FILELIST); do
			echo $line | xargs -r rm | echo -e "$line \
				-removed"
			echo
		done
	rm -fr $FILELIST
	else
		printf "Bad symlinks not found.\n\n"
	fi
} # End Atomic function.

Very useful GNU/Linux links.

  1. Customize.org A website with
    lot’s of good styles and themes for various Window managers.
  2. Slashdot.org A website with
    many interesting and highly technical news stories and commentary.
  3. Gnome Website. The website of the
    Gnome destop project. Go here for more information on the excellent Gnome 2
    desktop project.
  4. Home of the GNU project. Visit
    this site to learn more about the GPL and the GNU project.
  5. Fresh Meat. A website
    highlighting the new and useful files released for Linux every day.
  6. Secure
    Deletion of files.
     A discussion of secure deletion of files on various
    filesystems.
  7. The latest
    version of Xterm.
     A useful terminal emulator for XFree86.
  8. The Eterm terminal Emulator. A
    pretty and theme-able terminal emulator for XFree86.
  9. Creating DVD slideshows on
    Linux.
     A sourceforge page with information on how to make your own
    slideshow DVD’s.
  10. DVD slideshow
    page.
     The main DVD slideshow page. With examples and information.
    Also see: /usr/share/doc/dvd-slideshow/html/examples.html
  11. SUSE
    10.1 Desktop Setup.
     Setting up SUSE 10.1 as a fully working desktop
    system.
    From:
    http://www.linuxforums.org/reviews/review_of_suse_10.1.html
  12. Mplayer Website. A
    good site for the best DVD and multimedia player.