mostly t11 fixes
[distro-setup] / brc2
diff --git a/brc2 b/brc2
index 54fe47b742835d1c3b8eb34e6d00234c22dbd68d..fdb2c060e6de9a0742e667d585f768be98b9001b 100644 (file)
--- a/brc2
+++ b/brc2
@@ -87,6 +87,8 @@ multimic() {
   pactl load-module module-remap-source source_name=iancombine master=ianinput.monitor source_properties=device.description=iancombine
 }
 
+# h ssh test
+# For testing restrictive ssh.
 hstest() {
   install-my-scripts
   d=$(mktemp -d)
@@ -94,13 +96,20 @@ hstest() {
   s command ssh -F $d/config -i /q/root/h "$@"
 }
 
-hrtest() {
+# h rsync test
+# For testing restrictive rsync
+hrtest() { #
   install-my-scripts
   d=$(mktemp -d)
   sed '/^ *IdentityFile/d' ~/.ssh/config >$d/config
   s rsync -e "ssh -F $d/config -i /q/root/h" "$@"
 }
 
+# rsync as root and avoid the default restrictive h key & config.
+rootrsync() {
+  s rsync -e "ssh -F /root/.ssh/confighome" "$@"
+}
+
 
 slemacs() {
   local arg rtime v
@@ -264,10 +273,10 @@ tback() {
 # s sshfs bu@$host:/bu/home/md /bu/mnt -o reconnect,ServerAliveInterval=20,ServerAliveCountMax=30 -o allow_other
 
 eqgo() {
-  enn -M $(exiqgrep -i)
+  enn -M $(exiqgrep -i -r.\*)
 }
 eqgo1() {
-  enn -M $(exiqgrep -i|h1)
+  enn -M $(exipick -i -r.\*|h1)
 }
 
 
@@ -1761,10 +1770,9 @@ testexim() {
   #
   # -t = get recipient from header
   exim -d -t <<'EOF'
-From: i@dmarctest.b8.nz
-To: mailman@dev.fsf.org
+From: root@$(hostname-f)
+To: root@$(hostname-f)
 Subject: test2
-Reply-to: rtest@iankelling.org
 
 This is a test message.
 EOF
@@ -1837,16 +1845,23 @@ enn() {
 
 # get pid of systemd service
 servicepid() {
-  local pid unit
+  local pid unit dir
   unit="$1"
   pid=$(systemctl show --property MainPID --value "$unit")
   case $pid in
     [1-9]*) : ;;
     *)
+
+      dir=/sys/fs/cgroup/system.slice
+      if [[ ! -d $dir ]]; then
+        # t10 and older directory.
+        dir=/sys/fs/cgroup/systemd/system.slice
+      fi
+
       # 0 or empty.  This file includes the MainPid, so I expect we
       # could just get this in the first place, but i don't know if that
       # is always the case.
-      pid=$(head -n1 /sys/fs/cgroup/systemd/system.slice/${unit%.service}.service/cgroup.procs)
+      pid=$(head -n1 $dir/${unit%.service}.service/cgroup.procs)
       ;;
   esac
   if [[ $pid ]]; then
@@ -1904,33 +1919,22 @@ nmtc() {
 }
 
 mailnncheck() {
-  local p pid ns mailnn
+  local unit pid ns mailnn
   # mailvpn would belong on the list if using openvpn
-  for p in mailnn unbound dovecot spamassassin exim4 radicale; do
-
-
-    pid=$(systemctl show --property MainPID --value $unit)
-    case $pid in
-      [1-9]*) : ;;
-      *)
-        # 0 or empty. This file includes the MainPid, so I expect we
-        # could just get this in the first place, but i don't know if
-        # that is always the case.
-        pid=$(head -n1 /sys/fs/cgroup/systemd/system.slice/${unit%.service}.service/cgroup.procs)
-        ;;
-    esac
-    echo p=$p pid=$pid
+  for unit in mailnn unbound dovecot spamassassin exim4 radicale; do
+    pid=$(servicepid $unit)
+    echo debug: unit=$unit pid=$pid
     if [[ ! $pid ]]; then
-      echo failed to find pid for $p
+      echo failed to find pid for unit=$unit
       continue
     fi
     if ! ns=$(s readlink /proc/$pid/ns/net); then
-      echo failed to find ns for $p pid=$pid
+      echo failed to find ns for unit=$unit pid=$pid
       continue
     fi
     if [[  $mailnn ]]; then
       if [[ $ns != "$mailnn" ]]; then
-        echo "$p ns $ns != $mailnn"
+        echo "$unit ns $ns != $mailnn"
       fi
     else
       mailnn=$ns
@@ -2212,7 +2216,7 @@ if type -P rg &>/dev/null; then
   # --no-messages because of annoying errors on broken symlinks
   # -z = search .gz etc files
   # -. = search dotfilesq
-  rg() { command rg -. -z --no-messages -L -i -M 900 --no-ignore-parent --no-ignore-vcs -g '!.git' "$@" || return $?; }
+  rg() { command rg -. -z --no-messages -L -i -M 900 --no-ignore-parent --no-ignore-vcs -g '!.git' -g '!auto-save-list' -g '!.savehist' "$@" || return $?; }
   #fails if not exist. ignore
   complete -r rg 2>/dev/null ||:
 else