Quyền bị từ chối trên ~ mặc dù chủ sở hữu được liệt kê là tôi


13

Bằng cách nào đó, tôi đã xoay xở và nhai ~ vào quên lãng.

Khi tôi cố gắng đăng nhập qua shell, tôi nhận được

bash: ~/.bashrc : Permission denied

Ngay cả sau khi ( như root ) tôi đã chạy

chown -hR nroach44 /home/nroach44

chmod -R 666 /home/nroach44

hoặc ( như nroach44 )

chmod -R 644 /home/nroach44

Không có lệnh nào trong số này trả về lỗi.

Cũng thế:

ls -la /home/nroach44

Trả về rất nhiều

drw-rw-rw-  1 nroach44 nroach44 4096 --date-- ti:me foldername

Có ai giúp đỡ không?


Cảm ơn tất cả! Bất kỳ hướng dẫn cho các tập tin cần những quyền gì trong thư mục nhà bây giờ? :)
NRoach44

/homenên drwxrwxr-xroot:root/home/user rw rw -- or r-tùy thuộc nếu bạn muốn người dùng khác để đọc các file người dùng của bạn. Thư mục và các tập tin thực thi với x. Thư mục bên trong tương tự usersẽ không thành vấn đề nếu bạn có nhóm = user (nroach44: nroach44) như bạn dường như có (tôi sẽ chỉ cấp quyền 0 (---) cho người khác).
nguyệt quế

Câu trả lời:


14
chmod -R 666 /home/nroach44

hoặc là

chmod -R 644 /home/nroach44

Điều này sẽ làm cho tất cả các tập tin trên thư mục nhà của bạn không thể thực thi. Đó không phải là một ý tưởng tốt;)

Tôi không biết làm thế nào để dọn dẹp mớ hỗn độn này, như một cách giải quyết nhanh chóng mà bạn có thể cố gắng thực hiện như root:

chmod -R 755 /home/nroach44

Lệnh này sẽ cấp quyền thực thi cho tất cả các tệp trên thư mục nhà của bạn. Nó sẽ giải quyết vấn đề trước mắt của bạn, nhưng nó có thể là một cơn ác mộng an ninh.

Giải pháp tốt nhất là mở một tài khoản người dùng khác và chuyển từng tệp và cài đặt từng tệp.


6
Tôi không biết rằng các thư mục cần x quyền để mở. Cảm ơn bạn!
NRoach44

5

Các thư mục cần phải thiết lập bit thực thi để cho phép bạn truy cập vào thư mục. Plain 666là sai, ngay cả khi bạn đang chạy root. Nó cung cấp cho tất cả mọi người quyền viết.

Để làm cho các tệp an toàn hơn, hãy chạy:

chmod -R 640 /home/nroach44

Để làm cho các thư mục giảm xuống một lần nữa, hãy chạy:

find /home/nroach44 -type d -exec chmod 750 \;

Lưu ý: Tôi đã chọn cho xx0 vì một số tệp có thể nhạy cảm và không được người khác đọc. Để được lưu, hãy xóa các quyền đọc / ghi / thực thi cho thế giới.


Tôi chỉ mới 666 để kiểm tra xem nó có hoạt động hay không :)
NRoach44

4

Khi bạn có đủ quyền trên ~, bạn cần /homecó quyền x cho người khác ( sudo chmod +rx /home) và kiểm tra xem các quyền đó có ổn trên /home/nroach44/.bashrctệp không.

Một điểm khác, các thư mục nên có quyền x để cho phép nhập vào chúng để khắc phục tất cả, bạn cần chạy sudo chmod -R +X /home/nroach44.


Biết các quyền thực thi là cần thiết để nhập các thư mục sẽ rất tốt để biết trước đó, vì vậy cảm ơn!
NRoach44

Tôi không biết về vốn X+1
Lekensteyn

vốn Xrất hữu ích và tôi cũng rất vui khi khám phá ra nó ... sau một thời gian dài sử dụng find !!
nguyệt quế

1

Điều này là do bạn đã làm rối tung quyền của tất cả các tệp trong thư mục HOME của bạn. Xin hãy cẩn thận trong khi chơi với quyền truy cập tệp, sử dụng chmod và chown rất cẩn thận hoặc bạn có thể kết thúc với một mớ hỗn độn.

bash: ~/.bashrc : Permission denied

Tôi nghĩ rằng bạn đã thay đổi quyền của tất cả các tệp trong thư mục chính của bạn, vì vậy quyền của bashrc cũng bị thay đổi.

Các quyền mặc định của tập lệnh ~ / .bashrc là

-rw-r--r-- 1 user1 user1  3353 2012-01-09 12:05 .bashrc

Để giải thích nó, bạn nên có cả quyền đọc và ghi trên tệp, những người dùng khác của nhóm người dùng sẽ có thể đọc nó và tất cả những người khác cũng có thể đọc nó.

Vì vậy, bây giờ thay đổi quyền của tập lệnh bashrc bằng chmod thành 644

chmod 644 ~/.bashrc

nếu các lệnh trên cho phép bị từ chối. sau đó

chạy chown đầu tiên là sudo

sudo chown user1:usergrp ~/.bashrc

thay thế user1 bằng tên người dùng và usergrp bằng nhóm người dùng mặc định của bạn.

Bây giờ lại làm

chmod 644 ~/.bashrc

bây giờ bạn sẽ có quyền cho tập lệnh basrc, bây giờ hãy thử đăng nhập và kiểm tra xem bạn có gặp phải lỗi nào khác không :)


0

Các thư mục cần x bit set (đối với thư mục bit được xem là bit tìm kiếm) để mở. Vì vậy, tôi sử dụng cây để tôi chỉ có thể nhận được bộ thư mục và tránh cơn ác mộng có tất cả các tệp được đặt làm tệp thực thi (tùy chọn cho cây là -d List directories only.):

sudo tree -faid /home/nroach44 | xargs -L1 -I{} sudo chmod 755  "{}"

Cảnh báo!!! bạn nên cân nhắc điều này:

  • sử dụng chmod hoặc chown đệ quy trên /thư mục gốc hoặc thư mục hệ thống sẽ phá hủy hệ điều hành của bạn (thực sự mọi thứ đệ quy trên /thư mục hoặc thư mục hệ thống đều nguy hiểm)

  • Đây không phải là một thực tiễn bảo mật tốt để đặt hàng loạt quyền như thế

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.