AminetAminet
Search:
84493 packages online
About
Recent
Browse
Search
Upload
Setup
Services

disk/misc/sfscheck.lha

Mirror:Random
Showing:m68k-amigaosppc-amigaosppc-morphosi386-arosi386-amithlonppc-warpupppc-powerupgeneric
No screenshot available
Short:Utility to check a SmartFileSystem device structure
Author:Marcin "Morgoth" Kurek <morgoth6 at box43.pl>
Uploader:Marek "March" Szyprowski <marek amiga pl>
Type:disk/misc
Version:2.45u
Architecture:ppc-morphos
Date:2005-10-30
Download:http://aminet.net/disk/misc/sfscheck.lha - View contents
Readme:http://aminet.net/disk/misc/sfscheck.readme
Downloads:2705

--------------- Introduction ---------------

Completly re-written SFSCheck 1.x which can be found 
in most SFS distributions. All functions from the old program 
are available in this new utility. Additionally there are many new
features and bug fixes.

Although it is not the final version, its functionality 
overtakes the original SFSCheck.
There are stil some upgrades to come in the final version.   

--------------- Legal ---------------

The author DOES NOT take any responsibility for any damage 
occured while using this tool.

 !THERE ARE NO WARRANTIES!

SFSCheck may be freely distributed. It is freeware!

--------------- New Features ---------------

- checks and displays device fragmentation
- able to create a list of fragmented files
- able to create a list of objects with special SFS attributes
- able to check the links state (SOFT only SFS currently do not support the HARD
links)
  and inform about broken ones !
- recognizes  volumes given as a argument
- support for locale.library (fully localized)
- displays crucial information about device
- reduced memory fragmentation
- support for CTRL+C command
- buildin defragmenter
- can' purge .recycled directory before defragment device
- smart .recycled detection (you can safely rename .recycled directory)
- smartbuffer feature for optimal defragmentation speed
- stackextension (no more crashes due low stack situation)

--------------- Usage ---------------

Template: DEVICE/A,
LOCK/S,FRAGLIST/S,SEEK/S,FORCE/S,QUICK/S,DEFRAGMENT/S,
P=PURGE/S,NFP=NOFULLPATH/S,
NCHK=NOCHECK/S,NORB=NOROOTBLOCKS/S,NOASC=NOADMINSPACECONTAINERS/S,NONC=NONODECON
TAINERS/S,NOOC=NOOBJECTCONTAINERS/S,NOBMP=NOBITMAP/S,NOFRG=NOFRAGMENTATION/S,
FRL=FRAGMENTATIONLIMIT/N/K,ADDB=ADDBUFFERS/N/K,L=LINES/N/K,RAHS=READAHEADSIZE/N/
K

Required arguments:

  DEVICE/A: device/volume to check

Optional arguments:
  
  LOCK/S:  If you specify this parameter, SFScheck locks 
           the device/volume for the duration of the scan 
           by using ACTION_INHIBIT.

  FRAGLIST/S:  If you specify this parameter, SFScheck displays a 
               detailed list of fragmented files of the specified
               device/volume with this syntax:
 
               ...
               Fragmented file: FileName [Object Node Number], number of
fragments
               ...

  SEEK/S:  If you specify this parameter, SFScheck displays a
           detailed list of objects with special SFS attributes 
           of the specified device/volume with this syntax

           ...
           Object Type: Object Name [Object Node Number] Attributes: [List of
Attributes]
           ...

           For liks it will also prints it's state and path to linked object.

  FORCE/S: If you specify this parameter, SFScheck will force check or/and
defragment
           for too old version of SmartFileSystem or no SmartFileSystem devices.

  QUICK/S: If you specify this parameter, SFSCheck will perform only
           ObjectContainers and fragmentation check.
           You can also specyfy a SEEK/S, FRAGLIST/S FORCE/S or FP=FULLPATH/S
options.

  DEFRAGMENT/S: If you specify this parameter, SFSCheck will defragment the
device
                after check it. For now it's only a simple reworked old
SFSDefrag
                but I will change this ... soon.
                Also this option require SmartFileSystem 1.83+ and refuset to
work
                with anything bellow.

  P=PURGE/S: If you specify this parameter, SFSCheck will unprotect if nesesary
and 
             delete all files in .recycled directrory before defragment device.
             SFSCheck will detect is .recycled directory exists then specyfy 
             this option when device is formated without it is safe.
             You can also rename this directory and PURGE/S will still work
without
             any problem.
             Requires DEFRAGMENT to work

  NFP=NOFULLPATH/S: Forces SEEK, FRAGLIST and PURGE to display only the object
