func (ne *Nsenter) Exec(cmd string, args []string) exec.Cmd {
	fullArgs := append([]string{fmt.Sprintf("--mount=%s", hostProcMountNsPath), "--"},
		append([]string{ne.AbsHostPath(cmd)}, args...)...)
	glog.V(5).Infof("Running nsenter command: %v %v", nsenterPath, fullArgs)
	exec := exec.New()
	return exec.Command(nsenterPath, fullArgs...)
}
Exec executes nsenter commands in hostProcMountNsPath mount namespace
package nsenter
import (
	"fmt"
	"os"
	"path/filepath"
	"k8s.io/utils/exec"
	"github.com/golang/glog"
)
const (
	hostRootFsPath = "/rootfs"
	hostProcMountNsPath = "/rootfs/proc/1/ns/mnt"
	nsenterPath = "nsenter"
)
type Nsenter struct {
	paths map[string]string
}
func NewNsenter() *Nsenter {
	ne := &Nsenter{
		paths: map[string]string{
			"mount":       "",
			"findmnt":     "",
			"umount":      "",
			"systemd-run": "",
			"stat":        "",
			"touch":       "",
			"mkdir":       "",
			"ls":          "",
			"sh":          "",
			"chmod":       "",
		},
	}
	for binary := range ne.paths {
		ne.paths[binary] = filepath.Join("/", binary)
		for _, path := range []string{"/bin", "/usr/sbin", "/usr/bin"} {
			binPath := filepath.Join(path, binary)
			if _, err := os.Stat(filepath.Join(hostRootFsPath, binPath)); err != nil {
				continue
			}
			ne.paths[binary] = binPath
			break
		}
	}
	return ne
}