জিভিএফএসের মাধ্যমে মাউন্ট করা এমটিপি ডিভাইসে ফাইল অপারেশন করতে অক্ষম: "অপারেশন সমর্থিত নয়"


13

আমি লিনাক্স মিন্ট 17.1 64-বিট চালিয়ে যাচ্ছি (উবুন্টু 14.04 এর উপর ভিত্তি করে)। লিনাক্স মিন্ট 14 / উবুন্টু 12.10 থেকে আপগ্রেড করার পরে, আমি আমার ওয়াকম্যানের সাথে সংগীত সিঙ্ক করতে ব্যবহৃত পাইথন স্ক্রিপ্টটি কাজ করা বন্ধ করে দিয়েছে।

পূর্বে, যখন আমি আমার ওয়াকম্যানটি আরোহণ করতাম, এটি স্বয়ংক্রিয়ভাবে পথ হিসাবে প্রদর্শিত /run/user/1000/gvfs/WALKMAN/Storage Mediaহত এবং অন্য যে কোনও ফাইল সিস্টেমের মতো কাজ করতে পারে: আমি এতে ট্র্যাকগুলি অনুলিপি করতে পারি, এটি থেকে ট্র্যাকগুলি মুছতে পারি ইত্যাদি পাইথনের মাধ্যমে through যাইহোক, আমি মনে করতে পারি না এটি হওয়ার জন্য আমাকে কোনও পরিবর্তন করতে হয়েছিল কিনা।

লিনাক্স মিন্ট 17 (এবং এখন 17.1) এ আপগ্রেড করার পরে, যখন আমি ওয়াকম্যানকে মাউন্ট করব, এটি পথ হিসাবে প্রদর্শিত হবে /run/user/1000/gvfs/mtp:host=%5Busb%3A002%2C007%5D/Storage Media। তদুপরি, আমি যখন একই ফাইল অপারেশন চালানোর চেষ্টা করি তখন সেগুলি এখন ব্যর্থ হয়। আমি আবিষ্কার করেছি যে এটি পাইথনের মাধ্যমেই হয় না, কমান্ড লাইনেও ঘটে happens উদাহরণ স্বরূপ:

david@MILTON:~$ cp '/data/Music/10SecsWhiteNoise.mp3' '/run/user/1000/gvfs/mtp:host=%5Busb%3A002%2C006%5D/Storage Media/MUSIC'
cp: cannot create regular file ‘/run/user/1000/gvfs/mtp:host=%5Busb%3A002%2C006%5D/Storage Media/MUSIC/10SecsWhiteNoise.mp3’: Operation not supported

আমি এই সমস্যা সম্পর্কে কিছু গবেষণা করেছি, তবে সর্বাধিক সাধারণ ব্যাখ্যা বলে মনে হচ্ছে এটি আগে এই পিপিএ দ্বারা সমাধান করা হয়েছিল: https://launchpad.net/~langdalepl/+archive/ubuntu/gvfs-mtp

তবে এখন, ১৩.১০ সাল থেকে উবুন্টু সংস্করণগুলিতে এই সমস্ত পরিবর্তন রয়েছে তাই এটি আর দরকার নেই। তাহলে আমি এখনও এই ত্রুটিগুলি কেন করছি? আমি এখনও কমান্ড লাইনের মাধ্যমে নয়, গ্রাফিকাল ফাইল ম্যানেজারের মাধ্যমে (কজা, লিনাক্স মিন্টে) আমার ওয়াকম্যানের মধ্যে ফাইল অপারেশন করতে সক্ষম হয়েছি।


আমার মনে হয় এটা আপনাকে সহায়তা করতে পারে: github.com/hanwen/go-mtpfs
PersianGulf

আমার ডিভাইস এমটিপি হিসাবে ইতিমধ্যে মাউন্ট ... এটি সমস্যা নয়।
ডেভিড পিচফোর্ড

উত্তর:


15

একটি অনুমান: আপনি এখন আপনার ওয়াকম্যান অ্যাক্সেসের জন্য এমটিপি ব্যবহার করছেন এবং এমটিপি সাফল্য অর্জন করছেন।

বিস্তারিত

