fix disks explorer (#753)

* fix disks explorer

* fix SC2230

* exclude floppies

* update comment about excluded floppies

* add link to linux documentation about device majors

* try to support netbsd

* update possible netbsd disk devices
This commit is contained in:
Ander Punnar 2019-04-12 21:41:05 +03:00 committed by Darko Poljak
parent 20a16fe853
commit 1c152f0acb

View file

@ -1,16 +1,30 @@
#!/bin/sh -e #!/bin/sh -e
os=$("$__explorer/os") os="$( "$__explorer/os" )"
case "$os" in
openbsd)
IFS=',' disks=$(sysctl -n hw.disknames)
for d in $disks; do
echo "${d%%:*}"
done | sed -n '/^[sw]d[0-9][0-9]*/p'
;;
case "$os" in
freebsd)
sysctl -n kern.disks
;;
openbsd)
sysctl -n hw.disknames | grep -Eo '[sw]d[0-9]+' | xargs
;;
netbsd)
sysctl -n hw.disknames | grep -Eo '[lsw]d[0-9]' | xargs
;;
*) *)
cd /dev || exit 0 # hopefully everything else is linux
echo sd? hd? vd? if command -v lsblk > /dev/null
then
# exclude ram disks, floppies and cdroms
# https://www.kernel.org/doc/Documentation/admin-guide/devices.txt
lsblk -e 1,2,11 -dno name | xargs
else
# fallback
find /dev \
-type b \
-regex '/dev/\(hd\|sd\|vd\)[a-z]+' \
-printf '%f '
fi
;; ;;
esac esac