Crea sito
 

Convertire DVD e contenuti speciali in formato mp4 tramite FFmpeg

15 luglio, 2020 (18:22) | Senza categoria | By: sargonsei

Lo script che segue, è un ulteriore metodo per usare FFmpeg per estrarre da un DVD video i contenuti che ci interessano e convertirli in due files video formato MP4.

#!/bin/bash
# Utilizza codec video: 'libx264' e codec audio: 'aac' per converte alcuni file video '.VOB' proporzione 4/3 (risoluzione: 720x576)
# in file video '.MP4' posti al centro di un riquadro proporzione 16/9 alto 576 pixels e largo 1024 pixels 
# in modo che inizi (1024-720)/2= 152 pixels più a destra rispetto lo spigolo superiore sinistro del video 
# e poi concatena files video elencati nel file 'ListaDVD.txt'
ffmpeg -i /media/lmde3c/Punto_Di_Mount_DVD/VIDEO_TS/VTS_07_1.VOB -vcodec libx264 -filter:v fps=25 -acodec aac -vf pad=width=1024:height=576:x=152:y=0:color=green ContExtra.MP4
ffmpeg -i /media/lmde3c/Punto_Di_Mount_DVD/VIDEO_TS/VTS_01_1.VOB -vcodec libx264 -filter:v fps=25 -acodec aac -vf pad=width=1024:height=576:x=152:y=0:color=green VTS_01_1.MP4
ffmpeg -i /media/lmde3c/Punto_Di_Mount_DVD/VIDEO_TS/VTS_01_2.VOB -vcodec libx264 -filter:v fps=25 -acodec aac -vf pad=width=1024:height=576:x=152:y=0:color=green VTS_01_2.MP4
ffmpeg -i /media/lmde3c/Punto_Di_Mount_DVD/VIDEO_TS/VTS_01_3.VOB -vcodec libx264 -filter:v fps=25 -acodec aac -vf pad=width=1024:height=576:x=152:y=0:color=green VTS_01_3.MP4
# I due comandi che seguono sono alternativi l'uno all'altro, quindi uno di essi può essere omesso o 'commentato'
ffmpeg -f concat -i ListaDVD.txt DVDout0.MP4 # crea un video formato 'MP4' unendo i files video elencati nel file 'ListaDVD.txt', utilizzando i parametri di default in base al formato del video in input e del video in output
ffmpeg -f concat -i ListaDVD.txt -vcodec libx264 -filter:v fps=25 -acodec aac -s 1024x576 DVDout1.MP4 # Crea un video formato 'MP4' unendo i files video elencati nel file 'ListaDVD.txt', utilizzando codec video: 'libx264' e codec audio: 'aac'
#

Ai più esperti basterà analizzare lo script suddetto per capire come funziona e modificarlo secondo le proprie esigenze; A tutti gli altri, consiglio di leggere attentamente le istruzioni riportate nella guida che segue.

Detta guida, spiega come convertire dei video che ancora si trovano nel DVD e mettere i video già convertiti nella cartella in cui è stato aperto il terminale.
Qualora i video da convertire si trovassero in una qualsiasi altra cartella di una qualsiasi altra memoria di massa, occorre modificare di conseguenza il percorso di ciascun file video da convertire.
Qualora si desideri salvare i video in output in una qualsiasi altra cartella di una qualsiasi altra memoria di massa, occorre modificare di conseguenza il percorso di ciascun file video in output, oppure spostare i video dopo averli creati.
Qualora si desideri semplificare le operazioni contenute nello script, è possibile creare una cartella vuota, copiarvi i soli files .VOB che si desidera convertire; in questo modo, sarà possibile sia omettere il percorso dei files convertiti, sia omettere il percorso dei files da convertire. In un secondo tempo, si potrà provvedere a spostare i files video da conservare nella cartella di destinazione definitiva e/o cancellare i files che non interessa conservare.

1) Utilizzando il file-manager, accedere alla cartella ‘VIDEO_TS‘ del DVD per visualizzarne il contenuto. I files video, sono quelli avente estensione ‘.VOB‘.

2) Utilizzare un qualsiasi Video Player (es. VLC) per visualizzare i singoli files ‘.VOB‘ in modo da poter determinare quali ci interessa convertire ed a cosa sono relativi. Nel caso in esempio, ci interessano i files ‘VTS_01_1.VOB‘, ‘VTS_01_2.VOB‘, e ‘VTS_01_3.VOB‘ perchè relativi al video principale,
ed il file ‘VTS_07_1.VOB‘ perché relativo a contenuti extra che si desidera estrarre.

3) Utilizzando il file-manager, creiamo la cartella in cui vogliamo salvare i video convertiti, ci spostiamo al suo interno, e creiamo il file ListaDVD.txt contenente la lista dei files .MP4 che si vuole unire nel file video principale. Nel caso in esame, contiene:
file 'VTS_01_1.MP4'
file 'VTS_01_2.MP4'
file 'VTS_01_3.MP4'

4) Apriamo un terminale nella cartella del DVD ove si trovano i video che ci interessano e, al fine di ottenere informazioni relativi ai video che ci interessa convertire, impartiamo il comando
ffmpeg -i VTS_01_1.VOB -hide_banner ; ffmpeg -i VTS_01_2.VOB -hide_banner ; ffmpeg -i VTS_01_3.VOB -hide_banner ; ffmpeg -i VTS_07_1.VOB -hide_banner
ed esaminiamo l’output. Vediamo che tutti e 4 i video hanno risoluzione 720×576 pixels, formato 4:3, 25 fps. Infatti:

$ ffmpeg -i VTS_01_1.VOB -hide_banner ; ffmpeg -i VTS_01_2.VOB -hide_banner ; ffmpeg -i VTS_01_3.VOB -hide_banner ; ffmpeg -i VTS_07_1.VOB -hide_banner
Guessed Channel Layout for Input Stream #0.2 : stereo
Input #0, mpeg, from 'VTS_01_1.VOB':
  Duration: 00:16:38.94, start: 0.360000, bitrate: 8597 kb/s
    Stream #0:0[0x1bf]: Data: dvd_nav_packet
    Stream #0:1[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, bottom first), 720x576 [SAR 16:15 DAR 4:3], 25 fps, 25 tbr, 90k tbn, 50 tbc
    Stream #0:2[0xa0]: Audio: pcm_dvd, 48000 Hz, stereo, s16, 1536 kb/s
At least one output file must be specified
[mpeg2video @ 0x564981e12440] Invalid frame dimensions 0x0.
    Last message repeated 2 times
Guessed Channel Layout for Input Stream #0.1 : stereo
Input #0, mpeg, from 'VTS_01_2.VOB':
  Duration: 00:16:31.66, start: 999.298333, bitrate: 8660 kb/s
    Stream #0:0[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, smpte170m/bt470bg/bt470bg, bottom first), 720x576 [SAR 16:15 DAR 4:3], 25 fps, 25 tbr, 90k tbn, 50 tbc
    Stream #0:1[0xa0]: Audio: pcm_dvd, 48000 Hz, stereo, s16, 1536 kb/s
    Stream #0:2[0x1bf]: Data: dvd_nav_packet
At least one output file must be specified
[mpeg2video @ 0x5577416a1440] Invalid frame dimensions 0x0.
    Last message repeated 3 times
Guessed Channel Layout for Input Stream #0.1 : stereo
Input #0, mpeg, from 'VTS_01_3.VOB':
  Duration: 00:03:22.75, start: 1990.895000, bitrate: 8552 kb/s
    Stream #0:0[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, smpte170m/bt470bg/bt470bg, bottom first), 720x576 [SAR 16:15 DAR 4:3], 25 fps, 25 tbr, 90k tbn, 50 tbc
    Stream #0:1[0xa0]: Audio: pcm_dvd, 48000 Hz, stereo, s16, 1536 kb/s
    Stream #0:2[0x1bf]: Data: dvd_nav_packet
At least one output file must be specified
Guessed Channel Layout for Input Stream #0.2 : stereo
Input #0, mpeg, from 'VTS_07_1.VOB':
  Duration: 00:06:22.12, start: 0.360000, bitrate: 7896 kb/s
    Stream #0:0[0x1bf]: Data: dvd_nav_packet
    Stream #0:1[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, bottom first), 720x576 [SAR 16:15 DAR 4:3], 25 fps, 25 tbr, 90k tbn, 50 tbc
    Stream #0:2[0xa0]: Audio: pcm_dvd, 48000 Hz, stereo, s16, 1536 kb/s
At least one output file must be specified
$

5a) Per converte un file video ‘.VOB‘ in un video formato ‘MP4‘ utilizzando il codec video ‘libx264‘ ed il codec audio ‘aac‘, è sufficiente utilizzare un comando tipo

ffmpeg -i Input.VOB -vcodec libx264 -filter:v fps=25 -acodec aac Output.MP4 # Converte il file video '.VOB' in un video formato 'MP4', utilizzando codec video: 'libx264' e codec audio: 'aac'

5b) Appurato che i video in formato .VOB da convertire in formato .MP4 hanno tutti proporzione 4/3 (risoluzione: 720×576), per poterli vedere con un televisore formato 16/9 senza deformazioni, occorre porli al centro di un riquadro formato 16/9 alto 576 pixels e largo (576*16/9)=1024 pixels in modo che appaiano (1024-720)/2= 152 pixels più a destra rispetto lo spigolo superiore sinistro del video. FFmpeg permette di raggiungere questo risultato impartendo un comando tipo:

ffmpeg -i Input.VOB -vf pad=width=1024:height=576:x=152:y=0:color=red Output.mp4 # Converte nel formato .MP4 il video 'Input.VOB' e lo pone al centro di un riquadro alto 576 pixels e largo 1024 pixels in modo che inizi (1024-720)/2= 152 pixels più a destra rispetto lo spigolo superiore sinistro del video.

5c) I due comandi precedenti, possono essere integrati in un unico comando tipo

ffmpeg -i Input.VOB -vcodec libx264 -filter:v fps=25 -acodec aac -vf pad=width=1024:height=576:x=152:y=0:color=red Output.mp4 # Utilizza codec video: 'libx264' e codec audio: 'aac' per converte il file video '.VOB' proporzione 4/3 (risoluzione: 720x576) in un file video '.MP4' e lo pone al centro di un riquadro alto 576 pixels e largo 1024 pixels in modo che inizi (1024-720)/2= 152 pixels più a destra rispetto lo spigolo superiore sinistro del video.

6) Nella cartella in cui vogliamo salvare i video convertiti, creiamo il file ‘ComandiDVD.txt’ contenente:

#!/bin/bash
# Utilizza codec video: 'libx264' e codec audio: 'aac' per converte alcuni file video '.VOB' proporzione 4/3 (risoluzione: 720x576)
# in file video '.MP4' posti al centro di un riquadro proporzione 16/9 alto 576 pixels e largo 1024 pixels
# in modo che inizi (1024-720)/2= 152 pixels più a destra rispetto lo spigolo superiore sinistro del video
# e poi concatena files video elencati nel file 'ListaDVD.txt'
ffmpeg -i /media/lmde3c/Punto_Di_Mount_DVD/VIDEO_TS/VTS_07_1.VOB -vcodec libx264 -filter:v fps=25 -acodec aac -vf pad=width=1024:height=576:x=152:y=0:color=green ContExtra.MP4
ffmpeg -i /media/lmde3c/Punto_Di_Mount_DVD/VIDEO_TS/VTS_01_1.VOB -vcodec libx264 -filter:v fps=25 -acodec aac -vf pad=width=1024:height=576:x=152:y=0:color=green VTS_01_1.MP4
ffmpeg -i /media/lmde3c/Punto_Di_Mount_DVD/VIDEO_TS/VTS_01_2.VOB -vcodec libx264 -filter:v fps=25 -acodec aac -vf pad=width=1024:height=576:x=152:y=0:color=green VTS_01_2.MP4
ffmpeg -i /media/lmde3c/Punto_Di_Mount_DVD/VIDEO_TS/VTS_01_3.VOB -vcodec libx264 -filter:v fps=25 -acodec aac -vf pad=width=1024:height=576:x=152:y=0:color=green VTS_01_3.MP4
# I due comandi che seguono sono alternativi l'uno all'altro, quindi uno di essi può essere omesso o 'commentato'
ffmpeg -f concat -i ListaDVD.txt DVDout0.MP4 # crea un video formato 'MP4' unendo i files video elencati nel file 'ListaDVD.txt', utilizzando i parametri di default in base al formato del video in input e del video in output
ffmpeg -f concat -i ListaDVD.txt -vcodec libx264 -filter:v fps=25 -acodec aac -s 1024x576 DVDout1.MP4 # Crea un video formato 'MP4' unendo i files video elencati nel file 'ListaDVD.txt', utilizzando codec video: 'libx264' e codec audio: 'aac'
#

7) Salvare il file di testo ComandiDVD.txt così ottenuto.

8) Cliccare col tasto destro del mouse sul file di testo ComandiDVD.txt, selezionare [Proprietà]>[Permessi], ed assicurarsi che la voce “Consentire l’esecuzione del file come programma” sia selezionata.

9) Doppio click col tasto sinistro del mouse sul file di testo ComandiDVD.txt; nel pannello che si apre, selezionare la voce “Esegui nel terminale“.

A questo punto, lo script si attiverà, eseguendo una dopo l’altra i comandi ivi contenuti.

Convertire DVD e contenuti speciali in formato mp4 tramite FFmpeg

13 luglio, 2020 (20:35) | Fotografia digitale, Linux | By: sargonsei

Se vogliamo convertire l’intero contenuto di un DVD in un file video formato MP4 mantenendo inalterata la qualità dell’audio e del video, possiamo utilizzare il comando
ffmpeg -i /dev/sr0 -q:a 0 -q:v 0 ContenutoDVD.mp4 # Converte un intero DVD in un video formato MP4 mantenendo inalterata la qualità audio e video
Otterremo così un file video avente nome “ContenutoDVD.mp4” contenente non sono solo i files video relativi al film, ma anche i menù video, i contenuti extra, ed ogni altro contenuto multimediale eventualmente presente nel DVD.

Ora spiego come usare FFmpeg per estrarre i contenuti del DVD che ci interessano e convertirli in uno o più files video formato MP4.

    La guida che segue, è pensata per convertire dei video che ancora si trovano nel DVD e mettere i video convertiti nella cartella in cui è stato aperto il terminale.

Qualora i video da convertire si trovassero in una qualsiasi altra cartella di una qualsiasi altra memoria di massa, occorre modificare di conseguenza il percorso di ciascun file video da copiare.
Qualora si desideri salvare i video in output in una qualsiasi altra cartella di una qualsiasi altra memoria di massa, occorre modificare di conseguenza il percorso di ciascun file video in output, oppure spostare i video dopo averli creati.
Qualora si desideri semplificare le operazioni contenute nello script, è possibile creare una cartella vuota, e copiarvi i soli files .VOB che si desidera convertire; in questo modo, sarà possibile sia omettere le righe dello script che copiano i files .VOB. In un secondo tempo, si potrà provvedere a spostare nella cartella di destinazione definitiva i files video da conservare e cancellare i files che non interessa conservare.

1) Utilizzando il file-manager, accedere alla cartella ‘VIDEO_TS‘ del DVD per visualizzarne il contenuto. I files video, sono quelli avente estensione ‘.VOB‘.

2) Utilizzare un qualsiasi Video Player (es. VLC) per visualizzare i singoli files ‘.VOB‘ in modo da poter determinare quali ci interessa convertire ed a cosa sono relativi. Nel caso in esempio, ci interessano i files ‘VTS_09_1.VOB‘, ‘VTS_09_2.VOB‘, e ‘VTS_09_3.VOB‘ perchè relativi al video principale,
ed il file ‘VTS_05_1‘ perchè relativo a contenuti extra che si desidera estrarre.

3) Utilizzando il file-manager, creiamo la cartella in cui vogliamo salvare i video convertiti, ci spostiamo al suo interno, e creiamo il file ListaDVD.txt contenente la lista dei files .MP4 che si vuole unire nel file video principale. Nel caso in esame, contiene:
file 'Parte1.MP4'
file 'Parte3.MP4'
file 'Parte3.MP4'

4) Apriamo un terminale nella cartella del DVD ove si trovano i video che ci interessano e, al fine di ottenere informazioni relativi ai video che ci interessa convertire, impartiamo il comando
ffmpeg -i VTS_09_1.VOB -hide_banner ; ffmpeg -i VTS_09_2.VOB -hide_banner ; ffmpeg -i VTS_09_3.VOB -hide_banner ; ffmpeg -i VTS_05_1.VOB -hide_banner
ed esaminiamo l’output. Vediamo che tutti e 4 i video hanno risoluzione 720×576 pixels, formato 4:3, 25 fps. Infatti:

 $ ffmpeg -i VTS_09_1.VOB -hide_banner ; ffmpeg -i VTS_09_2.VOB -hide_banner ; ffmpeg -i VTS_09_3.VOB -hide_banner ; ffmpeg -i VTS_05_1.VOB -hide_banner
Guessed Channel Layout for Input Stream #0.2 : stereo
Input #0, mpeg, from 'VTS_09_1.VOB':
  Duration: 00:16:38.94, start: 0.360000, bitrate: 8597 kb/s
    Stream #0:0[0x1bf]: Data: dvd_nav_packet
    Stream #0:1[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, bottom first), 720x576 [SAR 16:15 DAR 4:3], 25 fps, 25 tbr, 90k tbn, 50 tbc
    Stream #0:2[0xa0]: Audio: pcm_dvd, 48000 Hz, stereo, s16, 1536 kb/s
At least one output file must be specified
[mpeg2video @ 0x564981e12440] Invalid frame dimensions 0x0.
    Last message repeated 2 times
Guessed Channel Layout for Input Stream #0.1 : stereo
Input #0, mpeg, from 'VTS_09_2.VOB':
  Duration: 00:16:31.66, start: 999.298333, bitrate: 8660 kb/s
    Stream #0:0[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, smpte170m/bt470bg/bt470bg, bottom first), 720x576 [SAR 16:15 DAR 4:3], 25 fps, 25 tbr, 90k tbn, 50 tbc
    Stream #0:1[0xa0]: Audio: pcm_dvd, 48000 Hz, stereo, s16, 1536 kb/s
    Stream #0:2[0x1bf]: Data: dvd_nav_packet
At least one output file must be specified
[mpeg2video @ 0x5577416a1440] Invalid frame dimensions 0x0.
    Last message repeated 3 times
Guessed Channel Layout for Input Stream #0.1 : stereo
Input #0, mpeg, from 'VTS_09_3.VOB':
  Duration: 00:03:22.75, start: 1990.895000, bitrate: 8552 kb/s
    Stream #0:0[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, smpte170m/bt470bg/bt470bg, bottom first), 720x576 [SAR 16:15 DAR 4:3], 25 fps, 25 tbr, 90k tbn, 50 tbc
    Stream #0:1[0xa0]: Audio: pcm_dvd, 48000 Hz, stereo, s16, 1536 kb/s
    Stream #0:2[0x1bf]: Data: dvd_nav_packet
At least one output file must be specified
Guessed Channel Layout for Input Stream #0.2 : stereo
Input #0, mpeg, from 'VTS_05_1.VOB':
  Duration: 00:06:22.12, start: 0.360000, bitrate: 7896 kb/s
    Stream #0:0[0x1bf]: Data: dvd_nav_packet
    Stream #0:1[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, bottom first), 720x576 [SAR 16:15 DAR 4:3], 25 fps, 25 tbr, 90k tbn, 50 tbc
    Stream #0:2[0xa0]: Audio: pcm_dvd, 48000 Hz, stereo, s16, 1536 kb/s
At least one output file must be specified
$

5a) Per converte un file video ‘.VOB‘ in un video formato ‘MP4‘ utilizzando il codec video ‘libx264‘ ed il codec audio ‘aac‘, è sufficiente utilizzare un comando tipo
ffmpeg -i Input.VOB -vcodec libx264 -filter:v fps=25 -acodec aac Output.MP4 # Converte il file video '.VOB' in un video formato 'MP4', utilizzando codec video: 'libx264' e codec audio: 'aac'

5b) Appurato che i video in formato .VOB da convertire in formato .MP4 hanno tutti proporzione 4/3 (risoluzione: 720×576), per poterli vedere con un televisore formato 16/9 senza deformazioni, potrebbe essere indispensabile porli al centro di un riquadro formato 16/9 alto 576 pixels e largo (576*16/9)=1024 pixels in modo che appaiano (1024-720)/2= 152 pixels più a destra rispetto lo spigolo superiore sinistro del video. FFmpeg permette di raggiungere questo risultato impartendo un comando tipo:
ffmpeg -i Input.VOB -vf pad=width=1024:height=576:x=152:y=0:color=red Output.mp4 # Converte nel formato .MP4 il video 'Input.VOB' e lo pone al centro di un riquadro alto 576 pixels e largo 1024 pixels in modo che inizi (1024-720)/2= 152 pixels più a destra rispetto lo spigolo superiore sinistro del video.

5c) I due comandi precedenti, possono essere integrati in un unico comando tipo
ffmpeg -i Input.VOB -vcodec libx264 -filter:v fps=25 -acodec aac -vf pad=width=1024:height=576:x=152:y=0:color=red Output.mp4 # Utilizza codec video: 'libx264' e codec audio: 'aac' per converte il file video '.VOB' proporzione 4/3 (risoluzione: 720x576) in un file video '.MP4' e lo pone al centro di un riquadro alto 576 pixels e largo 1024 pixels in modo che inizi (1024-720)/2= 152 pixels più a destra rispetto lo spigolo superiore sinistro del video.

6) Nella cartella in cui vogliamo salvare i video convertiti, creiamo il file ‘ComandiDVD.txt‘ contenente:

#!/bin/bash
# Utilizza codec video: 'libx264' e codec audio: 'aac' per converte alcuni file video '.VOB' proporzione 4/3 (risoluzione: 720x576)
# in file video '.MP4' posti al centro di un riquadro proporzione 16/9 alto 576 pixels e largo 1024 pixels
# in modo che inizi (1024-720)/2= 152 pixels più a destra rispetto lo spigolo superiore sinistro del video
# e poi concatena files video elencati nel file 'ListaDVD.txt'
#
# Per poter eseguire i 4 comandi seguenti, occorre che il DVD sia inserito nel lettore DVD del computer
cp /media/lmde3c/Punto_Di_Mount_DVD/VIDEO_TS/VTS_05_1.VOB VTS_05_1.VOB
cp /media/lmde3c/Punto_Di_Mount_DVD/VIDEO_TS/VTS_09_1.VOB Parte1.VOB
cp /media/lmde3c/Punto_Di_Mount_DVD/VIDEO_TS/VTS_09_2.VOB Parte2.VOB
cp /media/lmde3c/Punto_Di_Mount_DVD/VIDEO_TS/VTS_09_2.VOB Parte2.VOB
#
# Da questo punto in poi, è possibile togliere il DVD dal lettore DVD del computer
#
ffmpeg -i VTS_05_1.VOB -vcodec libx264 -filter:v fps=25 -acodec aac -vf pad=width=1024:height=576:x=152:y=0:color=green ContExtra.MP4
ffmpeg -i Parte1.VOB -vcodec libx264 -filter:v fps=25 -acodec aac -vf pad=width=1024:height=576:x=152:y=0:color=green Parte1.MP4
ffmpeg -i Parte2.VOB -vcodec libx264 -filter:v fps=25 -acodec aac -vf pad=width=1024:height=576:x=152:y=0:color=green Parte2.MP4
ffmpeg -i Parte3.VOB -vcodec libx264 -filter:v fps=25 -acodec aac -vf pad=width=1024:height=576:x=152:y=0:color=green Parte3.MP4
#
# I due comandi che seguono sono alternativi l'uno all'altro
# ffmpeg -f concat -i ListaDVD.txt DVDout0.MP4 # crea un video formato 'MP4' unendo i files video elencati nel file 'ListaDVD.txt', utilizzando i parametri di default in base al formato del video in input e del video in output
ffmpeg -f concat -i ListaDVD.txt -vcodec libx264 -filter:v fps=25 -acodec aac -s 1024x576 DVDout1.MP4 # Crea un video formato 'MP4' unendo i files video elencati nel file 'ListaDVD.txt', utilizzando codec video: 'libx264' e codec audio: 'aac'
#
#

7) Salvare il file di testo ComandiDVD.txt così ottenuto.

8) Cliccare col tasto destro del mouse sul file di testo ComandiDVD.txt, selezionare [Proprietà]>[Permessi], ed assicurarsi che la voce “Consentire l’esecuzione del file come programma” sia selezionata.

9) Doppio click col tasto sinistro del mouse sul file di testo ComandiDVD.txt; nel pannello che si apre, selezionare la voce “Esegui nel terminale”.

A questo punto, lo script si attiverà, eseguendo una dopo l’altra i comandi ivi contenuti.

Ffmpeg: modificare immagini.

31 maggio, 2020 (20:27) | Fotografia digitale, Linux | By: sargonsei

Ffmpeg funziona molto bene sia per elaborare files video, sia per elaborare immagini; in questa guida, spiego come usarlo per:
1) conoscere le caratteristiche di un file multimediale
2) estrarre un’immagine da un filmato
3) ruotare un’immagine di 90 gradi e/o specchiarla
4) ruotare un’immagine di pochi gradi
5) estrarre una porzione di immagine
6) modificare la risoluzione di un’immagine.

Questa guida è impostata supponendo di dover estrarre un’immagine in formato .png da un video in formato .mp4 e compiere le operazioni suddette nella sequenza di cui sopra, ma è valida anche per chi intende compiere solo alcune delle operazioni suddette.

1) ffmpeg -i videoIN.mp4 -hide_banner # Elenca caratteristiche del file multimediale videoIN.mp4 [01]

2) ffmpeg -i videoIN.mp4 -r 30 -ss 00:02:05.00 -t 00:00:01.00 images%05d.png # estrae 30 immagini; la prima è quella che si trova a 2m.30s. dall’inizio, l’ultima è quella che compare 1 secondo dopo la prima [02]
2B) Rinominare img001.png l’immagine che si vuole elaborare, e cancellare le immagini appena ottenute che si ritiene inutili.

3) ffmpeg -i img001.png -vf “transpose=1” -y img002.png # Ruota di 90 gradi in senso orario l’immagine img001.png [03]
3a) ffmpeg -i img001.png -vf “transpose=2” -y img002-2.png # Ruota di 90 gradi in senso antiorario l’immagine img001.png [03]
3b) ffmpeg -i img001.png -vf hflip -y img002-h.png # Specchia orizzontalmente (destra <=> sinistra) l’immagine img001.png [03]
3c) ffmpeg -i img001.png -vf vflip -y img002-v.png # Specchia verticalmente (sotto <=> sopra) l’immagine img001.png [03]
3d) ffmpeg -i img001.png -vf “transpose=3” -y img002-3.png # Specchia e ruota di 90 gradi in senso orario l’immagine img001.png [03]
3e) ffmpeg -i img001.png -vf “transpose=0” -y img002-0.png # Specchia e ruota di 90 gradi in senso antiorario l’immagine img001.png [03]

4)
ffmpeg -i img002.png -vf rotate=5*(PI/180) img003.png # Ruota di 5 gradi in senso orario l’immagine img002.png [04]
4a) ffmpeg -i img002.png -vf rotate=-5*(PI/180) img003a.png # Ruota di 5 gradi in senso antiorario l’immagine img002.png [04]

5) ffmpeg -i img003.png -vf “crop=w:h:x:y” img004.png # Estrae da img003.png un’immagine larga W pixels ed alta H pixels di cui il pixel in alto a sinistra dista x pixels dal bordo sinistro ed Y pixels dal bordo superiore dell’immagine img003.png [05]
ovvero
ffmpeg -i img003.png -vf “crop=600:338:20:620” img004.png # Estrae da img003.png un’immagine larga 600 pixels ed alta 338 pixels di cui il pixel in alto a sinistra dista 20 pixels dal bordo sinistro e 620 pixels dal bordo superiore dell’immagine img003.png [05]

6) ffmpeg -i img004.png -vf scale=200:-1 img005.png # Modifica la risoluzione dell’immagine img004.png in modo che il lato maggiore sia di 200 pixels [06]
6a) for i in *.png; do ffmpeg -i “$i” -vf scale=200:-1 “${i%.*}lr.PNG”; done # Modifica la risoluzione di tutte le immagini contenute nella cartella in modo che il lato maggiore sia di 200 pixels [06]

Spiegazione dettagliata.
01) Per prima cosa, occorre capire quali sono le caratteristiche del file video (in questo esempio, videoIN.mp4) da cui si desidera estrarre l’immagine da elaborare. A tale scopo, aprire un terminale nella cartella in cui si trova il file video videoIN.mp4 ed impartire il comando:
>$ ffmpeg -i videoIN.mp4 -hide_banner # Elenca caratteristiche del file multimediale videoIN.mp4
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'videoIN.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf57.71.100
Duration: 00:10:19.35, start: 0.000000, bitrate: 1650 kb/s
Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 1280x720 [SAR 1:1 DAR 16:9], 1514 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
Metadata:
handler_name : VideoHandler
Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 127 kb/s (default)
Metadata:
handler_name : SoundHandler
At least one output file must be specified
>$

Vediamo così che il file video in ingresso contiene 30 Fotogrammi Per Secondo ciascuno di 1280×720 pixels (formato: 16:9)
Con un programma per visualizzare i video (nel mio caso, VLC, ma va bene qualsiasi programma che permetta di visualizzare i video ed il tempo intercorso dall’inizio del video), vediamo dove si trova il fotogramma che si vuole estrarre; per questo esempio, abbiamo individuato che si tratta di uno dei 30 fotogrammi che si trova fra 2min.05sec. e 2min.06sec.

02) Ora spiego come estrarre l’immagine che ci interessa. In questo esempio, si utilizzano immagini in formato .png, ma nulla vieta di utilizzare il formato .jpg o altro formato. Aprire un terminale nella cartella in cui si trova il file video videoIN.mp4 ed impartire il comando:
>$ ffmpeg -i videoIN.mp4 -r 30 -ss 00:02:05.00 -t 00:00:01.00 images%05d.png # estrae 30 immagini; la prima è quella che si trova a 2m.30s. dall'inizio, l'ultima è quella che compare 1 secondo dopo la prima [02]
ffmpeg version 3.3.9 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 6.3.0 (Debian 6.3.0-18+deb9u1) 20170516
configuration: --disable-decoder=amrnb --disable-decoder=libopenjpeg --disable-mips32r2 --disable-mips32r6 --disable-mips64r6 --disable-mipsdsp --disable-mipsdspr2 --disable-mipsfpu --disable-msa --disable-libopencv --disable-podpages --disable-stripping --enable-avfilter --enable-avresample --enable-gcrypt --enable-gnutls --enable-gpl --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libfdk-aac --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libilbc --enable-libkvazaar --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libx265 --enable-libxvid --enable-libzvbi --enable-nonfree --enable-opengl --enable-openssl --enable-postproc --enable-pthreads --enable-shared --enable-version3 --incdir=/usr/include/x86_64-linux-gnu --libdir=/usr/lib/x86_64-linux-gnu --prefix=/usr --toolchain=hardened --enable-frei0r --enable-chromaprint --enable-libx264 --enable-libiec61883 --enable-libdc1394 --enable-vaapi --disable-opencl --enable-libmfx --disable-altivec --shlibdir=/usr/lib/x86_64-linux-gnu
libavutil 55. 58.100 / 55. 58.100
libavcodec 57. 89.100 / 57. 89.100
libavformat 57. 71.100 / 57. 71.100
libavdevice 57. 6.100 / 57. 6.100
libavfilter 6. 82.100 / 6. 82.100
libavresample 3. 5. 0 / 3. 5. 0
libswscale 4. 6.100 / 4. 6.100
libswresample 2. 7.100 / 2. 7.100
libpostproc 54. 5.100 / 54. 5.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'videoIN.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf57.71.100
Duration: 00:10:19.35, start: 0.000000, bitrate: 1650 kb/s
Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 1280x720 [SAR 1:1 DAR 16:9], 1514 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
Metadata:
handler_name : VideoHandler
Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 127 kb/s (default)
Metadata:
handler_name : SoundHandler
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> png (native))
Press [q] to stop, [?] for help
Output #0, image2, to 'images%05d.png':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf57.71.100
Stream #0:0(und): Video: png, rgb24, 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 30 fps, 30 tbn, 30 tbc (default)
Metadata:
handler_name : VideoHandler
encoder : Lavc57.89.100 png
frame= 30 fps=1.9 q=-0.0 Lsize=N/A time=00:00:01.00 bitrate=N/A speed=0.0624x
video:37662kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
>$

Abbiamo detto che ne cerchiamo solo una, ma per individuare esattamente quella che interessa, è utile estrarre tutte le immagini che compongono un secondodi video nei pressi dell’immagine che ci interessa (nel caso di un video a 30 fps, 30 immagini). Individuata l’immagine che si desidera elaborare, la rinominiamo img001.png e cancelliamo tutte le altre.

03) Ora spiego come ruotare di 90 gradi in senso orario l’immagine img001.png. Aprire un terminale nella cartella in cui si trova il file img001.png ed impartire il comando:
>$ $ ffmpeg -i img001.png -vf "transpose=1" -y img002.png # Ruota di 90 gradi in senso orario l'immagine img001.png [03]
ffmpeg version 3.3.9 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 6.3.0 (Debian 6.3.0-18+deb9u1) 20170516
configuration: --disable-decoder=amrnb --disable-decoder=libopenjpeg --disable-mips32r2 --disable-mips32r6 --disable-mips64r6 --disable-mipsdsp --disable-mipsdspr2 --disable-mipsfpu --disable-msa --disable-libopencv --disable-podpages --disable-stripping --enable-avfilter --enable-avresample --enable-gcrypt --enable-gnutls --enable-gpl --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libfdk-aac --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libilbc --enable-libkvazaar --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libx265 --enable-libxvid --enable-libzvbi --enable-nonfree --enable-opengl --enable-openssl --enable-postproc --enable-pthreads --enable-shared --enable-version3 --incdir=/usr/include/x86_64-linux-gnu --libdir=/usr/lib/x86_64-linux-gnu --prefix=/usr --toolchain=hardened --enable-frei0r --enable-chromaprint --enable-libx264 --enable-libiec61883 --enable-libdc1394 --enable-vaapi --disable-opencl --enable-libmfx --disable-altivec --shlibdir=/usr/lib/x86_64-linux-gnu
libavutil 55. 58.100 / 55. 58.100
libavcodec 57. 89.100 / 57. 89.100
libavformat 57. 71.100 / 57. 71.100
libavdevice 57. 6.100 / 57. 6.100
libavfilter 6. 82.100 / 6. 82.100
libavresample 3. 5. 0 / 3. 5. 0
libswscale 4. 6.100 / 4. 6.100
libswresample 2. 7.100 / 2. 7.100
libpostproc 54. 5.100 / 54. 5.100
Input #0, png_pipe, from 'img001.png':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: png, rgb24(pc), 1280x720 [SAR 1:1 DAR 16:9], 25 tbr, 25 tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (png (native) -> png (native))
Press [q] to stop, [?] for help
Output #0, image2, to 'img002.png':
Metadata:
encoder : Lavf57.71.100
Stream #0:0: Video: png, rgb24, 720x1280 [SAR 1:1 DAR 9:16], q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc
Metadata:
encoder : Lavc57.89.100 png
frame= 1 fps=0.0 q=-0.0 Lsize=N/A time=00:00:00.04 bitrate=N/A speed=0.186x
video:1341kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
[email protected]:/mnt/Dati1/GuidaFfmpeg/ffmpeg-Foto$
>$

Se invece dovesse essere necessario ruotare l’immagine di 90 gradi in senso antiorario, oppure specchiarla orizzontalmente, oppure specchiarla verticalmente, oppure specchiarla e ruotarla di 90 gradi in senso orario, oppure specchiarla e ruotarla di 90 gradi in senso antiorario, i comandi corrispondenti sono i seguenti:
3a) ffmpeg -i img001.png -vf “transpose=2” -y img002-2.png # Ruota di 90 gradi in senso antiorario l’immagine img001.png [03]
3b) ffmpeg -i img001.png -vf hflip -y img002-h.png # Specchia orizzontalmente (destra <=> sinistra) l’immagine img001.png [03]
3c) ffmpeg -i img001.png -vf vflip -y img002-v.png # Specchia verticalmente (sotto <=> sopra) l’immagine img001.png [03]
3d) ffmpeg -i img001.png -vf “transpose=3” -y img002-3.png # Specchia e ruota di 90 gradi in senso orario l’immagine img001.png [03]
3e) ffmpeg -i img001.png -vf “transpose=0” -y img002-0.png # Specchia e ruota di 90 gradi in senso antiorario l’immagine img001.png [03]