Operation not supportedত্রুটি ইঙ্গিত করতে পারে যে আপনার Walkman একটি MTP এর বাস্তবায়ন যে সমর্থন করে না "সরাসরি" অ্যাক্সেস ব্যবহার করে। Http://intr.overt.org/blog/?p=174 অনুসারে এই ধরণের সরাসরি অ্যাক্সেস একটি অ্যান্ড্রয়েড-নির্দিষ্ট এক্সটেনশন, তাই সম্ভবত এটি আপনার ওয়াকম্যান দ্বারা সমর্থিত নয়।

ফলস্বরূপ, আপনি কেবল এমটিপি ব্যবহার করে আপনার ওয়াকম্যানের ফাইলগুলিতে অ্যাক্সেসের জন্য কয়েকটি নির্বাচিত উপায় ব্যবহার করতে পারেন: আমি অনুমান করি যে কোনও একক ক্রিয়ায় ফাইলগুলি পড়তে বা লিখতে পারে এমন সমস্ত কিছুই সমর্থনযোগ্য, যখন কোনও এমপিটি প্রয়োগের জন্য কোনও ফাইলের নির্বাচিত অংশগুলিতে অ্যাক্সেস সমর্থন করা যায় না while । এবং এটি দেখা যায় যে cpএবং পাইথন সর্বদা উত্তরোত্তর অ্যাক্সেস পদ্ধতি ব্যবহার করে এবং তাই ব্যর্থ হয়।

সম্ভাব্য ওয়ার্কআরাউন্ড

যাইহোক, যদি আপনি শুধু প্রতিস্থাপন করতে সক্ষম হতে পারেন cpদ্বারা gvfs-copy। আমার পরীক্ষাগুলিতে একটি স্যামসাং অ্যান্ড্রয়েড ফোন (যার সাথে একটি পঙ্গু এমটিপি প্রয়োগও রয়েছে) ফোনগুলিতে gvfs-copyঅনুলিপি করতে সক্ষম হয়েছিল যেখানে cpব্যর্থ হয়েছিল।

পটভূমি

এই ডিভাইস নির্ভর এমটিপি সীমাবদ্ধতাগুলি সম্পর্কে আমি খুব বেশি তথ্য খুঁজে পাইনি; এখানে কিছু স্নিপেট রয়েছে যেখানে পরিস্থিতিটি কিছুটা ব্যাখ্যা করা হয়েছে:

/ubuntu//a/284831 https://bugs.launchpad.net/ubuntu/+source/gvfs/+bug/1389001/comments/2 https://bugs.launchpad.net/ubuntu/+source / gvfs / + + বাগ / 1157583 / মন্তব্য / 1

কেন আগে এটি কাজ করে?

কেন আপনার Walkman সঙ্গে প্রবেশযোগ্য ছিল হিসাবে cpমিন্ট 14 কিন্তু মিন্ট 17, এই একটি অভ্যন্তরীণ থেকে সুইচ দ্বারা সৃষ্ট করা যেতে পারে PTP করার MTP এর এক্সেস সিস্টেম হিসাবে। উবুন্টু 12.04 থেকে 14.04 এ স্যুইচ করার সময় স্যামসাং ডিভাইসের জন্য কমপক্ষে এটি আমি লক্ষ্য করেছি। ফোনটি পিটিপি এবং এমটিপি উভয়কেই সমর্থন করে তবে উবুন্টু 12.04 দৃশ্যত কেবলমাত্র পিটিপি সমর্থন করে; সুতরাং যে কি ব্যবহৃত হয়েছিল। যেহেতু নতুন উবুন্টু সংস্করণটি এমটিপি-র জন্য অন্তর্নির্মিত সমর্থন করেছে, এখন এটি পরিবর্তে ব্যবহৃত হয়।

আসলে এটি এমনও হতে পারে যে আপনার ওয়াকম্যানকে আগে ইউএসবি মাস স্টোরেজ ডিভাইস হিসাবে অ্যাক্সেস করা হয়েছিল , এটিই ইউএসবি হার্ড ডিস্ক এবং ফ্ল্যাশ ড্রাইভ ব্যবহার করে। সম্ভবত কোনও কারণে লিনাক্স (বা আপনার ওয়াকম্যান) স্থির করেছে যে এমটিপি গণ স্টোরেজ অ্যাক্সেসের চেয়ে বেশি পছন্দযোগ্য।

