Một số ứng dụng Ubuntu 13.04 không thể truy cập các tệp trên các hệ thống được gắn MTP. Tại sao?


14

Ubuntu 13.04 đi kèm với hỗ trợ MTP để truy cập các tệp trên các thiết bị Android mới hơn. Nexus 10 của tôi hoạt động tốt: sau khi cắm, tôi có thể truy cập các tệp N10 bằng Nautilus và tôi có thể sao chép từ và vào thiết bị. Evince sẽ mở các tệp PDF ngay từ thiết bị, nhưng một số ứng dụng không thể mở tệp trực tiếp từ thiết bị như gedit hoặc libreoffice. Gedit nói một cái gì đó như:

Cannot open file mtp://[usb:001,009]/65537/5823/5824

Tôi đoán MTP được tích hợp ở cấp gvfs, vì vậy không phải tất cả các ứng dụng hỗ trợ gvfs đều có thể truy cập thiết bị MTP? Tại sao lại thuyết phục nhưng không được gedit?

Tôi biết rằng MTP có thể được gắn với cầu chì, nhưng sẽ rất tuyệt nếu nó hoạt động với các ứng dụng thông thường từ Nautilus giống như sftp: // hoặc smb: //.


Tôi gặp vấn đề này khi sử dụng máy ảo vmware. Có thể liên quan đến độ trễ trên đường truyền qua USB hoặc trình bày dưới dạng nhiều thiết bị / thiết bị con và không hoàn toàn được chuyển qua đầu cơ thuần túy
RobotHumans

Câu trả lời:


29

Đặc tả MTP không hỗ trợ các thao tác mở / đọc / ghi / đóng cơ bản được yêu cầu để thực hiện truy cập tệp thông thường trên Linux - nó chỉ cung cấp tải lên / tải xuống cho các tệp và đó là những gì phụ trợ MTP thực hiện.

Nautilus sẽ sao chép các tệp tốt, nhưng ngay khi bạn cố gắng sử dụng một ứng dụng không giải thích rõ ràng cho tập hợp hoạt động bị hạn chế, bạn sẽ gặp lỗi. evince là một ví dụ về một ứng dụng hỗ trợ nó (nó sao chép tệp vào / tmp sau đó mở nó).

Vì vậy, đó là những gì đang diễn ra trong 13.04.

Bây giờ, đó là trường hợp Google triển khai một bộ tiện ích mở rộng MTP trong Android cung cấp mở / đọc / ghi / đóng và có thể cung cấp quyền truy cập tệp bình thường với những tiện ích này. Tôi đã thực hiện công việc này trong nhánh phát triển gvfs nhưng nó đã bỏ lỡ cửa sổ phát hành 1.16, vì vậy nó sẽ không xuất hiện sớm nhất trong Ubuntu cho đến ngày 13.10. 14.04 và vẫn không có

Trong thời gian chờ đợi, bạn có thể sử dụng ppa của tôi để cài đặt các bản dựng nơi tôi đã đưa vào công việc này.

https://launchpad.net/~langdalepl/+archive/gvfs-mtp

Cuối cùng, điều quan trọng cần lưu ý là các tiện ích mở rộng này chỉ tồn tại trong ngăn xếp MTP của Google. Bạn có Nexus 10, do đó, nó sẽ hoạt động như Android chạy - nhưng ai đó sử dụng thiết bị Samsung hoặc thiết bị của các nhà sản xuất khác sẽ không có các tiện ích mở rộng này và có thể không hỗ trợ I / O tệp bình thường.


Tuy nhiên, có vẻ như Windows 7 có những khả năng bổ sung hoặc cách giải quyết đó và nó khá hữu ích. Sẽ thật tuyệt nếu những "tính năng bổ sung" đó cũng được triển khai trong Ubuntu
Álvaro

1
Như một giải pháp thay thế, thao tác đọc chỉ có thể là tải xuống / tmp và đọc từ đó, Nautilus có thể tự động thực hiện để cho người dùng có ấn tượng về thao tác đọc. Và với những điều tương tự, bạn có thể phát hành ghi (tải xuống / tmp, sửa đổi và tải lên thiết bị)
Álvaro

2
Tôi chưa bao giờ thấy thoải mái với hành vi tải xuống / tải lên ngầm định - đó có thể là một bất ngờ rất khó chịu cho người dùng và tôi không muốn giới thiệu nó. Hãy xem xét điều gì xảy ra nếu bạn có một bộ phim nhiều gigabyte trên đó mà bạn muốn xem, vì vậy bạn nhấp đúp vào nó và sau đó nó đột nhiên bắt đầu tải xuống / tmp của bạn, đây thực sự là một tmpfs ... Hoặc bạn muốn chỉnh sửa một số tài liệu và bạn mở, thực hiện một số công việc và sau đó lưu, nhưng máy tính của bạn gặp sự cố trước khi fs có thể tải lại và tệp trung gian được lưu trữ trong / tmp, đây là một tmpfs vì vậy nó bị mất khi bạn khởi động lại. Không thân thiện!
langdalepl

@ Álvaro Chỉ cần FYI, thông số kỹ thuật MTP được phát triển bởi Microsoft. Vì vậy, nhiều khả năng của MTP dường như hoạt động tốt với một Thiết bị Window nhưng không nhiều ở những nơi khác.
RomaH

0

Tôi gặp sự cố khi lấy ảnh từ Fujifilm FinePix S1500. Thông báo lỗi:

Operation not supported by backend

Tôi đã giải quyết nó bằng cách ghép camera và sao chép các tập tin từ dòng lệnh bằng gphoto2.


1
Sẽ thật tuyệt nếu bạn có thể giải thích chính xác cách bạn nên sử dụng lệnh như thế nàogphoto2
Amith KK
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.