RaspberryPi image build Howto

peque
Antal: 843
Tilmeldt:
20-04-2005
User is offline
RaspberryPi image build Howto

Hejsa.
Jeg har taget en raspian og bygget den om til det jeg gerne ville have.

Mit færdige image er installeret på et 16GB microSD kort
( MEN når jeg tager en backup af dette medie fylder det så også 14,5GB)
Hvordan kan jeg formindske dette image således det bliver optimalt at kunne formidle til andre ?
Mit image grundlæggende fylder 1.1GB
Der er kun 1 partition på SD kortet ?

Er der nogle gode bud.
Normalt så bruger jeg Win32Diskwriter til at brænde img - på SD kort såvel som tilbage igen!


julemand101
julemand101's picture
Antal: 1615
Tilmeldt:
17-01-2004
User is offline
Årsagen til dit image

Årsagen til dit image fylder så meget er at dit image er en bit for bit kopi af hvad der er på dit SD kort. Normalt så komprimerer du sådan et image således det fylder mindre men det kan ikke lade sig gøre ret ofte fordi dit filsystem er fyldt med data der ikke lader sig komprimere.

Årsagen til dette er at dit filsystem aldrig rydder data når de slettes men data markeres bare som værende tilladt at blive overskrevet når der skal skrives en ny fil på disken.

Et nemt "trick" til hvordan du får dit disk image til nemmere at blive komprimeret er at oprette en fil der fylder hele din disk op med /dev/zero og efterfølgende slette denne fil. Nu kan du så lave et image hvor du ved at alt ledig diskplads er 0 og derved markant nemmere at komprimere.

Du kan oprette sådan en fil med dd (hvis du vil have en fil der fylder 10 GB):
dd if=/dev/zero of=big_empty_file.img bs=4k count=10G


peque
Antal: 843
Tilmeldt:
20-04-2005
User is offline
Hej Julemand. Tak for

Hej Julemand.
Tak for forklaringen.
bare lige for jeg er sikker
jeg har et SDkort på 16GB - hvor imaget reelt fylder 1.1

Så ud af de 14GB laver jeg en tom fil med /dev/zero og derefter sletter jeg denne
Vil du så mene derefter mit image bliver mindre - hvis jeg sletter denne fil - Det er sgu interessant !

Jeg giver gerne en melding når det er testet - Men det er sådanne du mente ikk ?


julemand101
julemand101's picture
Antal: 1615
Tilmeldt:
17-01-2004
User is offline
Korrekt forstået. Dog skal

Korrekt forstået. Dog skal du huske at du kun opnår en forbedring hvis du efterfølgende komprimerer dit image (fx med gzip, bzip2, 7z, zip osv.). Det ikke-komprimerede image vil fylde det samme uanset hvad fordi det netop er en bit for bit kopi af dit SD kort og eftersom det er på 16 GB vil dit image fylde 16 GB. Men ved at have en masse 0 i dit image vil enhver komprimeringsalgoritme kunne optimere disse store blokke af 0 "væk".

Tricket virker selvfølgelig også kun hvis dit filsystem ikke er fragmenteret til atomer men det er sjældent tilfældet. :)


peque
Antal: 843
Tilmeldt:
20-04-2005
User is offline
Man kan ikke lave imaget på

Man kan ikke lave imaget på en anden måde - således man kun får de ting man skal have.
Det undrer mig min default raspian installation image fylder knap 300mb - og ved jeg har tilføjet nogle pakker - så fylder det pludseligt 16Gb

Jeg er lidt interesseret i at få det minimeret i tilfælde af overførsel !


julemand101
julemand101's picture
Antal: 1615
Tilmeldt:
17-01-2004
User is offline
Men det er jo bare at zip

Men det er jo bare at zip dit image efter du har gjort det jeg skrev i #1. Så kan du nemt overføre det og det eneste modtagen skal gøre er at udpakke det.

Det er desuden det samme som Raspbian gør. Her henter du også bare en zip fil som er 300 MB men fylder 1,3 GB når den udpakkes som er størrelsen på den partion der oprettes på SD kortet når du skriver img filen ned:
https://www.raspberrypi.org/downloads/raspbian/

Raspbian er så lavet således du nemt kan forstørre din installation til at fylde resten af SD kortet. Årsagen til de har benyttet 1.3 GB i udpakket størrelse er at dette er en fin størrelse der er kompatibel med langt de fleste SD kort og hvor du samtidig vil have lidt ekstra plads tilovers. Hvis deres img fil fx havde fyldt 20 GB så havde det begrænset mængden af kompatible SD kort.


peque
Antal: 843
Tilmeldt:
20-04-2005
User is offline
Jamen det er bare kanon - er

Jamen det er bare kanon - er igang med at teste det.
Som sagt har jeg til vores Systemer bygget en mailgateway - som enten modtager en fil i en ftp mappe - og sender det hjem,hver gang der ligger en fil i en bestemt mappe - eller den henter via ncftp fiuler fra en FTP server på instrumenterne eller lign.

Tit og ofte er det noget der skal sendes via nettet til en tekniker der står i Singapore - så pludselig har størrelsen noget at sige

Det er egenligt derfor jeg vil have pakket det totalt ned - Men så vidt jeg husker så raspian klargører resten af SD-kortet til dig -´således det udnytter 100% af den aktuelle disk størrelse - Kunne man på nogen måde afviklke dette når fø'rst imaget er lagt på SD kortet !

Men jeg må prøve mig lidt frem


peque
Antal: 843
Tilmeldt:
20-04-2005
User is offline
Hej Julemand.Til info fandt

Hej Julemand.
Til info fandt jeg denne side
http://www.instructables.com/id/How-to-BackUp-and-...

Desværre ender jeg op med denne fejl -. men er kommet fra 16 ned til 4GB

losetup: /root/mgw-1.0.0.1.img: Warning: file does not fit into a 512-byte sector; the end of the file will be ignored