Current Path : /usr/lib/os-probes/mounted/ |
Current File : //usr/lib/os-probes/mounted/90bsd-distro |
#!/bin/sh # Test for *BSD distributions. set -e . /usr/share/os-prober/common.sh partition="$1" dir="$2" type="$3" # Weed out stuff that doesn't apply to us case "$type" in ufs|ufs1|ufs2) ;; *) exit 1 ;; esac disk=$(echo $partition | gawk '{ match($0, /([[:alpha:][:punct:]]+)[[:digit:]]+/, disk); print disk[1] }') if [ ! -z "$disk" ]; then tpartition=$(echo $partition | sed 's|\/|\\/|g') system=$(fdisk -l $disk | awk '/'$tpartition'[[:blank:]]+\*[[:blank:]]+.+[[:blank:]]+.+BSD/ {print $7}') if [ ! -z "$system" ]; then title= if [ -f $dir/etc/motd ]; then case $system in FreeBSD | NetBSD | OpenBSD) title=$(cat $dir/etc/motd | gawk '{ match($0, /('$system')[[:blank:]]+([[:graph:]]+)[[:blank:]]+(\([[:print:]]+\))/, title); print title[1], title[2], title[3]; exit 0}') ;; esac fi if [ -z "$title" ]; then title="$system" fi label="$(count_next_label "$system")" echo "$partition:$title:$label:chain" exit 0 else exit 1 fi else exit 1 fi