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

visudo + sudoedit = ♥?

Đang mở
#167 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ó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
25/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Đình trệ
Công nghệ
c
Lĩnh vực
cli, security

Hướng nghiên cứu

Start by reading the visudo and sudoedit entry points and how visudo invokes an editor; the issue does not name source files or tests. Work out how permission checks and syntax validation interact before estimating an implementation. Done means visudo can support editing sudoers files as the invoking user while retaining syntax validation, including a clear response when required permissions are missing.

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

Mô tả

I'd like a way to edit my sudoers file (or one of its includes) in a way that combines the best of sudoedit and visudo:

  • Runs the editor as myself, like sudoedit
  • Ensures I got the syntax right, like visudo

This might be doable today using something like sudo SUDO_EDITOR=my-wrapper visudo, where my-wrapper is a script that copies the given temp file over to a user-writeable one, runs sudoedit on that as SUDO_USER, and copies the modified file back over to original the temp file.

However, I think it would be much nicer if this functionality was available built-in.

In terms of the user interface, I would think it makes most sense to just enhance visudo to detect if it is being run by a user without write access to the given file(s) (i.e. typically a non-root user). If so, rather than invoking the editor directly, it would run sudoedit; perhaps after first checking via sudo -l that the required permissions exist (in order to give a better error message if not).

If this makes sense, I'd be happy to have a go at implementing this.

Ngôn ngữ chính
C
Star
1.7k
Fork
306
Merge trung bình
1 ngày 8 giờ
Pull request đã merge (30 ngày)
24

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

Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.

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 sudo-project/sudo

Tất cả issue của sudo-project/sudo

Issue tương tự

Thêm issue về C

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.