OpenELEC पर फ़ाइल सिस्टम का आकार बदलें


11

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

df -h

और मुझे निम्नलिखित परिणाम प्राप्त हुए:

Filesystem                Size      Used Available Use% Mounted on
devtmpfs                185.1M     87.5M     97.6M  47% /dev
/dev/mmcblk0p1          124.7M     96.2M     28.6M  77% /flash
/dev/mmcblk0p2          755.9M    739.4M         0 100% /storage
/dev/loop0               87.5M     87.5M         0 100% /
tmpfs                    74.6M         0     74.6M   0% /dev/shm
tmpfs                    10.0M    684.0K      9.3M   7% /var

बात मेरा एसडी कार्ड एक 8 जीबी एसडी कार्ड है और यह प्रदर्शित आकार 1 जीबी जैसा है, इसलिए मेरा सवाल यह है कि मैं पूरे स्थान को क्यों नहीं देख सकता हूं?

जवाबों:


13

यहां से संशोधित , SSH आपके रास्पबेरी पाई में OpenELEC चल रहा है और इन चरणों का पालन करें।

  1. मूल रूप में SSH, डिफ़ॉल्ट रूप से आप अंदर हैं /storage; रूट विभाजन पर स्विच करें:

    $ cd /
    
  2. XBMC को पुनरारंभ करने से रखें:

    $ touch /var/lock/xbmc.disabled
    
  3. XBMC बंद करो, तो हम अनमाउंट कर सकते हैं /storage:

    $ killall -9 xbmc.bin
    $ umount /storage
    
  4. सत्यापित करें:

    $ mount
    $ parted /dev/mmcblk0
    
  5. बिदाई में, सेक्टर प्रदर्शन में परिवर्तन:

    $ unit s
    
  6. विभाजन दिखाएं, अपने विभाजन के शुरुआती क्षेत्र पर ध्यान दें:

    $ p
    
  7. विभाजन निकालें:

    $ rm 2
    
  8. शेष स्थान का उपयोग करने के लिए एक ही शुरुआती सेक्टर नंबर का उपयोग करके और "-1" में समाप्त करके इसे फिर से बनाएं:

    $ mkpart primary 258048 -1
    $ quit parted
    $ e2fsck -f /dev/mmcblk0p2
    $ resize2fs /dev/mmcblk0p2
    $ mount /dev/mmcblk0p2 /storage
    $ df -h
    $ rm /var/lock/xbmc.disabled
    
  9. XBMC फिर से अपने आप शुरू हो जाएगा।


क्या यह कमांड ओपेनलेक वितरण पर मौजूद है?
डार्कहेयर

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

काम नहीं करता है। मैं अनमाउंट नहीं कर सकता क्योंकि कॉनमैंड / स्टोरेज का उपयोग कर रहा है और इसे नहीं मारा जा सकता है
रोब

अब और काम नहीं करता है! नीचे देखें मार्सिन का उत्तर।
हरमन

18

OpenELEC एसडी बनाने के बाद पहले बूट पर / भंडारण करता है। मैंने उस स्क्रिप्ट की तलाश की जो ऐसा करती है। यह https://github.com/OpenELEC/OpenELEC.tv/blob/master/packages/sysutils/busybox/scripts/fs-resize?source=c /storage.plpl_resize_me फ़ाइल के लिए पहली कोड लाइन जाँच है।

इसलिए ... एसडी को भरने के लिए भंडारण का आकार बदलने के लिए आपको निम्न की आवश्यकता है:

touch /storage/.please_resize_me
reboot

मेरे OpenELEC 4.0.7 पर किया और ठीक काम किया।


1
इसका स्वीकृत उत्तर होना चाहिए
क्रिस

इसे 5.0.3 पर आजमाया गया और इसने कहा
लोवप्रग

स्क्रिप्ट की दूसरी पंक्ति में यह कहा गया है कि यदि कोड़ी, कॉन्फिगर या कैश नाम का फोल्डर मौजूद है तो यह आकार नहीं बदल सकता है। मुझे उनमें से 3 मिल गए ... तो अब मैं कैसे आकार बदलूं?
पीटर रेव्स

