मैं अपने एसडी कार्ड के जीवन का विस्तार कैसे कर सकता हूं?


252

मैं USB हार्ड डिस्क खरीदने के लिए उत्सुक नहीं हूं, लेकिन मुझे पता है कि SD कार्ड पढ़ने और लिखने के कई दोहराव के लिए उपयुक्त नहीं हैं।

क्या मेरे रास्पबेरी पाई द्वारा उपयोग किए जाने के दौरान मैं अपने एसडी कार्ड के जीवन का विस्तार करने के लिए कोई कदम उठा सकता हूं?


19
यदि आप इसे पूरी गति से पूरे दिन और रात 24/7 पर लिखते हैं तो एक 16gb लगभग 30 दिनों तक चलेगा। सामान्य उपयोग पर आप 10,000 लेखन चक्रों के आधार पर लगभग 27 वर्षों की उम्मीद कर सकते हैं। यदि यह 50 वर्षों में 100,000 लेखन चक्रों का उपयोग करता है। कार्ड जितना बड़ा होगा वह चतुर पहनने वाले तर्क के कारण अधिक समय तक चलेगा
पिओट्र कुला

वाह, यह जानकर बहुत अच्छा लगा, मुझे पूर्ण गति लिखने के साथ 30 दिनों तक चलने वाले आपके 16gb एसडी के पहले बिंदु के बारे में कोई जानकारी नहीं थी। मुझे लगता है लगातार वीडियो रिकॉर्डिंग sd करने के लिए और फिर इसे स्थानांतरित करना सबसे अच्छा विचार नहीं है।
एसएसएच यह

3
सभी प्रदर्शन हिट के साथ आप इन समाधानों से लेंगे, क्यों न केवल हर कुछ वर्षों में $ 10 का भुगतान करें?
अलेक्जेंडर

जवाबों:


244

इन तरीकों से विभिन्न तरीकों से पढ़ने / लिखने की संख्या को कम करके एसडी कार्ड के जीवनकाल को बढ़ाना चाहिए:

स्वैप अक्षम करें

स्वैपिंग एसडी कार्ड के हिस्से को अस्थिर मेमोरी के रूप में उपयोग करने की प्रक्रिया है। यह उपलब्ध रैम की मात्रा में वृद्धि करेगा, लेकिन इसका परिणाम अधिक संख्या में पढ़ने / लिखने में होगा। यह प्रदर्शन में उल्लेखनीय वृद्धि की संभावना नहीं है।

swapoffकमांड के साथ स्वैप अक्षम करें :

sudo swapoff --all

आपको इसे रिबूट के बाद वापस आने से भी रोकना होगा:

  • रास्पियन के लिए जो एक स्वैप फाइल को प्रबंधित करने के लिए dphys-swapfile का उपयोग करता है (एक "सामान्य" स्वैप विभाजन के बजाय) आप sudo apt-get remove dphys-swapfileइसे स्थायी रूप से हटाने के लिए कर सकते हैं । इस उत्तरCONF_SWAPSIZE में बताए अनुसार 0 पर सेट करने के कारण निकालने के लिए सबसे अच्छा है , काम नहीं करता है और फिर भी रिबूट के बाद 100MB स्वैप फ़ाइल बनाता है।
  • अन्य वितरणों के लिए जो एक स्वैप फ़ाइल के बजाय एक स्वैप विभाजन का उपयोग करते हैं, उपयुक्त रेखा को हटा दें /etc/fstab

फाइलसिस्टम पर जर्नलिंग को अक्षम करना

जर्नलिंग फ़ाइल सिस्टम का उपयोग करना जैसे कि ext3या ext4जर्नल के बिना रीड / राइट को कम करने का एक विकल्प है। जर्नलिंग डिसेबल के साथ फाइलसिस्टम का उपयोग करने का स्पष्ट दोष एक असम्बद्ध निराशाजनक (यानी पोस्ट पावर विफलता, कर्नेल लॉकअप, आदि) के परिणामस्वरूप डेटा हानि है।

आप इस पर ext3बढ़ते हुए जर्नलिंग को अक्षम कर सकते हैं ext2

आप ext4इस तरह से अनमाउंट ड्राइव पर जर्नलिंग को अक्षम कर सकते हैं :

tune4fs -O ^has_journal /dev/sdaX
e4fsck –f /dev/sdaX
sudo reboot

द नॉटीटाइम माउंट फ्लैग

विभाजन के विकल्प अनुभाग में जोड़कर एसडी कार्ड पर रहने वाले विभाजन को नॉटिम माउंट फ्लैग को असाइन करें /etc/fstab

फ़ाइल सिस्टम तक पहुंच पढ़ने से अब फ़ाइल से जुड़ी जानकारी का अपडेट नहीं मिलेगा। नॉटटाइम सेटिंग का महत्व यह है कि यह सिस्टम द्वारा फाइल के लिए फाइल सिस्टम को लिखने के लिए आवश्यकता को समाप्त कर देता है, जो कि बस पढ़ा जा रहा है। चूँकि पिछले अनुभाग में लिखे गए लेख कुछ महंगे हो सकते हैं, इससे औसत दर्जे का प्रदर्शन लाभ हो सकता है। ध्यान दें कि किसी भी समय फ़ाइल को लिखने की जानकारी को अपडेट किया जाना जारी रहेगा जब तक कि फ़ाइल इस विकल्प को सक्षम करने के साथ नहीं लिखी जाती।

