- Mobil flották
- Android alkalmazások - szoftver kibeszélő topik
- Motorola Edge 50 Neo - az egyensúly gyengesége
- Magisk
- Samsung Galaxy A54 - türelemjáték
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Redmi Note 9 Pro [joyeuse]
- Érkezik a Samsung Health előfizetés?
- India felől közelít egy 7550 mAh-s Redmi
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
Új hozzászólás Aktív témák
-
Keem1
veterán
válasz
bambano #2604 üzenetére
Sajnos úgy se megy
Viszont így kicsit necces, ha később kerül be olyan folder, aminek a nevében space van.
juliska@pistacio:~ $ bash -x ./backup.sh
++ hostname
+ devicename=pistacio
+ path_backup=/media/hdd/backup
+ file_archive=pistacio.local.tar.gz
+ path_archive=/media/hdd/backup/pistacio.local.tar.gz
+ [[ ! -d /media/hdd/backup ]]
+ [[ -f /media/hdd/backup/pistacio.local.tar.gz ]]
+ rm -f /media/hdd/backup/pistacio.local.tar.gz
+ [[ -f '' ]]
+ directories=("/home/juliska/")
+ declare -a directories
+ excludes=("home/juliska/tmp")
+ declare -a excludes
++ printf '%s\n' /home/juliska/
+ dirlist=/home/juliska/
++ printf --exclude=%s home/juliska/tmp
./backup.sh: 32. sor: printf: --: érvénytelen kapcsoló
printf: használat: printf [-v változó] formátum [argumentumok]
+ exclist=
+ tar -cvf /media/hdd/backup/pistacio.local.tar.gz /home/juliska/
tar: A kezdő „/” eltávolítása a nevek elejéről
/home/juliska/
/home/juliska/.bash_history
/home/juliska/samsung_860evo_250gb_01.png
/home/juliska/samsung_860evo_250gb_02.png
/home/juliska/samsung_860evo_250gb_03.png
/home/juliska/.bash_logout
/home/juliska/tmp/
/home/juliska/tmp/teszt.txt
/home/juliska/tmp/addon.xml
/home/juliska/tmp/131927106_711033053173709_564839630427467469_n_711033049840376.jpg
/home/juliska/tmp/20210117_201722.jpg
/home/juliska/backup.sh
/home/juliska/.profile
/home/juliska/.bashrc
juliska@pistacio:~ $ -
Keem1
veterán
válasz
bambano #2600 üzenetére
++ hostname
+ devicename=pistacio
+ path_backup=/media/hdd/backup
+ file_archive=pistacio.local.tar.gz
+ path_archive=/media/hdd/backup/pistacio.local.tar.gz
+ [[ ! -d /media/hdd/backup ]]
+ [[ -f /media/hdd/backup/pistacio.local.tar.gz ]]
+ rm -f /media/hdd/backup/pistacio.local.tar.gz
+ [[ -f '' ]]
+ directories=("/home/juliska/")
+ declare -a directories
+ excludes=("home/juliska/tmp")
+ declare -a excludes
++ printf '%s\n' /home/juliska/
+ dirlist=/home/juliska/
++ printf -- '--exclude='\''%s'\'' ' home/juliska/tmp
+ exclist='--exclude='\''home/juliska/tmp'\'' '
+ tar -cvf /media/hdd/backup/pistacio.local.tar.gz '--exclude='\''home/juliska/tmp'\''' /home/juliska/
tar: A kezdő „/” eltávolítása a nevek elejéről
/home/juliska/
/home/juliska/.bash_history
/home/juliska/samsung_860evo_250gb_01.png
/home/juliska/samsung_860evo_250gb_02.png
/home/juliska/samsung_860evo_250gb_03.png
/home/juliska/.bash_logout
/home/juliska/tmp/
/home/juliska/tmp/teszt.txt
/home/juliska/tmp/addon.xml
/home/juliska/tmp/131927106_711033053173709_564839630427467469_n_711033049840376.jpg
/home/juliska/tmp/20210117_201722.jpg
/home/juliska/backup.sh
/home/juliska/.profile
/home/juliska/.bashrc -
Keem1
veterán
válasz
bambano #2598 üzenetére
Megvan a hiba forrása!
exclist=$(printf -- "--exclude='%s'\n" "${excludes[@]}")
A fentivel nem megy, ha kézzel írom be a tar commandba, akkor megy.
Nem... mégsem az. Ha a scriptből kiechozom a commandot, és kézzel futtatom, akkor működik. Ha a scriptet használom, akkor nem.
Nem megy:
tar -cvf ${path_archive} ${exclist} ${dirlist}Megy:
echo "tar -cvf ${path_archive} ${exclist} ${dirlist}"
majd Ctrl+C, konzolba Ctrl+V -
Keem1
veterán
Hmm... kézzel megy, scriptben nem
juliska@pistacio:~ $ tar --exclude='home/juliska/tmp' -czf /media/hdd/backup/pistacio.tar.gz /home/juliska/*
tar: A kezdő „/” eltávolítása a nevek elejéről
tar: A kezdő „/” eltávolítása a közvetlen linkek céljaiból
juliska@pistacio:~ $ tar -tf /media/hdd/backup/pistacio.tar.gz
home/juliska/samsung_860evo_250gb_01.png
home/juliska/samsung_860evo_250gb_02.png
home/juliska/samsung_860evo_250gb_03.png
juliska@pistacio:~ $És exclude nélkül benne is van a tmp:
juliska@pistacio:~ $ tar -czf /media/hdd/backup/pistacio.tar.gz /home/juliska/*
tar: A kezdő „/” eltávolítása a nevek elejéről
tar: A kezdő „/” eltávolítása a közvetlen linkek céljaiból
juliska@pistacio:~ $ tar -tf /media/hdd/backup/pistacio.tar.gz
home/juliska/samsung_860evo_250gb_01.png
home/juliska/samsung_860evo_250gb_02.png
home/juliska/samsung_860evo_250gb_03.png
home/juliska/tmp/
home/juliska/tmp/teszt.txt
home/juliska/tmp/addon.xml
home/juliska/tmp/131927106_711033053173709_564839630427467469_n_711033049840376.jpg
home/juliska/tmp/20210117_201722.jpg
juliska@pistacio:~ $ -
Keem1
veterán
válasz
bambano #2594 üzenetére
Gyártottam egy juliska usert, abban csináltam egy tmp foldert és beleraktam pár teszt filet.
Kérhetek erre egy tar commandot, aminek a targetje: /media/hdd/backup/pistacio.tar.gz és a /home/juliska foldert tömöríti és a /home/juliska/tmp foldert excludálja? Kipróbálnám.Képtelen vagyok elengedni ezt...
Kiindulási állapot:
juliska@pistacio:~/tmp $ ls -al
összesen 3160
drwxr-xr-x 2 juliska users 4096 márc 11 15:06 .
drwxr-xr-x 3 juliska users 4096 márc 11 15:06 ..
-rwx------ 1 juliska users 102337 jan 1 05:50 131927106_711033053173709_564839630427467469_n_711033049840376.jpg
-rwx------ 1 juliska users 3112977 jan 17 20:17 20210117_201722.jpg
-rwx------ 1 juliska users 827 nov 12 2017 addon.xml
-rwx------ 1 juliska users 10 febr 7 10:41 teszt.txt
juliska@pistacio:~/tmp $ uname -a
Linux pistacio 5.10.17+ #1403 Mon Feb 22 11:26:13 GMT 2021 armv6l GNU/Linux
juliska@pistacio:~/tmp $ tar --version
tar (GNU tar) 1.30
Copyright (C) 2017 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Írta: John Gilmore és Jay Fenlason.
juliska@pistacio:~/tmp $ -
Keem1
veterán
válasz
bambano #2592 üzenetére
Hmm...
Ez abban az esetben is érvényes, ha a tar file abszolút útvonallal van megadva?Nálam ez van a script elején:
devicename=$(hostname)
path_archive="/media/hdd/backup/${devicename}.tar.gz"Direkt pont az ilyenek miatt igyekeztem mindenütt abszolút path-t használni relatív helyett. Ez se segít a helyzetemen?
-
Keem1
veterán
válasz
bambano #2589 üzenetére
"ugyanabból a gyökérből csinálod meg a fájlneveket, mint ahonnan a tar-t indítod"
Ennek az értelmezésével picit gondban vagyokEddig azt hittem, Linuxon csak egy gyökér van (a "/").
Abszolút útvonalat adtam meg, mindkét tömbben. A tömörítendő folderek tömbjében van pl.: "/home/"
És ehhez kapcsoódik a kivételek tömbjében: "/home/juliska/tmp", hogy ennek a usernek a tmp foldere ne kerüljön bele. Belekerül.Most alapvetően leszűkítettem 1-1-re a tömbök tartalmát, ameddig ez nem megy, a többi elemet hiába teszem bele:
declare -a directories=(
"/home/juliska"
)
declare -a excludes=(
"/home/juliska/tmp/*"
)
dirlist=$(printf "%s\n" "${directories[@]}")
exclist=$(printf -- "--exclude='%s'\n" "${excludes[@]}")
tar ${exclist} -czf ${path_archive} ${dirlist}Ez eddig a commandom, ami mindenféle hibaüzenet nélkül végrehajtódik, el is készül a tar file, de a tmp folder ugyanúgy ott figyel benne.
-
Keem1
veterán
válasz
#44001536 #2587 üzenetére
Segít, köszönöm, ez a megoldás
A command így az lesz, amit várnék, de sajnos nem működik. Nincs hibaüzenet, csak egyszerűen nem veszi figyelembe, hogy excludálni kéne. A parancs lefut, végre is hajtja, de mintha az exclude ott se lenne.
Nem jöttem még rá az okára, pedig próbáltam első paraméterként rögtön a tar után, próbáltam a multikapcsolók után és a célfájl után is. Mindegyik esetben végrehajtódik, szépen el is készül a kb. 10 GB-os tgz fájl, amiben benne van többek között az a /home/username/tmp folder is, ami az exclude paraméterben meg van adva.Még keresem az okát, de egyelőre nem jöttem rá. A helyzetet az nehezíti, hogy mivel nincs hibaüzenet, fogalmam sincs, mi a problémája.
-
Keem1
veterán
Helló emberek. Sajnos rossz topikban kezdtem, de ezt a kérdést tettem fel.
Valaki esetleg tudna segíteni?
Köszönöm!
Új hozzászólás Aktív témák
Hirdetés
- HP Laptop 15-fc0026nh (AY7E1EA)
- BESZÁMÍTÁS! 4TB Samsung 870 EVO SATA SSD meghajtó garanciával hibátlan működéssel
- Telefon felvásárlás!! Xiaomi Redmi 9, Xiaomi Redmi 9AT, Xiaomi Redmi 10, Xiaomi Redmi 10 2022
- AKCIÓ! Lenovo Thinkpad T14 Gen 3 üzleti notebook - i5 1245U 16GB RAM 512GB SSD Intel Iris XeW11
- Apple iPhone 14 128GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: Liszt Ferenc Zeneművészeti Egyetem
Város: Budapest