names
                    without a full path to it. Requires either of these to work.

  NCHK=NOCHECK/S: If you specify this parameter, SFScheck will skip all it's
                  checks (RootBlocks, AdminSpaceContainers, NodeContainers, 
                  ObjectContainers, Bitmap, Fragmentation)
                  Useful when you want only defragment the device

  NORB=NOROOTBLOCKS/S: If you specify this parameter, SFScheck will skip
                       RootBlock check

  NOASC=NOADMINSPACECONTAINERS/S: If you specify this parameter, SFScheck will
skip
                                  AdminSpaceContaines check
  
  NONC=NONODECONTAINERS/S: If you specify this parameter, SFScheck will skip
                           NodeContainers check

  NOOC=NOOBJECTCONTAINERS/S: If you specify this parameter, SFScheck will skip
                             ObjectContainers check and fragmentation check
  
  NOBMP=NOBITMAP/S: If you specify this parameter, SFScheck will skip
                    Bitmap check
  
  NOFRG=NOFRAGMENTATION/S: If you specify this parameter, SFScheck will skip
                           Fragmentation check

  FRL=FRAGMENTATIONLIMIT/N/K: If you specify this parameter, SFScheck will skip
                              device defragmentation if fragmentation is lower
                              than limit.

                              example: if fragmentation is 27% and 
                                       fragmentation limit is set to 50 SFSCheck
                                       will skip defragmentation because 
                                       fraglimit > fragmentation
                                       but if fragmentation 
                                       is for example 73% SFSCheck will
defragment
                                       device (fraglimit < fragmentation)

  ADDB=ADDBUFFERS/N/K: Indicate how many buffers SFSCheck will add for
defragmentation.
                       There is higly recomendet to set rather high values to
speed up
                       defragmentation process. All buffers are removed after
defragmentation.

  L=LINES/N/K:  The number of lines SFScheck uses for its cache
                during the check. Default is 128 lines


  RAHS=READAHEADSIZE/N/K:  The size of each cache line; 
                           the entered value is treated as the number 
                           of kilobytes to use. Default is 8 kb

    example: L=512 RAHS=32 forces SFScheck to use 512 lines, 32 kb each,
             requires 16 MB of free memory (512 * (32 * 1024))


--------------- Notes - SFSCheck ---------------

This tool checks a SFS disk's structure and looks for anything which is wrong. 
It makes no modifications, it only reads the device.
Any error it finds will be displayed.

You can use this tool to give more detailed information when
reporting bugs to SFS author, but also to convince yourself that the SFS
device is still working smoothly.

If SFScheck reports errors, the best thing to do would be 
to backup important files and reformat.

Continous using of a SFS disk with errors will eventually
result in fatal errors which could mean you lose all data on that
device. In that case try to use a SFSSalve utility to recover your data.

Do not run SFScheck when you are writing something to the
disk. SFScheck will get confused (because the structure
changes right under its feet) and reports errors which
are not really there.  This is not dangerous as SFScheck only
reads the disk (it can not repair a disk), but you should be
aware of this when using SFScheck. Use LOCK/S to avoid this.

SFScheck can be used on SFS devices only. Using it on other type 
of devices is harmless. SFScheck will simply report that 
the device is not in the correct format.

SFScheck returns following values:

- 0  (OK)    - everything is OK
- 5  (WARN)  - CTRL+C break detected
- 10 (ERROR) - wrong command line argument
- 20 (FAIL)  - scan error occured (bad block, cache error, SFS fails?)

Increase the ReadAhead cache size by using L=LINES/N/K and
RAHS=READAHEADSIZE/N/K
to speedup the check process. The default values makes check slow
exp. when you have a many small fileson it, increase it 
can dramaticly speedup check process.

--------------- Notes - Defragmenter ---------------

Defragments files and free space.

100% transparent; defragment a disk while you're still
reading and writing data from/to it (SFS won't guarantee
a 100% defragmented disk when the disk has been modified
during defragmentation though).

Defragmentation uses the same safe-writing techniques which
SFS always uses.  This means a crash, reset or power failure
will not cause you to lose any data, even while the
defragmenter is running.

The price you pay for this feature is speed and a not 100%
optimal defragmentation (there is a big difference between
a simple defragmenter and a disk optimizer like ReOrg).

A very simple interface is provided to activate the
defragmenter built-in SFS.  See packets.h and the source of
SFSdefragmentGUI for more information.

Increase the Buffer size by using ADDB=ADDBUFFERS/N/K to 
speedup defragmentation process. The recomended value
for 512 bytes / block partition is '10 buffers/MB' ... 
With the dafault value the defragmentation process will be
*EXTREMALY SLOW* exp. for quite big and full partitions.

--------------- Notes - SmartBuffer ---------------

