क्या सभी विभाजनों के बजाय केवल एक विभाजन को सिंक करने का एक तरीका है?
"सिंक / देव / sdc1" जैसा कुछ।
क्या सभी विभाजनों के बजाय केवल एक विभाजन को सिंक करने का एक तरीका है?
"सिंक / देव / sdc1" जैसा कुछ।
जवाबों:
आप सिंक विकल्प के साथ रिमाउंट कर सकते हैं और फिर इसे async के साथ वापस कर सकते हैं:
mount -o remount,sync /mountpoint
mount -o remount,async /mountpoint
रिमाउंट विकल्प के उपयोग से रिमाउंटेड फाइलसिस्टम का उपयोग करने वाली प्रक्रियाओं में गड़बड़ी नहीं होगी।
एक फ़ाइल के डेटा (और मेटाडेटा) को सिंक्रनाइज़ करने के लिए एक मानक फ़ंक्शन है fsync
:। इसे एक्सेस करने के लिए कोई मानक या सामान्य शेल कमांड नहीं है, लेकिन आप पर्ल की sync
विधि का उपयोग कर सकते हैं IO::Handle
:
perl -MIO::File -e 'new IO::File($ARGV[0], "r+")->sync()' filename
केवल एक विभाजन को सिंक्रनाइज़ करने के लिए कोई मानक या सामान्य फ़ंक्शन या शेल कमांड नहीं है।
पर हाल ही में Linux सिस्टम , वहाँ है syncfs
सिस्टम कॉल (कर्नेल 2.6.39 में पेश किया, और के बाद से अवगत कराया glibc 2.14 )। मुझे नहीं लगता कि यह सिस्टम कॉल अभी भी कोर्यूटिल्स या यूज़-लाइनक्स में उजागर हुआ है।
syncfs
सबसे प्रासंगिक हिस्सा है।
यदि आप उस sync
उपयोगिता का मतलब है जो डिस्क को मेमोरी में डेटा फ्लश करते हैं, तो जवाब नहीं है। यह इस तथ्य के कारण है कि sync
आम तौर पर एक शटडाउन या रिबूट प्रक्रिया के दौरान उपयोग किया जाता है, जहां डिस्क पर सुरक्षित रूप से लिखे गए डेटा को प्राप्त करना उचित है, और ऑपरेशन का वास्तविक लक्ष्य मेमोरी है, डिस्क नहीं है और रैम से बाहर उस बफर डेटा को प्राप्त करना है। कहीं सुरक्षित है। डिस्क वही हैं जहां डेटा समाप्त होता है।