रैम में निर्देशिकाएँ

इस तरह के रूप में इस्तेमाल किया /var/tmp/और संभवतः इस तरह /var/logसे राम के लिए स्थानांतरित किया जा सकता है /etc/fstab:

tmpfs /var/tmp tmpfs nodev,nosuid,size=50M 0 0

यह /var/tmpडिस्क स्थान के रूप में 50 एमबी रैम का उपयोग करने की अनुमति देगा । ऐसा करने के साथ एकमात्र मुद्दा यह है कि रैम में मुहिम शुरू की गई कोई भी ड्राइव रिबूट अतीत को बनाए नहीं रखेगी। इस प्रकार यदि आप माउंट करते हैं /var/logऔर आपका सिस्टम एक त्रुटि का सामना करता है जो इसे रिबूट का कारण बनता है, तो आप यह पता नहीं लगा पाएंगे कि क्यों।

बाहरी हार्ड डिस्क में निर्देशिकाएँ

आप लगातार USB हार्ड डिस्क पर कुछ निर्देशिकाएं भी माउंट कर सकते हैं। इसका अधिक विवरण इस प्रश्न में पाया जा सकता है ।

रास्पबेरी पाई भी एक बाहरी ड्राइव से रूट विभाजन को बूट कर सकता है। यह USB या ईथरनेट के माध्यम से हो सकता है और इसका मतलब है कि एसडी कार्ड का उपयोग केवल बूट के दौरान विभिन्न डिवाइस को सौंपने के लिए किया जाएगा। यह पूरा करने के लिए कर्नेल हैकिंग की आवश्यकता है, क्योंकि मुझे नहीं लगता कि डिफ़ॉल्ट कर्नेल USB संग्रहण का समर्थन करता है। आप इस प्रश्न या इस बाहरी ब्लॉग पोस्ट पर अधिक जानकारी पा सकते हैं ।


17
noatimeएक डिफ़ॉल्ट होना चाहिए।
एलेक्स चेम्बरलेन

3
@AlexChamberlain: noatimeकम से कम आर्क पर डिफ़ॉल्ट नहीं है।
Jivings

20
यह नवीनतम रास्पियन बिल्ड में है।
ओली

4
इसके अनुसार: superuser.com/a/168126/105936 यह इतना अच्छा विचार नहीं है कि /var/tmpस्मृति में डाल दिया जाए। शायद आपने इसे उलझा दिया /tmp
inf3rno

1
ध्यान दें कि यदि noatimeआपको समस्याएँ होती हैं, तो आप relatimeइनका उपयोग पूरी तरह से हटाने के बजाए डिस्क पर लिखी गई रीड को कम करने में भी कर सकते हैं।
मार्क बूथ

79

यदि आपके आवेदन के लिए Jivings द्वारा उपलब्ध कराए गए विकल्प संभव नहीं हैं, तो जीवन को विस्तारित करने के लिए एक और विकल्प एसडी कार्ड का उपयोग करना है जो आपकी आवश्यकता से बहुत बड़ा है।

बहुत सारी खाली जगह छोड़ दें

अधिकांश सभ्य एसडी कार्ड प्रत्येक ब्लॉक को लिखे गए समय की संख्या को कम करने के लिए पहनने के स्तर के एल्गोरिदम का उपयोग करते हैं , इसलिए यदि एसडी कार्ड आपकी आवश्यकता से बड़ा है तो पहनने को मुक्त स्थान के बहुत बड़े क्षेत्र में फैलाया जा सकता है।

वियर लेवलिंग का एक कारण इतना महत्वपूर्ण है कि कुछ फ़ाइल सिस्टम, जैसे कि FAT (कई एसडी कार्ड के लिए डिफ़ॉल्ट प्रारूप), एक ही सेक्टर को बार-बार हथौड़ा मारते हैं।

इस बारे में अधिक जानकारी के लिए, प्रश्न का उत्तर देखें क्या यह सच है कि एक एसडी / एमएमसी कार्ड अपने स्वयं के नियंत्रक के साथ समतलन करता है? से अधिक पर इलेक्ट्रॉनिक्स स्टैक एक्सचेंज , विशेष रूप से इस सवाल का जवाब

इस उत्तर में से एक दिलचस्प आँकड़ा है

एक 2GB कार्ड लेना और इसे खत्म होने की शुरुआत लिखना और कार्ड के मृत होने से पहले लगभग 10TB का औसत और अब गलत नहीं है।

लेकिन चिंताजनक बात यह है कि

डेटा खराब होने पर एसडी कार्ड आपको पता नहीं चलने देंगे, यानी पीसी हार्डड्राइव जैसी I / O त्रुटि वापस नहीं करेंगे।

यदि आपको विश्वसनीय संग्रहण की गारंटी देने की आवश्यकता है, तो यह फ़ाइल सिस्टम की आपकी पसंद को महत्वपूर्ण बना सकता है।

एक अंतिम नोट: एसडी कार्ड के आकार को दोगुना करना इसकी दीर्घायु को दोगुना कर सकता है।

