Làm thế nào tôi nên sửa chủ sở hữu và quyền trong thư mục người dùng OS X?


9

Vấn đề của tôi là tôi đã nghiêm túc làm hỏng tất cả các chủ sở hữu và quyền trên thư mục người dùng và thư mục con của mình và nó gây ra nhiều vấn đề khi sử dụng nhiều ứng dụng.

Nguyên nhân ban đầu là tôi đã đổi tên người dùng bằng cách làm theo các hướng dẫn hỗ trợ của Apple tại http://support.apple.com/kb/HT1428

Sau khi người dùng mới được thiết lập, sao lưu Mozy sẽ không sao lưu nữa và rất nhiều ứng dụng của tôi không thể tự cập nhật. Ứng dụng thường bắt đầu hoạt động trở lại nếu tôi xóa chương trình vi phạm và cài đặt lại. Tôi nghĩ rằng đó là vì các quyền đã sai và tôi đã tìm thấy một số nơi GetInfo chỉ ra rằng các quyền đó đang tham chiếu người dùng cũ. Đôi khi, hộp thoại chỉ nói "Tìm nạp" cho tên người dùng và không bao giờ cập nhật cho bất cứ điều gì khác.

Tôi đã chạy "quyền sửa chữa" của Onyx và "Quyền sửa chữa" của Tiện ích đĩa mà không có kết quả. Với "Quyền sửa chữa", nó tiếp tục đưa ra một số cảnh báo thông tin về ACL bất ngờ, nhưng thông tin tôi có thể tìm thấy trực tuyến không nghĩ rằng những điều đó sẽ gây ra vấn đề như thế này.

Tôi đã cố gắng chạy đệ quy một số tập lệnh dòng lệnh trên các thư mục người dùng (cả hai đã đăng nhập bằng root và sử dụng sudo). chmod có rất nhiều lỗi về chủ sở hữu của các tập tin bị sai. chown sau đó đã cho tôi lỗi khác (Tôi không thể nhớ chính xác những gì họ). Trong cơn hoảng loạn, tôi nhấp chuột phải vào toàn bộ thư mục người dùng và chọn áp dụng quyền đó cho tất cả trẻ em.

Từ những gì tôi có thể nói, khi tôi làm điều đó, tôi đặt mọi thứ thành Đọc & Viết cho người dùng đó và Chỉ đọc cho " mọi người " và " nhân viên ". Bây giờ, tôi tồi tệ hơn trước. Firefox đã bị sập và thậm chí nó không thể cập nhật cài đặt của chính nó để nó hiển thị "Bạn có muốn khôi phục các tab này" mỗi khi nó khởi chạy, ngay cả sau khi liên tục nói "Bắt đầu phiên mới".

Về cơ bản, mọi thứ trong thư mục người dùng của tôi đều bị hỏng liên quan đến chủ sở hữu và quyền và tôi cần biết họ phải là gì. Ai là chủ sở hữu của các tệp trong mỗi thư mục được cho là (Tải xuống, Ứng dụng, v.v.) và các quyền nên là gì? Với các quyền và chủ sở hữu đó, cách tốt nhất để cài đặt các quyền đó là gì?

Tôi đã thấy một câu hỏi tương tự như vậy khi đặt lại quyền của người dùng về chế độ mặc định của họ nhưng nó chỉ giải quyết các quyền chứ không phải chủ sở hữu, đây đã là một vấn đề.

Tôi không chắc nếu cài đặt lại hệ điều hành qua bản sao mà tôi có ngay bây giờ sẽ khắc phục mọi thứ và tôi sẽ gọi cho bộ phận Hỗ trợ của Apple nếu tôi không thể tìm ra bất cứ điều gì trong vài ngày tới. Cảm ơn vì bất kì sự giúp đỡ.


Bạn đã ít nhất tìm ra làm thế nào điều này xảy ra? Điều gì đặc biệt là sai? ACL, siêu dữ liệu hoặc các quyền UNIX truyền thống. Thật khó để bao quát mọi thứ trong một câu trả lời - đặc biệt là đặt lại các bit bất biến nếu cần.
bmike

