Điểm:0

Không thể cd vào thư mục mặc dù nhóm có quyền

lá cờ cn

Tôi biết rằng có những câu hỏi tương tự khác, nhưng không có gì trong đó giải quyết được vấn đề của tôi.

gitlab-runner@my-machine:~$ nhóm
gitlab-runner-người dùng của tôi

gitlab-runner@my-machine:~$ sudo ls -l /home
tổng số 16
drwxrwsr-x+ 16 người dùng của tôi người dùng của tôi 4096 Ngày 13 tháng 2 09:22 người dùng của tôi
# ... nhà của người dùng khác bị bỏ qua ...

gitlab-runner@my-machine:~$ sudo ls -l /home/my-user
tổng cộng 528
drwsrws---+ 4 người dùng của tôi người dùng của tôi 4096 Ngày 7 tháng 6 năm 2020 my-dir
# ... các tập tin không liên quan bị bỏ qua ...

gitlab-runner@my-machine:~$ sudo ls -l /home/my-user/my-dir
tổng cộng 48
drwxrwsr-x+ 7 my-user my-user 4096 Ngày 12 tháng 8 năm 2021 my-dir
drwxrwsr-x+ 6 người dùng của tôi người dùng của tôi 4096 Ngày 7 tháng 6 năm 2020 venv

gitlab-runner@my-machine:~$ cd /home/my-user/my-dir
-bash: cd: /home/my-user/my-dir: Quyền bị từ chối

Người dùng là thành viên của nhóm, nhóm có quyền đọc và thực thi trên thư mục đích và ngôi nhà chứa thư mục đó nhưng người dùng không thể đĩa CD vào đó. tôi cũng đã thử đăng xuất và sau đó sudo - người chạy gitlab một lần nữa, nhưng nó vẫn không hoạt động. Tại sao?

Tôi không chắc tại sao x chương trình bit S và tôi không thể tìm thấy lời giải thích ở bất cứ đâu. Có lẽ điều đó có liên quan nhưng tôi không biết ý nghĩa của nó cũng như cách thay đổi nó, vì sudo chmod g+x không thay đổi nó.

lá cờ cn
Ray
`s` là bit SetUID, SetGID, v.v. Bạn có thể đọc về nó ở nhiều nơi, chẳng hạn như liên kết [this](https://www.geeksforgeeks.org/setuid-setgid-and-sticky-bits-in-linux-file-permissions). Đối với vấn đề của bạn, tại sao bạn không chịu khó một chút? `cd` thành `/home`, rồi `/home/my-user`, v.v. Hãy xem nó đi đến đâu. Ngoài ra, tại sao bạn lại làm `Sudo - gitlab-runner`? Người dùng đó không có mật khẩu mà bạn có thể đăng nhập bằng?
raj avatar
lá cờ cn
raj
Có một dấu `+` sau trường quyền được hiển thị cho từng thư mục, điều đó có nghĩa là các quyền bổ sung được đặt bằng cách sử dụng ACL. Chúng có thể ghi đè các quyền "cơ bản". Kiểm tra với `sudo getfacl pathname` cho mỗi thư mục. Đối với bit `s` trên nhóm, điều đó có nghĩa là các tệp/thư mục con được tạo trong thư mục sẽ có nhóm được đặt thành nhóm của thư mục bất kể ai tạo ra chúng. Bạn có thể xóa cái này bằng `Sudo chmod g-s pathname`.
theberzi avatar
lá cờ cn
@Ray ý tôi là `su - gitlab-runner`, không phải `sudo`. Lỗi của tôi.
Điểm:1
lá cờ cn

Hóa ra là tôi đã đặt ACL cho thư mục đó, như @raj đã chỉ ra chính xác trong các nhận xét.

Tôi đã có ấn tượng sai lầm rằng các quyền ACL sẽ được ORed thành các bit quyền, trong khi thay vào đó, chúng sẽ ghi đè hoàn toàn chúng. ACL của tôi cho thư mục đã có rw- quyền, các x bit bị thiếu và vì vậy tôi không có quyền đĩa CD ở đó với người dùng đó.

Đă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.