abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 16:00 | Nová verze

Byl vydán Mozilla Firefox 51.0. Z novinek lze upozornit například na upozorňování na přihlašování přes nešifrované spojení (HTTP), podporu pro přehrávání bezeztrátového formátu FLAC nebo podporu WebGL 2. Podrobné informace v poznámkách k vydání a na stránce věnované vývojářům. Řešeny jsou také bezpečnostní chyby.

Ladislav Hagara | Komentářů: 0
včera 17:25 | IT novinky

Do prodeje (Farnell) se dostal jednodeskový počítač Tinker Board (unboxing). Jedná se o konkurenci Raspberry Pi 3 od společnosti Asus. Porovnání (jpg) těchto počítačů například na CNXSoft. Cena Tinker Boardu je 55 £.

Ladislav Hagara | Komentářů: 13
včera 14:44 | Zajímavý projekt

Byla zveřejněna pravidla hackerské soutěže Pwn2Own 2017, jež proběhne od 15. do 17. března v rámci bezpečnostní konference CanSecWes ve Vancouveru. Soutěžit se bude o více než milion dolarů v pěti kategoriích. Letos se bude útočit i na Ubuntu. Jedná se již o 10. ročník této soutěže.

Ladislav Hagara | Komentářů: 2
včera 13:33 | Nová verze

Po sedmi měsících vývoje od vydání verze 5.7 byla vydána verze 5.8 (YouTube) toolkitu Qt. Z novinek lze zmínit například Qt Lite pro vestavěná zařízení. Nově jsou plně podporovány moduly Qt Wayland Compositor (YouTube) a Qt SCXML (YouTube). Současně byla vydána verze 4.2.1 integrovaného vývojového prostředí (IDE) Qt Creator.

Ladislav Hagara | Komentářů: 1
včera 11:52 | Pozvánky

Lednový Prague Containers Meetup se koná ve čtvrtek 26. ledna 2017 od 18:00 v Apiary, Pernerova 49, Praha 8. Přijďte se podívat na přednášky o Enterprise Kubernetes a Jenkins as a code.

little-drunk-jesus | Komentářů: 0
včera 11:40 | Pozvánky

Program letošního ročníku konference Prague PostgreSQL Developer Days, která se koná již 15. a 16. února 2017 na ČVUT FIT, Thákurova 9, Praha 6, byl dnes zveřejněn. Najdete ho na stránkách konference včetně anotací přednášek a školení. Registrace na konferenci bude otevřena zítra (24. ledna) v brzkých odpoledních hodinách.

TomasVondra | Komentářů: 0
22.1. 02:20 | Zajímavý článek

David Revoy, autor open source webového komiksu Pepper&Carrot nebo portrétu GNU/Linuxu, upozorňuje na svém blogu, že nový Inkscape 0.92 rozbíjí dokumenty vytvořené v předchozích verzích Inkscape. Problém by měl být vyřešen v Inkscape 0.92.2 [reddit].

Ladislav Hagara | Komentářů: 0
22.1. 02:02 | Komunita

Øyvind Kolås, hlavní vývojář grafických knihoven GEGL a babl, které využívá grafický program GIMP, žádá o podporu na Patreonu. Díky ní bude moci pracovat na vývoji na plný úvazek. Milník 1000 $, který by stačil na holé přežití, se již téměř podařilo vybrat, dalším cílem je dosažení 2500 $, které mu umožní běžně fungovat ve společnosti.

xkomczax | Komentářů: 12
21.1. 23:54 | Pozvánky

DevConf.cz 2017, již devátý ročník jedné z největších akcí zaměřených na Linux a open source ve střední Evropě, proběhne od pátku 27. ledna do neděle 29. ledna v prostorách Fakulty informačních technologií Vysokého učení technického v Brně. Na programu je celá řada zajímavých přednášek a workshopů. Letos je povinná registrace.

Ladislav Hagara | Komentářů: 0
21.1. 22:11 | Nová verze

Byla vydána verze 1.0.0 emulátoru terminálu Terminology postaveného nad EFL (Enlightenment Foundation Libraries). Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (12%)
 (2%)
 (72%)
 (3%)
 (11%)
Celkem 394 hlasů
 Komentářů: 38, poslední dnes 17:00
Rozcestník
Reklama

Dotaz: zaTARovani softlinku s cestou ke zdroji

Mintaka avatar 16.2.2004 03:22 Mintaka | skóre: 12
zaTARovani softlinku s cestou ke zdroji
Přečteno: 232×
Zdravim

Rad bych vedel, jak zaTARovat softlink tak, abych ve vyslednem archivu mel cestu k souboru na ktery link odkazuje, a ne k souboru se softlinkem.

Priklad:

