Dropbox: ext4 không phải là ext4


21

Cách đây một thời gian, Dropbox đã bắt đầu cảnh báo tôi về việc chỉ hỗ trợ ext4 dưới dạng FS. Là một người dùng BTRFS hạnh phúc, tôi không vui, nhưng đã làm điều này:

dropbox stop
dd if=/dev/zero of=~/dropbox.img bs=1M count=4096
mkfs.ext4 ~/dropbox.img
echo "${HOME}/dropbox.img ${HOME}/Dropbox ext4 rw,async 0 2" | sudo tee -a /etc/fstab
rm -rf ~/Dropbox/*
sudo mount "${HOME}/Dropbox"
sudo chown "${USER}:" "${HOME}/Dropbox"

Mọi thứ đều hoạt động không có lỗi, nhưng Dropbox vẫn nói rằng tôi nên sử dụng ext4 cho thư mục của nó. Tôi đang làm gì sai?


Sản lượng củadf ${HOME}/Dropbox --output=fstype
Ravexina

@Ravexina Loại ext4
val cho biết Phục hồi lại

2
Tôi rất tò mò về tính năng nào trong ext4 mà họ phụ thuộc vào, tính năng này cũng không có trong btrfs.
kasperd

Câu trả lời:


27

Tổng cộng có ba điều mà Dropbox yêu cầu để tiếp tục hoạt động trên Linux và chỉ có một điều được ghi lại đúng cách. Những gì tôi đang tóm tắt ở đây đã làm việc cho Dropbox 59.4.93 trên Ubuntu 18.04.1 (amd64).

Bạn đã xóa rào cản đầu tiên:

  • Hệ thống tập tin cơ sở cần phải ext4, và đặc biệt là không ecryptfs . tức là nếu thư mục nhà của bạn được mã hóa, bạn cần đặt thư mục Dropbox ở một nơi khác, vd. một ext4phân vùng riêng .

Những thứ khác để kiểm tra là:

  • Các ext4hệ thống tập tin cần phải được định dạng với ext_attrtrên. Đây là hành vi mặc định, nhưng bạn có thể xác nhận bằng cách chạydebugfs -R features /dev/sda1 (hoặc bất kỳ tệp thiết bị nào của bạn được gọi - nếu bạn đang sử dụng LVM, nó có thể giống như thế /dev/mapper/computername--vg-partitionname)
  • Các ext4phân vùng cần được gắn với user_xattrbộ tùy chọn (Bạn có thể kiểm tra và thêm tùy chọn trong đĩa GNOME hoặc chỉnh sửa /etc/fstabtrực tiếp)
  • Thư mục đích (hoặc thư mục đồng bộ hóa Dropbox) cần có ít nhất hai cấp độ bên dưới điểm gắn kết, như được mô tả trong bài viết này . Đây rõ ràng là một lỗi đáng giá facepalm.

Khi tôi đã sửa tất cả những thứ này, Dropbox cuối cùng đã cho phép tôi di chuyển thư mục đích và các thông báo lỗi về "hệ thống tệp không được hỗ trợ" biến mất.


3
Theo chủ đề này , có vẻ như user_xattrtùy chọn được đặt theo mặc định trong kernel cho hệ thống tệp ext4 kể từ 2.6.39.
Willie Robert

Điểm lại thứ ba về độ sâu bên dưới điểm gắn kết - Tôi thấy rằng /var/data/dropboxnó không hoạt động khi chọn một vị trí mới bằng ứng dụng khách Dropbox GUI v60.4.107 và /var/data/dropbox/dđã hoạt động khi chọn một vị trí mới thông qua máy khách GUI. /là điểm gắn kết của tôi /dev/sda1là ext4. Và điều này tạo ra /var/data/dropbox/d/Dropboxnhư thư mục đồng bộ
0_o

Cảm ơn bạn đặc biệt cho điểm cuối cùng. Tôi đang sử dụng Dropbox v60.4.107 trên Linux Mint 18.3 64b và gặp sự cố với cài đặt / partiton_for_dropbox như một ngôi nhà Dropbox. Hộp thoại báo lỗi vẫn nói một cái gì đó như "phân vùng không phải là ext4". Điều gì đã làm việc là chọn / partiton_for_dropbox / Dropbox. Vì vậy, yeah, dữ liệu thực sự là tại / partiton_for_dropbox / Dropbox / Dropbox.
rzehan

1
Tất cả bốn yêu cầu được đáp ứng trong trường hợp của tôi. Nhưng Dropbox vẫn phàn nàn. Nó nên là một cái gì đó khác.
djhurio

1
Chỉ cần mở rộng về điều này, để kiểm tra ecryptfs, chạy df -Tvà tìm kiếm một dòng bắt đầu bằng /home/USER/.Private ecryptfs .... Nếu bạn có điều đó, thư mục chính của bạn được mã hóa và bạn sẽ phải di chuyển Dropbox sang một nơi khác. (Tôi đã sử dụng /opt/dropbox/Dropbox, hoạt động.) Thứ hai, mặc dù user_xattrđược đặt theo mặc định, bạn có thể cần thêm từ này defaultsvào /etc/fstab.
MikeTwo

5

Có một giải pháp thay thế cho giải pháp của bạn - kho lưu trữ GitHub có tên là dropbox-filesystem-fix . Điều này làm cho thư mục Dropbox của bạn xuất hiện như thể nó nằm trong hệ thống tệp Ext4 không được mã hóa, bất kể bạn sử dụng hệ thống tệp nào và bạn không phải gắn kết bất cứ thứ gì, bạn chỉ cần chạy Dropbox với thư viện hệ thống tập tin dropbox (LD_PRELOAD).

Bạn sẽ cần lấy mã từ GitHub , biên dịch thư viện ( make) và thay thế mục khởi động Dropbox bằng tập lệnh dropbox_start.py được cung cấp bởi dropbox-filesystem-fix.

Nếu quý vị cần bước hoàn thành hướng dẫn từng, hãy kiểm tra này trang.


4

Tôi đã cố gắng khắc phục điều này bằng cách sử dụng gnome-disksđịnh dạng phân vùng ext4 thay vì sử dụng GParted ban đầu, cũng như đảm bảo thư mục Dropbox được đặt ở độ sâu 2 cấp của điểm gắn kết của phân vùng. Trên Ubuntu 18.04.1 LTS 64 bit với Dropbox v60.4.107.

Cốt truyện đầy đủ:

  1. Để bắt đầu, tôi đã tạo ext4 chuyên dụng của mình với GParted, cũng được sử dụng để thay đổi kích thước phân vùng cũ để có chỗ cho ext4 mới.

  2. Sau đó, tôi đã cố gắng đảm bảo rằng thiết lập của mình hoàn thành mọi thứ được mô tả bởi câu trả lời của Florian , nhưng điều đó không giải quyết được vấn đề của tôi.

  3. Sau nhiều lần thử kết hợp các giải pháp khác nhau, tôi quyết định xóa toàn bộ phân vùng và định dạng lại thành ext4 với trình quản lý đĩa gốc của Ubuntu (chỉ gọi là Đĩa hoặc gnome-disks) dẫn đến Dropbox chấp nhận phân vùng là ext4!

Tôi đã sử dụng dòng sau /etc/fstabđể gắn kết phân vùng:

UUID=ext4_partition_UUID    /media/dropbox  ext4 defaults 0 2

(nơi ext4_partition_UUIDđại diện cho UUID được tìm thấy với ls -l /dev/disk/by-uuid/)

Lưu ý rằng tôi không chỉ định user_xattrtùy chọn ở đây.

Thư mục Dropbox của tôi hiện được đặt tại /media/dropbox/data/Dropbox- nhưng không kiểm tra xem độ sâu 2 có thực sự cần thiết hay không.

Có vẻ như đã xảy ra sự cố khi định dạng phân vùng ext4 bằng GParted thay vì phần mềm gốc - không biết tại sao hoặc sự khác biệt giữa chúng sẽ là gì. Nếu ai biết tôi sẽ rất vui khi tìm hiểu thêm về nó.


Trong thực tế, GParted gọi phần mềm bản địa.
val nói Phục hồi lại

Điều này có thể hữu ích để xem tại sao định dạng cũ không hoạt động:debugfs -R features /dev/sda1
Jonathan

2

Máy tính xách tay cài đặt LubFi 18.10 của tôi bắt đầu phàn nàn về Dropbox một thời gian trước, nhưng mãi đến tuần trước tôi mới thấy rằng nó không có gói attr cài đặt . Khi tôi đã cài đặt xong, Dropbox có vẻ rất vui

Tôi đã xảy ra khi bài viết tại /unix//a/475253 và cố gắng kiểm tra các thuộc tính tệp trong thư mục Dropbox trên máy tính xách tay. Tôi đã ngạc nhiên khi phát hiện ra rằnggetfattr lệnh không có sẵn, điều đó dẫn tôi đến việc cài đặt gói.

Đây có thể là một cách chuyển tiếp cho bạn, hoặc nó có thể là một vấn đề hoàn toàn khác, nhưng tôi hy vọng nó đáng để gắn cờ.


1
attrđược cài đặt.
val nói Phục hồi lại

2

Dropbox đã mang lại hỗ trợ cho ZFS, XFS, Btrfs và eCryptFS

Dropbox đã mang lại hỗ trợ cho ZFS, XFS, Btrfs và eCryptFS trên Linux. Bản cập nhật máy khách Dropbox mang lại sự hỗ trợ cho ZFS và XFS trên các hệ thống Linux 64 bit và eCryptFS và Btrfs trên tất cả các hệ thống Linux.

Liên kết:


Tốt để biết! Tôi cá rằng "hỗ trợ" là thay đổi trong việc kiểm tra mã để tương thích với fs.
val nói Phục hồi lại

0

Kiểm tra xem bạn đang sử dụng ecryptfskhông được hỗ trợ :

ecryptfs không được hỗ trợ, nhưng Dropbox sẽ tiếp tục đồng bộ hóa với các hệ thống tệp được hỗ trợ được mã hóa thông qua mã hóa toàn bộ đĩa (ví dụ LUKS)


2
Bạn thấy đấy, chỉ có ext4 trong dòng fstab ... và tôi gắn kết trên btrfs.
val nói Phục hồi lại

0

Có một lỗi tranh chấp trong Dropbox Linux sẽ không cho phép bạn đặt Dropbox vào một thư mục ngay cả khi gần ecryptfs

Ví dụ, tôi đã có ecryptfs /home/user/Dropbox, và tôi đã chuyển nó đến ext4 /home/user-unencryptedvà nó vẫn thất bại. Tôi đã phải di chuyển nó để ext4 /dropbox/cho nó hoạt động. Tôi đã liên lạc với nhóm hỗ trợ của họ nhưng họ tiếp tục tranh luận với tôi rằng ext4 /home/user-unencryptedC ALNG là tiền điện tử vì cả hai đều bắt đầu với /home/ Có lẽ tôi đã nhầm lẫn về cách thức hoạt động của tiền điện tử nhưng tôi không thấy bất kỳ bằng chứng nào cho thấy mọi thứ ở dưới / nhà / được mã hóa khi tôi chạy công cụ gỡ lỗi hệ thống tập tin.

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.