27d3cc6cd3
By locking the log file itself, we can omit arduous rebinding and explicit umask setting, but, perhaps more importantly, avoid permanently littering /var/lock/ with zed.debug.log.lock we will never delete It is imperative that the previous commit ("zed-functions.sh: zed_lock(): don't truncate lock") be included in any series that contains this one Reviewed-by: Tony Hutter <hutter2@llnl.gov> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Closes #12042 |
||
---|---|---|
.. | ||
.gitignore | ||
Makefile.am | ||
README | ||
all-debug.sh | ||
all-syslog.sh | ||
data-notify.sh | ||
generic-notify.sh | ||
history_event-zfs-list-cacher.sh.in | ||
pool_import-led.sh | ||
resilver_finish-notify.sh | ||
resilver_finish-start-scrub.sh | ||
scrub_finish-notify.sh | ||
statechange-led.sh | ||
statechange-notify.sh | ||
trim_finish-notify.sh | ||
vdev_attach-led.sh | ||
vdev_clear-led.sh | ||
zed-functions.sh | ||
zed.rc |
README
Shell scripts are the recommended choice for ZEDLETs that mostly call other utilities and do relatively little data manipulation. Shell scripts MUST work on both bash and dash. Shell scripts MUST run cleanly through ShellCheck: http://www.shellcheck.net/ General functions reside in "zed-functions.sh". Use them where applicable. Additional references that may be of use: Google Shell Style Guide https://github.com/google/styleguide/blob/gh-pages/shell.xml Dash as /bin/sh https://wiki.ubuntu.com/DashAsBinSh Common shell script mistakes http://www.pixelbeat.org/programming/shell_script_mistakes.html Filenames and Pathnames in Shell: How to do it Correctly http://www.dwheeler.com/essays/filenames-in-shell.html Autoconf: Portable Shell Programming https://www.gnu.org/software/autoconf/manual/autoconf.html#Portable-Shell Please BE CONSISTENT with the existing style, check for errors, minimize dependencies where possible, try to be portable, and comment anything non-obvious. Festina lente.