04) Ora spiego come ruotare di 5 gradi in senso orario l’immagine che ci interessa. Aprire un terminale nella cartella in cui si trova il file img002.png ed impartire il comando:
>$ ffmpeg -i img002.png -vf rotate=5*(PI/180) img003.png # Ruota di 5 gradi in senso orario l'immagine img002.png [04]
ffmpeg version 3.3.9 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 6.3.0 (Debian 6.3.0-18+deb9u1) 20170516
configuration: --disable-decoder=amrnb --disable-decoder=libopenjpeg --disable-mips32r2 --disable-mips32r6 --disable-mips64r6 --disable-mipsdsp --disable-mipsdspr2 --disable-mipsfpu --disable-msa --disable-libopencv --disable-podpages --disable-stripping --enable-avfilter --enable-avresample --enable-gcrypt --enable-gnutls --enable-gpl --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libfdk-aac --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libilbc --enable-libkvazaar --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libx265 --enable-libxvid --enable-libzvbi --enable-nonfree --enable-opengl --enable-openssl --enable-postproc --enable-pthreads --enable-shared --enable-version3 --incdir=/usr/include/x86_64-linux-gnu --libdir=/usr/lib/x86_64-linux-gnu --prefix=/usr --toolchain=hardened --enable-frei0r --enable-chromaprint --enable-libx264 --enable-libiec61883 --enable-libdc1394 --enable-vaapi --disable-opencl --enable-libmfx --disable-altivec --shlibdir=/usr/lib/x86_64-linux-gnu
libavutil 55. 58.100 / 55. 58.100
libavcodec 57. 89.100 / 57. 89.100
libavformat 57. 71.100 / 57. 71.100
libavdevice 57. 6.100 / 57. 6.100
libavfilter 6. 82.100 / 6. 82.100
libavresample 3. 5. 0 / 3. 5. 0
libswscale 4. 6.100 / 4. 6.100
libswresample 2. 7.100 / 2. 7.100
libpostproc 54. 5.100 / 54. 5.100
Input #0, png_pipe, from 'img002.png':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: png, rgb24(pc), 720x1280 [SAR 1:1 DAR 9:16], 25 tbr, 25 tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (png (native) -> png (native))
Press [q] to stop, [?] for help
Output #0, image2, to 'img003.png':
Metadata:
encoder : Lavf57.71.100
Stream #0:0: Video: png, rgb24, 720x1280 [SAR 1:1 DAR 9:16], q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc
Metadata:
encoder : Lavc57.89.100 png
frame= 1 fps=0.0 q=-0.0 Lsize=N/A time=00:00:00.04 bitrate=N/A speed=0.164x
video:1534kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
[email protected]:/mnt/Dati1/GuidaFfmpeg/ffmpeg-Foto$
>$

Se invece dovesse essere necessario ruotare l’immagine di 5 gradi in senso antiorario, il comando corrispondente è il seguente:
4a) ffmpeg -i img002.png -vf rotate=-5*(PI/180) img003a.png # Ruota di 5 gradi in senso antiorario l’immagine img002.png [04]

05) Ora spiego come estrarre da img003.png un’immagine larga W=600 pixels ed alta H=338 pixels di cui il pixel in alto a sinistra dista X=20 pixels dal bordo sinistro ed Y=620 pixels dal bordo superiore dell’immagine img003.png. Aprire un terminale nella cartella in cui si trova il file img002.png ed impartire il comando:
>$ ffmpeg -i img003.png -vf "crop=600:338:20:620" img004.png # Estrae da img003.png un'immagine larga 600 pixels ed alta 338 pixels di cui il pixel in alto a sinistra dista 20 pixels dal bordo sinistro e 620 pixels dal bordo superiore dell'immagine img003.png [05]
ffmpeg version 3.3.9 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 6.3.0 (Debian 6.3.0-18+deb9u1) 20170516
configuration: --disable-decoder=amrnb --disable-decoder=libopenjpeg --disable-mips32r2 --disable-mips32r6 --disable-mips64r6 --disable-mipsdsp --disable-mipsdspr2 --disable-mipsfpu --disable-msa --disable-libopencv --disable-podpages --disable-stripping --enable-avfilter --enable-avresample --enable-gcrypt --enable-gnutls --enable-gpl --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libfdk-aac --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libilbc --enable-libkvazaar --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libx265 --enable-libxvid --enable-libzvbi --enable-nonfree --enable-opengl --enable-openssl --enable-postproc --enable-pthreads --enable-shared --enable-version3 --incdir=/usr/include/x86_64-linux-gnu --libdir=/usr/lib/x86_64-linux-gnu --prefix=/usr --toolchain=hardened --enable-frei0r --enable-chromaprint --enable-libx264 --enable-libiec61883 --enable-libdc1394 --enable-vaapi --disable-opencl --enable-libmfx --disable-altivec --shlibdir=/usr/lib/x86_64-linux-gnu
libavutil 55. 58.100 / 55. 58.100
libavcodec 57. 89.100 / 57. 89.100
libavformat 57. 71.100 / 57. 71.100
libavdevice 57. 6.100 / 57. 6.100
libavfilter 6. 82.100 / 6. 82.100
libavresample 3. 5. 0 / 3. 5. 0
libswscale 4. 6.100 / 4. 6.100
libswresample 2. 7.100 / 2. 7.100
libpostproc 54. 5.100 / 54. 5.100
Input #0, png_pipe, from 'img003.png':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: png, rgb24(pc), 720x1280 [SAR 1:1 DAR 9:16], 25 tbr, 25 tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (png (native) -> png (native))
Press [q] to stop, [?] for help
Output #0, image2, to 'img004.png':
Metadata:
encoder : Lavf57.71.100>$ ffmpeg -i img004.png -vf scale=200:-1 img005.png # Modifica la risoluzione dell'immagine img004.png in modo che il lato maggiore sia di 200 pixels [06]
ffmpeg version 3.3.9 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 6.3.0 (Debian 6.3.0-18+deb9u1) 20170516
configuration: --disable-decoder=amrnb --disable-decoder=libopenjpeg --disable-mips32r2 --disable-mips32r6 --disable-mips64r6 --disable-mipsdsp --disable-mipsdspr2 --disable-mipsfpu --disable-msa --disable-libopencv --disable-podpages --disable-stripping --enable-avfilter --enable-avresample --enable-gcrypt --enable-gnutls --enable-gpl --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libfdk-aac --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libilbc --enable-libkvazaar --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libx265 --enable-libxvid --enable-libzvbi --enable-nonfree --enable-opengl --enable-openssl --enable-postproc --enable-pthreads --enable-shared --enable-version3 --incdir=/usr/include/x86_64-linux-gnu --libdir=/usr/lib/x86_64-linux-gnu --prefix=/usr --toolchain=hardened --enable-frei0r --enable-chromaprint --enable-libx264 --enable-libiec61883 --enable-libdc1394 --enable-vaapi --disable-opencl --enable-libmfx --disable-altivec --shlibdir=/usr/lib/x86_64-linux-gnu
libavutil 55. 58.100 / 55. 58.100
libavcodec 57. 89.100 / 57. 89.100
libavformat 57. 71.100 / 57. 71.100
libavdevice 57. 6.100 / 57. 6.100
libavfilter 6. 82.100 / 6. 82.100
libavresample 3. 5. 0 / 3. 5. 0
libswscale 4. 6.100 / 4. 6.100
libswresample 2. 7.100 / 2. 7.100
libpostproc 54. 5.100 / 54. 5.100
Input #0, png_pipe, from 'img004.png':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: png, rgb24(pc), 600x338 [SAR 1:1 DAR 300:169], 25 tbr, 25 tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (png (native) -> png (native))
Press [q] to stop, [?] for help
Output #0, image2, to 'img005.png':
Metadata:
encoder : Lavf57.71.100
Stream #0:0: Video: png, rgb24, 200x113 [SAR 339:338 DAR 300:169], q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc
Metadata:
encoder : Lavc57.89.100 png
frame= 1 fps=0.0 q=-0.0 Lsize=N/A time=00:00:00.04 bitrate=N/A speed=1.41x
video:54kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
>$
Stream #0:0: Video: png, rgb24, 600x338 [SAR 1:1 DAR 300:169], q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc
Metadata:
encoder : Lavc57.89.100 png
frame= 1 fps=0.0 q=-0.0 Lsize=N/A time=00:00:00.04 bitrate=N/A speed=0.477x
video:366kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
>$

06) Ora spiego come modificare la risoluzione dell’immagine img004.png per ottenere un’immagine le cui dimensioni massime sono 200 pixels e mantenendo invariate le proporzioni. Aprire un terminale nella cartella in cui si trova il file img002.png ed impartire il comando:

>$ ffmpeg -i img004.png -vf scale=200:-1 img005.png # Modifica la risoluzione dell'immagine img004.png in modo che il lato maggiore sia di 200 pixels [06]
ffmpeg version 3.3.9 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 6.3.0 (Debian 6.3.0-18+deb9u1) 20170516
configuration: --disable-decoder=amrnb --disable-decoder=libopenjpeg --disable-mips32r2 --disable-mips32r6 --disable-mips64r6 --disable-mipsdsp --disable-mipsdspr2 --disable-mipsfpu --disable-msa --disable-libopencv --disable-podpages --disable-stripping --enable-avfilter --enable-avresample --enable-gcrypt --enable-gnutls --enable-gpl --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libfdk-aac --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libilbc --enable-libkvazaar --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libx265 --enable-libxvid --enable-libzvbi --enable-nonfree --enable-opengl --enable-openssl --enable-postproc --enable-pthreads --enable-shared --enable-version3 --incdir=/usr/include/x86_64-linux-gnu --libdir=/usr/lib/x86_64-linux-gnu --prefix=/usr --toolchain=hardened --enable-frei0r --enable-chromaprint --enable-libx264 --enable-libiec61883 --enable-libdc1394 --enable-vaapi --disable-opencl --enable-libmfx --disable-altivec --shlibdir=/usr/lib/x86_64-linux-gnu
libavutil 55. 58.100 / 55. 58.100
libavcodec 57. 89.100 / 57. 89.100
libavformat 57. 71.100 / 57. 71.100
libavdevice 57. 6.100 / 57. 6.100
libavfilter 6. 82.100 / 6. 82.100
libavresample 3. 5. 0 / 3. 5. 0
libswscale 4. 6.100 / 4. 6.100
libswresample 2. 7.100 / 2. 7.100
libpostproc 54. 5.100 / 54. 5.100
Input #0, png_pipe, from 'img004.png':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: png, rgb24(pc), 600x338 [SAR 1:1 DAR 300:169], 25 tbr, 25 tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (png (native) -> png (native))
Press [q] to stop, [?] for help
Output #0, image2, to 'img005.png':
Metadata:
encoder : Lavf57.71.100
Stream #0:0: Video: png, rgb24, 200x113 [SAR 339:338 DAR 300:169], q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc
Metadata:
encoder : Lavc57.89.100 png
frame= 1 fps=0.0 q=-0.0 Lsize=N/A time=00:00:00.04 bitrate=N/A speed=1.41x
video:54kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
>$

6a) Qualora occorra modificare la risoluzione di tutte le immagini contenute in una cartella, aprire un terminale nella cartella in cui si trovano tutte le immagini ed impartire il comando:
for i in *.png; do ffmpeg -i “$i” -vf scale=200:-1 “${i%.*}lr.PNG”; done # Modifica la risoluzione di tutte le immagini contenute nella cartella in modo che il lato maggiore sia di 200 pixels [06]

Comandi da ricordare

15 settembre, 2018 (17:44) | Linux, Senza categoria | By: sargonsei

< pre > < /pre >
Comandi generici
sudo systemctl reboot --firmware # Spegne e riaccende il PC. Se il PC è in modalità UEFI, al riavvio si avvia il BIOS
sudo grub-install                # Installa il bootloader GRUB2 nell'apposita partizione UEFI
sudo update-grub                 # aggiorna il menù di avvio del bootloader GRUB2 sotto UEFI
sudo grub-install /dev/sda       # Installa il bootloader GRUB2 nel MBR del disco fisso /sda
sudo update-grub2                # Aggiorna il menù di avvio di GRUB2
history                          # Elenca gli ultimi comandi impartiti dal terminale
lsblk -o vendor,model,serial,size,mode,fstype,kname,uuid,mountpoint,label # Esamina partizioni

free                             # Elenca informazioni relative a memoria RAM e SWAP
lscpu                            # Elenca informazioni relative a CPU
lspci -k | grep -iA 3 vga        # Elenca informazioni relative a scheda video
xrandr -q                        # Risoluzioni possibili per il monitor in uso

Aggiornare il Sistema Operativo
sudo apt-get clean               # ripulisce la cache locale dei pacchetti
sudo apt-get autoremove -y       # rimuove tutti i pacchetti obsoleti e non più necessari
sudo apt-get update              # scarica la lista aggiornata dei pacchetti e delle nuove versioni disponibili nei repository
sudo apt-get dist-upgrade -y     # scarica ed installa le ultime versioni dei pacchetti
sudo do-release-upgrade          # esegue l'avanzamento di versione, passando alla release di Ubuntu successiva

Porte USB
lspci -v | grep -iA 6 usb
lspci -k | grep -iA 3 usb
lsusb
lsusb -v | grep -iA 22 usb
hwinfo –usb

Connessione Internet

route -v                              # Mostra tabella di routing IP del kernel
rfkill list all                       # Elenca dispositivi wireless e dice se sono attivi o bloccati
lspci -knn | grep -A 2 -i net         # Indica quali moduli del kernel contengono il driver del proprio dispositivo di rete
arp
ip addr | sed '/^[0-9]/!d;s/: <.*$//' # Elenca nome corrente dispositivi di rete
dmesg | grep -i wireless              # Verifica se la rete wireless è attiva
lshw -c network                       # Elenca caratteristiche schede di rete
ifconfig                              # Elenca nome corrente dispositivi di rete e relativo traffico
iwlist scan                           # Censisce router WiFi raggiungibili 

Linux: formattare da riga di comando la partizione sdb1 in formato NTFS

2 aprile, 2017 (21:46) | Linux, Senza categoria | By: sargonsei

Linux: formattare da riga di comando la partizione sdb1 in formato NTFS
Comandi verificati con Linux Mint 18

Per cancellare residui di prove precedenti, smontare e rimuovere la partizione di prova
sudo umount /media/prova # Smonta la partizione avente punto di mount /media/prova
sudo rmdir /media/prova # Rimuove la cartella /prova dalla cartella /media

Le operazioni sulle partizioni, possono causare la perdita di dati, quindi è meglio farle da interfaccia grafica perchè la finestra di dialogo avvisa l’utente quando potrebbe fare danni.
Quando, per un qualsiasi motivo, non è possibile utilizzare l’interfaccia grafica, possiamo procedere da riga di comando, ma con molta cautela.
Alcuni comandi possono essere impartiti solo se la partizione su cui agiscono è prima stata smontata. Nel dubbio, meglio impartire il comando di smontaggio della partizione una volta di troppo (e leggere l’avviso che si sta tentando di smontare una partizione già smontata) che una volta di meno (e perdere tutti i dati contenuti nella partizione)

sudo mkdir /media/prova # Crea la cartella /prova all'interno della cartella /media

sudo mount -l | grep sdb1 # Mostra, per la partizione sdb1, i corrispondenti: Punto di mount, Tipo di file-system (coi relativi permessi), ed Etichetta

sudo umount /dev/sdb1 # Smonta la partizione sdb1 qualunque sia il suo punto di mount

sudo mkfs.ntfs /dev/sdb1 # Formatta la partizione sdb1 come NTFS

sudo ntfslabel /dev/sdb1 labelNTFS # Sostituisce con "labelNTFS" l'etichetta della partizione NON montata sdb1

sudo fsck -f -y /dev/sdb1 # Verifica l'integrità del file-system della partizione NON montata sdb1

sudo mount -t ntfs-3g /dev/sdb1 /media/prova # Assegna alla partizione sdb1 formattata come ntfs il punto di mount /media/prova

sudo mount -l | grep sdb1 # Mostra, per la partizione sdb1, i corrispondenti: Punto di mount, Tipo di file-system (coi relativi permessi), ed Etichetta

# output:

[email protected] ~ $ sudo umount /media/prova # Smonta la partizione avente punto di mount /media/prova
[sudo] password di mint18m: 
[email protected] ~ $ sudo rmdir /media/prova  # Rimuove la cartella /prova dalla cartella /media
[email protected] ~ $ sudo mkdir /media/prova  # Crea la cartella /prova all'interno della cartella /media
[email protected] ~ $ sudo mount -l | grep sdb1 # Mostra, per la partizione sdb1, i corrispondenti: Punto di mount, Tipo di file-system (coi relativi permessi), ed Etichetta
[email protected] ~ $ sudo umount /dev/sdb1    # Smonta la partizione sdb1 qualunque sia il suo punto di mount
umount: /dev/sdb1: not mounted
[email protected] ~ $ sudo mkfs.ntfs /dev/sdb1 # Formatta la partizione sdb1 come NTFS
[sudo] password di mint18m: 
Cluster size has been automatically set to 4096 bytes.
Initializing device with zeroes: 100% - Done.
Creating NTFS volume structures.
mkntfs completed successfully. Have a nice day.
[email protected] ~ $ sudo umount /dev/sdb1    # Smonta la partizione sdb1 qualunque sia il suo punto di mount
[sudo] password di mint18m: 
[email protected] ~ $ sudo ntfslabel /dev/sdb1 labelNTFS # Sostituisce con "labelNTFS" l'etichetta della partizione NON montata sdb1
[email protected] ~ $ sudo fsck -f -y /dev/sdb1 # Verifica l'integrità del file-system della partizione NON montata sdb1fsck da util-linux 2.27.1
[email protected] ~ $ sudo mount -t ntfs-3g /dev/sdb1  /media/prova # Assegna alla partizione sdb1 formattata come ntfs il punto di mount /media/prova
[email protected] ~ $ sudo mount -l | grep sdb1 # Mostra, per la partizione sdb1, i corrispondenti: Punto di mount, Tipo di file-system (coi relativi permessi), ed Etichetta
/dev/sdb1 on /media/prova type fuseblk (rw,relatime,user_id=0,group_id=0,allow_other,blksize=4096) [labelNTFS]
[email protected] ~ $ 

Linux: formattare da riga di comando la partizione sdb1 in formato fat32

2 aprile, 2017 (21:36) | Senza categoria | By: sargonsei

Linux: formattare da riga di comando la partizione sdb1 in formato fat32
Comandi verificati con Linux Mint 18

Le operazioni sulle partizioni, possono causare la perdita di dati, quindi è meglio farle da interfaccia grafica perchè la finestra di dialogo avvisa l’utente quando potrebbe fare danni.
Quando, per un qualsiasi motivo, non è possibile utilizzare l’interfaccia grafica, possiamo procedere da riga di comando, ma con molta cautela.
Alcuni comandi possono essere impartiti solo se la partizione su cui agiscono è prima stata smontata. Nel dubbio, meglio impartire il comando di smontaggio della partizione una volta di troppo (e leggere l’avviso che si sta tentando di smontare una partizione già smontata) che una volta di meno (e perdere tutti i dati contenuti nella partizione)

Per cancellare residui di prove precedenti, smontare e rimuovere la partizione di prova
sudo umount /media/prova # Smonta la partizione avente punto di mount /media/prova
sudo rmdir /media/prova # Rimuove la cartella /prova dalla cartella /media

sudo mkdir /media/prova # Crea la cartella /prova all'interno della cartella /media

sudo umount /dev/sdb1 # Smonta la partizione sdb1 qualunque sia il suo punto di mount

sudo mount -l | grep sdb1 # Mostra, per la partizione sdb1, i corrispondenti: Punto di mount, Tipo di file-system (coi relativi permessi), ed Etichetta

sudo umount /dev/sdb1 # Smonta la partizione sdb1 qualunque sia il suo punto di mount

sudo mkfs.vfat -F 32 /dev/sdb1 # Formatta la partizione sdb1 come fat32

sudo mlabel -i /dev/sdb1 ::labelFat32 # Sostituisce con "labelFat32" l'etichetta della partizione NON montata sdb1

sudo fsck -f -y /dev/sdb1 # Verifica l'integrità del file-system della partizione NON montata sdb1

sudo mount -t vfat /dev/sdb1 /media/prova # Assegna alla partizione sdb1 formattata come fat32 il punto di mount /media/prova

sudo mount -l | grep sdb1 # Mostra, per la partizione sdb1, i corrispondenti: Punto di mount, Tipo di file-system (coi relativi permessi), ed Etichetta

# output:

[email protected] ~ $ sudo umount /media/prova # Smonta la partizione avente punto di mount /media/prova
[sudo] password di mint18m: 
[email protected] ~ $ sudo rmdir /media/prova  # Rimuove la cartella /prova dalla cartella /media
[sudo] password di mint18m: 
[email protected] ~ $ sudo mkdir /media/prova  # Crea la cartella /prova all'interno della cartella /media
[email protected] ~ $ sudo umount /dev/sdb1 # Smonta la partizione sdb1 qualunque sia il suo punto di mount
umount: /dev/sdb1: not mounted
[email protected] ~ $ sudo mount -l | grep sdb1 # Mostra, per la partizione sdb1, i corrispondenti: Punto di mount, Tipo di file-system (coi relativi permessi), ed Etichetta
[email protected] ~ $ sudo umount /dev/sdb1    # Smonta la partizione sdb1 qualunque sia il suo punto di mount
umount: /dev/sdb1: not mounted
[email protected] ~ $ sudo mkfs.vfat -F 32 /dev/sdb1 # Formatta la partizione sdb1 come fat32 
mkfs.fat 3.0.28 (2015-05-16)
[email protected] ~ $  sudo mlabel -i /dev/sdb1 ::labelFat32 # Sostituisce con "labelFat32" l'etichetta della partizione NON montata sdb1
[email protected] ~ $ sudo fsck -f -y /dev/sdb1 # Verifica l'integrità del file-system della partizione NON montata sdb1fsck da util-linux 2.27.1
fsck.fat 3.0.28 (2015-05-16)
/dev/sdb1: 1 files, 1/979586 clusters
[email protected] ~ $ sudo mount -t vfat /dev/sdb1  /media/prova # Assegna alla partizione sdb1 formattata come fat32 il punto di mount /media/prova
[email protected] ~ $ sudo mount -l | grep sdb1 # Mostra, per la partizione sdb1, i corrispondenti: Punto di mount, Tipo di file-system (coi relativi permessi), ed Etichetta
/dev/sdb1 on /media/prova type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro) [LABELFAT32]
[email protected] ~ $ 

Linux: formattare da riga di comando la partizione sdb1 in formato fat16

2 aprile, 2017 (21:31) | Senza categoria | By: sargonsei

Linux: formattare da riga di comando la partizione sdb1 in formato Fat16
Comandi verificati con Linux Mint 18

Le operazioni sulle partizioni, possono causare la perdita di dati, quindi è meglio farle da interfaccia grafica perchè la finestra di dialogo avvisa l’utente quando potrebbe fare danni.
Quando, per un qualsiasi motivo, non è possibile utilizzare l’interfaccia grafica, possiamo procedere da riga di comando, ma con molta cautela.
Alcuni comandi possono essere impartiti solo se la partizione su cui agiscono è prima stata smontata. Nel dubbio, meglio impartire il comando di smontaggio della partizione una volta di troppo (e leggere l’avviso che si sta tentando di smontare una partizione già smontata) che una volta di meno (e perdere tutti i dati contenuti nella partizione)

Per cancellarte residui di prove precedenti, smontare e rimuovere la partizione di prova
sudo umount /media/prova # Smonta la partizione avente punto di mount /media/prova
sudo rmdir /media/prova # Rimuove la cartella /prova dalla cartella /media

sudo mkdir /media/prova # Crea la cartella /prova all'interno della cartella /media

sudo umount /dev/sdb1 # Smonta la partizione sdb1 qualunque sia il suo punto di mount

sudo mount -l | grep sdb1 # Mostra, per la partizione sdb1, http://blog.linuxmint.com/i corrispondenti: Punto di mount, Tipo di file-system (coi relativi permessi), ed Etichetta

sudo umount /dev/sdb1 # Smonta la partizione sdb1 qualunque sia il suo punto di mount

sudo mkfs.vfat -F 16 /dev/sdb1 # Formatta la partizione sdb1 come fat16
sudo mkdosfs /dev/sdb1 # Formatta la partizione sdb1 come fat16

sudo mlabel -i /dev/sdb1 ::labelFat16 # Sostituisce con "labelFat16" l'etichetta della partizione NON montata sdb1

sudo fsck -f -y /dev/sdb1 # Verifica l'integrità del file-system della partizione NON montata sdb1

sudo mount -t vfat /dev/sdb1 /media/prova # Assegna alla partizione sdb1 formattata come fat16 il punto di mount /media/prova

sudo mount -l | grep sdb1 # Mostra, per la partizione sdb1, i corrispondenti: Punto di mount, Tipo di file-system (coi relativi permessi), ed Etichetta

# output:

[email protected] ~ $ sudo umount /media/prova # Smonta la partizione avente punto di mount /media/prova
[sudo] password di mint18m: 
[email protected] ~ $ sudo rmdir /media/prova  # Rimuove la cartella /prova dalla cartella /media
[email protected] ~ $ sudo mkdir /media/prova  # Crea la cartella /prova all'interno della cartella /media
[email protected] ~ $ sudo umount /dev/sdb1 # Smonta la partizione sdb1 qualunque sia il suo punto di mount
umount: /dev/sdb1: not mounted
[email protected] ~ $ sudo mount -l | grep sdb1 # Mostra, per la partizione sdb1, i corrispondenti: Punto di mount, Tipo di file-system (coi relativi permessi), ed Etichetta
[email protected] ~ $ sudo umount /dev/sdb1 # Smonta la partizione sdb1 qualunque sia il suo punto di mount
umount: /dev/sdb1: not mounted
[email protected] ~ $ sudo mkfs.vfat -F 16 /dev/sdb1 # Formatta la partizione sdb1 come fat16
mkfs.fat 3.0.28 (2015-05-16)
[email protected] ~ $ sudo mlabel -i /dev/sdb1 ::labelFat16 # Sostituisce con "labelFat16" l'etichetta della partizione NON montata sdb1
[email protected] ~ $ sudo fsck -f -y /dev/sdb1 # Verifica l'integrità del file-system della partizione NON montata sdb1fsck da util-linux 2.27.1
fsck.fat 3.0.28 (2015-05-16)
/dev/sdb1: 1 files, 0/61338 clusters
[email protected] ~ $ sudo mount -t vfat /dev/sdb1  /media/prova # Assegna alla partizione sdb1 formattata come fat16 il punto di mount /media/prova
[email protected] ~ $ sudo mount -l | grep sdb1 # Mostra, per la partizione sdb1, i corrispondenti: Punto di mount, Tipo di file-system (coi relativi permessi), ed Etichetta
/dev/sdb1 on /media/prova type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro) [LABELFAT16]
[email protected] ~ $ 

Linux: formattare da riga di comando la partizione sdb1 in formato ext4

2 aprile, 2017 (21:27) | Linux | By: sargonsei

Linux: formattare da riga di comando la partizione sdb1 in formato ext4
Comandi verificati con Linux Mint 18

Le operazioni sulle partizioni, possono causare la perdita di dati, quindi è meglio farle da interfaccia grafica perchè la finestra di dialogo avvisa l’utente quando potrebbe fare danni.
Quando, per un qualsiasi motivo, non è possibile utilizzare l’interfaccia grafica, possiamo procedere da riga di comando, ma con molta cautela.
Alcuni comandi possono essere impartiti solo se la partizione su cui agiscono è prima stata smontata. Nel dubbio, meglio impartire il comando di smontaggio della partizione una volta di troppo (e leggere l’avviso che si sta tentando di smontare una partizione già smontata) che una volta di meno (e perdere tutti i dati contenuti nella partizione)

Per cancellarte residui di prove precedenti, smontare e rimuovere la partizione di prova
sudo umount /media/prova # Smonta la partizione avente punto di mount /media/prova
sudo rmdir /media/prova # Rimuove la cartella /prova dalla cartella /media

sudo mkdir /media/prova # Crea la cartella /prova all'interno della cartella /media

sudo mount -l | grep sdb1 # Mostra, per la partizione sdb1, i corrispondenti: Punto di mount, Tipo di file-system (coi relativi permessi), ed Etichetta

sudo umount /dev/sdb1 # Smonta la partizione sdb1 qualunque sia il suo punto di mount

sudo mkfs.ext4 /dev/sdb1 # Formatta la partizione sdb1 come ext4

sudo e2label /dev/sdb1 etichetta # Sostituisce con "etichetta" l'etichetta della partizione NON montata sdb1

sudo fsck -f -y /dev/sdb1 # Verifica l'integrità del file-system della partizione NON montata sdb1

sudo mount -t ext4 /dev/sdb1 /media/prova # Assegna alla partizione sdb1 formattata come ext4 il punto di mount /media/prova

sudo mount -l | grep sdb1 # Mostra, per la partizione sdb1, i corrispondenti: Punto di mount, Tipo di file-system (coi relativi permessi), ed Etichetta

Linux: formattare da riga di comando la partizione sdb1 in formato ext3

2 aprile, 2017 (21:09) | Linux | By: sargonsei

Linux: formattare da riga di comando la partizione sdb1 in formato ext3
Comandi verificati con Linux Mint 18

