Quyền sở hữu tập tin bị ảnh hưởng trên các hệ thống khác nhau như thế nào?


10

Theo tôi hiểu các hệ thống tệp Unix, mọi tệp trên hệ thống unix phải thuộc về một nhóm và người dùng của hệ thống đã nói. Một tệp không thể thuộc về một nhóm hoặc người dùng không tồn tại trên hệ thống.

Từ giả định đó, có một vài câu hỏi xuất hiện trong đầu. Điều gì xảy ra với các thuộc tính nhóm và người dùng khi phương tiện được truyền giữa các máy tính, có thể thông qua ổ đĩa flash, CDROM hoặc chia sẻ mạng. Tập tin thuộc về ai trong hệ thống mới?

Bạn có thể giới hạn dữ liệu chỉ hoạt động trên hệ thống của bạn? (Không nói về mã hóa ở đây, chỉ là những điều cơ bản.)

Ngoài ra, khi bạn chuyển dữ liệu giữa hai máy tính, có nhiều cách để đảm bảo rằng các thuộc tính nhóm và người dùng vẫn nguyên vẹn (những gì thuộc về root sẽ thuộc về root trên hệ thống mới và giống với người dùng thông thường).


vấn đề ngữ pháp trong câu đầu tiên
tshepang

@thsepang .. bắt tốt, đã sửa
Stefan

Câu trả lời:


6

Trên tất cả các hệ thống tệp unix gốc, quyền sở hữu tệp được lưu trữ dưới dạng ID người dùng và nhóm. Đây cũng là trường hợp cho hoạt động NFS cơ bản (mặc dù có các khả năng khác ít nhất là trong NFSv4) và cho các định dạng lưu trữ unix truyền thống như tar.

Thực tế, một tệp có thể thuộc về người dùng hoặc nhóm không tồn tại. Tệp thuộc về một ID cụ thể, nhưng không có nghĩa vụ rằng ID được liệt kê trong /etc/passwdhoặc cơ sở dữ liệu người dùng hoặc nhóm khác. Ví dụ: nếu bạn lưu trữ cơ sở dữ liệu người dùng của mình trên NIS hoặc LDAP và máy chủ cơ sở dữ liệu tạm thời không thể truy cập, các tệp của người dùng vẫn tồn tại.

Khi bạn mang phương tiện di động từ hệ thống này sang hệ thống khác, bạn nên đảm bảo rằng ID người dùng và nhóm khớp với nơi có liên quan hoặc bỏ qua quyền sở hữu (ví dụ: bằng cách sử dụng hệ thống tệp không trộn). Root là một trường hợp đặc biệt vì đặc điểm xác định của nó là ID người dùng là 0, ở mọi nơi.

Cách duy nhất để kiểm soát những gì ai đó sở hữu phương tiện vật lý sẽ làm với dữ liệu là sử dụng một phương tiện bảo vệ nội tại, tức là không phụ thuộc vào cách họ truy cập hệ thống và giữ một cái gì đó cho riêng bạn. Bạn có thể sử dụng một phương tiện bảo vệ toán học: mật mã (mã hóa để bảo mật, ký để đảm bảo tính toàn vẹn; bạn giữ mật khẩu cho chính mình) hoặc phương tiện bảo vệ vật lý (ví dụ: hộp bị khóa).


3

Mỗi tệp và thư mục trong hầu hết các hệ thống tệp Unix có một nhóm số và id người dùng được liên kết. Sau đó, có một ánh xạ (/ etc / passwd cho người dùng và / etc / nhóm cho các nhóm) của id thành tên. Khi bạn chuyển một tập tin sang một hệ thống khác, các id số vẫn giữ nguyên. Có thể không có tên với id đó trên hệ thống mới. Vì vậy, nếu bạn làm một ls -l, bạn sẽ thấy số thay vì tên người dùng.

Người dùng root luôn có id người dùng 0, vì vậy nó sẽ giống nhau trên mọi hệ thống. Nếu bạn có ý định di chuyển tệp thường xuyên, bạn nên đảm bảo rằng những người dùng chung giữa hai hệ thống có cùng một id người dùng trên mỗi hệ thống.

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.