File: nfsroot-cleanup.sh

package info (click to toggle)
dracut 106-6
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 4,708 kB
  • sloc: sh: 24,384; ansic: 4,704; makefile: 315; perl: 186; python: 28; javascript: 19
file content (29 lines) | stat: -rwxr-xr-x 867 bytes parent folder | download | duplicates (3)
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
#!/bin/sh

command -v incol2 > /dev/null || . /lib/dracut-lib.sh

[ -f /tmp/nfs.rpc_pipefs_path ] && read -r rpcpipefspath < /tmp/nfs.rpc_pipefs_path
[ -z "$rpcpipefspath" ] && rpcpipefspath=var/lib/nfs/rpc_pipefs

pid=$(pidof rpc.statd)
[ -n "$pid" ] && kill "$pid"

pid=$(pidof rpc.idmapd)
[ -n "$pid" ] && kill "$pid"

pid=$(pidof rpcbind)
[ -n "$pid" ] && kill "$pid"

if incol2 /proc/mounts /var/lib/nfs/rpc_pipefs; then
    # try to create the destination directory
    [ -d "$NEWROOT/$rpcpipefspath" ] \
        || mkdir -m 0755 -p "$NEWROOT/$rpcpipefspath" 2> /dev/null

    if [ -d "$NEWROOT/$rpcpipefspath" ]; then
        # mount --move does not seem to work???
        mount --bind /var/lib/nfs/rpc_pipefs "$NEWROOT/$rpcpipefspath"
        umount /var/lib/nfs/rpc_pipefs 2> /dev/null
    else
        umount /var/lib/nfs/rpc_pipefs 2> /dev/null
    fi
fi