4

एक मुद्दा जो मेरे पास था (संस्करण 3.1.5 के साथ): umount / storage => "umount: umount / storage: डिवाइस या संसाधन व्यस्त नहीं हो सकता"

fuser -m / storage => उस प्रक्रिया से युक्त, जो माउंट को लॉक कर रहा था, मैंने उसे मारने की कोशिश की, लेकिन हर बार एक नई प्रक्रिया ने माउंट को अवरुद्ध कर दिया। मुझे पाइप के साथ एक ही समय में + umount को मारना है (इस क्रम में): umount / storage | मार-९ पिड

यही तो काम है!


काम नहीं करता है, जो टर्मिनल के चलने से पहले ही स्वचालित रूप से चालू हो जाता है, कोन्म्बैंड पुनः आरंभ करता हैumount
Rob

2

मामले में किसी को भी नवीनतम संस्करण के साथ यह समस्या है:
syb0rg उत्तर महान है लेकिन
$ touch /var/lock/xbmc.disabled
$ killall -9 xbmc.bin

अब और काम नहीं करता ! उपयोग करें:
$ systemctl stop kodi.serviceइसके बजाय!


2

ओपेनलेक 5:

जाँचें कि कौन सी प्रक्रिया विभाजन / भंडारण को अवरुद्ध कर रही है

lsof | grep "/storage" (will return the PID of the process)

जांचें कि क्या ये प्रक्रियाएं सिस्टमड ट्री में हैं और सिस्टमड द्वारा नियंत्रित हैं।

systemctl status सिस्टमड ट्री दिखाएगा।

मामले में मुझे निम्नलिखित को रोकना पड़ा:

systemctl stop cron.service
systemctl stop connman.service
systemctl stop kodi.service

जाँच करें fuser -m /storageकि क्या अभी भी उस निर्देशिका को अवरुद्ध करने की प्रक्रिया है। यदि कुछ PID लौटाए जाते हैं, तो आप जाँच सकते हैं कि PID चल रहा है के साथ क्या प्रक्रिया है ps -ef | grep $PID

यदि आपको ऐसा कुछ दिखाई देता है -shतो यह आपका ssh सत्र है जो / संग्रहण निर्देशिका में है। cd /जड़ में जाना

अन्यथा आप उस प्रक्रिया को मार सकते हैं kill -9 $PID

अब आप सुरक्षित रूप से / संग्रहण निर्देशिका को अनमाउंट कर सकते हैं

umount /storage

अब आप विभाजन का आकार बदल सकते हैं (मैं फिर से रिपोर्ट करूंगा क्योंकि कुछ कमांड बदले गए हैं)

  1. सुनिश्चित करें कि कौन सा कण / भंडारण किसका है

    df -h

अधिकांश मामलों में /dev/mmcblk0p2(जो विभाजन 2 है)

  1. डिवाइस / देव / mmcblk0 के लिए खुला विभाजन

    parted /dev/mmcblk0

  2. विभाजन दिखाएं (हम अब अलग हैं कि हम किस विभाजन का आकार बदलना चाहते हैं)

    p

  3. विभाजन का आकार बदलें (यह केस विभाजन 2 अंत तक)

    resize 2 -1

    quit parted

  4. फ़ाइल सिस्टम का आकार बदलें

    e2fsck -f /dev/mmcblk0p2

    resize2fs /dev/mmcblk0p2

    mount /dev/mmcblk0p2 /storage

    df -h

यदि आप आकार बदलना चाहते हैं / फ्लैश एक पूरी तरह से अलग कहानी है।


1
मेरे लिए काम किया, सिवाय parted /dev/mmcblk0इसके partedऔर resize 2 -1आवश्यक थाresizepart 2 -1
क्रिसगेन

अब तक का सर्वश्रेष्ठ एवरर। मेरे लिए इसके अलावा और कुछ भी काम नहीं किया।
माइकल मलुरा

1

मैंने इस मुद्दे को "अनमाउंट स्टोरेज /" इस तरह से मारने के बारे में हल किया:

fuser -m /storage

5161

kill -9 5161 && umount /storage

मेरे लिए यही काम किया है।

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