Nautilus की GUI प्रतिलिपि का उपयोग करने के बजाय फ़ाइल को cp करने के लिए यह आधे से अधिक धीमा क्यों है? (एएफसी प्रोटोकॉल)


9

मेरे पास एक जेलब्रेक आइपॉड टच है, और मेरे पास afc2add पैकेज है। जब मैं इसे अपने ubuntu लैपटॉप में प्लग करता हूं, तो यह मेरे iPod की मीडिया डायरेक्टरी को ऑटोमैटिक कर देता है, साथ ही ऐप फाइल शेयरिंग फोल्डर को भी। जब मैं फ़ाइल को मीडिया फ़ोल्डर में स्थानांतरित करने के लिए Nautilus का उपयोग करता हूं, तो यह लगभग 5MB / s पर बोलता है। हालाँकि, जब मैं ~/.gvfs/Matt's iPodफ़ोल्डर [Nautilus में फ़ाइल को कॉपी करने के लिए एक टर्मिनल का उपयोग करता हूं, तो यह "मैट के iPod" के रूप में दिखाई देता है], मैंने केवल इसे लगभग 2MB / s तक जाने के लिए देखा है।

क्या कोई भी इस बात का कोई सुराग दे सकता है कि क्यों नॉटिलस की GUI कॉपी का उपयोग करने के बजाय फ़ाइल को cp करने के लिए आधे से अधिक धीमी है?

वैसे, मैं बता सकता हूं कि टर्मिनल कॉपी के साथ यह कितनी तेजी से चल रहा है, मेरे पास pv के साथ एक स्क्रिप्ट है [संक्षेप में, यह है: pv $1 > $2], और यह लगभग 1.5MB / s पर जा रहा था। इसलिए मैंने भी cp की कोशिश की, और duहर सेकंड में फाइल के लिए एक लूप सेट किया , और यह हर सेकंड 2 एमबी के करीब कहीं उछल गया।


क्या दोनों मामलों में कुल मिलाकर करीब-करीब बार भी पोस्ट किया जा सकता है?
समरसा

अजीब बात है, मेरा मामला बिल्कुल विपरीत है: Nautilus के साथ नकल करने की तुलना में cp 8x तेज है। मैं आपसे ईर्ष्या करता हूं :)
marcio

जवाबों:


15

नॉटिलस अप्रत्यक्ष की कम परतों से गुजर रहा होगा, जो अंतर के लिए जिम्मेदार हो सकता है।

Nautilus एक देशी gvfs एप्लिकेशन है, इसलिए यह सीधे gvfs के साथ संचार करता है।

इसके विपरीत, cpकर्नेल पर FUSE फ़ाइल सिस्टम के माध्यम से बात की ~/.gvfsजाती है, जो कि इस gvfs-fuse-daemonप्रक्रिया द्वारा संभाला जाता है , जो बदले में gvfs से बात करता है। POSIX एपीआई और gvfs के बीच प्रतिबाधा बेमेल कम कुशल हस्तांतरण के लिए जिम्मेदार हो सकता है।

आप पैकेज gvfs-copyसे कमांड का उपयोग करके कमांड लाइन पर समान प्रदर्शन प्राप्त करने में सक्षम हो सकते हैं gvfs-bin, उपयुक्त URL पर कॉपी कर सकते हैं।


हे भगवान। यह एक सेकंड के लिए 11 एमबी / एस तक चला गया, और बाद में लगभग 6 या 7 एमबी / एस का औसत रहा! धन्यवाद!
मैट '

1
सुनकर अच्छा लगा। Gvfs के लिए FUSE इंटरफ़ेस एक पिछड़ी संगतता शिम के रूप में अधिक है जो सभी एप्लिकेशन को एक्सेस की पसंदीदा विधि होने के बजाय फाइलों तक पहुंचने की अनुमति देता है।
जेम्स हेनस्ट्रिज सेप
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.