यानी अगर आपके पास 200 एमबी मुफ्त में 2 जीबी का एसडी कार्ड है तो 4 जीबी कार्ड पर स्विच करने से आपको 11 गुना खाली जगह मिलेगी, लेवलिंग की क्षमता और इस तरह दीर्घायु मिलेगी, जबकि 16 जीबी कार्ड पर स्विच करने से आपको 71 गुना मुफ्त मिलेगा। अंतरिक्ष।


एसडी कार्ड को पहनने के लिए पहली जगह में लेवलिंग करने की अनुमति देने के लिए यह बताने की जरूरत है कि कौन से ब्लॉक वास्तव में इसके लिए उपयोग करने के लिए स्वतंत्र हैं। फ्रस्ट्रिम ऐसा करने में मदद कर सकता था।
जिमीबी

ट्रिम की आवश्यकता नहीं है, लेकिन इसके बिना एक ब्लॉक का केवल पुन: उपयोग किया जाता है, जब ओएस ब्लॉक का उपयोग करने के बजाय इसे रोक देता है। जहाँ तक मुझे पता है कि ट्रिम एक एसएसडी फ़ंक्शन है और एसडी कार्ड द्वारा समर्थित नहीं है जो बहुत सरल प्रोटोकॉल द्वारा एक्सेस किए जाते हैं।
मार्क बूथ

@ मर्क, आपका पहला बिंदु बिल्कुल सही है। - आपके दूसरे बिंदु के अनुसार, MMC_ERASEइस उद्देश्य के लिए MMC / SD मानक में कहीं (वैकल्पिक) कमांड परिभाषित है। हालांकि सभी एसडी-कार्ड्स के लिए मैंने केवल एक-एक की कोशिश की है (जो कि मेरे Pi- के साथ आया था) वास्तव में इसका समर्थन करता है।
जिमीबी

क्या इस मामले में विभाजन का आकार मायने रखता है? मेरा मतलब है, अगर मेरे पास 16GB कार्ड और 4GB के एक अद्वितीय ext4 विभाजन के साथ एक प्रणाली है, तो क्या यह पहनने के लिए शेष 12GB का भी लाभ उठाएगा?
नत्थेनो

अच्छा पहनने लेवलिंग के साथ एसडी कार्ड के लिए @natenho हां बताना मुश्किल है, गरीब (या नहीं) के कार्यान्वयन के लिए कोई नहीं।
मार्क बूथ

25

केवल एक चीज जो मैं देख रहा हूं वह है SD कार्ड पर स्वैप नहीं करना।

एसडी कार्ड पर स्वैपिंग संभवत: वह है जो आपके एसडी कार्ड को मार सकता है।

यदि आपको अधिक RAM की आवश्यकता है, तो आप zram का उपयोग करने की कोशिश कर सकते हैं, http://raspberry.pi.gw.gd/t50-Using-ZRAM.html पर एक पोस्ट पर रास्पबेरी पी पर ZRAM का उपयोग करने के बारे में कुछ विवरण दे रहे हैं

पर zram के लिए अधिक जानकारी http://en.wikipedia.org/wiki/ZRam

इसके अलावा सबसे हाल के एसडी कार्ड पुराने लोगों की तुलना में बहुत अधिक ठोस हैं, एक नया वर्ग 10 एसडी कार्ड खरीदना शायद एक अच्छा विकल्प है जिसे आप लंबे समय तक देखना चाहते हैं।


14

आप पिल्ला लिनक्स चलाने की कोशिश कर सकते हैं जो पूरी तरह से राम-निवासी है। यह बहुत छोटा और अंधाधुंध तेज़ है क्योंकि यह स्टोरेज इमेज (एसडी कार्ड में आपके केस में) को बूट में रैम में कॉपी करके मेमोरी को पूरी तरह से चलाता है और फिर समय-समय पर स्टोरेज में बदलाव करता है। इस सहेजें की आवृत्ति मैन्युअल रूप से सहित उपयोगकर्ता नियंत्रित है।

पिल्ला किसी भी मानक लिनक्स फाइल सिस्टम जैसे कि एक्स 3 या एक्सटी 4 के साथ स्तरित एफ़यू या पुराने यूनियनफ़ोर्स फाइल सिस्टम का उपयोग करता है। यह FAT, या NTFS विभाजन पर भी निवास कर सकता है।

कम से कम विशेष रूप से आरपीआई के लिए तैयार किए गए पिल्ला के कुछ संस्करण हैं, उनमें से एक "पिल्ला मास्टर", बैरी कौलर द्वारा बनाया गया है।

अधिक जानकारी के लिए, http://puppylinux.org/wikka/Puppi पर जाएं


12

यहां ज्यादातर लोग अपनी मान्यताओं के बारे में बात करते हैं न कि व्यक्तिगत अनुभव से।

मैं रास्पबेरी के साथ अपने रास्पबेरी पीपीआई का उपयोग 8 एक्सटेंशन और फैक्स के साथ कंपनी स्विचबोर्ड के रूप में कर रहा हूं। हमारे पास LinkSYS SPA3000 के माध्यम से 3 आईपी आधारित चड्डी और एक लैंडलाइन है। मेरे शुरुआती किंग्स्टन 4 जीबी एसडीकार्ड को धूल काटने में केवल 1 महीने का समय लगा।

मैं अभी भी प्रयोग कर रहा था और बैकअप नहीं था। BTW पाई APC UPS से जुड़ी है। मैंने फिर पूरे RasPBX को स्क्रैच से फिर से सेटअप किया, लेकिन इस बार मैं अपने कॉर्पोरेट NAS में var / log / log और / var / lib / mysql ले गया। यह एसडी 3 महीने बाद भी ठीक था।

