Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

no such file or directory on forwardIO(stderr)

Đang mở
#58 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
2/5
Thời gian dự kiến
1-3 giờ
Mức phù hợp với người mới
48/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Đình trệ
Công nghệ
go
Lĩnh vực
infrastructure

Hướng nghiên cứu

Bắt đầu với internal/shim/task/io.go, đặc biệt là copyStreams và đường dẫn forwardIO(stderr), rồi tái hiện lệnh trên một máy chủ Linux. Kiểm tra lý do FIFO stderr không tồn tại trước khi được mở, sau đó xác minh rằng lệnh nerdbox được báo cáo không còn thất bại với “no such file or directory”.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Try to play nerdbox on Linux host:

nerdctl run --debug --runtime="io.containerd.nerdbox.v1" --snapshotter=erofs -it --rm docker.1ms.run/library/ubuntu:latest /bin/bash
DEBU[0000] verifying process skipped
DEBU[0000] generated log driver: binary:///usr/bin/nerdctl?_NERDCTL_INTERNAL_LOGGING=%2Fvar%2Flib%2Fnerdctl%2F1935db59
DEBU[0000] remote introspection plugin filters           filters="[type==io.containerd.snapshotter.v1, id==erofs]"
FATA[0000] failed to create shim task: containerd-shim: opening file "/run/containerd/fifo/2365072660/6de4ba46f2d7fa683bed82a0ed4cb30071a5c0c1437801d11ffeb57ef15c5647
-stderr" failed: open /run/containerd/fifo/2365072660/6de4ba46f2d7fa683bed82a0ed4cb30071a5c0c1437801d11ffeb57ef15c5647-stderr: no such file or director

It seems the following change can workaround it but I don't look into it:

diff --git a/internal/shim/task/io.go b/internal/shim/task/io.go
index 080c114d9cf5..d9c85fb778d0 100644
--- a/internal/shim/task/io.go
+++ b/internal/shim/task/io.go
@@ -247,7 +247,7 @@ func copyStreams(ctx context.Context, streams [3]io.ReadWriteCloser, stdin, stdo
                                i.dest(sameFile, nil)
                                continue
                        }
-                       if fw, err = os.OpenFile(i.name, syscall.O_WRONLY|syscall.O_APPEND, 0); err != nil {
+                       if fw, err = os.OpenFile(i.name, syscall.O_WRONLY|syscall.O_APPEND|syscall.O_CREAT, 0); err != nil {
                                return fmt.Errorf("containerd-shim: opening file %q failed: %w", i.name, err)
                        }
                        if stdout == stderr {
Ngôn ngữ chính
Go
Star
187
Fork
30
Merge trung bình
1 ngày 12 giờ
Pull request đã merge (30 ngày)
11

Chuẩn bị môi trường

  • Có Dockerfile hoặc tệp Docker Compose
  • Không có mẫu pull request
  • Không có hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của containerd/nerdbox

Tất cả issue của containerd/nerdbox

Issue tương tự

Thêm issue về Go

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.