Start with just six words
January 13th, 2012Homework: write opening and first scenes, try to introduce aspects of the characters without explicitly referencing them.
Jeff leaned over the guard rails of the bed. His eyes were bloodshot and his cheeks were wet with tears. The little girl looked jaundice, her skin was getting more yellow. The only colour Jeff could see was the blood stained bandages wrapping her arms and legs. Her body was like a rag doll that the dog had been throwing about.
Dr. Barrett placed his hand on Jeff’s shoulder and in a deep comforting voice said,
“Come on Jeff, there’s not much you can do here. Come into my office and you can go through some of the details of what happened to Emily".
Dr. Barrett helped Jeff to his feet and put his black arm around Jeff’s waist. They walked slowly towards the door. Jeff’s breathing quickened each time he placed his right foot down: Dr. Barrett’s arm muscle flexed as they moved in time.
It was only a small hospital on the edge of the reserve which worried Jeff. Emily seemed too weak to be moved and he wasn’t sure if the facilities here would be enough.
Comments
- The rag doll reference is a nice simile.
- Reader is thrown in a the deep end, harsh on the reader.
- Good opening line.
- There’s a good example of “Showing” which is describing the picture instead of “Telling” which is explaining what the picture it. Jeff was injured too.
To cut a long story short
This week’s lesson was about condensing a story into the fewest words possible but still include a beginning, middle and an end. Ernest Hemingway said that the best story he ever wrote was:
For sale: baby shoes, never worn
It’s a synopsis of a story.
My effort:
“Excessive drinking with a mystery woman, son”
Homework for next time:
Start with a 6 word story.
Break it up into a beginning of 75 words and middle of 75 words and an end of 50 words.
Split the beginning up into a beginning, middle and end. Include 3 crisis points in the beginning, 6 crisis points in the middle and 2 in the end.
6 word story should be 6 words.
First story draft should be 300 words.
Final story should be 3000 words.
Science Fiction
January 9th, 2012There are many people who turn their noses up at Science Fiction films and yet the majority of people do like them, it’s just they re-classify them in their mind. I over heard a conversation in the pub on Friday.
John: Don’t like SciFi.
Al: What about Terminator 2?
John: That’s not SciFi, that’s an action film.
Al: Robots coming from the future to change history, how much more SciFi can you get??
rpmdb: unable to join the environment
January 6th, 2012How time flies? It only seemed like yesterday that I installed CentOS 5.4 at a customer site. This week I needed to update rsync from 2.6.8 to what ever the latest version is. So I typed:
yum update rsync
and got the following message.
Loaded plugins: fastestmirror
rpmdb: unable to join the environment
error: db4 error(11) from dbenv->open: Resource temporarily unavailable
error: cannot open Packages index using db3 - Resource temporarily unavailable (11)
error: cannot open Packages database in /var/lib/rpm
Traceback (most recent call last):
File “/usr/bin/yum", line 29, in ?
yummain.user_main(sys.argv[1:], exit_code=True)
File “/usr/share/yum-cli/yummain.py", line 309, in user_main
errcode = main(args)
File “/usr/share/yum-cli/yummain.py", line 157, in main
base.getOptionsConfig(args)
File “/usr/share/yum-cli/cli.py", line 187, in getOptionsConfig
self.conf
File “/usr/lib/python2.4/site-packages/yum/__init__.py", line 664, in <lambda>
conf = property(fget=lambda self: self._getConfig(),
File “/usr/lib/python2.4/site-packages/yum/__init__.py", line 239, in _getConfig
self._conf = config.readMainConfig(startupconf)
File “/usr/lib/python2.4/site-packages/yum/config.py", line 804, in readMainConfig
yumvars[’releasever’] = _getsysver(startupconf.installroot, startupconf.distroverpkg)
File “/usr/lib/python2.4/site-packages/yum/config.py", line 877, in _getsysver
idx = ts.dbMatch(’provides’, distroverpkg)
TypeError: rpmdb open failed
I also tried:
rpm -qa
which resulted in:
rpmdb: unable to join the environment
error: db4 error(11) from dbenv->open: Resource temporarily unavailable
error: cannot open Packages index using db3 - Resource temporarily unavailable (11)
error: cannot open Packages database in /var/lib/rpm
Even though the message says Resource temporarily unavailable, it was in fact always unavailable!
Hunted around and found this article which helped a lot.
The problem is caused by an empty database index file in the RPM repository, probably caused by corruption. In my case it was because most of the index files were missing.
[root@host tmp]# ls -l /var/lib/rpm
total 39656
-rw-r–r– 1 root root 5107712 Nov 11 11:58 Basenames
-rw-r–r– 1 root root 12288 Oct 5 2010 Conflictname
-rw-r–r– 1 root root 0 Dec 12 11:42 __db.001
-rw-r–r– 1 root root 1036288 Nov 11 11:58 Dirnames
-rw-r–r– 1 root root 5259264 Nov 11 11:58 Filemd5s
-rw-r–r– 1 root root 24576 Nov 11 11:58 Group
-rw-r–r– 1 root root 16384 Nov 11 11:58 Installtid
-rw-r–r– 1 root root 40960 Nov 11 11:58 Name
-rw-r–r– 1 root root 30818304 Nov 11 11:58 Packages
-rw-r–r– 1 root root 331776 Nov 11 11:58 Providename
-rw-r–r– 1 root root 102400 Nov 11 11:58 Provideversion
-rw-r–r– 1 root root 12288 Oct 5 2010 Pubkeys
-rw-r–r– 1 root root 413696 Nov 11 11:58 Requirename
-rw-r–r– 1 root root 208896 Nov 11 11:58 Requireversion
-rw-r–r– 1 root root 81920 Nov 11 11:58 Sha1header
-rw-r–r– 1 root root 45056 Nov 11 11:58 Sigmd5
-rw-r–r– 1 root root 12288 Feb 16 2010 Triggername
So all I needed to do was remove all the index files and rebuild them.
rm -rf /var/lib/rpm/__db*
rpm -rebuilddb
The RPM repository now looks like:
-rw-r–r– 1 root root 2768896 Jan 6 09:49 Basenames
-rw-r–r– 1 root root 12288 Oct 5 2010 Conflictname
-rw-r–r– 1 root root 0 Jan 6 09:49 __db.000
-rw-r–r– 1 root root 24576 Jan 6 09:49 __db.001
-rw-r–r– 1 root root 1318912 Jan 6 09:49 __db.002
-rw-r–r– 1 root root 450560 Jan 6 09:49 __db.003
-rw-r–r– 1 root root 978944 Jan 6 09:49 Dirnames
-rw-r–r– 1 root root 5267456 Jan 6 09:49 Filemd5s
-rw-r–r– 1 root root 24576 Jan 6 09:49 Group
-rw-r–r– 1 root root 16384 Jan 6 09:49 Installtid
-rw-r–r– 1 root root 45056 Jan 6 09:49 Name
-rw-r–r– 1 root root 25427968 Jan 6 09:49 Packages
-rw-r–r– 1 root root 335872 Jan 6 09:49 Providename
-rw-r–r– 1 root root 98304 Jan 6 09:49 Provideversion
-rw-r–r– 1 root root 12288 Oct 5 2010 Pubkeys
-rw-r–r– 1 root root 409600 Jan 6 09:49 Requirename
-rw-r–r– 1 root root 196608 Jan 6 09:49 Requireversion
-rw-r–r– 1 root root 81920 Jan 6 09:49 Sha1header
-rw-r–r– 1 root root 45056 Jan 6 09:49 Sigmd5
-rw-r–r– 1 root root 12288 Feb 16 2010 Triggername
I re-issued the update command:
yum update rsync
and it successfully installed rsync 3.0.6-4.el5_7.1.
Interestingly, CentOS 5.4 has been deprecated and so this version of rsync was for CentOS 5.7, but it didn’t need to install any dependencies.
Format a USB drive under unix
January 3rd, 2012In order to format a USB device under Unix you need to follow these simple steps under the root user account.
Find out the name of the device file representing the USB hardware device:
If the system is busy I clean out the
dmesgto make it easier to find the reports when the USB device is connected. I clear the existing log to a date stamped file:dmesg -c > dmesg.`date +%Y-%m-%d-%H-%M-%S`
- Plug in the USB device.
- Type:
again and you should get something like:dmesg
usb 1-5: new high speed USB device using ehci_hcd and address 4 usb 1-5: configuration #1 chosen from 1 choice Initializing USB Mass Storage driver... scsi4 : SCSI emulation for USB Mass Storage devices usbcore: registered new driver usb-storage USB Mass Storage support registered. usb-storage: device found at 4 usb-storage: waiting for device to settle before scanning Vendor: WDC WD15 Model: EARS-00S0XB0 Rev: 80.0 Type: Direct-Access ANSI SCSI revision: 05 SCSI device sdb: 2930277168 512-byte hdwr sectors (1500302 MB) sdb: Write Protect is off sdb: Mode Sense: 23 00 00 00 sdb: assuming drive cache: write through SCSI device sdb: 2930277168 512-byte hdwr sectors (1500302 MB) sdb: Write Protect is off sdb: Mode Sense: 23 00 00 00 sdb: assuming drive cache: write through sdb: unknown partition table sd 4:0:0:0: Attached scsi disk sdb sd 4:0:0:0: Attached scsi generic sg2 type 0
You can see that the kernel has assignedsdbas the block device (i.e./dev/sdb). You can also see that the kernel was not able to detect the partition type of the drive
Now that we know the device file we must create a partition on the drive and format it. The tool used for this is fdisk.
- Launch the program telling it which device file to look at:
fdisk /dev/sdb
- If you get the following message then ignore it because doing a write will just create an empty partition which isn’t what we want.
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
- Add a partition by pressing n (for new partition).
I only want one partition and for that partition to contain the whole drive. If you wanted a different number of partitions then here would be the place to set that up.Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-182401, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-182401, default 182401): 182401 - Next up, we have to set the type of the filesystem. So hit t.
Selected partition 1
Hex code (type L to list codes): 7
Changed system type of partition 1 to 7 (HPFS/NTFS) - Then look over what we have done.
Disk /dev/sdb: 1500.3 GB, 1500301910016 bytes
255 heads, 63 sectors/track, 182401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytesDevice Boot Start End Blocks Id System
/dev/sdb1 1 182401 1465136001 7 HPFS/NTFS - Finally enter w to write the partition table and quit.
- Typing
dmesgagain gives:SCSI device sdb: 2930277168 512-byte hdwr sectors (1500302 MB)
sdb: Write Protect is off
sdb: Mode Sense: 23 00 00 00
sdb: assuming drive cache: write through
sdb: sdb1
Now that the partition has been created we must make it ready for action.
- The first thing we need to do is format the drive and create a filesystem. Issue the following command. There should be a longish wait (1.5TB drive took about 20 seconds.)
# mkfs -t vfat /dev/sdb1
mkfs.vfat 2.11 (12 Mar 2005) - Now we are ready. We can mount the USB drive:
mount -t vfat /dev/sdb1 /mnt
- For confirmation we’ll check the mounted partitions with the command
df -hto give:Filesystem Size Used Avail Use% Mounted on
/dev/sda1 388G 30G 338G 9% /
/dev/sda2 436G 366G 48G 89% /home
tmpfs 1013M 0 1013M 0% /dev/shm
/dev/sdb1 1.4T 16K 1.4T 1% /mnt - Don’t forget to edit your backup scripts to reflect the new device name.
Radio Times on Steven Seagal
December 19th, 2011One thing that brightens up my day is reading the damming reviews of Steven Seagal’s films on the Radio Times website.
Hard to Kill (1990), Mason Storm Rating: 3/5
This was the movie that set action superstar Steven Seagal on his monosyllabic road to riches. He plays Mason Storm, a cop who is grievously wounded when a gang invades his marital bedroom and sprays it with gunfire. Storm survives, though his wife isn’t so lucky. It takes seven years to recover from the ordeal, but he emerges stronger than ever and, after the usual period of fearsome solo martial arts training, wreaks a terrible revenge on his attackers. Seagal stars alongside Kelly LeBrock, his real-life wife at the time, and the strong supporting cast also features William Sadler, Frederick Coffin and Dean Norris.
Out for Justice (1991), Det. Gino Felino Rating: 2/5
Steven Seagal gets more dialogue than in all his other movies put together in this lukewarm attempt to give him a lot more heart and soul. He plays a Brooklyn cop with the comedic name of Gino Felino, who comes up against old neighbourhood foe William Forsythe, resulting in much retaliatory violence. Frankly, Seagal is no actor and his career has been founded upon his ability to look cool in combat situations, rather than convey the sort of softly spoken sadness he’s aiming for here. There are plenty of adequate action scenes, but stabs at characterisation are a big mistake under the circumstances.
On Deadly Ground (1994), Forrest Taft Rating: 3/5
Action star Steven Seagal has always brought a vaguely liberal slant to his no-brain thrillers and his directorial debut is admirably politically correct. It’s just a shame that the caring, sharing eco-friendly message tends to overpower what Seagal does best - kicking the stuffing out of bad guys. Here he’s a troubleshooter who goes into battle with oil tycoon Michael Caine - hammily over the top and with a scary hairdo to boot - who’s about to pollute virtually all of Alaska. Seagal the director shows that he has picked up the odd trick or two from the action specialists who made his name, but his impassioned green speeches will have viewers reaching for the remote control.
Plot Summary
A tough firefighter sets out to stop the destruction of native tribes and the natural environment by an unscrupulous oil company planning to drill in Alaska. Ecological thriller, directed by and starring Steven Seagal, with Michael Caine, Joan Chen, John C McGinley, R Lee Ermey and Billy Bob Thornton.
Under Siege 2 (1995), Casey Ryback Rating: 2/5
The original Under Siege was a hugely entertaining affair, thanks mainly to the sheer scale of the destruction and its top-drawer cast of cartoon villains. This sequel sadly falls down in both departments. Basically, it’s the same story but this time set on a train. Steven Seagal plays the former Navy SEAL-turned-chef who finds himself up against another gang of international terrorists, led by the faintly ludicrous mad professor Eric Bogosian. New Zealand director Geoff Murphy gives it his all, but there is a second-hand feel to the increasingly outlandish action stunts.
The Glimmer Man (1996), Lt. Jack Cole Rating: 2/5
Sandwiched between his eco-warrior outings On Deadly Ground and Fire Down Below, this action thriller has Steven Seagal going back to the no-brainer fare that made his name. It’s a partial success, but ultimately lacks the slick thrills of his early films thanks to John Gray’s unexceptional direction. Here, the murky government past of Seagal’s new-age cop comes back to haunt him as he pursues a serial killer. Keenen Ivory Wayans provides a lively foil as his partner, but Brian Cox, as Seagal’s former boss, only succeeds in butchering an American accent again.
Exit Wounds (2001), Orin Boyd Rating: 2/5
Steven Seagal looks far from the svelte fast-moving hero he should be in this action drama. He plays Orin Boyd, a disgraced cop who is transferred to a tough inner-city precinct where he discovers his new colleagues are selling heroin to drug dealers. Seagal’s comeback film, based on the novel by John Westermann, sees Warner Bros reunite many of the cast and crew of the equally disappointing Romeo Must Die, including director Andrzej Bartkowiak and producer Joel Silver. Seagal’s performance is typically wooden, and the Toronto locations are hardly convincing as downtown Detroit. However, rapper DMX provides some relief from the usual Seagal shenanigans. The poster reads “This is gonna hurt", and indeed it does, for just under two hours.
Ticker (2001), Frank Glass Rating: 2/5
Albert Pyun may not be Hollywood’s most discriminating director. But when it comes to knuckleheaded violence, few can match his pyrotechnic proficiency. Of course, it always helps to have Dennis Hopper as your deranged bomber, detonating random devices all over San Francisco simply because girlfriend Jaime Pressly has been arrested. It does no harm, either, to have Tom Sizemore as the grizzled cop on the case. But Steven Seagal’s best days are way behind him and his New Age-babbling cameo as a Zen explosives expert introduces an unintentional comic element that raises more laughs than one of Hopper’s trademark rants.
Half Past Dead (2002), Sascha Petrosevitch Rating: 1/5
Sporting a few extra pounds and at least one extra chin, Steven Seagal fails to convince here as an undercover FBI agent sent to the “New Alcatraz". Once in the hi-tech prison, Seagal finds himself at the centre of a hostage situation when a group called “the 49ers” - presumably not the American football team - break in so they can interrogate a death-row inmate regarding the whereabouts of $200 million in gold. Seagal copes with this by leaping through the air, shooting as he goes and grunting derisively whenever conversation with his sidekick (rapper Ja Rule) is required. Writer/director Don Michael Paul brings no credible suspense to the film, simply overloading it with action to compensate for the lack of style or coherence. Made with tongue firmly in cheek, this might have worked - but Seagal takes himself far too seriously. Disastrously, he expects us to do so as well.
The Foreigner (2003), Jonathan Cold Rating: 1/5
An out-of-shape Steven Seagal demonstrates how far past his prime he really is in this appalling, straight-to-video action adventure. Mumbling his way through an unnecessarily convoluted narrative, Seagal takes on the task of conveying a mysterious package from France to Germany, a mission that ends up more dangerous than it initially appears. Murder, corruption and viewer confusion follow, as ham-fisted director Michael Oblowitz tries to disguise the film’s technical incompetence with a surfeit of plot twists and badly acting villains. But the biggest crime is the action sequences, which are so poorly staged that even a thumping techno accompaniment can’t inject any excitement. One for die-hard Seagal fans only.
Out of Reach (video 2004), William Lansing Rating: 2/5
It’s not often that you get to hear characters thinking, but this is just one of the unusual tactics adopted by Hong Kong director Po Chih Leong in this otherwise workaday Steven Seagal vehicle. The idea that Seagal’s retired government agent would be the penpal of an orphan at a hostel he helped establish in Poland is pretty unlikely. But once Ida Nowakowska is abducted by sex trafficker Matt Schulze, this seems one of the premise’s more feasible aspects, as Seagal (who is less invincible than usual) finds his former employers are as keen as his adversary to thwart his mission.
Today You Die (video 2005), Harlan Banks Rating: 2/5
One final job predictably leads to betrayal and revenge for Steven Seagal’s retiring criminal in this tired action drama. Breaking out of prison with a well-connected gangsta (rapper Anthony “Treach” Criss), the modern-day Robin Hood attempts to wreak violent havoc on his double-crossing associates. Unfortunately, all the requisite gunplay and explosions that follow can’t mask the clichéd plot and comically bad performances. Criss may overact but his turn almost outshines lethargic Seagal, whose mumbling doesn’t help the frequently ridiculous dialogue. Unimaginative direction and an overwrought soundtrack compound the film’s weaknesses, though compared with Seagal’s other recent direct-to-video outings this is still a definite improvement.
Mercenary (aka Mercenary for Justice) (video 2006), John Seeger Rating: 1/5
It’s a well-established tradition that Steven Seagal never breaks sweat when breaking people’s bones. In this asinine action movie, though, he plays an ex-CIA mercenary who’s so dispassionate that he could be auditioning for a role in one of George A Romero’s zombie films. The overly convoluted plot shifts from a war-torn African island and on to American soil, then to a bank robbery and prison break in Cape Town, as Seagal searches for the elusive CIA villain (Luke Goss) who’s betrayed him. Despite the high-tech heist scenes and globetrotting backdrop this is a tatty affair, with the military sequences looking like they were shot on a blank-firing army training exercise. Even Seagal’s hand-to-hand fighting features several glaringly obvious pulled punches. It’s a sad day when even the fight choreographer has thrown in the towel.
Shadow Man (2006), Jack Foster Rating: 2/5
An out-of-shape Steven Seagal mumbles his way through yet another woeful action drama. In a cliché-ridden plot, he plays an ex-CIA agent trying to rescue his kidnapped young daughter after he’s embroiled in an international conspiracy involving a deadly virus. Not even the hilariously ill-advised presence of Imelda Staunton as an American ambassador can detract from the poorly paced mess that follows, as dreadful acting and clumsy direction compound a risible script. Worse still, the all-important fight sequences lack vitality and thrills, leaving it to the thumping soundtrack to provide atmosphere. It’s not Seagal’s weakest film, but it certainly comes close.
Urban Justice (aka Renegade Justice) (video 2007), Simon Ballister Rating: 1/5
The increasingly irrelevant Steven Seagal returns to his urban action roots on his home turf, but the change of scene and scenery provides no measurable increase in quality - this is another lacklustre effort, sunk by a predictable script and a lazy performance by the star. Seagal plays (inevitably) a lethal stranger who arrives in LA to discover the truth about the death of his policeman son (Cory Hart), the apparent victim of a drive-by shooting. However, he soon discovers that his boy’s demise is linked to a squad of corrupt cops. While there are few nifty fight sequences, Seagal’s lack of mobility is an embarrassment and the only time the film comes to life is when Eddie Griffin is on screen; the comic actor is surprisingly effective as a vicious gang boss.
Flight of Fury (Video 2007), John Sands Rating: 1/5
The stolen stealth plane in this straight-to-DVD Steven Seagal thriller may be invisible, but it’s harder to disguise just how familiar the story is - especially if you’ve seen Clint Eastwood in Firefox. Seagal stars as a former US pilot who’s shipped off to Afghanistan to stop rebels from using an experimental plane and its biological payload on American targets. Lumbering through the proceedings with little enthusiasm, the aikido master mumbles most of his lines and lets the rest be dubbed by actors who sound nothing like him. Even the aerial dog-fight scenes don’t offer much in the way of fun, as the recycled stock footage of military aircraft is so poorly patched together that it’s impossible to tell what’s going on. A nonsensical lesbian interlude is inserted at the halfway point in a hilariously hopeless attempt to help the film gain altitude. The result is a trashy, badly made mess.
Kill Switch (video 2008), Jacob Rating: 1/5
In this Memphis-set barrel-scraper, Steven Seagal delivers an excruciating performance as a tough detective on the hunt for two rather dull serial killers. With a weird southern accent and barely any expression, he lumbers through an unsatisfying mishmash of sub-Se7en crime thriller clichés, stereotypes and laughable dialogue. But though Seagal’s self-penned script is underdeveloped and over-convenient rubbish, it’s nowhere near as bad as the appalling direction and editing. Jittery camera work, excessive use of the jump cut and pointless repeat shots make the protracted fist-fights and generally unrealistic action sequences feel clumsy and tedious, while the rushed climax simply isn’t worth the wait.
The Marker (aka Pistol Whipped) (2008), Matt Conlin Rating: 2/5
Steven Seagal releases movies like a B-52 drops its payload. This entry in his nonstop carpet-bombing campaign (twelve movies in four years) sees him playing a washed-up, alcoholic ex-cop with gambling debts and a young daughter who he ought to be taking better care of. Instead of joining AA meetings, though, his 12-step programme involves being dispatched by Lance Henriksen’s shadowy government operative to wipe out various bad guys. Half-baked character development scenes see Seagal staring into glasses of whisky and furrowing his brow, while the action proves just as leaden. Kept largely immobile by his paunch, Seagal takes out bad guys with nothing more than his arms and a scowl - even killing a table of diners from a seated position using the silverware. The final shoot-out is set in a graveyard, which is fitting since Seagal appears to be writing the epitaph to his career.

