The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/openzfs/cmd/fsck.zfs.in

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 #!/bin/sh
    2 #
    3 # fsck.zfs: A fsck helper to accommodate distributions that expect
    4 # to be able to execute a fsck on all filesystem types.
    5 #
    6 # This script simply bubbles up some already-known-about errors,
    7 # see fsck.zfs(8)
    8 #
    9 
   10 if [ $# -eq 0 ]; then
   11         echo "Usage: $0 [options] dataset…" >&2
   12         exit 16
   13 fi
   14 
   15 ret=0
   16 for dataset; do
   17         case "$dataset" in
   18                 -*)
   19                         continue
   20                         ;;
   21                 *)
   22                         ;;
   23         esac
   24 
   25         pool="${dataset%%/*}"
   26 
   27         case "$(@sbindir@/zpool list -Ho health "$pool")" in
   28                 DEGRADED)
   29                         ret=$(( ret | 4 ))
   30                         ;;
   31                 FAULTED)
   32                         awk '!/^([[:space:]]*#.*)?$/ && $1 == "'"$dataset"'" && $3 == "zfs" {exit 1}' /etc/fstab || \
   33                                 ret=$(( ret | 8 ))
   34                         ;;
   35                 "")
   36                         # Pool not found, error printed by zpool(8)
   37                         ret=$(( ret | 8 ))
   38                         ;;
   39                 *)
   40                         ;;
   41         esac
   42 done
   43 
   44 exit "$ret"

Cache object: 41b296e219c9489a876a4986214b7799


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.