VARIOUS PATCHES AND PROGRAMS BY RZM@ICM.EDU.PL utils/* ducont Continuous measurerment of speed a directory (current or specified) is filled with. Does not take deletions into account yet. tartouch Reset a tar file date to the date of the most recent file in it. dirdatelast Reset directories' dates to the dates of most recent contents of them. Symlinks dates are set to dates of files/directories they point to. ipa More comprehensible formatting of ip addr show command output. cmddiff Command output tracer. Can be used to predict (linear fit) time of reaching some value in the output. Depends on rcs. relink a bash/find/gawk/touch script to hard-link files with the same contents recomp Simple script to recompress compressed files into .xz format. showtest DEV very short version of smartctl -a DEV report; to be used especially during testing (smartctl -t long DEV) reall DEV POSITION SIZE force reallocating SIZE sector(s) at POSITION; the POSITION is to be read from smartctl test result, possibly via showtest too udev-automount* udev-automount.YYYY-MM-DD.tar.xz Mounts in /media more less any removable devices which appear in the system (pendrives, SD cards, CDs) and have a filesystem on them. Installing: cd /; tar xvaf PATH/udev-automount.*.tar.xz; udevadm control --reload-rules I needed it in some old Debian but no longer in v. 8… But Debian 9+ systemd blocks automounting unless reconfigured or forcing user namespace (since udev-automount.2020-05-30.tar.xz). screen/* status on the right, sockdir configuration command screen-4.0.3-rzm2.diff most recent patch for most recent 4.0.x screen-4.1.0.2014-03-24.rzm2.diff the patch ported to 4.1.x, not tested screen-4.0.2-rzm2.diff most recent patch, includes man page additions screen-4.0.2-rzm.diff older one, quite similar screen-3.9.15-rzm.diff for screen 3.9.x 1. The status window by default is in bottom-left corner and may be moved into top-left corner. In both places it may hide the prompt. This patch adds a command to move status message to the bottom- or top-right corner: status [top|up|down|bottom] [left|right] 2. Makefile With this patch after two installs of the same version instead of lrwxrwxrwx 1 root root 13 mar 21 02:00 /local/bin/screen.old -> screen-3.9.15 -rwsr-xr-x 1 root root 773271 mar 21 02:00 /local/bin/screen-3.9.15.old -rwsr-xr-x 1 root root 773969 mar 21 03:30 /local/bin/screen-3.9.15 lrwxrwxrwx 1 root root 13 mar 21 03:30 /local/bin/screen -> screen-3.9.15 we will get lrwxrwxrwx 1 root root 13 mar 21 02:00 /local/bin/screen.old -> screen-3.9.15.old <---- -rwsr-xr-x 1 root root 773271 mar 21 02:00 /local/bin/screen-3.9.15.old -rwsr-xr-x 1 root root 773969 mar 21 03:30 /local/bin/screen-3.9.15 lrwxrwxrwx 1 root root 13 mar 21 03:30 /local/bin/screen -> screen-3.9.15 I am not sure if I did not mess up logic of this so this patch may make less sense than the other ones. 3. screen -wipe removes all screen sockets. Until now it was possible to change this behaviour to removing only sockets of local sessions (leaving the ones of sessions on another machines sharing $SCREENDIR through the NFS) only by editing SOCKDIR_IS_LOCAL_TO_HOST config.h define. With sockdir local|shared one can change this while running. netapp/* For use with old NetApp disk controllers. The "netapps" command has a hardcoded set of controllers. Edit the command to change it. Example of use: root@zefir:/local/bin,0# netapps version COMMAND: version ==> na1 NetApp Release 8.0.2P4 7-Mode: Tue Nov 15 16:16:47 PST 2011 ==> na2 NetApp Release 8.0.2P4 7-Mode: Tue Nov 15 16:16:47 PST 2011 ==> na3 NetApp Release 8.0.2P4 7-Mode: Tue Nov 15 16:16:47 PST 2011 ==> na4 NetApp Release 8.0.2P4 7-Mode: Tue Nov 15 16:16:47 PST 2011 netapp-df: the "-A" options adds aggregates summary. There can be single or multiple arguments - names of the controllers: root@zefir:/local/bin,0# netapp-df -A na1 na2 -> na1 aggregate/volume [GB] snap [Śr sier 22 13:50:00 MEST 2018] name used size avail % used size avail % na1_10 2080 42391 40310 4 0 0 0 0 lan_administracja 448 819 370 54 8 204 196 3 lan_home 1335 3584 2248 37 238 1536 1297 15 root 97 454 356 21 0 23 23 0 f1_root 0 16 15 4 0 4 3 8 m1_root 1 16 14 10 0 4 3 7 s1_root 2 16 13 14 0 4 3 10 vol0 16 56 39 28 25 14 0 181 Vol-sum: 1804 4507 2702 40 273 1766 1504 15 Aggr-sum: 2178 42845 40667 5 0 23 23 0 -> na2 aggregate/volume [GB] snap [Śr sier 22 13:50:03 MEST 2018] name used size avail % used size avail % na2_0211 9771 91476 81704 10 0 0 0 0 bwn 9823 13107 3283 74 0 3276 3276 0 root 100 236 136 42 0 2 2 1 fiber2_root 0 16 15 4 0 4 3 9 mix2_root 0 16 15 3 0 4 3 5 sata2_root 5 16 10 36 0 4 3 10 vol0 39 56 16 70 42 14 0 303 sata3T_6a 8057 59347 51290 13 11 3123 3112 0 lan_LUNs 5047 6553 1506 77 0 1638 1638 0 lan_administracja 0 0 0 0 0 0 0 0 lan_backup 0 0 0 0 0 0 0 0 lan_rekin 0 0 0 0 0 0 0 0 lan_x 0 0 0 0 0 0 0 0 Vol-sum: 14917 19764 4846 75 44 4941 4925 0 Aggr-sum: 17930 151060 133130 11 11 3125 3114 0 cluster/* Two examples of tons of my cluster operation scripts (Sun Constellation 6048, 7 kCPU, 60 TFLOPS, Linux, PBS (torque/maui), Infiniband). Rather source of inspiration than possible to use elsewhere directly: cluster.state state of nodes cluster.state.log examples boot.expect setting of boot device do IB network on a node - unfortunately they use standard PC BIOS, not suitable for mass operations sox/* INTERACTIVE SOX interactive_sox.README description sox.20050917.tar.bz2 original sources from CVS sox.20050917.rzm-2014-05-07-all.diff all current interative sox patches until the date specified; includes b-e tags time diff printing sox.20050917-inst8-9.diff lowered optimization fixes a crash, Dec 2014 hodie/* Mikael Johansson's program to print date ab urbe condita. Small changes to the SPEC file of the well known program to make it running on modern Fedora (in 2012). zebra/* zebra-0.95-pre2-zpimd.patch regenerated zpimd-000919 zebra-0.87 patch zpimd-000919-for-zebra-0.95-pre2.patch zpimd-000919 with updated zebra function names and some other small changes Does not work correctly in my environment, the routes disappear after few minutes - "mgrp timeout". XORP works, I only had to pass PIM protocol through the INPUT chain and add PIM also on the IGMP-only local network side.. wu-ftpd/* wu-ftpd-2.6.2_64.diff.bz2 wu-ftpd configured to work with >= 2 GB files wu-ftpd-2.6.2_64.README patch description wu-ftpd-2.6.2_64.200506.diff.bz2 The same as above + working REST for files >= 2 GB wu-ftpd-2.6.2_64.200506.README spam/* clamav-0.86.2-atime-preserve.patch clamscan touches the access time. With this patch you can use --atime-preserve option, similar to the one you can see in tar program. On Linux probably you can use mount --bind instead but I do not know about anything like this on Solaris. mimedefang-filter my version of mimedefang-2.38.tar.gz:examples/suggested-minimum-filter-for-windows-clients Features: - action_tempfail() - we return 4xx codes instead of 5xx; with $TempFail=0 back to 5xx - not tested - filter_recipient() procedure with list of people wanting to be filtered - SpamAssassin can be used with list exceptions - people who do not want to be filtered by SA (they will get their spam with SA header anyway so they can filter themselves); it solves problem with SA which gets only From:/To: addresses so correct whitelisting (with use of envelope) is impossible) old/* truncate.c truncate command (see truncate(2)) (there is such command in coreutils now) coreutils-5.96.pl.po translation with corrected encoding host_991529+.diff This version of host recognizes IPv6 addresses in the following formats: 3ffe:8010:: normal format of a host (mask 128) address 3ffe:8010::1 normal format of a host (mask 128) address 3ffe:8010::/28 with mask 3ffe:8010:2::/28 with mask; :2: will be masked 3ffe:8010:2 relaxed format; default mask will be 48 in this case 3ffe:8010/28 default mask 32 but shorten explicitely to 28 All of the above addresses will be transformed into ip6.int domain form, e.g. 3ffe:8010/28 -> 1.0.8.E.F.F.3.ip6.int. ::/0 can be used to ask about just ip6.int. There no IPv6 communication support yet. PS. RFC 3152 introduces ip6.arpa instead of ip6.int clink.1.0a.diff new options: -Q (quiet) -p SOURCE_PORT - to be able to track link with administrative prohibition: if ( (icmp->icmp_code == ICMP_PORT_UNREACH) || (icmp->icmp_code == ICMP_PKT_FILTERED) ) { - unless SOURCE_POST set omit source port >= 61000 (Linux masquerading?, always reserved?) if (sport>=61000) sport -= 10000; It is a pathchar-like program, see: http://allendowney.com/research/clink/ .