Supporto XFS su banana pi/pro
Supporto XFS su banana pi/pro, si può avere ?
Ebbene sì, si può avere il Supporto XFS su banana pi/pro.
XFS è un file system di tipo journaled con indirizzamento a 64 bit sviluppato da SGI per il sistema operativo IRIX.
Ormai dal kernel 2.4.25 è inserito stabilmente in Linux, tuttavia il kernel originale del banana non lo supporta.
La differenza di prestazioni fra ext4 e xfs è mostruosa, il banana con xfs comincia a ruggire. Il disco acquisisce prestazioni paragonabili ad un pc di alto livello.
Perché si possa utilizzare questo filesystem è necessario che il kernel lo riconosca, quindi, vediamo come abilitare il Supporto XFS su banana pi/pro.
Abilitare il Supporto XFS su banana pi/pro
La cosa più importante da fare è scaricare l’immagine originale di Bananian.
# wget –no-check-certificate https://dl.bananian.org/releases/bananian-latest.zip
Volendo possiamo usare questo link https://dl.bananian.org/releases/bananian-latest.zip
La versione originale è cronologicamente dotata, quindi dopo essere stata trasferita, questa va aggiornata perché diventi moderna.
La decomprimiamo e la “burniamo” sulla SD
Primo boot
A questo punto, accendiamo il banana, quindi configuriamo la shell di root, espandaimo il filesystem della SD, settiamo la tastiera, il fuso orario e tutti gli altri aggiustamenti necessari. Dopo il riavvio effettuiamo il login e prepariamo l’ambiente.
Altra cosa molto importante, da non sottovalutare è esportare il sistema operativo sull’hard disk, quindi inseriamo un hard disk, creiamo la partizione e formattiamo quest’ultima in ext4.
Spostamento del sistema operativo
Aggiorniamo i pacchetti obsoleti:
#apt-get update && apt-get upgrade -y
Installiamo il software necessario:
#apt-get install rsync rdate build-essential libncurses5-dev u-boot-tools vim git parted -y
Adesso ci dobbiamo preparare per attivare il Supporto XFS su banana pi/pro, pertanto procediamo con la preparazione di base.
#parted -s /dev/sda mklabel gpt
#parted -s /dev/sda unit mib mkpart primary 1M 100%
Volendo, qui possiamo sbizzarrirci, fare più partizioni, creare lvm, insomma, fare ciò che vogliamo, in questo esempio, tuttavia, facciamo un’unica partizione, c’interessa soltanto attivare il Supporto XFS su banana pi/pro, nient’altro.
Montiamo il disco in una posizione disponibile
#mount /dev/sda1 /mnt/
quindi lo “rsynchiamo”.
#rsync -r -a -x -v –progress / /mnt/
Al termine dobbiamo vuotare la cache
#sync && sync
Spostamento area di boot
Smontiamo il disco e andiamo a “paciugare” sull’area di boot, da notare il termine accademico “PACIUGARE” LOL.
#umount /mnt/
Terminata la copia del sistema operativo dalla SD al disco, dobbiamo informare il bootloader che deve partire da quest’ultimo, quindi:
#mount /dev/mmcblk0p1 /mnt/
Cancelliamo il vecchio bootloader
#rm /mnt/boot.scr
Editiamo il file di boot sorgente, modifichiamo il boot facendolo puntare su sda1 e compiliamolo.
#vi /mnt/boot.cmd
Il file, dopo la modifica deve presentarsi così
Salviamo e usciamo
#cd /mnt/
Compilazione del bootloader
#mkimage -C none -A arm -T script -d boot.cmd boot.scr
#cd ..
Sincronizziamo le modifiche e smontaimo la SD
#sync && sync
#umount /mnt
Con il comando mount ci assicuriamo di aver smontato la SD e controlliamo il punto in cui è montata la attuale root che sarà in siffatto modo:
/dev/mmcblk0p2 on / type ext4 (rw,noatime), quindi impartiamo il comando di reboot.
#shutdown -r now
Al rientro in produzione, dopo esserci loggati, digitiamo nuovamente il comado mount, la root, questa volta, dovrà puntare a sda1, se ciò non fosse accaduto, è necessario ricominciare dal punto in cui si è montata la SD per spostare l’area di boot.
#mount
/dev/sda1 on / type ext4 (rw,noatime,data=ordered)
Compilazione del kernel
Per poter attivare il Supporto XFS su banana pi/pro è necessario farlo a livello di kernel, oltre che utilizzare i canonici pacchetti software, pertanto iniziamo con il procurarci i sorgenti.
#git clone https://github.com/Bananian/linux-bananapi.git –depth 1
rechiamoci nella directory appena create
#cd linux-bananapi
e prepariamo l’ambiente
#make sun7i_defconfig
A questo punto, possiamo usare il comodissimo make menuconfig per abilitare i moduli.
Scelta e abilitazione dei moduli
#make menuconfig
Selezionati i moduli necessari ad abilitare il Supporto XFS su banana pi/pro
Puliamo qualsiasi eventuale rimasuglio di vecchio kernel
#make clean
Generazione del eseguibile del kernel
Bisogna compilare il kernel, quindi è necessario impartire il comando
#make -j2 uImage modules
Dopo circa 3 ore il kernel sarà compilato a dovere, il tempo dipende moltissimo dalla velocità del disco, con un ssd s’impiega circa la metà del tempo rispetto ad un disco tradizionale, pertanto, l’utilizzo di questa tecnologia, è fortemente consigliata.
Adesso è ora di attivare il nostro kernel nuovo, fiammante, pertanto procediamo come segue:
#mount /dev/mmcblk0p1 /mnt
Rinominiamo il vecchio kernel
#mv /mnt/uImage /mnt/uImage_old
copiamo il nuovo kernel nella sua posizione definitiva
#cp arch/arm/boot/uImage /mnt
sincronizziamo la SD
#sync && sync
smontiamo la SD e riavviamo il Banana
#umount /mnt
#shutdown -r now
Se non leggiamo la scritta Kernelpanic, avremo abilitato il Supporto XFS su banana pi/pro