Là người dùng chown: người dùng bị mất + đã tìm thấy có hại không?


10

Gần đây tôi đã tạo ra một hệ thống tập tin được mã hóa ( crypto_LUKS) đóng vai trò là $ HOME cho chỉ một người dùng cụ thể (tức là tôi gắn kết nó với tư cách /home/pduck). Tôi cũng đã thêm một mục thích hợp /etc/security/pam_mount.conf.xmlđể phân vùng được tự động giải mã và gắn kết khi người dùng đăng nhập (và không bị ngắt khi anh ta đăng xuất). Công trình tuyệt vời.

Vì $ HOME là một hệ thống tập tin riêng, người dùng có một lost+foundthư mục thuộc sở hữu của root: root trong đó. Tôi biết rằng xóa thư mục là một ý tưởng tồi nhưng nhiều lệnh (ví dụ find) phàn nàn về việc không có quyền truy cập. Điều đó làm tôi khó chịu.

Vì tò mò tôi đã xóa thư mục và tạo lại nó bằng mklost+found(không có sudo). Bây giờ thư mục được sở hữu bởi pduck: pduck. Điều đó có ổn không hay điều quan trọng là thư mục được sở hữu bởi root: root?


Không phải tất cả các hệ thống tập tin có một thư mục bị mất + tìm thấy. Ext4 không, XFS không, ví dụ.
jornane

Không phải là một câu trả lời, nhưng bạn chỉ có thể tạo một tập lệnh hoặc bí danh để tìm (tốt nhất là với một tên khác) bắt đầu bằng một khoảng 2>/dev/nulllặng làm im lặng những thông báo lỗi đó. Nếu bạn đặt nó ở đầu, thì nó sẽ không can thiệp vào bất kỳ đối số nào bạn muốn vượt qua để tìm trong mỗi lần gọi.
Joe

Câu trả lời:


11

Lời khuyên tốt đi kèm với một lý do để bạn có thể biết khi nào nó trở thành lời khuyên tồi.

Mục đích của lost+foundviệc sở hữu bởi root là để cho dù tập tin đó bị mất, nó không đột nhiên tiếp xúc với mọi người. Tuy nhiên, trong trường hợp này, không nên có một tệp trong toàn bộ hệ thống tệp * không thuộc sở hữu của pduck; do đó, không có nhược điểm nào khi lost+foundkhông được sở hữu bởi pduck.

* chặn các tình huống kỳ lạ như bắt cóc suđể root và chạy ứng dụng X. Nhưng nếu pduck có thể sử dụng sudohoặc suhơn là chúng ta không nói gì vì pduck có thể phá vỡ bảo mật hệ thống hoàn toàn.


6

lost+found là một thư mục hệ thống và tôi tránh làm xáo trộn quyền sở hữu và quyền của các thư mục và tệp hệ thống.

Có các thư mục khác (và tệp), sẽ findkhiếu nại, trừ khi tôi nâng cao quyền của dòng lệnh, vì vậy tôi khuyên bạn nên sử dụng

sudo find ...

và để lại lost+foundnhư nó {là / nên là}.


2
Vâng, tôi nghĩ vậy, nhưng OTOH có mklost+foundlệnh đó để tạo ra nó và nó tạo ra nó với quyền sở hữu của tôi . Có lẽ đó chỉ là một lệnh được viết một cách khủng khiếp mà không kiểm tra $UID!=0;-) Ngoài ra, tôi không thích ý tưởng bị ép buộc (ít nhiều) sử dụng sudotrong $ HOME của chính mình.
PerlDuck

lost+foundđã rất cũ, tôi nghĩ từ những ngày đầu UNIX, và tôi không thực sự biết khi nào nó được sử dụng ngày nay. Nhưng tôi nghĩ rằng đó là một chính sách chung tốt để tránh giả mạo quyền sở hữu và quyền của các thư mục và tệp hệ thống (trừ khi bạn thực sự biết những gì có thể xảy ra đằng sau hiện trường).
sudodus

5
Không fsckđặt các tệp trong đó khi nó gặp các tệp "bị mất"? Ý tưởng là fsckđã có một nơi để đặt các tệp vào (thay vì tạo tệp đầu tiên). Lưu ý rằng lost+foundchiếm nhiều dung lượng (16384 byte) so với thư mục trống thông thường (4096 byte).
PerlDuck

Vâng, ít nhất đó là mục đích ban đầu (tương tự như những gì chkdskđã làm với các tệp bị mất trong MSDOS), nhưng tôi hiếm khi thấy bất kỳ dữ liệu nào trong linux. Có thể ghi nhật ký có thể khôi phục các tệp về nơi trước đây, vì vậy chúng không cần phải đi đến lost+found. - Nhân tiện, tôi có một lost+foundthư mục trong /home, nhưng không có trong thư mục nhà của tôi /home/sudodus, vì vậy nó không làm phiền tôi ở đó.
sudodus

1
Tôi đồng ý. Và trong /hometôi có một cái khác l+f(cũng không làm phiền tôi) bởi vì /home/home/pducklà các phân vùng riêng biệt trên máy của tôi. Cái sau được mã hóa, cái trước thì không. Tuy nhiên, khi điều đó làm tôi khó chịu quá nhiều, tôi có thể gắn $ HOME của mình ở một nơi khác và gắn kết nó với $ HOME thực tế của tôi (ví dụ như tôi đã nêu ở đây ) để loại bỏ hoàn toàn l+ftrong HOME HOME của tôi. /// Tôi sẽ xóa nhận xét của mình sau vài phút / giờ để tránh cảnh báo "thảo luận mở rộng này chuyển sang trò chuyện" .
PerlDuck

4

Không có gì thực sự kỳ diệu về thư mục bị mất + tìm thấy. Nó chỉ là một thư mục đơn giản giống như bất kỳ thư mục nào khác và chỉ được sử dụng để giữ các tệp / thư mục bị mất được tìm thấy trong một fsck sau sự cố hệ thống hoặc hỏng hệ thống tệp.

Nó được tạo trong mkfs khi hệ thống tệp được tạo và thường trống. Lý do duy nhất cho các quyền mặc định là để tránh các tệp nhạy cảm hiển thị cho người dùng thông thường nếu chúng được tìm thấy và phục hồi trong một fsck. Trong thời kỳ hiện đại, hiếm khi thấy các tập tin bị mất và được đưa vào thư mục đó.

Nếu nó bị xóa, tôi tin rằng fsck sẽ tạo lại nó khi cần nếu có bất kỳ tập tin nào cần được đưa vào đó. Vì đây là hệ thống tệp cho một người dùng và dữ liệu của anh ta mà không cần phải giấu dữ liệu khỏi con mắt tò mò, tôi không thấy lý do nào mà các quyền không thể thay đổi thành, giả sử, 755 để ngăn không cho tìm thấy phàn nàn hoặc thay đổi quyền sở hữu. Có thể fsck có thể thiết lập lại quyền của mình trong quá trình khôi phục, nhưng đó là một sự kiện hiếm gặp trên hệ thống tệp hiện đại trừ khi có lỗi phần cứng nghiêm trọng.

Đối với việc loại bỏ nó, tôi tin rằng tất cả những điều hoang tưởng xung quanh dựa trên thực tế là tốt nhất nên để fsck làm ít nhất có thể để khôi phục dữ liệu, nhưng tôi không nghĩ nó thực sự quan trọng trong thực tế.

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.