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í
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
dnes 21:21 | Nová verze Ladislav Hagara | Komentářů: 0
dnes 11:44 | Zajímavý projekt

Na Indiegogo byla spuštěna kampaň na podporu herní mini konzole a multimediálního centra RetroEngine Sigma od Doyodo. Předobjednat ji lze již od 49 dolarů. Požadovaná částka 20 000 dolarů byla překonána již 6 krát. Majitelé mini konzole si budou moci zahrát hry pro Atari VCS 2600, Sega Genesis nebo NES. Předinstalováno bude multimediální centrum Kodi.

Ladislav Hagara | Komentářů: 0
dnes 00:10 | Nová verze

Byla vydána verze 4.7 redakčního systému WordPress. Kódové označením Vaughan bylo vybráno na počest americké jazzové zpěvačky Sarah "Sassy" Vaughan. Z novinek lze zmínit například novou výchozí šablonu Twenty Seventeen, náhledy pdf souborů nebo WordPress REST API.

Ladislav Hagara | Komentářů: 0
včera 12:00 | Zajímavý projekt

Projekt Termbox umožňuje vyzkoušet si linuxové distribuce Ubuntu, Debian, Fedora, CentOS a Arch Linux ve webovém prohlížeči. Řešení je postaveno na projektu HyperContainer. Podrobnosti v často kladených dotazech (FAQ). Zdrojové kódy jsou k dispozici na GitHubu [reddit].

Ladislav Hagara | Komentářů: 24
včera 11:00 | Bezpečnostní upozornění

Byly zveřejněny informace o bezpečnostní chybě CVE-2016-8655 v Linuxu zneužitelné k lokální eskalaci práv. Chyba se dostala do linuxového jádra v srpnu 2011. V upstreamu byla opravena minulý týden [Hacker News].

Ladislav Hagara | Komentářů: 2
5.12. 22:00 | Komunita

Přibližně před měsícem bylo oznámeno, že linuxová distribuce SUSE Linux Enterprise Server (SLES) běží nově také Raspberry Pi 3 (dokumentace). Obraz verze 12 SP2 pro Raspberry Pi 3 je ke stažení zdarma. Pro registrované jsou po dobu jednoho roku zdarma také aktualizace. Dnes bylo oznámeno, že pro Raspberry Pi 3 je k dispozici také nové openSUSE Leap 42.2 (zprávička). K dispozici je hned několik obrazů.

Ladislav Hagara | Komentářů: 6
5.12. 06:00 | Zajímavý software

OMG! Ubuntu! představuje emulátor terminálu Hyper (GitHub) postavený na webových technologiích (HTML, CSS a JavaScript). V diskusi k článku je zmíněn podobný emulátor terminálu Black Screen. Hyper i Black Screen používají framework Electron, stejně jako editor Atom nebo vývojové prostředí Visual Studio Code.

Ladislav Hagara | Komentářů: 50
5.12. 06:00 | Zajímavý článek

I letos vychází řada ajťáckých adventních kalendářů. QEMU Advent Calendar 2016 přináší každý den nový obraz disku pro QEMU. Programátoři se mohou potrápit při řešení úloh z kalendáře Advent of Code 2016. Kalendáře Perl Advent Calendar 2016 a Perl 6 Advent Calendar přinášejí každý den zajímavé informace o programovacím jazyce Perl. Stranou nezůstává ani programovací jazyk Go.

Ladislav Hagara | Komentářů: 10
3.12. 16:24 | Nová verze

Byla vydána Mageia 5.1. Jedná se o první opravné vydání verze 5, jež vyšla v červnu loňského roku (zprávička). Uživatelům verze 5 nepřináší opravné vydání nic nového, samozřejmě pokud pravidelně aktualizují. Vydání obsahuje všechny aktualizace za posledního téměř půldruhého roku. Mageia 5.1 obsahuje LibreOffice 4.4.7, Linux 4.4.32, KDE4 4.14.5 nebo GNOME 3.14.3.

Ladislav Hagara | Komentářů: 17
3.12. 13:42 | Pozvánky

V Praze probíhá konference Internet a Technologie 16.2, volné pokračování jarní konference sdružení CZ.NIC. Konferenci lze sledovat online na YouTube. K dispozici je také archiv předchozích konferencí.

Ladislav Hagara | Komentářů: 0
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (24%)
 (29%)
 (8%)
 (5%)
 (3%)
Celkem 784 hlasů
 Komentářů: 50, poslední 29.11. 15:50
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: 229×
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.