আপনি ওয়াকম্যানের জন্য ইউআরএল (নটিলাসে, ওয়াকম্যান ফোল্ডারে যান, Ctrl + L টিপুন এবং ঠিকানা বারটি দেখুন) ব্যবহার করে অ্যাক্সেসের পদ্ধতিটি দেখতে পাচ্ছেন: এমটিপি-র জন্য উদাহরণস্বরূপ ডিভাইসটি পাওয়া গেছে। mtp://[usb:001,004]/পিটিপি-র ক্ষেত্রে এটির মতো কিছু gphoto2://[usb:001,004]/store_00010001। ভর স্টোরেজ অ্যাক্সেসের জন্য ইউআরএল ঠিক একটি সাধারণ পাথ /media/WALKMAN

আমি জানি না যে পিটিপি বা মাস স্টোরেজের চেয়ে এমটিপির কোনও আসল সুবিধা রয়েছে বা পিটিপি বা গণ সঞ্চয়স্থানে ফিরে যাওয়া সম্ভব কিনা। লিনাক্সের অধীনে, এমটিপি এবং পিটিপি উভয় প্রয়োগেরই নিজস্ব ব্যাগের সেট রয়েছে, সুতরাং এটি আপনার ব্যবহারের ক্ষেত্রে নির্ভর করবে যেটি আরও ভাল। আফাইক গণ স্টোরেজটি ব্যবহারকারীর জন্য সর্বাধিক পছন্দসই বিকল্প তবে ফোনে ডিভাইস সমর্থনটি হ্রাস পাচ্ছে।


2
আমাকে জিভিএফএস-কপির সাথে পরিচয় করিয়ে দেওয়ার জন্য ধন্যবাদ। যাইহোক, এটি একটি বিশাল গুঁড়ো এটি ডিরেক্টরিগুলি পুনরাবৃত্তভাবে অনুলিপি করে না। এটির পুনরাবৃত্তি করতে পারি এমন আরও কি আছে?
টাক্সফোরলাইফ

1
এছাড়াও gvfs-copyআমার জন্য স্বাভাবিকের চেয়ে ভাল কাজ করে না cp। এবং আমার ক্ষেত্রে, একই ফোনটি অতীতে এমটিপি-র মাধ্যমে কাজ করেছিল। কিছু ফোন কাজ করে এবং কিছু এখন না। সমস্ত এমটিপি জুড়ে (আমি ফোনের মেনুতে এমটিপি সংযোগ বিকল্পটি নির্বাচন করি)। আপডেট: সমস্যাটি খুঁজে পেয়েছে। কার্ড থেকে ফোন স্টোরেজে অনুলিপি করার চেষ্টা করছিল। আমাকে প্রথমে স্থানীয় ফাইল সিস্টেমে অনুলিপি করতে হয়েছিল (উদাঃ / টিএমপি) তারপরে ফোন স্টোরেজে অনুলিপি করতে হবে। এমটিপি-> এমটিপি সরাসরি কপিটি (এখনও) কাজ করে না বলে মনে হয়।
akostadinov

জিভিএফএস-অনুলিপি বা জিভিএফএস-মুভিড উভয়ই আমার পক্ষে কাজ করেনি। Caja 1.8.2 ব্যবহার করে, আমি গ্রাফিক ইন্টারফেস ব্যবহার করে সেগুলি সরাতে সক্ষম হয়েছি এবং ফাইলগুলি মুছতে সক্ষম হয়েছি।
জুলিয়েন লামারচে

2

আমার সেল ফোনটি অ্যাক্সেস করতে আমাকে আমার লিনাক্স মিন্টে 17.1 মেটে সিন্যাপটিক প্যাকেজ ম্যানেজারের মাধ্যমে এমটিপি-সার্ভার ইনস্টল করতে হয়েছিল। আমার পূর্ববর্তী লিনাক্স মিন্ট 17 সাতে এমটিপি-সার্ভার ইনস্টল করার দরকার নেই, ইউএসবি পোর্টের মাধ্যমে সংযোগ করার পরে আমার সেল ফোনটি স্বয়ংক্রিয়ভাবে স্বীকৃত হয়েছিল। সম্ভবত এই তথ্য সাহায্য করবে।


আপনি কি কমান্ড লাইনের মাধ্যমে বোঝাতে চান? আমি যেমন বলেছি, আমি এখনও এটি জিআইআই ফাইল ম্যানেজারের মাধ্যমে অ্যাক্সেস করতে পারি।
ডেভিড পিচফোর্ড

কাজা আমার প্রয়োজনের জবাব দেয়, তাই আমি আপনাকে কমান্ড লাইনে সাহায্য করতে পারি না।
স্কট

