Bạn muốn giới thiệu loại Hệ thống tệp nào cho USB Flash Drive?


18

Đây là một vấn đề tôi gặp phải khi sử dụng Ubuntu: Tôi có hai máy tính đã cài đặt Ubuntu (comp1 và comp2). Tôi tạo một tài liệu với Ubuntu trên comp1 và sau đó sao chép tệp vào ổ flash USB được định dạng FAT. Thông qua ổ đĩa flash, tôi dán tài liệu vào comp2. Vấn đề là các quyền của tập tin không bao giờ được bảo toàn trong quá trình chuyển. Tôi giả sử vì FAT không hỗ trợ các quyền.

Có một giải pháp cho điều này? Tôi có nên tiếp tục sử dụng hệ thống tệp FAT cho ổ đĩa flash USB (vì FAT là tốt nhất cho ổ đĩa flash) và chỉ sống với vấn đề quyền này? Hoặc có nên định dạng lại ổ đĩa flash của tôi bằng hệ thống tệp "Thân thiện với Ubuntu" hơn để bảo vệ các quyền không?

Câu trả lời:


11

ext4 là một hệ thống tập tin tạp chí, có nghĩa là nếu thiết bị được rút ra sớm, nó sẽ có nhiều khả năng phục hồi hệ thống tập tin bị hỏng. Phần nhật ký của bài viết chứa thông tin về những gì sắp được thực hiện và nó sẽ bị xóa sau khi hoàn thành thao tác. Nếu nhận thấy rằng có một tạp chí chưa hoàn thành trên thiết bị khi được gắn, hệ thống tập tin có thể được hoàn nguyên về trạng thái trước đó do đó giữ được tính toàn vẹn của nó.

Mặc dù có một số chi phí phụ thêm về không gian liên quan đến việc có một hệ thống tập tin tạp chí trên thanh USB, nhưng thực sự đó là một lựa chọn tốt cho hầu hết mọi thứ.

Rõ ràng, nếu bạn cần một thiết bị cũng có thể cắm vào bất kỳ máy tính nào vào bất cứ lúc nào thì FAT sẽ là cách tốt nhất. Nếu thỉnh thoảng bạn muốn một thiết bị chỉ cần cắm vào một máy tính Windows, thì có thể cài đặt trình điều khiển thiết bị ext2 trong Windows cho phép nó đọc bất kỳ và tất cả các ổ đĩa ext (x). Tất nhiên, vì Windows không biết về quyền và quyền sở hữu của Linux nên những điều này cũng sẽ không được xử lý.


Tôi không thể nói điều đó tốt hơn. +1
Luis Alvarado

Trình điều khiển Ext2 cho Windows cũng có thể đọc các hệ thống tệp Ext4 - đơn giản là nó sẽ bỏ qua nhật ký.
Nathan Osman

8

Bạn có thể thử định dạng ổ đĩa của mình dưới dạng UDF (Định dạng đĩa chung). Đây là định dạng để sử dụng trên CD và DVD. Hầu hết các hệ điều hành hiện đại sẽ có thể đọc và ghi vào nó.

Ngay bây giờ, nhìn vào dữ liệu của tôi trên ổ đĩa được định dạng UDF, các quyền của tệp Linux dường như được giữ nguyên. Cho đến nay, nó đã làm việc cho tôi.

Một điều tốt nữa về ổ đĩa được định dạng UDF là nó có thể lưu trữ một tệp lớn lên tới 16 Exabyte (sửa tôi nếu tôi sai.), Trong khi Fat32 chỉ có thể lưu trữ một tệp có kích thước 4GB trở xuống và kích thước phân vùng MAX cho FAT32 chỉ 2TB.

Nó hoạt động tốt trên Win7 và 8. Đối với các HĐH Windows cũ hơn như XP và 2000, bạn có thể đọc từ ổ đĩa nhưng bạn phải cài đặt một số loại trình điều khiển để ghi vào nó.

Đối với Mac, OS X 10.5 trở lên có khả năng tương thích đầy đủ. Đây là một biểu đồ tương thích đầy đủ. Biểu đồ tương thích UDF

Trên Ubuntu, hãy làm theo các bước sau để định dạng ổ đĩa là UDF.

sudo apt-get update
sudo apt-get install udftools

Được rồi, bây giờ bạn muốn xóa các phân vùng hiện tại trong ổ đĩa đích. Bạn có thể sử dụng một công cụ GUI như Disk Utility hoặc làm như sau.

sudo blkid

Tìm ổ đĩa của bạn trong đầu ra. (chúng trông giống như / dev / sdb hoặc / dev / sdc ) Bây giờ hãy làm như sau, nhưng thay thế ' x ' in / dev / sdx để trỏ đến ổ đĩa mà bạn muốn xóa phân vùng của nó. Làm điều này cho cả hai dòng mã.

sudo dd if=/dev/zero of=/dev/sdx bs=1M count=1
sudo mkudffs -b 512 --media-type=hd --utf8 --lvid=DriveLabel --vid=DriveLabel --fsid=DriveLabel  /dev/sdx

Bạn có thể thay đổi nơi ghi 'DriveLabel' theo ý thích của bạn.

Đó nên là nó.

