View on
MetaCPAN is shutting down
For details read Perl NOC. After June 25th this page will redirect to
Grant McLean > App-USBKeyCopyCon-1.02 > usb-key-copy-con


Annotate this POD


New  1
Open  1
View/Report Bugs


usb-key-copy-con - GUI console for copying USB flash drives


  sudo usb-key-copy-con


   --no-root-check|n       skip the check for root permissions
   --profile|p <name>      specify the copying profile
   --profile-dir|d <path>  directory where custom profile scripts live
   --help|?                detailed help message


This program provides a GUI console for managing the process of bulk-copying USB flash drives ('keys'). Launch the program and then:

  1. insert a 'master' USB key when prompted - the contents of the key will be copied into a temporary directory on the hard drive, after which the key can be removed
  2. insert blank keys into all available USB ports - the app will detect when each new key is inserted, start the copy process and alert the user on completion
  3. repeat step 2 as required

The program must be run as root in order to mount/unmount and format the blank flash drives.

The console window allows you to specify filtering parameters for recognising USB keys as they are inserted. If a key is inserted which matches the filter then the copy process will start without requiring user interaction. If a key is inserted which does not match the filter then it will be ignored (the console will display a greyed-out icon). By default the filter parameters will be set to exactly match the vendor name and drive capacity of the master key.

The default profile will format the blanks keys with a VFAT filesystem and the volume label from the master key. A file-by-file copy will be used to populate the key and then MD5 checksums will be used to verify the copied files.

It is possible to create your own profiles that do anything you want with the blank keys. See App::USBKeyCopyCon for more details.

Desktop Media Automount

While this program is running, it attempts to disable the GNOME desktop environment's media automount behaviour - which would intefere with the copying process. If you're not running GNOME you may need to manually disable the equivalent function in your desktop of choice.

On exit, the original state of the media automount function should be restored. In the event of a crash, you can turn it back on with this command:

  gconftool-2 --type bool --set \
    /apps/nautilus/preferences/media_automount true


--no-root-check (alias: -n)

Normally the application will refuse to run unless either it is executed with root permissions or sudo (or gksudo) is available. Use this option to skip this check. With the default profile failure will occur later when attempting to mount filesystems but the option may be useful with a custom profile or with an appropriate sudo setup.

--profile <name> (alias: -p)

Specify the profile name for selecting reader/writer scripts. The default profile name is 'copyfiles'.

--profile-dir <path> (alias: -d)

If your custom scripts are in a non-standard directory, use this option to add that directory to the list which will be scanned for profile scripts.

--help (alias -?)

Display this documentation.


Copyright 2009 Grant McLean, all rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

syntax highlighting: