Redimensionner le système de fichiers sur OpenELEC


11

J'essayais d'effectuer une mise à jour et une erreur m'a dit que je n'avais pas assez d'espace libre. Je me suis donc connecté à mon Raspberry SSHpour demander l'utilisation du disque avec:

df -h

Et j'ai obtenu le résultat suivant:

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

Le problème est que ma carte SD est une carte SD de 8 Go et la taille qu'elle affiche ressemble plus à 1 Go, donc ma question est pourquoi je ne peux pas voir tout l'espace?

Réponses:


13

Modifié à partir d' ici , SSH dans votre Raspberry Pi exécutant OpenELEC et suivez ces étapes.

  1. SSH en tant que root, par défaut vous êtes /storage; passer à la partition racine:

    $ cd /
    
  2. Empêchez XBMC de redémarrer:

    $ touch /var/lock/xbmc.disabled
    
  3. Arrêtez XBMC, afin que nous puissions démonter /storage:

    $ killall -9 xbmc.bin
    $ umount /storage
    
  4. Vérifiez les supports:

    $ mount
    $ parted /dev/mmcblk0
    
  5. En partie, le passage aux secteurs affiche:

    $ unit s
    
  6. Affichez les partitions, notez le secteur de départ de votre partition:

    $ p
    
  7. Supprimez la partition:

    $ rm 2
    
  8. Recréez-le, en utilisant le même numéro de secteur de départ et en terminant par "-1" pour utiliser l'espace restant:

    $ 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 redémarrera de lui-même.


Cette commande est-elle présente sur la distribution openelec?
darkheir

Désolé, j'ai toujours par défaut les instructions Raspbian, mauvaise habitude: P. J'ai re-répondu à la question et maintenant ça devrait marcher.
syb0rg

Ça ne marche pas. Je ne peux pas démonter parce que connmand utilise / storage et il ne peut pas être tué
Rob

Ça ne marche plus! Voir la réponse de Marcin ci-dessous.
Herman

18

OpenELEC redimensionne / stockage au premier démarrage après la création de la SD. J'ai cherché le script qui fait ça. C'est https://github.com/OpenELEC/OpenELEC.tv/blob/master/packages/sysutils/busybox/scripts/fs-resize?source=c La première ligne de code vérifie le fichier /storage/.please_resize_me.

Donc ... pour redimensionner le stockage pour remplir la SD, vous devez:

touch /storage/.please_resize_me
reboot

J'ai fait ça sur mon OpenELEC 4.0.7 et ça a bien fonctionné.


1
cela devrait être la réponse acceptée
Chris

essayé sur 5.0.3 et cela a fonctionné comme indiqué
LowvaPrg

Sur la deuxième ligne du script, il indique qu'il ne peut pas être redimensionné s'il existe un dossier nommé kodi, config ou cache. Je les ai tous les trois ... Alors, comment puis-je redimensionner maintenant?
Peter Raeves

4

Un problème que j'ai eu (avec la version 3.1.5): umount / stockage => «umount: impossible de démonter / stockage: périphérique ou ressource occupé»

fuser -m / storage => pid du processus qui bloquait le montage J'ai essayé de le tuer, mais chaque fois qu'un nouveau processus bloquait le montage. Je dois tuer + umount en même temps avec le tuyau (dans cet ordre): umount / storage | tuer -9 pid

Voilà le travail!


Ne fonctionne pas, connmand redémarre automatiquement avant que le terminal puisse exécuter leumount
Rob

2

Dans le cas où quelqu'un a ce problème avec la dernière version: la
réponse syb0rg est excellente mais
$ touch /var/lock/xbmc.disabled
$ killall -9 xbmc.bin

ne fonctionne plus ! Utilisez: à la
$ systemctl stop kodi.serviceplace!


2

Openelec 5:

Vérifiez quel processus bloque la partition / le stockage à démonter

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

Vérifiez si ces processus se trouvent dans l'arborescence systemd et sont contrôlés par systemd.

systemctl status affichera l'arborescence systemd.

En mai, j'ai dû arrêter ce qui suit:

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

Vérifiez fuser -m /storages'il existe toujours un processus bloquant ce répertoire. Dans le cas où certains PID sont retournés, vous pouvez vérifier quel processus est associé à ce PID en cours d'exécution ps -ef | grep $PID.

Si vous voyez quelque chose comme -shça, c'est votre session ssh qui se trouve dans le répertoire / storage. cd /aller à la racine.

Sinon, vous pouvez tuer ce processus avec kill -9 $PID.

Vous pouvez maintenant démonter le répertoire / storage en toute sécurité via

umount /storage

Vous pouvez maintenant redimensionner la partition (je ferai de nouveau rapport car certaines commandes ont été modifiées)

  1. Vérifiez à quelle participation / stockage appartiennent

    df -h

Dans la plupart des cas, ce sera /dev/mmcblk0p2(qui est la partition 2)

  1. Séparé ouvert pour le périphérique / dev / mmcblk0

    parted /dev/mmcblk0

  2. Afficher les partitions (nous savons maintenant quelle partition nous voulons redimensionner)

    p

  3. Redimensionner la partition (dans ce cas, la partition 2 jusqu'à la fin)

    resize 2 -1

    quit parted

  4. Redimensionner le système de fichiers

    e2fsck -f /dev/mmcblk0p2

    resize2fs /dev/mmcblk0p2

    mount /dev/mmcblk0p2 /storage

    df -h

Si vous voulez redimensionner / flasher, c'est une tout autre histoire.


1
A fonctionné pour moi, sauf qu'il parted /dev/mmcblk0était partedet resize 2 -1devait êtreresizepart 2 -1
ChrisGheen

Meilleure réponse jusqu'à présent. Rien d'autre n'a fonctionné pour moi, sauf cette réponse.
Michael Malura

1

J'ai résolu le problème de "démonter le stockage /" de cette façon:

fuser -m /storage

5161

kill -9 5161 && umount /storage

Cela a fonctionné pour moi.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.