diff options
Diffstat (limited to 'cmd/podman')
-rw-r--r-- | cmd/podman/libpodruntime/runtime.go | 3 | ||||
-rw-r--r-- | cmd/podman/main.go | 10 |
2 files changed, 12 insertions, 1 deletions
diff --git a/cmd/podman/libpodruntime/runtime.go b/cmd/podman/libpodruntime/runtime.go index 042ce87e5..abe0115e9 100644 --- a/cmd/podman/libpodruntime/runtime.go +++ b/cmd/podman/libpodruntime/runtime.go @@ -7,6 +7,7 @@ import ( "github.com/containers/storage" "github.com/projectatomic/libpod/libpod" + "github.com/projectatomic/libpod/pkg/rootless" "github.com/urfave/cli" ) @@ -40,7 +41,7 @@ func GetRootlessStorageOpts() (storage.StoreOptions, error) { func GetDefaultStoreOptions() (storage.StoreOptions, error) { storageOpts := storage.DefaultStoreOptions - if os.Getuid() != 0 { + if rootless.IsRootless() { var err error storageOpts, err = GetRootlessStorageOpts() if err != nil { diff --git a/cmd/podman/main.go b/cmd/podman/main.go index f936a332f..fefd8fdad 100644 --- a/cmd/podman/main.go +++ b/cmd/podman/main.go @@ -11,6 +11,7 @@ import ( "github.com/pkg/errors" "github.com/projectatomic/libpod/pkg/hooks" _ "github.com/projectatomic/libpod/pkg/hooks/0.1.0" + "github.com/projectatomic/libpod/pkg/rootless" "github.com/projectatomic/libpod/version" "github.com/sirupsen/logrus" "github.com/urfave/cli" @@ -26,6 +27,15 @@ func main() { debug := false cpuProfile := false + became, err := rootless.BecomeRootInUserNS() + if err != nil { + logrus.Errorf(err.Error()) + os.Exit(1) + } + if became { + os.Exit(0) + } + if reexec.Init() { return } |