तब हम लोगों को बहुत गर्मी थी। तीसरे महीने के दौरान पाई ने नीले रंग से बाहर ईथरनेट का पता नहीं लगाना शुरू किया। फिर एक दिन मैंने पाया कि सभी एल ई डी मंद हैं और यह बूट नहीं होगा।

मैंने पीआई को एक काम करने वाले बॉक्स से एक नए सिरे से बदल दिया है। आउट ऑफ़ ऑर्डर एक ने ठंडा होने के बाद काम करना शुरू कर दिया, लेकिन यह अनियमित रूप से काम करता है और जब यह RasPBX को बूट करता है तो वीडियो मोड ग्राफिक्स पर स्विच नहीं होगा, यह 80 * 25 टेक्स्ट में रहता है। यह वास्तव में गड़बड़ था। मैंने तब से एक हीटसिंक सेट का आदेश दिया है। नया Pi अब 2 महीने 7/24 से अधिक समय तक इसके साथ काम करता है।

इसलिए यदि आप 7/24 वातावरण में पाई का उपयोग करेंगे, तो सस्ते मत बनो - हीटसिंक खरीदें और एसडी कार्ड पर / var / लॉग और अन्य व्यस्त निर्देशिकाओं का उपयोग करने से बचें।


सुनिश्चित करें कि var / log एक उपयुक्त डिवाइस पर है जो उत्कृष्ट सलाह की तरह लगता है। ब्याज से बाहर, उस प्रारंभिक समस्याग्रस्त महीने में, क्या आप यूएसडी कार्ड पर भी वॉइसमेल बॉक्स जमा कर रहे थे? मैं सोच रहा था कि अगर डैश कैम के उपयोग के लिए डिज़ाइन किए गए उच्च धीरज uSD कार्ड मेरे RasPBX परिनियोजन के लिए बेहतर हो सकते हैं यदि मैं ध्वनि मेल बॉक्स को सक्षम करने का निर्णय लेता हूं।
मार्क बूथ

11

मैंने सभी समाधानों की तुलना TMPFS के उपयोग से की है और सबसे अच्छा उत्तर स्क्रिप्ट तैयार-डायर (देखें http://grenzdebiel.dyndns.org/wordpress/?p=98 ) का एक उचित / आदि / दोष / tmpfs के साथ संश्लेषण है। (देखें http://www.a-netz.de/2013/02/ramdisks-for-the-raspberry/ )।

रास्पियन पर प्रदर्शन करने के लिए आवश्यक कदम हैं:

1. संपादित करें /etc/default/tmpfsऔर सेट करें :

RAMLOCK=yes
RAMSHM=yes
RAMTMP=yes

मैं निम्नलिखित आकारों की सिफारिश करूंगा:

TMPFS_SIZE=10%VM
RUN_SIZE=10M
LOCK_SIZE=5M
SHM_SIZE=10M
TMP_SIZE=25M

2. / etc / fstab का उपयोग करके अतिरिक्त निर्देशिकाओं को सक्षम करें

tmpfs   /var/log                tmpfs   size=20M,defaults,noatime,mode=0755 0 0 
tmpfs   /var/cache/apt/archives tmpfs   size=100M,defaults,noexec,nosuid,nodev,mode=0755 0 0
tmpfs   /var/spool/cups         tmpfs   size=100M,defaults,noatime,mode=0755 0 0
tmpfs   /var/spool/cups/tmp     tmpfs   defaults,noatime,mode=0755 0 0

3. /etc/init.d/prepare-dirsलापता निर्देशिका बनाने के लिए स्क्रिप्ट का उपयोग करें /var/logताकि सभी डेमॉन शुरू हों

अंत में देखें कि इसमें मेरे मामले में क्या है।

4. स्क्रिप्ट को निष्पादन योग्य बनाएं chmod 755 /etc/initd/prepare-dirs

5. सुनिश्चित करें कि आपके डेमॉन शुरू होने से पहले स्क्रिप्ट को पहले बूट पर शुरू किया जाएगा: update-rc.d prepare-dirs defaults 01 99

की सामग्री /etc/init.d/prepare-dir:

#!/bin/bash
#
### BEGIN INIT INFO
# Provides:          prepare-dirs
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Required-Start:
# Required-Stop:
# Short-Description: Create needed directories on /var/log/ for tmpfs at startup
# Description:       Create needed directories on /var/log/ for tmpfs at startup
### END INIT INFO
# needed Dirs
DIR[0]=/var/log/lighttpd
DIR[1]=/var/log/cups
DIR[2]=/var/log/apt
DIR[3]=/var/log/ConsoleKit
DIR[4]=/var/log/fsck
DIR[5]=/var/log/news
DIR[6]=/var/log/ntpstats
DIR[7]=/var/log/samba
DIR[8]=/var/log/lastlog
DIR[9]=/var/log/exim
DIR[10]=/var/log/watchdog
case "${1:-''}" in
  start)
        typeset -i i=0 max=${#DIR[*]}
        while (( i < max ))
        do
                mkdir  ${DIR[$i]}
                chmod 755 ${DIR[$i]}
                i=i+1
        done
        # set rights
        chown www-data.www-data ${DIR[0]}
    ;;
  stop)
    ;;
  restart)
   ;;
  reload|force-reload)
   ;;
  status)
   ;;
  *)
   echo "Usage: $SELF start"
   exit 1
   ;;
