Điểm:1

Làm cách nào để chạy các lệnh sudo với người dùng hệ thống?

lá cờ br

Tôi muốn chạy một máy chủ minecraft trong Docker, vì vậy tôi đã bắt đầu làm theo hướng dẫn này. Trong hướng dẫn, nên tạo một người dùng hệ thống với một thư mục chính (/opt/minecraft), nhưng không có mật khẩu (bạn sẽ không thể "đăng nhập" bằng người dùng này) để chạy máy chủ. Nó sử dụng lệnh sau: sudo useradd -r -m -U -d /opt/minecraft -s /bin/bash minecraft.

Tôi đã chuyển sang "người dùng hệ thống" minecraft mới được tạo -> sudo su - minecraft.

Vấn đề
Vì vậy, tôi muốn sử dụng người đóng tàu hoặc soạn thảo docker, và đây là nơi phát sinh vấn đề:

  • Khi tôi cố chạy docker-compose bằng cách sử dụng sudo, nó hỏi tôi mật khẩu (rõ ràng là người dùng này không có).
  • Khi tôi thử nó không có sudo, Tôi có không thể tạo thư mục dữ liệu người dùng: /opt/minecraft/snap/docker/1458: Quyền bị từ chối.

Tôi không thực sự chắc chắn phải làm gì ở đây. Tôi không thể chạy docker. Tôi đoán tôi không muốn xóa mật khẩu khỏi người dùng (sẽ là rủi ro bảo mật) và tôi không muốn thêm mật khẩu cho người dùng (sau đó bạn có thể đăng nhập qua ssh hoặc thứ gì đó). Tôi đang tiếp cận điều này một cách sai lầm?

lá cờ cn
Người ta phải có quyền sudoer để sử dụng các lệnh docker. Hoặc `sudo docker` hoặc mở Shell gốc và chạy (các) lệnh.
lá cờ br
Vâng, đây chính xác là vấn đề của tôi. Xem gạch đầu dòng 1 - "Khi tôi cố chạy docker-compose **sử dụng sudo**, nó sẽ hỏi tôi mật khẩu (rõ ràng là người dùng này không có)". Người dùng này phải có khả năng chạy các lệnh, nếu không thì toàn bộ vấn đề của người dùng này là tranh luận.
lá cờ cn
Tôi quên đề cập rằng có thể thêm một nhóm Docker và thực hiện theo cách đó. Tôi đã không sử dụng Docker trong một thời gian dài.
Điểm:1
lá cờ jo

Xem xét việc thêm một nhóm docker đặc quyền https://docs.docker.com/engine/install/linux-postinstall/

Điều này sẽ cho phép bạn chạy các lệnh docker mà không cần root hoặc sudo

lá cờ br
Ý tưởng tốt. Tôi đã làm điều này, vì vậy bây giờ người dùng ``minecraft`` của tôi nằm trong nhóm ``docker``. Tuy nhiên, tôi gặp lỗi chính xác như vậy (```không thể tạo thư mục dữ liệu người dùng: /opt/minecraft/snap/docker/1458: Quyền bị từ chối```). Tôi cũng đã xóa thư mục docker cũng như đăng xuất/đăng nhập và thử lại. Cùng một lỗi. Nó tạo ``snap/docker/1458 + common + current`` và trả về thông báo trên. Tôi đã bỏ lỡ một cái gì đó? Tôi có thể nói thêm rằng mọi thứ thuộc quyền sở hữu của người dùng ``minecraft`` ``/`` của tôi đều do người dùng ``minecraft`` sở hữu.
lá cờ br
Có lẽ bởi vì tôi đang sử dụng ``snap``?
lá cờ br
Đó là bởi vì tôi đang sử dụng ``snap``! Rõ ràng [``snap`` không cho phép chạy bất cứ thứ gì không nằm trong thư mục ``home``](https://askubuntu.com/questions/930437/permission-denied-error-when-running-apps-install -as-snap-gói-ubuntu-17). Tôi đã gỡ cài đặt phiên bản ``snap`` ``docker`` và cài đặt nó từ ``apt``, và bây giờ nó hoạt động (cùng với câu trả lời của @madacoda, bằng cách sử dụng nhóm ``docker``).
Điểm:0
lá cờ br

Điều này là do tôi đã sử dụng búng tay.

Rõ ràng búng tay không cho phép chạy bất cứ thứ gì không thuộc Trang Chủ danh mục. tôi đã gỡ cài đặt búng tay người đóng tàu phiên bản và cài đặt nó từ đúng cách thay vào đó, và bây giờ nó hoạt động (ngoài câu trả lời của @ madacoda, bằng cách sử dụng người đóng tàu tập đoàn).

madacoda avatar
lá cờ jo
Chắc chắn sẽ rất tuyệt nếu đánh dấu câu trả lời của tôi nếu nó giải quyết được một phần vấn đề của bạn
lá cờ br
Trong trường hợp này, câu trả lời của bạn không giải quyết được vấn đề của tôi (snap đã chặn việc sử dụng các thư mục không phải là nhà). Trên thực tế, nó thậm chí không giải quyết được một phần vấn đề của tôi mà là một vấn đề riêng biệt (chạy các lệnh docker mà không yêu cầu sudo/root). Do đó, thật vô nghĩa khi đánh dấu câu trả lời của bạn là đã giải quyết. Bằng cách này, người tiếp theo nhận được thông báo lỗi này có thể trực tiếp tìm đến giải pháp chính xác, thay vì bối rối trước một giải pháp không giải quyết được vấn đề thực tế. Tuy nhiên, tôi đã ủng hộ câu trả lời của bạn vì nó hữu ích và bạn biết đấy, tôi rất đánh giá cao sự giúp đỡ của bạn và tôi cảm ơn bạn vì điều đó!

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.