Và để khắc phục sự cố dễ dàng hơn, tôi sẽ cài đặt HĐH lên ổ đĩa ngoài, khởi động từ đó và gắn ổ đĩa "có vấn đề" của bạn để bỏ qua các quyền và xem nếu rsync hoặc thứ gì đó sẽ cho phép bạn đưa các tệp vào trạng thái sạch hơn. Sau đó, bạn có thể xóa người dùng và sao chép lại mọi thứ - tôn trọng ACL của người dùng mới và các quyền trên các thư mục trong ~ - cẩn thận để di chuyển nội dung ~/Library/và không phải ~/Librarychính nó.
bmike

Tôi không chắc chắn ngoài những gì tôi đã gõ ở trên. Tôi đánh giá cao các đề xuất nhưng tôi không phải là người sử dụng nhiều năng lượng. Nếu nó phức tạp hơn một vài dòng lệnh hoặc tiện ích, tôi sẽ từ bỏ và khôi phục từ bản sao lưu Time Machine.
cisellis

Kế hoạch tốt. Bạn có thể nhận trợ giúp từ kỹ thuật viên nếu cần sau khi bản sao lưu của bạn được khôi phục - thông thường bạn có thể có một danh sách ngắn những thứ đã lỗi thời hoặc bị thiếu. Tôi rất vui vì bạn có một bản sao lưu :-)
bmike

Câu trả lời:


10

Bước đầu tiên tôi muốn giới thiệu là thử đặt lại quyền truy cập thư mục nhà của bạn với tiện ích Đặt lại Mật khẩu trong Lion Recovery. (Mặc dù tên của tiện ích, bạn thực sự sẽ không đặt lại bất kỳ mật khẩu nào.)

Đặt lại quyền truy cập thư mục nhà bằng tiện ích Đặt lại Mật khẩu sẽ đặt lại cả chủ sở hữu và quyền.

  1. Khởi động lại máy Mac đang giữ + Rđể khởi động vào Lion Recovery, thao tác này sẽ đưa bạn đến màn hình Repair Utility.

  2. Mở Terminal từ menu Tiện ích.

  3. Trong Terminal, nhập resetpasswordđể mở tiện ích Đặt lại Mật khẩu.

  4. Chọn biểu tượng ổ cứng của bạn ở trên cùng, sau đó chọn người dùng của bạn từ menu thả xuống bên dưới. Không đặt lại mật khẩu ở đây.

  5. Ở dưới cùng của cửa sổ, bên dưới "Đặt lại quyền và ACL thư mục chính", nhấp vào nút "Đặt lại". Điều này có thể mất một lúc nếu bạn có nhiều tệp trong thư mục nhà của bạn.

Điều này sẽ giải quyết vấn đề quyền của bạn cho hầu hết các ứng dụng. Tuy nhiên, có thể bạn có một vài ứng dụng đã lưu các tệp có quyền đặc biệt khác với quyền mặc định của người dùng (như tùy chọn hoặc tệp hỗ trợ ứng dụng). Đối với những ứng dụng đó, bạn có thể cần xóa tùy chọn của chúng hoặc cài đặt lại ứng dụng.

Nếu đặt lại quyền truy cập thư mục nhà của bạn không hoạt động, thì bạn có thể cần thử khôi phục từ bản sao lưu hoặc chuyển dữ liệu của mình sang ổ đĩa ngoài.


Tôi đang thử điều này ngay bây giờ. Cho đến nay nó đã chạy được khoảng 12 giờ. Tôi có rất nhiều tập tin: P
cisellis

Điều này đã không làm việc. Các hoạt động đã chạy trong hơn 48 giờ trước khi tôi bỏ cuộc và tắt nó. Nó có thể đã hoàn thành tại một số điểm nhưng không có cách nào để nói.
cisellis

3

Chạy cái này