From version 2.41 SFSCheck try to chose a best buffer size
for defragmentation process, to get best defragmentation speed.
The SmartBuffer chose ADDBUFFERS parameter automaticly.

This method is called smart because it check many things before
add a buffers to device to avoid a low memory situation for
example.

If you do not want use a SmartBuffer feature for some reason's
you can disable it by specyfy the ADDB=ADDBUFFERS/N/K directly.

--------------- History ---------------

2.3 (26.07.2002)  - First public release.
2.4 (31.08.2002)  - Fixed a small bug in Volume's support
                  - No longer print "General device init. error" 
                    when there is no space for it's internal caches
                  - Added FORCE/S and QUICK/S switch
                  - Added DEFRAGMENT/S, FL=FRAGMENTATIONLIMIT/N/K and
ADDB=ADDBUFFERS/N/K
                  - Added NCHK=NOCHECK/S,NORB=NOROOTBLOCKS/S,
                         
NOASC=NOADMINSPACECONTAINERS/S,NONC=NONODECONTAINERS/S,
                         
NOOC=NOOBJECTCONTAINERS/S,NOBM=NOBITMAP/S,NOF=NOFRAGMENTATION/S
                  - Added polish locale
                  - Added français locale
                  - Added deutsch locale
                  - Added SFSCheck.script and SFSDefrag.script
                    WARNING: Both of them require something about 20 MB free
memory
                             in one block !!
2.41 (1.12.2002)  - Rebuild completly after a major HD crash :(
                  - Added stackextension
                  - Added SmartBuffer feature
                  - Fixed problem with SEEK/S, in previous versions
                    it ignored empty directories
                  - Extended SEEK/S
                  - Reduce memory consumption
                  - Some optimalization's and speedup's, now should work faster
                    on 68040/68060 machines
                  - Fixed a tons of small potential problems and bugs
                  - Fixed DOSBuffers display, previously it shows
                    the initial buffer state, now it shows the acctual state
                  - Removed 'Check Caches' information
                  - Added Hungarian locale
                  - Added some notes about ReadAhead and Buffers
2.42 (5.12.2002)  - Fixed a terrible bug in SmartBuffer feature
                  - Improved error handling, please note that this makes a
                    old locale a partialy not usable with new version.
                    I do not know nothing about update I do not manage 
                    to contact any of my translators.
                  - Modified FORCE/S switch, now affect's also
                    a defragmentetion process
                  - Extended SFSCheck.script and SFSDefrag.script
2.43 (11.02.2002) - Fixed a links problem with FULLPATH/S option
                    Now it prints a path to linked object and also check
                    the link state (OK, Local or Broken one)
                  - Makes FULLPATH/S to default and changed name to
                    NOFULLPATH/S
                  - Fixed scripts in Scripts/ directory
                  - Removed some obsolete parts of distribution archive
                  - Working MorphOS Port
                  - Final update, this project is dead now ... sorry folks
2.45 (25.07.2003) - Added support for some extensions in SFS 1.201 (MorphOS
version)
2.45u (6.05.2004) - Added support for more extensions in SFS 1.210 (MorphOS
version)

--------------- ToDo ---------------

- find the rest of the bugs ;)
- ... any suggestions ?

--------------- Bugs ---------------

- As far I know ... none ;)

--------------- ThX ---------------

MorphOS Team.

--------------- Support ---------------

Feel free to send me your suggestions and/or bug reports.

--------------- Author ---------------

Marcin "Morgoth" Kurek

morgoth6 at box43.pl

--------------------------------------


Contents of disk/misc/sfscheck.lha
 PERMSSN    UID  GID    PACKED    SIZE  RATIO     CRC       STAMP          NAME
---------- ----------- ------- ------- ------ ---------- ------------ -------------
[generic]                 7260    7395  98.2% -lh5- cb42 Dec  3  2002 SFSCheck.info
[generic]                  147     212  69.3% -lh5- c973 Jun 26  2003 SFSCheck/Scripts/SFSCheck.script
[generic]                  163     230  70.9% -lh5- 88ae Jun 26  2003 SFSCheck/Scripts/SFSDefrag.script
[generic]                40477   98540  41.1% -lh5- 8f52 Oct 29 10:52 SFSCheck/SFSCheck
[generic]                 4800   13549  35.4% -lh5- a038 Oct 30 10:23 SFSCheck/SFSCheck.readme
[generic]                 7156    7290  98.2% -lh5- 84b5 May 16  2003 SFSCheck/SFSCheck.readme.info
---------- ----------- ------- ------- ------ ---------- ------------ -------------
 Total         6 files   60003  127216  47.2%            Oct 30 17:04

Aminet © 1992-2024 Urban Müller and the Aminet team. Aminet contact address: <aminetaminet net>