esac

बस।


पिल्ला लिनक्स सब कुछ के लिए भी TMPFS का उपयोग करता है।
DocSalvager

7

स्वैफ़ाइल को अक्षम करें:

सुडो डफिस-स्वपफाइल स्वपफ

अनइंस्टॉल करने की कोई आवश्यकता नहीं है, हालांकि यदि आप इसका उपयोग नहीं कर रहे हैं, और स्थान चाहते हैं, तो आप इसे सुरक्षित रूप से निकाल सकते हैं। हटाने के लिए वैकल्पिक आदेश:

sudo dphys-swapfile अनइंस्टॉल करें

उपयोग: / sbin / dphys-swapfile {सेटअप | swapon | swapoff | अनइंस्टॉल}


5

फ्लैश सेल धीरज:

  • मल्टी-लेवल सेल (MLC) फ्लैश के लिए, प्रति भौतिक क्षेत्र में 10,000 तक साइकिल लिखते हैं।
  • सिंगल-लेवल सेल (SLC) फ्लैश के लिए, प्रति भौतिक क्षेत्र में 100,000 तक साइकिल लिखना।
  • नए SSD प्रति भौतिक क्षेत्र में 1 मिलियन राइट साइकिल प्रदान करते हैं।

यह विशुद्ध रूप से बड़े कार्ड और सामान्य पहनने पर गणितीय है। अगर आपको दिन और रात 8GB MLC टाइप फ्लैश कार्ड लिखना है और इसे मारने में लगभग 30 दिन लगेंगे।

एपिसोड 99 में Techsnap ने SSD के और एलेन को बाहर पहनने के बारे में बात की और बताया कि रोजमर्रा के उपयोग में SSD को पहनना कैसे असंभव है और हमें स्वैप, क्रोन और इन सभी को अक्षम करने के बारे में चिंता करने की आवश्यकता नहीं है। यह अभी काम करता है! स्मार्ट वियर लेवलिंग हर चीज का ख्याल रखती है।

किंग्स्टन के अनुसार सामान्य पहनावा आपको पेशेवर डिजिटल कैमरे में जीवन के लिए 27 साल का जीवन देना चाहिए।

जो सामान्य DSLR कैमरों के लिए आप इसे हर कुछ महीनों में एक बार भर सकते हैं .. यह निर्भर करता है कि आप कितनी यात्रा करते हैं। एक पाई को ध्यान में रखते हुए, यदि आप अक्सर प्रयोग करते हैं और अक्सर फ्लैश करते हैं तो यह अधिक टोल ले सकता है। आमतौर पर एक बार जब आप एक डिस्ट्रो के साथ खुश होते हैं ... तो आप इसे महीनों या वर्षों तक फ्लैश नहीं करते हैं। इसलिए एसडी को लंबा करने के लिए एसडी पर आईओ को कम करने के लिए कुछ सलाह का पालन करना अच्छा होगा।

फ्लैश की कीमत गिर गई है और तकनीक बहुत बेहतर है।

अधिकांश एसडी कार्ड उपकरणों की दो या तीन पीढ़ियों को पछाड़ देंगे और उस समय तक यह बहुत ही बेहतर और सस्ता अपग्रेड के साथ उपयोग करने के लिए छोटा और बहुत धीमा माना जाएगा!


एक रास्पबेरी पाई सुरक्षा उद्देश्यों के लिए एक वेब कैमरा के साथ स्थापित किया जा सकता है 24/7 डेटा लिख ​​रहा है। मुझे लगता है कि उस मामले में एक एसएसडी शायद बेहतर है।
अत्यधिक अनियमित

1
हां, लेकिन यह सभी क्षेत्रों को पूरे समय क्रमिक रूप से नहीं लिख रहा है। इसे कम से कम पहनने के लिए प्रबंधित किया जाता है और नया डेटा हमेशा कम से कम एक्सेस सेक्टर / क्षेत्र में जाता है। वीडियो फ़ाइल सिस्टम फ़ाइलों या पेजिंग फ़ाइलों को अधिलेखित नहीं करेगा। 16GB फ्लैश ड्राइव पर आपको कितने घंटे मिल सकते हैं? आमतौर पर सीसीटीवी 15-30 दिन बाद सुलभ होना चाहिए! ऐतिहासिक उद्देश्यों के लिए स्टोर करने के बजाय 1 टीबी ड्राइव या एनएएस का उपयोग करें। भंडारण और हस्तांतरण के लिए भी छोटी अवधि के लिए आपको एसडी कार्ड से कई साल लग जाएंगे! बेहतर अभी तक एक 32gb एसडी का उपयोग करें, लेकिन फ़ोल्डर को 16GB तक कैप करें- आप उस तकनीक के साथ जीवन का समय दोगुना करेंगे!
पायोटर कुला

