lsinitrd: use /boot/<machine-id>/<kernel-version>/initrd as the default image
if /boot/<machine-id> exists; then use /boot/<machine-id>/<kernel-version>/initrd as the default image; else fallback to /boot/initramfs-<kernel-version>.imgmaster
parent
cbc21754e5
commit
dde2db3da9
|
@ -10,12 +10,13 @@ lsinitrd - tool to show the contents of an initramfs image
|
||||||
|
|
||||||
SYNOPSIS
|
SYNOPSIS
|
||||||
--------
|
--------
|
||||||
*lsinit* ['OPTION...'] [<image>]
|
*lsinitrd* ['OPTION...'] [<image>]
|
||||||
|
|
||||||
DESCRIPTION
|
DESCRIPTION
|
||||||
-----------
|
-----------
|
||||||
lsinitrd shows the contents of an initramfs image. if <image> is omitted, then
|
lsinitrd shows the contents of an initramfs image. if <image> is omitted, then
|
||||||
lsinitrd uses the default image /boot/initramfs-<kernel version>.img.
|
lsinitrd uses the default image _/boot/<machine-id>/<kernel-version>/initrd_ or
|
||||||
|
_/boot/initramfs-<kernel-version>.img_.
|
||||||
|
|
||||||
OPTIONS
|
OPTIONS
|
||||||
-------
|
-------
|
||||||
|
|
40
lsinitrd.sh
40
lsinitrd.sh
|
@ -21,7 +21,13 @@
|
||||||
|
|
||||||
usage()
|
usage()
|
||||||
{
|
{
|
||||||
echo "Usage: $(${0##*/}) [-s] [<initramfs file> [<filename>]]"
|
{
|
||||||
|
echo "Usage: ${0##*/} [-s] [<initramfs file> [<filename>]]"
|
||||||
|
echo
|
||||||
|
echo "-h, --help print a help message and exit."
|
||||||
|
echo "-s, --size sort the contents of the initramfs by size."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
}
|
}
|
||||||
|
|
||||||
[[ $# -le 2 ]] || { usage ; exit 1 ; }
|
[[ $# -le 2 ]] || { usage ; exit 1 ; }
|
||||||
|
@ -36,8 +42,36 @@ while getopts "s" opt; do
|
||||||
done
|
done
|
||||||
shift $((OPTIND-1))
|
shift $((OPTIND-1))
|
||||||
|
|
||||||
image="${1:-/boot/initramfs-$(uname -r).img}"
|
KERNEL_VERSION="$(uname -r)"
|
||||||
[[ -f "$image" ]] || { echo "$image does not exist" ; exit 1 ; }
|
|
||||||
|
if [[ "$1" ]]; then
|
||||||
|
image="$1"
|
||||||
|
if ! [[ -f "$image" ]]; then
|
||||||
|
{
|
||||||
|
echo "$image does not exist"
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
usage
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
[[ -f /etc/machine-id ]] && read MACHINE_ID < /etc/machine-id
|
||||||
|
|
||||||
|
if [[ $MACHINE_ID ]] && ( [[ -d /boot/${MACHINE_ID} ]] || [[ -L /boot/${MACHINE_ID} ]] ); then
|
||||||
|
image="/boot/${MACHINE_ID}/${KERNEL_VERSION}/initrd"
|
||||||
|
else
|
||||||
|
image="/boot/initramfs-${KERNEL_VERSION}.img}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! [[ -f "$image" ]]; then
|
||||||
|
{
|
||||||
|
echo "No <initramfs file> specified and the default image '$image' cannot be accessed!"
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
usage
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
CAT=zcat
|
CAT=zcat
|
||||||
FILE_T=$(file --dereference "$image")
|
FILE_T=$(file --dereference "$image")
|
||||||
|
|
Loading…
Reference in New Issue