cd $HOME
{ sudo chflags -R nouchg,nouappnd ~ $TMPDIR.. ; \
sudo chown -R $UID:staff ~ $_ ; \
sudo chmod -R -N ~ $_ ; \
sudo chmod -R 755 ~ $_ ; \
sudo chmod 700 Desktop Documents Downloads Dropbox Library Movies Music Pictures Sites $_ ; \
sudo chmod 777 Public ; \
sudo chmod 733 Public/Drop\ Box ; \
} 2> /dev/null

Chính xác những gì tôi đang tìm kiếm! Hoạt động nếu bạn có thể đăng nhập vào người dùng được đề cập và người dùng đó cũng là quản trị viên. Làm thế nào về việc sửa chữa thư mục nhà của người dùng khác từ một tài khoản khác? (người dùng có vấn đề về quyền có thể hoặc không thể là quản trị viên)
unom

Khởi động lại máy tính bằng tổ hợp phím khởi động Cmd + R để mở Tiện ích sửa chữa, mở Terminal trong menu Tiện ích, sử dụng lệnh resetpassword, chọn đĩa cứng và tài khoản người dùng có liên quan từ menu thả xuống sẽ mở, chọn đặt lại để đặt lại quyền thư mục nhà và ACL của tài khoản người dùng đã chọn.
davidcondrey

2

Các vấn đề của bạn về cơ bản là giống nhau. Không có tiêu chuẩn nào cho quyền đối với các tệp trong thư mục nhà của bạn, tất cả đều phụ thuộc vào việc sử dụng chúng.

Sửa các ứng dụng quyền và tập lệnh và cài đặt hệ điều hành hoàn toàn không ảnh hưởng đến khu vực người dùng ngoại trừ có thể thay đổi quyền trên thư mục chính. Hệ điều hành cài đặt và hầu hết các kịch bản quyền sửa lỗi so sánh các quyền và chủ sở hữu với những gì được yêu cầu cho một cài đặt sạch và điều này không có người dùng bình thường. Nếu họ đã làm tôi sẽ coi đây là một lỗi lớn.

Cách khắc phục là thay đổi chủ sở hữu của các tệp tức là sử dụng chown trên thư mục chính của bạn. Chủ sở hữu phải là tên chủ sở hữu mới.

Không có cách chung nào để lấy lại quyền vì các tệp riêng lẻ phụ thuộc vào ứng dụng đó và tất cả các ứng dụng có thể khác nhau.

Do đó, cách duy nhất là khôi phục từ bản sao lưu trước khi thay đổi - thực hiện thay đổi theo ghi chú của Táo và sau đó chọn tất cả các tệp. Hoặc xem xét từng tệp riêng lẻ và tìm ra những quyền nào cần có - đối với hầu hết các tệp trong thư mục chính của bạn, tệp này nên được đọc / ghi cho chủ sở hữu và không có gì (hoặc chỉ đọc) cho người khác. Thư mục cũng sẽ cần sự cho phép thực thi để chúng có thể được liệt kê. Các ứng dụng sẽ cần các quyền khác.


Tốt Tôi vừa kiểm tra thư mục nhà của tôi và rất nhiều 777thư mục và đã lo lắng.
nyxee

@nyxee thật kỳ lạ Tôi mong đợi 755 hoặc 700
user151019

rất .... tôi sẽ bắt đầu chỉnh sửa từng quyền một cách rất chậm ..
nyxee

1