ধন্যবাদ স্কট আপনার উত্তর আমাকে এই ত্রুটি বার্তাটি সমাধান করতে সহায়তা করেছে: Kon 'mtp://[usb:003,029]/' niet weergeven. Fout: The name :1.1813 was not provided by any .service files Kies een andere weergavemethode en probeer het opnieuw.এবং আমার অ্যাড্রয়েড ডিভাইসটি আমার পুদিনা 17 ইনস্টলেশনটিতে এমটিপির মাধ্যমে সংযুক্ত হয়নি। সম্ভবত 17.1 আপগ্রেডের পরে। apt-get install mtp-serverআমার সমস্যা সমাধান এটি এই সমস্যাটি সহ অন্যান্য অনুসন্ধানকারীদের ক্ষেত্রে এটি যেমন আমাকে সহায়তা করেছিল তেমন তাদের সহায়তা করতে পারে।

2

আমি এমবিপি মোডে সংযুক্ত উবুন্টু 16.04 এবং স্যামসং গ্যালাক্সি এসআইআইআইতে এই খুব সমস্যার মধ্যে পড়েছি।

অলিভারের পরামর্শে জিভিএফএস-অনুলিপি ব্যবহার করার জন্য, আমার এনএএস থেকে সরাসরি ফোনে অনুলিপি করা কার্যকর হয় না: (নটিলাসও করেনি)। জিভিএফএস-অনুলিপিতে সম্ভাব্য বাগের জন্য এটি একটি কার্য-পর্যায়।

gvfs-copy '/run/user/1000/gvfs/smb-share:server=n2100,share=public/Music/The Story of Funk-1.mp2' '/run/user/1000/gvfs/mtp:host=%5Busb%3A001%2C005%5D/Card/Music/Radio/'
Error copying file /run/user/1000/gvfs/smb-share:server=n2100,share=public/Music/The Story of Funk-1.mp2: Operation unsupported

ম্যানপেজ দ্বারা প্রস্তাবিত বিকল্প পথ বিন্যাসটিও নয়:

gvfs-copy 'smb://n2100/public/Music/The Story of Funk-1.mp2' 'mtp://[usb:001,005]/Card/Music/Radio'
Error copying file smb://n2100/public/Music/The Story of Funk-1.mp2: Operation unsupported

প্রথমে স্থানীয় ফোল্ডারে ফাইলটি অনুলিপি করা কাজ করেছে। {ধন্যবাদ আকোস্টাডিনভ} (এবং তাই নটিলাসও করেছেন)।

gvfs-copy '/home/nigel/The Story of Funk-1.mp2' 'mtp://[usb:001,005]/Card/Music/Radio'

1

ডেবিয়ান জেসিতে, gvfs-copyপ্যাকেজ থেকে gvfs-binআমার জন্য কাজ করে।

$ dpkg -S $(which gvfs-copy)
gvfs-bin: /usr/bin/gvfs-copy
$ dpkg -l gvfs-bin |tail -1
ii  gvfs-bin       1.22.2-1     amd64        userspace virtual filesystem - binaries

0

আপনি আপনার ডিভাইসে সিঙ্ক করতে rsync ব্যবহার করার চেষ্টা করতে পারেন, যদিও এমটিপি স্থানান্তরের মাধ্যমে আপনি সাধারণত প্রতিটি ফাইলের জন্য সময় এবং তারিখ স্ট্যাম্প সেট করতে পারবেন না। স্থানান্তরগুলি আরও দ্রুত করার জন্য, আপনাকে আরএসইএনসি-র জন্য - সাইজ-শুধুমাত্র বিকল্পটি ব্যবহার করা উচিত - -t বিকল্পটি নয়। আমি এমটিপি ডিরেক্টরিতে ডিরেক্টরি পরিবর্তন করা সবচেয়ে সহজ বলে মনে করি, যেমন / রান / ইউজার / 1000 / জিভিএফএস / এমটিপি: হোস্ট = ব্লাহব্লাহ / ব্লাহ / ব্লাহ, তারপরে চালান:

rsync -n -vlr --size-only --delete /source/of/files/ ./

-N বিকল্পটি একটি শুকনো রান সঞ্চালন করা হয়। আপনি ফলাফলের সাথে সন্তুষ্ট হলে কেবল এই বিকল্পটি মুছুন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.