Du må være registrert og logget inn for å kunne legge ut innlegg på freak.no
X
LOGG INN
... eller du kan registrere deg nå
Dette nettstedet er avhengig av annonseinntekter for å holde driften og videre utvikling igang. Vi liker ikke reklame heller, men alternativene er ikke mange. Vær snill å vurder å slå av annonseblokkering, eller å abonnere på en reklamefri utgave av nettstedet.
  6 1388
Hei, har et arm-elf-toolchain program ferdigstilt via et skript liggende i en mappe på en pc med ubuntu men vil nå kopiere den over på en minnepinne så at jeg kan bruke den andre steder også, men cp kommandoen kopierer bare delvis over mappen, dvs det mangler flere filer i arm-elf-toolchainen. Det kommer også opp under kopieringen som permission denied osv, men jeg har lese og skriverettigheter..

Bruker

Kode

cp -avz /mappe /media/disk
der disk er en minnepinne med fat32.
Det funker å kopiere over andre ting som f eks .txt filer bilder till minnepinnen, og kopiere ting fra minnepinnen,så minnepinnen er ikke ødelagt.
Går selvsagt å fremstille et nytt arm-elf toolchain for hvert medium/pc man bruker,men det blir upraktiskt, skriptet tar minst en time å kjøre.
Eller er det en annen vei å gå for å raskt kopiere over mappen, kan den komprimeres til en tarball?

hm.., ser etter å ha googlet litt at

Kode

When copying from Windows to Linux or vice-versa, it should be done in "tar.gz" mode to keep the permissioning intact.
så må kanskje komprimere hele mappen da først, men har altså noe sånn som

Kode

#:~ mappenavn/install/arm-elf/bin# ls -a
ar as c++ g++ gcc ld ld.bfd nm objcopy objdump ranlib strip
Hvordan komprimerer jeg mappenavn/install/arm-elf/bin med innhold till tar.gz format? Mappen mappenavn inneholder også andre filer og komponenter men antar et de ikke er relevante da det er "bin"-delen som er hovedbestandsdelen i en arm-elf-toolchain..

Tester nå tar på hele mappen:

Kode

tar cvzf tarball.tar.gz mappenavn/
men det tar lang tid...

komprimeringen till tarball.tar.gz ble gjort men utpakkingen via
tar -xzf tarball.tar.gz
misslykkes, dvs blir avbrutt av feilmeldinger.
Sist endret av villniss; 6. september 2013 kl. 12:26.
Må minnepinnen din ha FAT format? FAT filsystem støtter ikke alle attributes som native Linux / unix filsystemer gjør.
Arkivfiler (tar) funker, men det lønner seg å lage tar-fila først, deretter kopier den ut på minnepinnen. Og motsatt når du skal pakke ut: kopiere inn på harddisk, deretter utpakking.
Sitat av tingo Vis innlegg
Må minnepinnen din ha FAT format? FAT filsystem støtter ikke alle attributes som native Linux / unix filsystemer gjør.
Arkivfiler (tar) funker, men det lønner seg å lage tar-fila først, deretter kopier den ut på minnepinnen. Og motsatt når du skal pakke ut: kopiere inn på harddisk, deretter utpakking.
Vis hele sitatet...
Den må ikke ha FAT, men har funket med å kopiere over en annen toolchains i .gz format til minnepinnen før. Dog virker ikke den gamle toolchainen lenger og har derfor laget en ny som virker da den blir brukt på disken der den blir laget. Det er når jeg vil kopiere den over till en annen disk det går galt et eller annet sted.

Har nå testet å gjøre om till en .tar fil på disken før jeg kopierer den over til minnepinnen, via

Kode

tar cf mappenavn. tar mappenavn/
Dette gir filen mappenavn.tar som jeg kopierer over till minnepinnen.

Fra minnepinnen koierer jeg så over mappenavn.tar til den andre disken, hvor jeg så gjør:

Kode

bzip2 mappenavn.tar
som gir filen mappenavn.tar.bz2

Den pakkes så ut via

Kode

tar jxf mappenavn.tar.bz2
mappenavn ser da ut till å inneholde de relevante delene i toolchainen men da jeg skal bruke den i forbindelse med kompilering så fås feilmeldinger som berører arm-elf-gcc.
Har og testet chmod 777 mappenavn
Sist endret av villniss; 8. september 2013 kl. 11:12.
Trigonoceps occipita
vidarlo's Avatar
Donor
Skaff deg konsept om bruk av tar og elementære UNIX-kommandoer. For ting som å komprimere en tarball etter at den er flytta gir ikkje mykje meining...

Eg gjetter på PEBKAC her heilt ærleg.
Det @slashdot forsøker og si er at pakke kommandoene dine (tar ... og bzip2 ...)
kan kombineres i en

Kode

tar jcf ...
på samme måte som du gjør når du pakker ut med

Kode

tar jxf ...
Og, som det pekes på; det smarteste er og pakke og komprimere filen før du kopierer den til minnepinnen.
Hvis vi skal hjelpe deg mer, så må du nok ut med mer detaljer om hva du gjør, feilmeldinger osv.
▼ ... noen måneder senere ... ▼
Sitat av villniss Vis innlegg
mappenavn ser da ut till å inneholde de relevante delene i toolchainen men da jeg skal bruke den i forbindelse med kompilering så fås feilmeldinger som berører arm-elf-gcc.
Har og testet chmod 777 mappenavn
Vis hele sitatet...
Kan du lime inn nøyaktig hva feil-melding du får. Er stor mulighet for at binutils og gcc internt har hard-kodede meninger om nøyaktig hva katalog de ønsker å finne datafiler i så dersom du på maskin "a" hadde f.eks.
/home/bruker/gcc-installert-her/usr/share/gcc/data-filer

og du kopierer dette til maskin "b", så forventer gcc å finne sine filer på nøyaktig samme sted. Dette kan evt løses med chroot triks og slikt.
Sitat av mywave Vis innlegg
Kan du lime inn nøyaktig hva feil-melding du får. Er stor mulighet for at binutils og gcc internt har hard-kodede meninger om nøyaktig hva katalog de ønsker å finne datafiler i så dersom du på maskin "a" hadde f.eks.
/home/bruker/gcc-installert-her/usr/share/gcc/data-filer

og du kopierer dette til maskin "b", så forventer gcc å finne sine filer på nøyaktig samme sted. Dette kan evt løses med chroot triks og slikt.
Vis hele sitatet...
Var noen uker siden , men det som funket til slutt var å ta med undermappen install og kopiere og komprimere via :

cp -rp /root/mappenavn/install /root/kopimappe

tar cf navn.tar kopimappe && bzip2 navn.tar

navn.tar.bz2 kunne så kopieres over til usb-mediumet og pakkes ut.