Chúng tôi đã gặp vấn đề tương tự với một số người dùng. Sau khi thử không thành công mọi thứ liên quan đến sửa lỗi, chúng tôi đã tìm ra giải pháp. Để rõ ràng, người dùng có vấn đề là John Doe và tài khoản người dùng (và thư mục chính) được gọi là "johndoe".

  1. Hãy chắc chắn rằng người dùng root của bạn được kích hoạt. Đăng xuất
  2. Đăng nhập bằng root và tạo bản sao lưu của thư mục nhà johndoe (tạo bản sao lưu của thư mục nhà là tùy chọn, nhưng khuyến khích mạnh mẽ trong trường hợp có sự cố)
  3. Mở tùy chọn hệ thống / người dùng và nhóm
  4. Xóa người dùng johndoe, bạn sẽ được nhắc phải làm gì với thư mục Home của johndoe
  5. QUAN TRỌNG: Chọn KHÔNG xóa thư mục
  6. Truy cập / Người dùng và lưu ý rằng thư mục của johndoe đã được đổi tên thành "john doe (đã xóa)"; đổi tên thư mục nhà trở lại thành "johndoe"
  7. Quay lại Tùy chọn hệ thống / Người dùng & Nhóm và tạo lại tài khoản của John Doe
  8. QUAN TRỌNG: Đảm bảo Tên tài khoản của người dùng là "john doe" hoặc chính xác những gì bạn đã đặt tên thư mục chính trong bước 6
  9. Bạn sẽ được nhắc rằng thư mục chính có tên đó đã tồn tại và nếu bạn muốn sử dụng thư mục chính hiện có
  10. Chọn có
  11. Khởi động lại và đăng nhập với tên John Doe

Tôi chỉ muốn cảm ơn bạn. Điều này hoạt động trong Snow Lion (máy tính của vợ tôi) sau khi nhiều nỗ lực phức tạp hơn đã thất bại, ví dụ như macissues.com/2014/04/11/ mẹo
Steve Samuels

0

Tôi đang thêm một câu trả lời duy nhất để giải quyết mọi thứ. Bất cứ điều gì tôi đã làm với các quyền, nó hoàn toàn bị cấm. Tôi đã thử câu trả lời đầu tiên, khởi động vào Chế độ khôi phục và đặt lại các quyền thông qua phương thức đặt lại mật khẩu, nhưng nó đã chạy trong 48 giờ trước khi tôi giết nó và không có hiệu quả rõ rệt. Tôi đã cố gắng khôi phục từ Time Machine và điều đó thực sự đã nổ tung và không thể khôi phục lại bản sao lưu.

Cuối cùng tôi đã sao lưu mọi thứ bằng tay vào một đĩa bên ngoài, định dạng toàn bộ đĩa và cài đặt lại Lion, cài đặt lại mọi thứ theo cách thủ công và sao chép dữ liệu cá nhân của tôi, như thư viện iPhoto và thư viện iTunes, trở lại thủ công. iPhoto phải sửa chữa thư viện nhưng hoạt động tốt và tôi không gặp vấn đề gì. iTunes không thể thêm bất kỳ bản nhạc nào vào thư viện cho đến khi tôi sử dụng Disk Utility để sửa chữa lại quyền. Vì tôi chỉ sao chép thư mục iTunes Media chứ không phải thư mục mẹ, nên nó dường như sửa mọi thứ.

Đạo đức của câu chuyện: Quên Apple, đừng đổi tên người dùng.


0

Đây hoàn toàn không phải là vấn đề cho phép! Không có gì bạn làm với quyền sẽ sửa nó vì các quyền đã được đặt thành đọc / ghi, điều này được cho phép như có thể.

Đó là một vấn đề chủ sở hữu; hệ thống bị nhầm lẫn về người sở hữu tệp và không thể giải quyết tình trạng khó khăn. Tự thêm mình với tư cách là chủ sở hữu mới, cung cấp cho mình quyền đọc / ghi và sau đó xóa người dùng đang tải xuống vi phạm.


0

Tính năng Thiết lập lại quyền của Disk Utility không ảnh hưởng đến thư mục chính của bạn, vì vậy nó sẽ không hoạt động ở đây. Nhưng nó cũng có một công cụ thiết lập lại quyền ẩn thứ hai cho thư mục chính của bạn. Bạn sử dụng nó từ Terminal, như thế này:

diskutil resetUserPermissions / $(id -u)

(Nguồn: https://support.apple.com/en-us/HT203538 )

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.