...
Создайте файл /usr/share/zfs/zpool.d/upath
в котором будет написано с этим контентом или выполните следующие команды:
Code Block | ||
---|---|---|
| ||
su - cat > /usr/share/zfs/zpool.d/upath <<EOT #!/bin/sh if [ "\$1" = "-h" ] ; then echo echo "Show the underlying path for a device." exit fi # shellcheck disable exit fi # shellcheck disable=SC2154 echo upath="\$VDEV_UPATH" EOT sed -i '/./!d' /usr/share/zfs/zpool.d/upath |
Затем создайте файл /usr/share/zfs/zpool.d/iostat
со следующим содержимым с этим содержимым или выполните команды:
Code Block | ||
---|---|---|
| ||
#!/bin/cat > /usr/share/zfs/zpool.d/iostat <<EOT #!/bin/sh # # Display most relevant iostat bandwidth/latency numbers. The output is # dependent on the name of the script/symlink used to call it. # helpstr=" iostat: Show iostat values since boot (summary page). iostat-1s: Do a single 1-second iostat sample and show values. iostat-10s: Do a single 10-second iostat sample and show values." script="\${0##*/}" if [ "\$1" = "-h" ] ; then echoecho "\$helpstr" | grep "\$script:" | tr -s '\\t' | cut -f 2- exit exit fi if [ "\$script" = "iostat-1s" ] ; then # # Do a single one-second sample interval interval=1 ## Don't show summary stats briefbrief="yes" elif [ "\$script" = "iostat-10s" ] ; then ## Do a single ten-second sample intervalinterval=10 ## Don't show summary stats brief brief="yes" fi if [ -f "\$VDEV_UPATH" ] ; then # We're a # We're a file-based vdev, iostat doesn't work on us. Do nothing. exitexit fi out=\$(iostat -x "\${VDEV_UPATH##*/}" \ $ \${interval:+"\$interval"} \ $ \${interval:+"1"} | tail -n 2) # Sample output (we want the last two lines): # # # Linux 2.6.32-642.13.1.el6.x86_64 (centos68) 03/09/2017 2017 _x86_64_ (6 CPU) # # avg-cpu: %user %user %nice %system %iowait %steal %iowait %steal %idle # # 0.00 00 0.00 00 0.00 00 0.00 00 0.00 00 100.00 # # Device: rrqm/s s wrqm/s s r/s s w/s s rkB/s s wkB/s avgrq-sz avgqu-sz sz await r_await w_await await svctm svctm %util # sdb sdb 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 # # Get the column names cols=\$(echo "\$out" | head -n 1) # Get the values and tab separate them to make them cut-able. vals=\$(echo "\$out" | tail -n 1 | tr -s '[:space:]' '\\t') i=0 for col in \$cols ; do ii=\$((i+1)) ## Skip the first column since it's just the device name ifif [ \$i -eq 1 ]; then continue fi # -eq 1 ]; then continue fi # Get i'th value valval=\$(echo "\$vals" | cut -f "\$i") echoecho "\$col=\$val" done EOT sed -i '/./!d' /usr/share/zfs/zpool.d/iostat |
И после этого выполните следующие действия:
...
Далее Вы сможете так же отключиться в любой момент по нажатию Ctrl-A d и подключиться обратно в новой сессии SSH по:
...