Trên thực tế, tôi làm điều này hơi khác một chút, nhưng quyết định rằng phương pháp này dễ thực hiện hơn. Tôi đã tham khảo phương pháp này từ trang web này .

Tôi hy vọng giúp đỡ ai đó ngoài kia.


không hoạt động với tôi: lỗi khi gắn ổ đĩa USB
Louis

1
Cảm ơn bạn, cách tiếp cận rất thú vị. Làm việc hoàn hảo cho HĐH máy tính để bàn (đã thử nghiệm cho Ubuntu 15.10+, Windows 7+), nhưng không dành cho thiết bị di động (chắc chắn không hoạt động cho Android lên đến 8.x). Tôi hy vọng tác động ghi ít hơn nhiều đến ổ đĩa flash so với hệ thống tệp nhật ký. Đây là một lớp lót cho việc này:CreateUdfFlash(){ sudo wipefs "$1" ; sudo mkudffs --utf8 -b 512 --media-type=hdd --lvid="$2" --vid="$2" --fsid="$2" "$1" ; } ; CreateUdfFlash "/dev/sdX" "Some Disk Label"
dess

7

Khi sử dụng hệ thống tệp bảo tồn ID người dùng trên ổ USB, bạn có thể gặp phải sự cố do thực tế là ID người dùng được gán theo thứ tự tài khoản người dùng được tạo và hệ thống tệp thực sự lưu ID số của chủ sở hữu tệp chứ không phải tên người dùng. Vì vậy, nếu, giả sử, máy A có alicebobtài khoản, và máy B có bruce,zoealicechiếm sau đó nó có khả năng là khi Alice bản sao tập tin cô đến một ext (2/3/4) ổ đĩa USB -formatted, đi đến máy B và cố gắng để truy cập các tập tin cô sẽ khám phá ra rằng tất cả các tập tin đều thuộc sở hữu brucevà chỉ đọc cho alice.

Tất nhiên, nếu bạn chỉ có một người dùng trên cả hai máy thì điều này sẽ không thành vấn đề.

Chuyển các tệp được đóng gói trong tarkho lưu trữ, như được đề xuất bởi @FSMaxB có thể giải quyết vấn đề này bởi vì khi bạn giải nén tệp lưu trữ, các tệp sẽ được tạo bởi ID người dùng của bạn.


0

Nếu bạn chỉ sử dụng ổ đĩa flash với các hệ thống linux, bạn có thể sử dụng một trong các hệ thống tập tin ext, ví dụ như ext4 nhưng khi sử dụng với các hệ thống khác, FAT là hệ thống tệp tương thích duy nhất.

Một cách sử dụng FAT và bảo vệ quyền (không phải quyền sở hữu) sẽ là sử dụng tar-Archives!


1
giải nén một kho lưu trữ tar như rootbảo tồn quyền sở hữu các tệp, vì vậy chính lưu trữ sẽ lưu trữ ID người dùng. Tuy nhiên, làm điều đó trên các máy khác nhau không thực sự được khuyến khích vì ID người dùng có thể khác nhau.
Serge

Cảm ơn. Tôi nghĩ rằng tôi sẽ thử giải pháp TAR ngay bây giờ. Câu hỏi: có cách nào để tạo TAR và có được tạo trên ổ đĩa flash không? Tôi điều hướng đến thư mục nơi tập tin là tôi muốn TAR và khi tôi chạy lệnh TAR, tệp lưu trữ được tạo trong thư mục đó. Thay vào đó tôi có thể lưu trữ tệp lưu trữ trên Flash Drive không?
Greg

tạo TAR yêu cầu BASH phải không? Hoặc có một cách GUI để làm điều đó?
Greg

Nếu bạn sử dụng một Ubuntu bình thường, bạn có thể nhấp chuột phải vào các tệp hoặc thư mục và nhấp vào "nén" (không biết nó có được gọi như thế này không, vì tôi sử dụng hệ thống của Đức)
FSMaxB

Tôi đã không thử tar từ gui nhưng đã sử dụng tar.bz2 để nén từ gui và bash bằng "tar -xf" để giải nén, điều này bảo vệ quyền của tôi.
FSMaxB

0

Tôi đang sử dụng reiserfs trong nhiều năm trên USB-Stick mà không gặp vấn đề gì. Chà - chỉ là chúng không thể đọc được từ các hệ thống cửa sổ có thể không tệ, nếu chúng bị lạc.

Nếu bạn phân vùng một thanh, để sử dụng các bộ phận với Windows để trao đổi dữ liệu, hãy đảm bảo rằng windowspartition là cái đầu tiên - nếu không nó sẽ không được xác định (ít nhất là đối với XP tôi đã trải nghiệm).

Bạn có thể xây dựng một hệ thống tệp chất béo (không phải chúng bị giới hạn khá nhiều đối với kích thước thanh ngày nay?) Và thêm một tệp lớn nhưng trống vào đó và gắn tệp đó dưới dạng thiết bị lặp trong Ubuntu. Sau đó, bạn sẽ có thể duy trì quyền truy cập tệp của mình và tăng hoặc giảm không gian dành riêng mà không cần phân vùng hoặc định dạng.

Như đã đề cập: Tars, Zips và như vậy là một khả năng khác.

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.