4
@ppumkin, क्या आप हमें बता सकते हैं कि आप वास्तव में अपने आरपी (s) में अपने एसडी कार्ड का उपयोग कैसे करते हैं? हममें से बहुत से (Google "रास्पबेरी क्षतिग्रस्त एसडी") ने घातक असफलताओं का सामना किया है (मुझे एक से अधिक, incl। किंग्स्टन, अब जो आप उल्लेख करते हैं) अपने डिफ़ॉल्ट रास्पियन सेटअपों के साथ, प्रभावशाली विक्रेता संख्या के बावजूद ... यह आरपीआई हो सकता है, नहीं SD, लेकिन आपके कागज़ के आंकड़े अभी भी बिना किसी संदर्भ के अनसुना किए गए हैं (क्या मुझे अच्छी तरह से पता होना चाहिए?) RPI SD मुद्दे, आपके स्वयं के वास्तविक क्षेत्र अभ्यास, या, अभी तक बेहतर: केस अध्ययन प्रायोगिक रूप से एसडी क्षति "अफवाहों" पर बहस करते हैं।
एस.जे.

1
देखिए, मैं जो कुछ भी बात करता हूं वह संदर्भ से जुड़ा हुआ है। ठीक है, आप जानना चाहते हैं कि मैं इसका उपयोग कैसे करता हूं? मैं नहीं! क्योंकि पाई, वास्तव में गधे में एक बड़ा दर्द है! SD कार्ड इसमें विफल रहते हैं, और इसका SD कार्ड दोष नहीं है। या तो पाई हार्डवेयर या सॉफ्टवेयर इन चीजों को रोक रहा है। मुझे लगता है कि यह सस्ती USB बिजली आपूर्ति द्वारा प्रदान की गई अस्थिर वोल्टेज है। नए B + के पास उन पर नियामक हैं। भगवान का शुक्र है! यह फिक्स्ड वाईफाई, साउंड फीडबैक और मैं एसडी कार्ड से ईश्वर से प्रार्थना करता हूं। मैं अभी भी कुछ आदेश की जरूरत है, लेकिन अब Netduino के साथ खेल रहा हूँ, कोई SD उस पर दुर्घटनाग्रस्त हो गया।
पायोटर कुला

1
@ppumkin मैंने सैनडिस्क का इस्तेमाल किया। ईबे वाले नहीं। एसडी कार्ड को फिर से भरने (एक कैमरे में पुन: उपयोग के लिए, कहने के लिए) और इसे एक ऑपरेटिंग सिस्टम के घर के रूप में उपयोग करने के बीच एक बड़ा अंतर है। आपको अधिक विशिष्ट होना चाहिए कि आप वास्तव में आपका क्या उपयोग करते हैं, और वे कितने समय तक चले। Lunakids टिप्पणी को दोहराने के लिए मेरे लिए कोई ज़रूरत नहीं है, लेकिन मैं उसके या उसके साथ पूरी तरह से सहमत हूं। ।
रॉल्फबली

4

जैसा कि पहले उल्लेख किया गया है, मुख्य मुद्दा फाइलें और निर्देशिकाएं हैं जो रिबूट के बीच सहेजे जाने के लायक नहीं हैं, लेकिन बहुत बार लिखे गए हैं, अर्थात् कैश फाइलें, डाउनलोड फ़ोल्डर, आदि।

रास्पियन और साथ ही डेबियन और उबंटू में एक पैकेज है, जिसे अनबर्डेन-होम-डीआईआर कहा जाता है, जिसका प्राथमिक उद्देश्य कम फाइलों वाली जगह जैसे कि tmpfsमाउंट या बाहरी हार्डडिस्क, जो पहनने से कम होने का खतरा होता है, के लिए ऐसी फाइलों को सिमल करना है।

यह आमतौर पर X के तहत लॉगिन समय पर चलाया जाता है और GUI एप्लिकेशन की कैश फ़ाइलों की ओर लक्षित होता है, लेकिन इसे स्क्रिप्ट से या ऐसे भी बुलाया जा सकता है और उपयोगकर्ता की होम डायरेक्टरी में मनमानी फ़ाइलों के लिए कॉन्फ़िगर किया जा सकता है।


3

डेबियन 8.0 (जेसी) के लिए ये मेरी सिफारिशें हैं

वे पर आधारित होते हैं iotop -bktoqqqऔर iostat -dzp 5। समस्या और उसके समाधान का अंदाजा लगाने के लिए आपको पहले इन कमांड को चलाना चाहिए।

1. स्वैप अक्षम करें

sudo systemctl disable dphys-swapfile
sudo rm /var/swap

2. माउंट विकल्प और रैम का उपयोग करें

noatime,commit=1800विकल्पों के साथ एसडी कार्ड पर सभी विभाजनों को माउंट करें और अपने में इन प्रविष्टियों के साथ रैम को निम्नलिखित निर्देशिकाओं को माउंट करें /etc/fstab/:

/dev/mmcblk0p1  /boot           vfat    defaults,noatime,commit=1800  0       2
/dev/mmcblk0p2  /               ext4    defaults,noatime,commit=1800  0       1

tmpfs           /tmp            tmpfs   size=50M,nodev,nosuid     0       0
tmpfs           /var/tmp        tmpfs   size=10M,nodev,nosuid     0       0
tmpfs           /var/cache/samba tmpfs   size=5M,nodev,nosuid     0       0

प्रतिबद्ध लेखन में देरी करेगा और उन्हें पहले एकत्र करेगा।

3. सबसे लगातार लॉग फ़ाइलों को लॉग इन करें /var/tmp/log/

मेरा विवरण देखें मैं लॉग फ़ाइलों को लिखने को कैसे कम कर सकता हूं

