The Parts group of tools are all prototypes, the full release will be made available as part of an existing partition utility such as fdisk or sfdisk. Having said that these tools are completely functional and concerning the integration with an existing tool, this is simply that I see little point in producing yet another utility. Apart from the scripts being prototypes I am still becoming familiar with Linux & Perl so if you feel it worth your while to provide me with advice on further development I'm all ears.
If you are wondering whether I have included any malicious code (as I would wonder if I were you), you'll find the only sections of the script Partslist that deal with the hard disk are the subroutines readBlk, getGeometry & getNumOfSectors (all of which access in readonly mode) and there are calls to partitioning tools sfdisk & fdisk to determine the disk geometry 1 and sector size.
The script Partsedit on the other hand does include code to alter the disks partitioning (work in progress, will give detail when complete).
The script Partsfix only contains code for reading the file it is instructed to parse that contains output from Partslist which is then used to call Partsedit with.
General requirements
- Linux or an emulation.
- A perl interpreter, I built Parts using v5.8.3 and tested it in v5.0.3.
Partslist
- release 2005-03-27Designed to comprehensively report on a partition table while always informing the user what is actually in the partition table. This tool is 100% benign, of course no guarantee or warranty can be offered, however the routine contains no code to write to a device.
For anyone with a faulty device there's good news, Partslist works like a charm on faulty hardware. Admittedly under the current design no reporting is displayed until examination of device is complete, so you can be left waiting a while for anything to be displayed on screen.
Requirements
- Read permission for specified device ie. /dev/hda
- Following only required if requested to be used
- Able to call sfdisk to get device geometry (assumed & used by default)
- Able to call fdisk to get device geometry and/or sector size
- Read permission for /proc/ide/ide*/hd*/geometry to get device geometry
The routine and some details
- Perl release
- script save without .pl extension what's this about?
- executable save without .x extension what's this about?
- command syntax help from script
- display layout (more detail to come)
- screen capture example output
Partsedit
- release 2005-03-27Designed to allow any modification of a partition table whether that be to make it invalid or valid. This tool (unlike Partslist which is harmless) is more than just potentially dangerous it can be used to unrestrictedly modify the partitioning area of any sector. Why I hear you ask would one ever want such a deadly/ridiculous tool? Because when things go wrong, nice easy to use programs that do everything for you often can't “hack it” and fall over in a heap. The tool is designed to allow the user to do whatever they want without making it too difficult.
Requirements
- Read & write permission for specified device ie. /dev/hda
The routine and some details
- Perl release
- script save without .pl extension what's this about?
- executable save without .x extension what's this about?
- command syntax help from script
- display layout
- screen capture example output
Partsfix
- release 2004-06-22Partsfix is a script that given a printout from Partslist, will use Partsedit to reconstruct the partition table after a disaster. Nothing great, but it makes it easier and less error prone to rebuild the partition table. Unfortunately the tool does not currently support input being piped into it, fortunately I don't think there are too many situations where this would be useful.
Will not work with current partslist script, you will need to use older partslist from the archive. I do plan to update partsfix.
Requirements
- Able to call Partsedit
The routine and some details
- Perl release - code yet to be tested
- script save without .pl extension what's this about?
- executable save without .x extension what's this about?
- command syntax help from script
Filenames - what's this about?
The reason that the scripts end with .pl and the executable with .x is that as far as I can tell geocities (the web host) requires all files to include an extension or suffix.
Foot notes
1 - The use of fdisk & sfdisk to determine geometry is likely to be removed as the tools simply use what is reported by the kernel which is accessable via /proc.