Le operazioni sulle partizioni, possono causare la perdita di dati, quindi è meglio farle da interfaccia grafica perchè la finestra di dialogo avvisa l’utente quando potrebbe fare danni.
Quando, per un qualsiasi motivo, non è possibile utilizzare l’interfaccia grafica, possiamo procedere da riga di comando, ma con molta cautela.
Alcuni comandi possono essere impartiti solo se la partizione su cui agiscono è prima stata smontata. Nel dubbio, meglio impartire il comando di smontaggio della partizione una volta di troppo (e leggere l’avviso che si sta tentando di smontare una partizione già smontata) che una volta di meno (e perdere tutti i dati contenuti nella partizione)

Per cancellarte residui di prove precedenti, smontare e rimuovere la partizione di prova

sudo umount /media/prova # Smonta la partizione avente punto di mount /media/prova
sudo rmdir /media/prova  # Rimuove la cartella /prova dalla cartella /media
sudo mkdir /media/prova  # Crea la cartella /prova all'interno della cartella /media

sudo mount -l | grep sdb1 # Mostra, per la partizione sdb1, i corrispondenti: Punto di mount, Tipo di file-system (coi relativi permessi), ed Etichetta

sudo umount /dev/sdb1    # Smonta la partizione sdb1 qualunque sia il suo punto di mount

sudo mkfs.ext3 /dev/sdb1 # Formatta la partizione sdb1 come ext3

sudo e2label /dev/sdb1 labelExt3 # Sostituisce con "labelExt3" l'etichetta della partizione NON montata sdb1

sudo fsck -f -y /dev/sdb1 # Verifica l'integrità del file-system della partizione NON montata sdb1

sudo mount -t ext3 /dev/sdb1  /media/prova # Assegna alla partizione sdb1 formattata come ext3 il punto di mount /media/prova

sudo mount -l | grep sdb1 # Mostra, per la partizione sdb1, i corrispondenti: Punto di mount, Tipo di file-system (coi relativi permessi), ed Etichetta

# output:

[email protected] ~ $ sudo umount /media/prova # Smonta la partizione avente punto di mount /media/prova
[sudo] password di mint18m: 
[email protected] ~ $ sudo rmdir /media/prova  # Rimuove la cartella /prova dalla cartella /media
[email protected] ~ $ sudo mkdir /media/prova  # Crea la cartella /prova all'interno della cartella /media
[email protected] ~ $ sudo mount -l | grep sdb1 # Mostra, per la partizione sdb1, i corrispondenti: Punto di mount, Tipo di file-system (coi relativi permessi), ed Etichetta
/dev/sdb1 on /media/mint18m/etichetta type ext4 (rw,nosuid,nodev,relatime,data=ordered,uhelper=udisks2) [etichetta]
[email protected] ~ $ sudo umount /dev/sdb1    # Smonta la partizione sdb1 qualunque sia il suo punto di mount
[email protected] ~ $ sudo mkfs.ext3 /dev/sdb1 # Formatta la partizione sdb1 come ext3
mke2fs 1.42.13 (17-May-2015)
/dev/sdb1 contiene un file system ext4 con etichetta "etichetta"
	last mounted on Sun Apr  2 14:57:34 2017
Procedere comunque? (s,n) s
Creazione del file system con 981504 4k blocchi e 245760 inode
Etichetta del file system=1a6480b1-e117-464c-93f7-68235db15743
Backup del superblocco salvati nei blocchi: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736

Allocating group tables: fatto                           
Scrittura delle tavole degli inode: fatto                           
Creating journal (16384 blocks): fatto
Scrittura delle informazioni dei super-blocchi e dell'accounting del file system: fatto

[email protected] ~ $ sudo e2label /dev/sdb1 labelExt3 # Sostituisce con "labelExt3" l'etichetta della partizione NON montata sdb1
[email protected] ~ $ sudo fsck -f -y /dev/sdb1 # Verifica l'integrità del file-system della partizione NON montata sdb1fsck da util-linux 2.27.1
e2fsck 1.42.13 (17-May-2015)
Passo 1: Controllo di inode, blocco(i) e dimensioni
Passo 2: Analisi della struttura delle directory
Passo 3: Controllo della connettività di directory
Pass 4: Controllo del numero dei riferimenti
Pass 5: Checking gruppo summary information
labelExt3: 11/245760 files (0.0% non-contiguous), 33755/981504 blocks
[email protected] ~ $ sudo mount -t ext3 /dev/sdb1  /media/prova # Assegna alla partizione sdb1 formattata come ext3 il punto di mount /media/prova
[email protected] ~ $ sudo mount -l | grep sdb1 # Mostra, per la partizione sdb1, i corrispondenti: Punto di mount, Tipo di file-system (coi relativi permessi), ed Etichetta
/dev/sdb1 on /media/prova type ext3 (rw,relatime,data=ordered) [labelExt3]
[email protected] ~ $

Linux: formattare da riga di comando la partizione sdb1 in formato ext2

2 aprile, 2017 (21:02) | Linux | By: sargonsei

Linux: formattare da riga di comando la partizione sdb1 in formato ext2
Comandi verificati con Linux Mint 18

Le operazioni sulle partizioni, possono causare la perdita di dati, quindi è meglio farle da interfaccia grafica perchè la finestra di dialogo avvisa l’utente quando potrebbe fare danni.
Quando, per un qualsiasi motivo, non è possibile utilizzare l’interfaccia grafica, possiamo procedere da riga di comando, ma con molta cautela.
Alcuni comandi possono essere impartiti solo se la partizione su cui agiscono è prima stata smontata. Nel dubbio, meglio impartire il comando di smontaggio della partizione una volta di troppo (e leggere l’avviso che si sta tentando di smontare una partizione già smontata) che una volta di meno (e perdere tutti i dati contenuti nella partizione)

Per cancellarte residui di prove precedenti, smontare e rimuovere la partizione di prova

sudo umount /media/prova # Smonta la partizione avente punto di mount /media/prova
sudo rmdir /media/prova  # Rimuove la cartella /prova dalla cartella /media
sudo mkdir /media/prova  # Crea la cartella /prova all'interno della cartella /media

sudo umount /dev/sdb1 # Smonta la partizione sdb1 qualunque sia il suo punto di mount

sudo mount -l | grep sdb1 # Mostra, per la partizione sdb1, i corrispondenti: Punto di mount, Tipo di file-system (coi relativi permessi), ed Etichetta

sudo umount /dev/sdb1    # Smonta la partizione sdb1 qualunque sia il suo punto di mount

sudo mke2fs /dev/sdb1    # Formatta la partizione sdb1 come ext2

sudo e2label /dev/sdb1 labelExt2 # Sostituisce con "labelExt2" l'etichetta della partizione NON montata sdb1

sudo fsck -f -y /dev/sdb1 # Verifica l'integrità del file-system della partizione NON montata sdb1

sudo mount -t ext2 /dev/sdb1  /media/prova # Assegna alla partizione sdb1 formattata come ext2 il punto di mount /media/prova

sudo mount -l | grep sdb1 # Mostra, per la partizione sdb1, i corrispondenti: Punto di mount, Tipo di file-system (coi relativi permessi), ed Etichetta

# output:

[email protected] ~ $ sudo umount /media/prova # Smonta la partizione avente punto di mount /media/prova
[sudo] password di mint18m: 
[email protected] ~ $ sudo rmdir /media/prova  # Rimuove la cartella /prova dalla cartella /media
[email protected] ~ $ sudo mkdir /media/prova  # Crea la cartella /prova all'interno della cartella /media
[email protected] ~ $ sudo umount /dev/sdb1 # Smonta la partizione sdb1 qualunque sia il suo punto di mount
umount: /dev/sdb1: not mounted
[email protected] ~ $ sudo mke2fs /dev/sdb1    # Formatta la partizione sdb1 come ext2
mke2fs 1.42.13 (17-May-2015)
/dev/sdb1 contiene un file system ext3 con etichetta "labelExt3"
	last mounted on Sun Apr  2 15:04:28 2017
Procedere comunque? (s,n) s
Creazione del file system con 981504 4k blocchi e 245760 inode
Etichetta del file system=0d98e419-f52e-45ed-af66-1c5f502f6fa2
Backup del superblocco salvati nei blocchi: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736

Allocating group tables: fatto                           
Scrittura delle tavole degli inode: fatto                           
Scrittura delle informazioni dei super-blocchi e dell'accounting del file system: fatto

[email protected] ~ $ sudo e2label /dev/sdb1 labelExt2 # Sostituisce con "labelExt2" l'etichetta della partizione NON montata sdb1
[email protected] ~ $ sudo fsck -f -y /dev/sdb1 # Verifica l'integrità del file-system della partizione NON montata sdb1fsck da util-linux 2.27.1
e2fsck 1.42.13 (17-May-2015)
Passo 1: Controllo di inode, blocco(i) e dimensioni
Passo 2: Analisi della struttura delle directory
Passo 3: Controllo della connettività di directory
Pass 4: Controllo del numero dei riferimenti
Pass 5: Checking gruppo summary information
labelExt2: 11/245760 files (0.0% non-contiguous), 17354/981504 blocks
[email protected] ~ $ sudo mount -t ext2 /dev/sdb1  /media/prova # Assegna alla partizione sdb1 formattata come ext2 il punto di mount /media/prova
[email protected] ~ $ sudo mount -l | grep sdb1 # Mostra, per la partizione sdb1, i corrispondenti: Punto di mount, Tipo di file-system (coi relativi permessi), ed Etichetta
/dev/sdb1 on /media/prova type ext2 (rw,relatime,block_validity,barrier,user_xattr,acl) [labelExt2]
[email protected] ~ $