4. एसडी कार्ड को हथौड़ा करने से क्रोमियम को रोकें

जैसा कि यह पता चलता है कि क्रोमियम भारी रूप से लिखता है और रोका नहीं जा सकता है (देखें 176727 , 52663 )। यह कैश और उपयोगकर्ता डेटा निर्देशिका को प्रभावित करता है। क्रोमियम / टिप्स और ट्रिक्स समझाने कि यह कैसे राम को ले जाया जा सकता। चूंकि रास्पबेरी में ज्यादा रैम नहीं होती है इसलिए सुझाया गया टैब सस्पेंडर रैम को बचाने के लिए उपयोगी है।

क) कैश

कैश आकार को सीमित करें और इसे संपादित करके RAM पर ले /etc/chromium-browser/customizations/00-rpi-varsजाएं

CHROMIUM_FLAGS="--disable-quic --enable-fast-unload --enable-tcp-fast-open --disk-cache-size=10000000 --media-cache-size=5000000"

अब कैश इतना छोटा है कि उसमें XDG_CACHE_HOMEप्रवेश को बदलकर रैम डिस्क में ले जाया जा सकता /etc/security/pam_env.confहै

XDG_CACHE_HOME  DEFAULT=/tmp/@{PAM_USER}/cache

अब मेरे दो उपयोगकर्ताओं के पास रैम में एक छोटा ब्राउज़र कैश है। यदि आपके लिए कैश या / tmp / size को बदलना आवश्यक नहीं है।

बी) उपयोगकर्ता डेटा dir

इसके अलावा उपयोगकर्ता डेटा dir ( .config/chromium/) भारी लेखन का अनुभव करता है। प्रोफाइल-सिंक-डेमॉन द्वारा सिफारिश की है क्रोमियम / टिप्स और ट्रिक्स । इसे आपके ब्राउज़र की प्रोफ़ाइल को tmpfs में प्रबंधित करने और समय-समय पर इसे आपकी भौतिक डिस्क पर वापस सिंक करने के लिए विकसित किया गया था। दुर्भाग्य से पैकेज अभी तक रास्पियन 8.0 (जेसी) वितरण का हिस्सा नहीं है। इसलिए मैंने अभी तक इसका परीक्षण नहीं किया है।

5. एसडी कार्ड पर मुफ्त स्थान

पैकेज और फ़ाइलों को अनइंस्टॉल करके मुफ्त स्थान की आवश्यकता नहीं है। यह आपके विभाजन में समान रूप से पहनने को फैलाना चाहिए।

किया हुआ!

अब चलाएं iotop -bktoqqqऔर iostat -dzp 5फिर से देखें और सिस्टम के निष्क्रिय होने पर लेखन एक्सेस में एक महत्वपूर्ण कमी देखें। मेरी डिस्क पर कई मिनट तक कुछ नहीं लिखा जाता है। और हरे अधिनियम एलईडी चमकती के बारे में चिंता मत करो । जाहिरा तौर पर यह एक अच्छा लेखन पहुँच संकेतक नहीं है।


2

राइट साइकल की एक छोटी सी कमी को दूसरे सर्वर पर syslog आउटपुट स्ट्रीमिंग करके पहुँचा जा सकता है। बेशक, एक syslogdरनिंग के साथ ऐसा सर्वर होना एक पूर्व शर्त है। हालांकि, पीआई लिनक्स के प्रति उत्साही लोगों के लिए एक खिलौना होने के साथ यह संभवतः बहुत बार होता है। :-)

इस स्ट्रीमिंग को सक्रिय करने के लिए बस एक स्टेटमेंट डालें

*.*    @myserver.mydomain

फ़ाइल के शीर्ष पर /etc/rsyslog.conf, अन्य सभी पंक्तियों पर टिप्पणी करें और जारी करके लॉगिंग को पुनः आरंभ करें service rsyslog restart। इसके बाद चयनित सर्वर पर संदेश आने चाहिए।

इसका एक स्पष्ट लाभप्रद पक्ष यह है कि आप एक ही सर्वर पर अन्य मशीनों के साथ मिलकर अपने पाई की निगरानी आसानी से कर सकते हैं। एक नकारात्मक पक्ष यह है कि सिस्टम स्टार्टअप और शटडाउन के दौरान आप कुछ संदेशों को ढीला कर सकते हैं जब नेटवर्क कनेक्शन अभी तक स्थापित नहीं हुआ है या पहले ही बंद हो चुका है।


ध्यान दें कि आधुनिक लिनक्स सिस्टम (CentOS 7 और डेबियन 8 सहित, और रास्पियन 8 जैसे सिस्टम पर आधारित) सभी लॉगिंग करते हैं journaldजो उन्हें सिस्टम जर्नल में संग्रहीत करता है। वे journaldउस लॉग को फॉरवर्ड करने के लिए कॉन्फ़िगर करते हैं, जिस rsyslogdपर श्रवण सॉकेट है; लॉग फ़ाइलों में संदेशों की अतिरिक्त प्रतियां नीचे रखता है /var/log। यदि आप journalctlअपने लॉग ब्राउज़ करने के लिए उपयोग करने में सहज हैं (और यह /var/logआपके परिचित होने के बाद एक बार से बेहतर काम करता है) तो आप पूरी तरह से अक्षम कर सकते हैं rsyslogऔर कुछ लिखों को बचा सकते हैं।
जे। सैम्पसन