mam soubor /etc/LinkNaZdroj K nemu mam udelany softlink do adresare /home/alfons/zdroj Pokud v adresari /home/alfons spustim: tar -chf archiv.tar /home/alfons/* ve vyslednem souboru archiv.tar bude soubor /home/alfons/LinkNaZdroj s obsahem souboru zdroj

Stav ktereho potrebuji dosahnout bude, ze v archivu bude /etc/zdroj - tedy cesta ke zdroji a k linku

Duvod: Rad bych si udelal v jednom adresari softlink na vsechny konfiguracni soubory, ktere budu menit. Budu je mit pohodlne na jednom miste. Snadnejsi editace i zalohovani. Ovsem pokud ji budu chtit ulozit do archivu, pak s cestou ke zdroji.

Diky za pripadne rady. Mintaka

Odpovědi

16.2.2004 11:16 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše zaTARovani softlinku s cestou ke zdroji
Jestli tomu dobře rozumím, chceš říci taru, aby zabalil adresář ,zdroj`, ale přitom chceš aby balil nějaké úplně jiné věci, které jsi mu jako argumenty nedal. To nejde.

Použij --files-from a seznam souborů. Pokud z nějakých důvodů vyžaduješ vytváření symlinků, tak find | xargs -n1 readlink | tar --files-from - ...
Mintaka avatar 16.2.2004 17:20 Mintaka | skóre: 12
Rozbalit Rozbalit vše zaTARovani softlinku s cestou ke zdroji
Vidim, ze jsem zkonil zadani dotazu. Snad mi prominete. Drobne pochopeni mozna vzbudi cas prispevku.

Upraveno: mam soubor /etc/ZdrojLinku k nemu mam udelany softlink /home/alfons/LinkNaZdroj pokud spustim: tar -chf archiv.tar /home/alfons/* ve vyslednem souboru archiv.tar bude soubor /home/alfons/LinkNaZdroj s obsahem souboru ZdrojLinku chtel bych, aby v archiv.tar byl soubor /etc/ZdrojLinku vcetne sve cesty.

Postupoval bych takto ls | readlink -f | tar -chf archiv.tar

ls vypise aktualni soubory | readlink rekne jejich skutecne umisteni | tar je zabali i se skutecnou cestou

Jenze to nejde. readlink mi nebasti vstup z roury (neni na to delan zda se)

Slo by to resit i tak, ze bych vystup z ls -A -1 ulozil do souboru. Pak bych rekurzivne volal readlink a nazvy souboru mu postupne zadaval a vystup readlinku ukladal do jineho souboru se kterym bych nakrmil tar. Zde jsem narazil na to, ze neumim ulozit obsah souboru do pole a jeho jednotlive radky jako soubory postupne volat ven.

------ Myslim ze bude vyhodne mit linky na pouzivane konfiguracni soubory v jednom adresari odkud je muzu snadno editovat, aniz bych musel zalezat do struktury - navic je pak budu moci zazalohovat jednim vrzem.

Kazdopadne dekuji za snahu mi pomoci.
16.2.2004 18:16 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše zaTARovani softlinku s cestou ke zdroji
K čemu tam asi píšu ten xargs -n1... <sigh>

Počáteční / ti samozřejmě tar sežere a findu by se asi hodilo dát -type l. Ale to, co jsem napsal, jinak normálně funguje, nevím, proč se to snažíš nějak ,spravit` vynecháním klíčového xargsu...
16.2.2004 18:34 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše zaTARovani softlinku s cestou ke zdroji
kromě toho můžeš vprostřed namísto xargs -n1 readlink použít třeba perl -ple '$_=readlink', což bude rychlejší, protože se nebudou spouštět tucty dalších procesů...
Mintaka avatar 19.2.2004 01:53 Mintaka | skóre: 12
Rozbalit Rozbalit vše zaTARovani softlinku s cestou ke zdroji
Díky Yetiho nasměrování (a xargu) mám hotovou rozumnou verzi

A sice:

find /velin/ | xargs -n1 readlink | xargs -n1000 tar -c -f archiv.tar; tar -u -f archiv.tar /velin/

A krok za krokem:

Mám adresář /velin , do kterého ukládám softlinky na používané konfigurační soubory, semtam i nejaký softlink na adresář s konfigurací (třeba samby). Krome toho jsou v něm i obyčejné soubory s popisky a mám v něm uložené i vlastní skriptíky.

Tato struktura mi slouží hlavně k jednodušší editaci často používaných souborů. (Neirituje mě pohled na spousty konfiguráků, o kterých nemám ani páru.) Na několika místech mám servery, které mají velmi podobnou konfiguraci, kterou chci udržovat aktuální. Nelze to řešit prostým zkopírováním /etc/ - musel bych soubory vybírat. Semtam zkusím jinou verzi distribuce či distribuci a rád bych zase měl svou konfguraci s co nejmenším zapojením ručních prací.

Tak při tom všem mi tenhle sriptík snad bude pomáhat. A jak to tedy funguje:

find /velin/ | - nasype do roury ( pipe ) výpis adresáře /velin . Výpisem jsou všechny soubory a adresáře včetně těch, které začínajících tečkou a těch, které jsou v podadresářích. (Neprochází se adresáře, které jsou softlinkem, to by zajistil přepínač -follow Zde to není třeba, protože se taru dostane jméno adresáře, a tar ho zabalí celý.) Do roury find sype soubory každý na nový řádek.

xargs -n1 readlink | xargs - přebírá vstup z roury a dávkuje ho díky přepínači -n1 po jednom řadku, který předává readlinku. Readlink se podívá zda jde o softlink. Pokud ano, pošle skutečné umístění souboru či adresáře, na který softlink ukazuje do další roury. Pokud soubor nebo adresář není softlinkem tak si ho nevšímá. (To by se dalo změnit přepínačem -f Pak by readlink do do roury zapisoval cesty ke všem adresářům i souborům.)

xargs -n1000 tar -c -f archiv.tar; Další xargs přebere vstup od readlinku, který je rozdělen na řádky. Z každého softlinku je na výstupu z readlinku jeden řádek. Hodnota přepínače -n je nastavena na 1000. Pokud bych měl v adresáři /velin/ souborů více, hodnotu bych zvětšil. (doufám že to nikdy nebude třeba) Hodnota udává, kolik řádků se má sloučit. Sloučení je potřeba, aby tar dostal jména souborů a adresářů, které chceme zabalit na jednom řádku. A to také udělá. U taru přepínač -c založí nový soubor ( archiv ). -f řekne jak se bude jmenovat ( archiv.tar ). Středník za příkazem ukončuje jeden přikaz. Používám středník, abych celý proces provedl na jednom řádku.

tar -u archiv.tar /velin/ Druhý příkaz ( řečeno přepínačem -u ) přidá do stejného archivu ještě samotný adresář /velin/ tentokrat se všemi softlinky i soubory a adresáři které softlinky nejsou. Radno dodat, že adresář, který je softlinkem bude v této části archivu jen jako soubor a žádný softlink v této části nemá obsah zdrojového souboru. Obsahuje jen odkaz.

Výsledek:

Stačí jen roztarovat archiv do struktury. Doporučuji postup, kdy nejdřiv robalíte jen adresář /velin/ a provedete pomocí tohoto skriptu zálohu stavající konfigurace. Pak roztarujete zbytek a přepíšete ty konfigurační soubory, které uznáte za vhodné.

Třeba se to někomu bude hodit. Kdyžtak si to přečtu já, až za pár let zapomenu jak že se to ty softlinky tarují.

Btw: Kdyby nešlo o to, zatarovat je i s cestou, pak stačí dát taru přepínač -h a máte v softlinku obsah souboru na který ukazuje.

Mintaka
19.2.2004 07:54 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše zaTARovani softlinku s cestou ke zdroji
Kdyby sis raději udržoval soubor, kde jsou jména těch konfiguráků, jak jsem navrhoval na začátku, lze jednak tarovat bez nějakých komplikací pomocí -T a jednak vyrobit ten adresář se symlinky ln -s $(<seznam) /velin.

K samotné myšlence vytváření dalších adresářů v /, navíc takovýchto praštěných, se raději nebudu vyjadřovat...
Mintaka avatar 20.2.2004 07:31 Mintaka | skóre: 12
Rozbalit Rozbalit vše zaTARovani softlinku s cestou ke zdroji
Ale Linux je přeci hodně o tom, že si ho můžu přizpůsobit tak jak mi to vyhovuje. Neexistuje přeci jen jedna cesta která je správná a nejsprávnější.

Navíc před řešením tohoto problému jsem nevěděl nic o xargs a nevěděl jsem tolik o chovaní pipe. Za dobu kdy jsem se to snažil nějak vyřešit jsem objevil celou řadu utilitek, které jsou standardně v systému a nevěděl jsem o nich.

A hlavně, až někdo jednou bude řešit podobný případ a zadá do googla (či jiného prohlížeče) pipe softlink readlink tar / nebo zabalení zdrojového souboru přes softlink - najde mu to i tuhle diskuzi a třeba mu to pomůže vyřešit jeho problém. (A v uspořeném čase ho třeba napadne nějaký geniální algoritmus.)

PS: Že je ten adresář v / je jen pro zjednodušení ukázky.
20.2.2004 08:04 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše zaTARovani softlinku s cestou ke zdroji
IMHO je chybná hlavně myšlenka (která je příčinou celého problému) linkovat konfiguráky kamsi do ... namísto snahy vyznat se v nich tam, kde jsou. To není přizpůsobení si systému ale spíš macintoshizace...
Mintaka avatar 20.2.2004 22:20 Mintaka | skóre: 12
Rozbalit Rozbalit vše zaTARovani softlinku s cestou ke zdroji
Předpokládám, že časem, až budu Linuxu rozumět lépe to budu dělat jinak.

Teď je pro mě podstatné, abych vůbec věděl které konfiguráky jsem použil.

Navíc, to byl problém pro mě hodný vyřešení. A to se podařilo.

Vnímám samozřejmě tvé dobře míněné rady. Je to ovšem zastřeno radostí, že mě ten systém začíná poslouchat. Každopádně se budu snažit být ostražitý, abych poznal, kdy už je mi výše zmíněný mechanismus na obtíž.

Když se nad tím zamyslím, pokud by programy měly konfigurační soubory jen v etc a já bych z nich používal alespoň 25%, pak by zřejmě stálo za to pohybovat se jen v etc a zálohovat celý adresář.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.