Jelaskan bugnya
Setelah memutakhirkan ke versi kotak alat 0.0.97 saya tidak dapat memulai lagi kotak alat apa pun.
Keluaran dari toolbox enter work
:
DEBU Running as real user ID 1000
DEBU Resolved absolute path to the executable as /usr/bin/toolbox
DEBU Running on a cgroups v1 host
DEBU Checking if /etc/subgid and /etc/subuid have entries for user x
DEBU TOOLBOX_PATH is /usr/bin/toolbox
DEBU Toolbox config directory is /home/x/.config/toolbox
DEBU Current Podman version is 2.1.1
DEBU Old Podman version is 2.1.1
DEBU Migration not needed: Podman version 2.1.1 is unchanged
DEBU Resolving container and image names
DEBU Container: 'work'
DEBU Image: ''
DEBU Release: ''
DEBU Resolved container and image names
DEBU Container: 'work'
DEBU Image: 'fedora-toolbox:31'
DEBU Release: '31'
DEBU Checking if container work exists
DEBU Inspecting mounts of container work
DEBU Starting container work
DEBU Inspecting entry point of container work
DEBU Entry point PID is a float64
DEBU Entry point of container work is toolbox (PID=0)
Error: invalid entry point PID of container work
Outputnya sama untuk container yang dibuat sebelum dan setelah diperbarui. Kotak alat dapat dimulai setelah diturunkan ke 0.0.96 dan dapat dimasukkan ke dalam 0.0.97 setelah dimulai.
Langkah-langkah bagaimana mereproduksi perilaku
Perilaku yang diharapkan
Kotak alat dimulai
Perilaku sebenarnya
Kesalahan dilemparkan Error: invalid entry point PID of container work
dan kotak alat tidak dimulai.
Keluaran toolbox --version
(v0.0.90+)
toolbox version 0.0.97
Info paket kotak alat ( rpm -q toolbox
)
toolbox-0.0.97-1-x86_64 (arch)
Keluaran podman version
Version: 2.1.1
API Version: 2.0.0
Go Version: go1.15.2
Git Commit: 9f6d6ba0b314d86521b66183c9ce48eaa2da1de2
Built: Sat Sep 26 16:50:37 2020
OS/Arch: linux/amd64
Info paket Podman ( rpm -q podman
)
podman-2.1.1-1-x86_64 (arch)
Info tentang OS Anda
Archlinux
Saya mendapatkan masalah yang sama persis (di Arch Linux juga). Menurunkan ke 0.0.96 berhasil untuk saya.
Ini adalah log Podman untuk kotak alat Fedora 32:
$ podman logs fedora-toolbox-32
level=debug msg="Running as real user ID 0"
level=debug msg="Resolved absolute path to the executable as /usr/bin/toolbox"
level=debug msg="TOOLBOX_PATH is /usr/bin/toolbox"
level=debug msg="XDG_RUNTIME_DIR is unset"
level=debug msg="XDG_RUNTIME_DIR set to /run/user/1000"
level=debug msg="Creating /run/.toolboxenv"
level=debug msg="Monitoring host"
level=debug msg="Path /run/host/etc exists"
level=debug msg="Resolved /etc/localtime to /usr/share/zoneinfo/Europe/Amsterdam"
Error: /etc/localtime points to unknown location
Saya melihat hal yang sama
level=debug msg="Running as real user ID 0"
level=debug msg="Resolved absolute path to the executable as /usr/bin/toolbox"
level=debug msg="TOOLBOX_PATH is /usr/bin/toolbox"
level=debug msg="XDG_RUNTIME_DIR is unset"
level=debug msg="XDG_RUNTIME_DIR set to /run/user/1000"
level=debug msg="Creating /run/.toolboxenv"
level=debug msg="Monitoring host"
level=debug msg="Path /run/host/etc exists"
level=debug msg="Preparing to redirect /etc/localtime to /run/host/etc/localtime"
level=debug msg="/run/host/etc/localtime is a symbolic link"
level=debug msg="Redirecting /etc/localtime to /run/host/etc/localtime"
level=debug msg="Resolved /etc/localtime to /usr/share/zoneinfo/Europe/Copenhagen"
Error: /etc/localtime points to unknown location
Mungkinkah ini disebabkan oleh 4c9b80aee2b2ee3162b82e309718a23792d0e103 ?
Saya mengalami masalah yang sama di Manjaro (berbasis lengkung). Melalui komit, saya menemukan b9a0bd5f0c2a2421ec15eea286ca20f03b7152d2 sebagai pelakunya. 4c9b80aee2b2ee3162b82e309718a23792d0e103 tampaknya menjadi yang terakhir yang berfungsi dengan benar.
Apakah ada yang mencoba 0.0.98.1 di Arch Linux?
Karena penasaran, sistem host Arch Anda tidak memiliki /etc/localtime
?
Ya, host Arch memang memiliki /etc/localtime. Ini adalah symlink ke /usr/share/zoneinfo/.
Masalahnya adalah bahwa kotak alat memiliki:
const zoneInfoRoot = "/run/host/usr/share/zoneinfo"
if !strings.HasPrefix(localTimeEvaled, zoneInfoRoot) {
return errors.New("/etc/localtime points to unknown location")
}
Jika saya mengubah zoneInfoRoot menjadi "/usr/share/zoneinfo"
, kotak alat berfungsi dengan baik.
Sebelum memanggil updateTimeZoneFromLocalTime()
, tautan /etc/localtime diperbarui untuk menunjuk ke jalur yang sama dengan yang ditunjuk /run/Host/etc/localtime.
Saya gagal melihat bagaimana seharusnya membuat /etc/localtime menunjuk ke /run/Host, karena file Host tidak tahu apa-apa tentang kotak alat.
Jadi kecuali saya melewatkan sesuatu, bahkan mungkin jelas bagi orang lain, zoneInfoRoot
seharusnya diubah/diperbaiki. Jika ada kedua kasus penggunaan untuk /etc/localtime untuk menunjuk ke /run/Host/usr/share/zoneinfo/... dan /usr/share/zoneinfo/... Saya kira kita dapat memeriksa kedua kemungkinan, dan menyelesaikan timeZone
berdasarkan awalan yang cocok.
Ya, host Arch memang memiliki /etc/localtime. Ini adalah symlink ke
/usr/share/zoneinfo/.
Ok, jadi tidak seperti situasi di Fedora CoreOS.
Ini harus ditangani oleh https://github.com/containers/toolbox/pull/634
Namun, saya harus menyebutkan bahwa Arch dan Ubuntu harus menggunakan tautan simbolik relatif. Jika ya, ini akan terus berfungsi, karena symlink relatif mampu menangani situasi seperti chroot, yang mana ini lebih baik. misalnya, di Fedora Workstation kami memiliki:
$ ls -l /etc/localtime
lrwxrwxrwx. 1 root root 35 Jan 5 18:20 /etc/localtime -> ../usr/share/zoneinfo/Europe/Prague
Padahal, di Ubuntu 18.04, saya melihat:
$ ls -l /etc/localtime
lrwxrwxrwx 1 root root 33 lis 11 16:21 /etc/localtime -> /usr/share/zoneinfo/Europe/Prague
Tapi, jika saya menggunakan timedatectl
maka itu diperbaiki :
$ timedatectl set-timezone Europe/Prague
$ ls -l /etc/localtime
lrwxrwxrwx 1 root root 35 led 12 20:29 /etc/localtime -> ../usr/share/zoneinfo/Europe/Prague
Ya, mengubah symlink /etc/localtime menjadi absolut adalah solusi yang dapat digunakan. Saya akan menggunakan ini untuk saat ini, terima kasih.
Tapi saya pikir #634 harus digabungkan. Saya tidak melihat banyak gunanya tidak mendukung symlink absolut seperti itu.
Penutupan. Silakan buka kembali atau tinggalkan komentar jika menurut Anda ini masih belum diperbaiki.
Dan terima kasih telah menguji Toolbox.
Komentar yang paling membantu
Saya mendapatkan masalah yang sama persis (di Arch Linux juga). Menurunkan ke 0.0.96 berhasil untuk saya.
Ini adalah log Podman untuk kotak alat Fedora 32: