/sbin/cryptdisks_stop is in cryptsetup 2:1.6.1-1ubuntu1.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | #!/bin/sh
# cryptdisks_stop - wrapper around cryptsetup which parses
# /etc/crypttab, just like mount parses /etc/fstab.
# Initial code stolen from cryptdisks_start by Jon Dowland <jon@alcopop.org>
# Copyright (C) 2008 by Jonas Meurer <jonas@freesources.org>
# License: GNU General Public License, v2 or any later
# (http://www.gnu.org/copyleft/gpl.html)
set -e
if [ $# -lt 1 ]; then
echo "usage: $0 <name>" >&2
echo >&2
echo "reads /etc/crypttab and stops the mapping corresponding to <name>" >&2
exit 1
fi
. /lib/cryptsetup/cryptdisks.functions
INITSTATE="manual"
DEFAULT_LOUD="yes"
if [ -x "/usr/bin/id" ] && [ "$(/usr/bin/id -u)" != "0" ]; then
log_warning_msg "$0 needs root privileges"
exit 1
fi
log_action_begin_msg "Stopping crypto disk"
count=0
tablen="$(egrep -vc "^[[:space:]]*(#|$)" "$TABFILE")"
egrep -v "^[[:space:]]*(#|$)" "$TABFILE" | while read dst src key opts; do
count=$(( $count + 1 ))
if [ "$1" = "$dst" ]; then
ret=0
handle_crypttab_line_stop "$dst" "$src" "$key" "$opts" <&3 || ret=$?
elif [ $count -ge $tablen ]; then
ret=1
device_msg "$1" "failed, not found in crypttab"
else
continue
fi
log_action_end_msg $ret
exit $ret
done 3<&1
|