Fix possible error when creating /dev/pts and /dev/shm directories

This commit is contained in:
EnumDev 2025-03-09 13:51:34 +02:00
parent ec92777135
commit 6297d8bf47

View File

@ -1,6 +1,7 @@
package main package main
import ( import (
"errors"
"flag" "flag"
"fmt" "fmt"
"log" "log"
@ -73,14 +74,14 @@ func mountVirtualFilesystems() {
panic(err) panic(err)
} }
// Mount /dev/pts // Mount /dev/pts
if err := os.Mkdir("/dev/pts", 0755); err != nil { if err := os.Mkdir("/dev/pts", 0755); err != nil && !errors.Is(err, os.ErrExist) {
panic(err) panic(err)
} }
if err := syscall.Mount("devpts", "/dev/pts", "devpts", commonFlags, "gid=5,mode=620,ptmxmode=000"); err != nil { if err := syscall.Mount("devpts", "/dev/pts", "devpts", commonFlags, "gid=5,mode=620,ptmxmode=000"); err != nil {
panic(err) panic(err)
} }
// Mount /dev/shm // Mount /dev/shm
if err := os.Mkdir("/dev/shm", 0755); err != nil { if err := os.Mkdir("/dev/shm", 0755); err != nil && !errors.Is(err, os.ErrExist) {
panic(err) panic(err)
} }
if err := syscall.Mount("shm", "/dev/shm", "tmpfs", commonFlags|syscall.MS_NODEV, "inode64"); err != nil { if err := syscall.Mount("shm", "/dev/shm", "tmpfs", commonFlags|syscall.MS_NODEV, "inode64"); err != nil {