Both sides previous revisionPrevious revisionNext revision | Previous revision |
util:smbutil [2018/02/15 21:49] – [Syntax] digital man | util:smbutil [2022/04/03 03:53] (current) – [Syntax] Added V, D, u, L and U to match smbutil -h output nelgin |
---|
====== smbutil - Synchronet Message Base Utility ====== | ====== SMBUTIL - Message Base Utility ====== |
| |
The Synchronet Message Base Utility (smbutil) can be used for several things, but most importantly, it must be used for maintaining the message bases of your system's public message areas (sub-boards). | The Synchronet Message Base Utility (''smbutil'') can be used for several things, but most importantly, it must be used for maintaining the message bases of your system's public message areas (sub-boards). |
| |
The ''m'' command (for //maintenance//) instructs smbutil to mark old messages, and messages over the maximum sub-board limit, as //deleted// so that the disk space used by these message can be allocated to new messages. If you are using the 'Hyper Allocation' or 'Fast Allocation' method for your message bases, you must also use this utility to pack your message bases periodically. The pack (''p'') command instructs smbutilto compress the message bases, removing any unused allocation blocks (for messages marked as //deleted//). | The ''m'' command (for //maintenance//) instructs smbutil to mark old messages, and messages over the maximum sub-board limit, as //deleted// so that the disk space used by these message can be allocated to new messages. If you are using the 'Hyper Allocation' or 'Fast Allocation' method for your message bases, you must also use this utility to pack your message bases periodically. The pack (''p'') command instructs smbutil to compress the message bases, removing any unused allocation blocks (for messages marked as //deleted//). |
| |
smbutil maintenance and/or packing should be done using an //exclusive// daily timed event (configured in [[util:SCFG]]->External Programs->Timed Events). If your message bases are using the 'Fast Allocation' or 'Hyper Allocation' storage methods, you should run maintenance before packing (there is no reason to pack if you do not run maintenance!). If your message bases are configured for the 'Self Packing' method, you do NOT need to use smbutil to pack, only to perform maintenance. | smbutil maintenance and/or packing should be done using an //exclusive// daily timed event (configured in [[util:SCFG]]->External Programs->Timed Events). If your message bases are using the 'Fast Allocation' or 'Hyper Allocation' storage methods, you should run maintenance before packing (there is no reason to pack if you do not run maintenance!). If your message bases are configured for the 'Self Packing' method, you do NOT need to use smbutil to pack, only to perform maintenance. |
| |
**WARNING**: | **WARNING**: |
All BBS nodes should be offline when using smbutil with the pack option! To do this, set the smbutil event to be 'Exclusive' in the SCFG program. | All BBS nodes should be offline when using smbutil with the pack command! To do this, set the smbutil event to be 'Exclusive' in the SCFG program. |
| |
==== Syntax ==== | ==== Syntax ==== |
x[n] = dump msg index at number n | x[n] = dump msg index at number n |
v[n] = view msg headers starting at number n | v[n] = view msg headers starting at number n |
| V[n] = view msg headers starting at number n verbose |
i[f] = import msg from text file f (or use stdin) | i[f] = import msg from text file f (or use stdin) |
e[f] = import e-mail from text file f (or use stdin) | e[f] = import e-mail from text file f (or use stdin) |
c = change msg base status | c = change msg base status |
R = re-initialize/repair SMB/status headers | R = re-initialize/repair SMB/status headers |
| D = delete and remove all msgs (not reversable) |
d = delete all msgs | d = delete all msgs |
| u = undelete all msgs (remove delete flag) |
m = maintain msg base - delete old msgs and msgs over max | m = maintain msg base - delete old msgs and msgs over max |
p[k] = pack msg base (k specifies minimum packable Kbytes) | p[k] = pack msg base (k specifies minimum packable Kbytes) |
| L = lock a msg base for exclusive-access/backup |
| U = unlock a msg base |
</code> | </code> |
| |
====Examples==== | ====Examples==== |
| |
=== Mainteance === | === Maintenance === |
| |
for maintenance and packing (100k or more per sub): | for maintenance and packing (100k or more per sub): |
| |
This command will instruct smbutil to: | This command will instruct smbutil to: |
-continue upon error hen opening a corrupted message base | -continue upon error when opening a corrupted message base |
-re-initialize the SMB/status headers of the message base | -re-initialize the SMB/status headers of the message base |
-change/configure the status header values (e.g. max messages, CRCs, age) | -change/configure the status header values (e.g. max messages, CRCs, age) |