Sex, Drugs and Public Hangings – Refrences

Sex, Drugs and Public Hangings
A series by Spiralbound.net on social deviance and punishment in the United States and Europe

References:

Hagan, Frank E. 1990 Introduction to Criminology
Chicago: Nelson-Hall

Heiner, Robert. 1996 Criminology A Cross Cultural Perspective
St. Paul, MN: West Publishing

Schabas, William A. 1997. The Abolition of the Death Penalty in International Law.
Cambridge, England: Cambridge University Press

Sparrow, Malcolm K. 2000. License to Steal: How Fraud Bleeds America’s Health Care System Dry.
Boulder: Westview Press.

Sex, Drugs and Public Hangings
© Cliff Pearson & Spiralbound.net
All Rights Reserved

Whipped Magazine… Not real, but a funny mockup

Every now and then someone gets a crazy idea, and turns it into reality with Photoshop. I have absolutely no clue where this came from, as it was forwarded to me via e-mail from a friend, but it would seem that someone out there decided that the time had come for a magazine (or at least a fake magazine cover) for men who "do not make the decisions". I especially like “10 NEW WAYS to sleep on the couch” and “avoid confrontation; how to keep her happy without getting yelled at”.

Whiped Magazine

Whiped Magazine


Copy a Solaris Boot Drive to a New Disk

If you’ve ever gone to mirror a system drive with Solstice Disk suite, you know how frustrating it can be when you either don’t have any more slices to use for your meta database partitions, or all the space on the disk has already been allocated to existing partitions. While Disk Suite only requires one partition be reserved for its meta database information on boot drives, two are really suggested for redundancy purposes, and in the example below, I found myself needing to mirror a system disk that had only one remaining partition, and no space left that could be used for the meta database.

While I could have taken a small amount of space from the swap partition and re-allocated it to a new meta database partition on slice 7, this solution would not have been elegant, and I would have still only had one meta database partition. As it stood, the system had the following filesystems on the following disk slices:

c1t0d0

Part Tag
0 root
1 swap
2 backup
3 usr
4 usr/local
5 opt
6 var
7 unused

In order to bring the system into line with my standards and prepare it for proper mirroring, I would have to carve up another disk, and migrate the data to it.

Here is what the partition table on the new disk looked like:

c1t2d0
Current partition table (original):
Total disk cylinders available: 24620 + 2 (reserved cylinders)

Part Tag Flag Cylinders Size Blocks
0 root wm 0 - 1088 1.50GB (1089/0/0) 3146121
1 swap wu 1089 - 6896 8.00GB (5808/0/0) 16779312
2 backup wu 0 - 24619 33.92GB (24620/0/0) 71127180
3 - wm 6897 - 6967 100.16MB (71/0/0) 205119
4 - wm 6968 - 7038 100.16MB (71/0/0) 205119
5 opt wm 7039 - 8853 2.50GB (1815/0/0) 5243535
6 usr wm 8854 - 12483 5.00GB (3630/0/0) 10487070
7 var wm 12484 - 24619 16.72GB (12136/0/0) 35060904

Now that everything is all laid out, we can start moving all the data from c1t0d0 to c1t2d0, keeping in mind that we will be merging /usr/local onto /usr on the new system disk… Here we go

Make a new filesystem for /:

# newfs /dev/rdsk/c1t2d0s0
newfs: /dev/rdsk/c1t2d0s0 last mounted as /
newfs: construct a new file system /dev/rdsk/c1t2d0s0: (y/n)? Y

Mount the new / filesystem as /mnt:
# mount -F ufs -o rw /dev/dsk/c1t2d0s0 /mnt
Move the data from c1t0d0s0 to c1t2d0s0:
# ufsdump 0f – / | ( cd /mnt ;ufsrestore xvf – )
Add links
Set directory mode, owner, and times.
set owner/mode for ‘.’? [yn] y
Directories already exist, set modes anyway? [yn] y
DUMP: 405886 blocks (198.19MB) on 1 volume at 406 KB/sec
DUMP: DUMP IS DONE

Unmount /mnt
# umount /mnt