1

नोट: 100,000 चक्रों की सीमा एक परिकल्पना है जो प्रत्येक कंप्यूटिंग डिवाइस पर लागू होती है, यहां तक ​​कि एक कीबोर्ड में भी। मैं उचित शीतलन की स्थिति में पाई को चलाने और उचित शटडाउन / स्टार्ट साइकिल को एनालॉग्स में जाने के बजाय आपके बेहतर परिणाम देगा।

इसके अलावा यह मेरी उपरोक्त राय को बढ़ा सकता है।

उपयोगकर्ता Pi [डिफ़ॉल्ट] के अलावा एक नया उपयोगकर्ता जोड़ें। बाहरी ड्राइव [थंब / हार्ड ड्राइव] में नए उपयोगकर्ता की होम निर्देशिका को इंगित करें। नया उपयोगकर्ता, सुपर-उपयोगकर्ता अनुमति दें और इसे अपने प्राथमिक खाते के रूप में उपयोग करना शुरू करें।

आशा है कि ये आपकी मदद करेगा..


मैं हमेशा कीबोर्ड पर सहेजने के लिए कम टाइप करने की कोशिश करता हूं;)
पिओटर कुला

एक नया उपयोगकर्ता जोड़ने से व्यस्त /var/logऔर नहीं रोका जा सकेगा /var/tmp। इसके अलावा, अनुभव से सबूत है कि उचित ठंडा करने से फर्क पड़ता है "मुझे विश्वास है" कहने से बहुत बेहतर है।
रॉल्फबली

0

बिजीबॉक्स 'syslog डेमॉन (पैकेज में उपयोग करें बिजीबॉक्स-syslogd Raspbian / Debian / Ubuntu पर) के बजाय डिफ़ॉल्ट syslog डेमॉन (आमतौर पर rsyslog)। डिफ़ॉल्ट रूप से रास्पियन / डेबियन / उबंटू में, व्यस्त बॉक्स का syslogd केवल मेमोरी में रिंग बफर में लॉग ऑन करता है और डिस्क पर नहीं। रिंग बफ़र का आकार डिफ़ॉल्ट रूप से 128kB होता है, यानी पुरानी लॉग प्रविष्टियाँ जल्द ही समाप्त हो जाती हैं और फिर चली जाती हैं। लेकिन आप इसके लिए अधिक रैम का उपयोग करने के लिए इसे कॉन्फ़िगर कर सकते हैं।

फिर भी यह एक बेहतर समाधान नहीं है, जिसमें एक सिसलॉग डेमॉन नहीं है, अर्थात आप अभी भी लॉग इन कर सकते हैं और लगभग लॉग की प्रविष्टियों को पढ़ सकते हैं। पिछले कुछ घंटों या दिनों (रिंग बफर के कॉन्फ़िगर आकार के आधार पर) कमांड के साथ logread। आप logread -fकिसी tail -fव्यवहार को प्राप्त करने के लिए भी इसका उपयोग कर सकते हैं जैसे कि फ़िल्टर स्क्रिप्ट का उपयोग करके केवल दिलचस्प लॉग प्रविष्टियों को संग्रहीत करना या नेटवर्क पर कहीं और लॉग प्रविष्टियों को अग्रेषित करना, जैसे उपयोग करना stunnelया ऐसा करना।


-1

मेरे द्वारा की गई कुछ चीज़ें:

dphys-swapfile का chmod (कहीं न कहीं / / - फिलहाल पीआई के पास नहीं):

sudo chmod a-x dphys-swapfile

मैं बूट पर छोटी त्रुटियां प्राप्त करता हूं (सेवा dphys-swapfile शुरू नहीं कर सकता) - मान लीजिए कि एक बेहतर तरीका है ... आरसी-अपडेट ??

इसके अलावा, मैं कैमरे के मॉड्यूल से छवियों को कैप्चर करता हूं, अंततः अपने वेबसर्वर (पाई) पर डाल देता हूं। मैंने ext2 को / dev / ram0 को ext2 में स्वरूपित किया, इसे / Media / ramdrive (/etc/init.rc का उपयोग करके, मुझे लगता है) के रूप में माउंट किया। यह 4megs है, एक स्नैप के लिए काफी बड़ा है। एसडी को कोई नहीं लिखता है।

सर्वर (oululife.dnsdynamic.com) प्रयोगात्मक है, लेकिन वेब पर। इसे वास्तव में तनावपूर्ण बनाने के लिए, मैंने इसे 'हार्टबीट *' के एक MP4 एपिसोड को भी स्ट्रीम करने दिया। यह lighttpd, Mysql, PHP, WordPress चलाता है, और यहां तक ​​कि जब मैं वेब पर दूरस्थ रूप से स्ट्रीम करता हूं तो यह मुश्किल से एक पसीने को तोड़ता है, औसतन 0,2 लोड करता है। ओवर-क्लॉकिंग बिल्कुल नहीं। मॉडल-बी रेव। 2, 24/7 तक। इसलिए, अगर मैं अन्य 15 / dev / ramX में अपने लॉगफ़ाइल्स प्राप्त कर सकता हूं, तो मुझे लगता है कि मेरा माइक्रो-एसडी 16 जी कार्ड वर्षों तक चलेगा ...।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.