That’s the general idea… Now we just have to do the same thing for the other partitions, leaving out swap, backup, and our two meta database partitions of course. These partitions (1,2,3 and 4) should be left alone for the time being, as they are never mounted as filesystems.

# newfs /dev/rdsk/c1t2d0s5
# mount -F ufs -o rw /dev/dsk/c1t2d0s5 /mnt
# ufsdump 0f – /opt | ( cd /mnt ;ufsrestore xvf – )
# umount /mnt
# newfs /dev/rdsk/c1t2d0s6
# mount -F ufs -o rw /dev/dsk/c1t2d0s5 /mnt
# ufsdump 0f – /usr | ( cd /mnt ;ufsrestore xvf – )
# umount /mnt
# newfs /dev/rdsk/c1t2d0s7
# mount -F ufs -o rw /dev/dsk/c1t2d0s5 /mnt
# ufsdump 0f – /var | ( cd /mnt ;ufsrestore xvf – )
# umount /mnt
Finally, the /usr/local partition
# mount -F ufs -o rw /dev/dsk/c1t2d0s5 /mnt
# ufsdump 0f – /usr/local | ( cd /mnt/local ;ufsrestore xvf – )
# umount /mnt

Now that we have all the data moved, we still don’t have a disk that is bootable. Since the whole idea here is for us to end up with a new bootable system disk, we have to install bootblocks onto the new system disk. This is done with the installboot command:

# installboot /usr/platform/`uname -i`/lib/fs/ufs/bootblk /dev/rdsk/c1t2d0s0

Now that we have the bootblocks needed to boot the solaris kernel, the last thing we have to do is make sure our new vfstab file points to all the right partitions.

Mount the new / partition:
# mount -F ufs -o rw /dev/dsk/c1t2d0s0 /mnt
Edit the new vfstab file:
# vi /mnt/etc/vfstab
For the information given in this example, this file will contain the following entries:

#device device mount FS fsck mount mount
#to mount to fsck point type pass at boot options
#
fd - /dev/fd fd - no -
/proc - /proc proc - no -
/dev/dsk/c1t2d0s1 - - swap - no -
/dev/dsk/c1t2d0s0 /dev/rdsk/c1t2d0s0 / ufs 1 no -
/dev/dsk/c1t2d0s5 /dev/rdsk/c1t2d0s5 /usr ufs 1 no -
/dev/dsk/c1t2d0s6 /dev/rdsk/c1t2d0s6 /var ufs 1 no -
/dev/dsk/c1t2d0s7 /dev/rdsk/c1t2d0s7 /opt ufs 2 yes -
swap - /tmp tmpfs - yes -

Notice that the target number will remain 2, not move to 0 when we swap the disks and boot from the new one. To resolve this, it is strongly suggested that you rebuild the solaris device tree and change the vfstab file to reflect the new disk position.

That is everything! We now shutdown the system, swap the positions of c1t0d0 and c1t2d0 and reboot off our new system disk. We are now ready to move onto the mirroring process.

The Howard BEAN: Begins Campaign for New Owner

The Howard BEAN: A Cafe For America has begun an international campaign for a new owner, its current owner announced today. The Montpelier, Vt., cafe opened on election day 2004 and was named (tongue-in-cheek) after a certain former Vermont Governor who is the chair of the Democratic National Committee. The cafe is also home to the monthly meetup of the Central Vermont Democracy for America.

As our cafe continues to gain a national following, we want to be certain that the person who takes over is truly the ideal candidate and will continue to serve a no-frills, affordable cup of coffee. None of that $4-a-cup, whoop-de-do, latte-boca-cucaracha-grande nonsense, says owner Patrick Mullikin. The Howard BEAN is, after all, a cafe for America.

The cafe is located at Riverwalk Records and Psychedelic Poster Gallery, which hosts the annual Green Mountain Bob Dylan Wanna-Be Contest, featured on Vermont Public Radio. Riverwalk Records was instrumental in resurrecting the again-vibrant live music scene in Montpelier and hosts in-store concerts featuring local artists.

For further information, e-mail: info@riverwalkrecords.com, or call (802) 223-3334 or (802) 229-9905.