Van úgy hogy az ember módosít valamit a rendszeren melyek root jogosultságokat igényelnek. Szeretnék ezekről egy másolatot valahová egy save mappába a módosított fájlról teljes útvonalával együtt. Hogy újra feltudjam használni, ha felülíródna. Más gépre is felraknám...
Eddig manuálisan másolgattam, de van úgy hogy elfelejtem, mert esetleg több mindent piszkálok. Ezeket a módosításokat mindig tesztelem mielőtt bele kerülne az éles rendszerbe. Van erre valami barátságos tool? Nem kell felhő, stb. Mint említettem csak egy egyszerű save mappa. Gondoltam olyasmire is ha most átnyálaznám az egész rendszert, és amit módosítottam abba beleírnám egy megjegyzésbe hogy # modified by Nextra.
S azokra rákeresve össze tudnám gyűjteni, bár az útvonal problémán még agyalnom kell. De lehet hogy van egyszerűbb módja, kész megoldás.
- 822 megtekintés
Hozzászólások
svn? Bár ha elfeleded, akkor az svn commit is elmarad. Esetleg cron-ból naponta - oszt ha nincs változás, hát nincs.
- A hozzászóláshoz be kell jelentkezni
Az svn és hasonlók tudnak már ACL-t, selinux cimkét, vagy legalább tulaj/csoport/jogsoultság dolgokat menteni? Mert amíg nem, addig erősen sajtreszelős a dolog... (Anno az fsvs-t láttam és használtam - az tud metadatát menteni...)
- A hozzászóláshoz be kell jelentkezni
Miért használ valaki 2022-en még svn-t?
- A hozzászóláshoz be kell jelentkezni
Mert mondjuk fsvs-t használ, hogy a metaadatokkal ne legyenek gondjai...?
- A hozzászóláshoz be kell jelentkezni
Mert nem a gombhoz választja a kabátot. Van egy csomó use-case, aminél a Subversion jobb választás.
- A hozzászóláshoz be kell jelentkezni
Tudsz mondani 1-2 ilyet? (tényleg érdekel - én azt látom, hogy a git mindenre jobb)
- A hozzászóláshoz be kell jelentkezni
1, access control hiánya, sub-tree access control hiánya
2, sub-tree tag/branch hiánya
3, sub-tree checkout hiánya
4, fejlesztési problémák, ha nem illik rá a git workflow
5, binary delta hiánya
6, mono repo vs submodule vs multi repo hell, mindegyik máshol rossz
7, a Git egy olyan kés, aminek a nyele is borotvaéles
És alapvetően az van, hogy akik szerint a Git mindenre jobb, azok uszkve 10 éve nem használtak más verziókezelő rendszert, pedig vannak bőven esetek, amikor sokkal egyszerűbb egy olyan verziókezelő rendszert választani, ami alkalmasabb a feladatra.
- A hozzászóláshoz be kell jelentkezni
Én írtam egyet: a fájlok metaadatait nem tárolja. Azt mondjuk az svn sem, de legalább van fsvs, ami arra épülve igen. És nem egy nem két esetben ez kifejezetten fontos - pláne a /etc tartalmánál.
- A hozzászóláshoz be kell jelentkezni
Miért ne?
A FreeBSD alaptelepítése tartalmaz svn-t, nekem meg saját céljaimra bőven elegendő (egyszemélyes műfaj). Jobban szeretem a növekedő revision numbert látni, mint a hash első X karakterét. Meg szeretem, hogy van keyword substitution, ami a git-ben nincs. Fordítva kérdezem: mivel ad többet nekem(!) a git, mint az svn?
- A hozzászóláshoz be kell jelentkezni
.
- A hozzászóláshoz be kell jelentkezni
borg cron-ból futtatva? Megadhatod mely könyvtárakat hagyja figyelmen kívül. Egyszerű, legtöbb repóban benne van.
üdv: pomm
A 852-es kídlap telepötúsa sikeresen befejezádétt
- A hozzászóláshoz be kell jelentkezni
A borgról nekem Hét Kilenced jut eszembe :). Amúgy a Mageiában nem elérhető. -- egyik sem.
- A hozzászóláshoz be kell jelentkezni
üdv: pomm
A 852-es kídlap telepötúsa sikeresen befejezádétt
- A hozzászóláshoz be kell jelentkezni
Ja kérem én a stabil kiadást használom. A Cauldron a fejlesztői ág.
$ urpmq -ry borg
Nincs ilyen nevű csomag: borg
$ urpmq -ry kernel-desktop | grep latest
kernel-desktop-devel-latest-5.15.11-3.mga8
kernel-desktop-latest-5.15.11-3.mga8
virtualbox-kernel-desktop-latest-6.1.30-1.7.mga8
xtables-addons-kernel-desktop-latest-3.18-1.41.mga8
- A hozzászóláshoz be kell jelentkezni
lehet fordítani is.
üdv: pomm
A 852-es kídlap telepötúsa sikeresen befejezádétt
- A hozzászóláshoz be kell jelentkezni
Én erre a git-et használom teljes megelégedettséggel. Két pillanat alatt megnézheted mit változattál és mikor, itt a konkrét változásokat értem a fájlon belül, nem csak a hogy melyik fájlt. A commit-nál kommentelhetsz és azt is látod miért változtattál, nem csak azt, hogy mit.
Nekem bevált.
A tömegek sohasem szomjúhozták az igazságot. A nekik nem tetsző bizonyságok elől elfordulnak és inkább a tévedést istenítik, ha ez őket elkápráztatja. Aki illúzióba ringatja őket, úr lesz fölöttük, de áldozatuk az, aki megpróbálja őket kiábrándítani.
- A hozzászóláshoz be kell jelentkezni
Szerintem nem jó a megközelítésed. A konfigot tartsd verziókövetőben (git), ott módosítsd, és onnan juttasd a megfelelő helyre. Így a "mentésed" előbb lesz meg, mint a tényleges változtatás, ami tök menő és hasznos.
- A hozzászóláshoz be kell jelentkezni
Ez jó irány lehet...ne, csak arra kell ügyelni, hogy a verziókezelőben lévő fájl a metaadatait nem viszi magával. Úgyhogy mentésre nem jó, arra igenis tessen acl-t és selinux cimkét tudó alkalmazást használni, a verziózott fájlokat meg checkout után nem másolni, hanem mondjuk cat git/path/foo/bar/config.fajl > /foo/bar/config.fajl módon rakni a helyükre...
- A hozzászóláshoz be kell jelentkezni
Másolás után chown/chmod? Személy szerint ezt a feladatot/problémát úgy oldom meg, hogy tárolom a fájlok jogosultságait is (lényegében egy Makefile, alapértelmezetten root tulajdonába rakja 644-gyel, a kivételeket tárolom - ennél több nekem nem kell).
- A hozzászóláshoz be kell jelentkezni
A chown/chmod helyett getfacl/setfacl, illetve restorecon és rinyálósabb esetben touch :-)
- A hozzászóláshoz be kell jelentkezni
Akár. Viszont a megoldásom elvéről mit gondolsz? Ez már jó irány lehet, feltételes mód nélkül? :)
- A hozzászóláshoz be kell jelentkezni
Jó lehet, de van benne egy adag macera a visszapakolásnál - az fsvs pont ezt oldotta meg (anno komplett nfsroot-ot adó OS-t tartottunk fsvs/svn-ben...)
- A hozzászóláshoz be kell jelentkezni
Amit szerintem érdemes átgondolni, hogy akarsz-e valaha konfigot _vissza_pakolni, vagy csak simán akarsz csinálni egy, az adott konfiggal rendelkező megoldást. Szerintem az utóbbi sokkal hasznosabb dolog, és lefedi az előbbi use-case-t is.
- A hozzászóláshoz be kell jelentkezni
Jelen esetben egy etckeeper jellegű megoldást keres a poszt-toló :) ott meg kifejezetten fontos lehet a fájlok metaadatait _is_ elrakni. Vagy a checkout során a kiszedett fájlok tartalmával(!) felülírni a meglévőket. Lényeg, hogy a verziókezelőben lévő fájlnak csak a tartalma használható fel, maga a fájl nem minden esetben.
- A hozzászóláshoz be kell jelentkezni
Ahol kellettek ilyesmik (pl. olyanra emlékszem, hogy nginx és php-fpm közötti unix domain socketre akartam valamiért ACL-eket rakni), ott a deploymentért felelős ansible playbook állította be a megfelelő ACL-eket. Arra, hogy mentsek ACL-eket vagy selinux labeleket konfigok esetében még nem volt szükségem sose szerintem.
(Az adatmentés tök más téma, ott ez előjöhet, de adatot meg nem git-be mentenék.)
- A hozzászóláshoz be kell jelentkezni
Én az acl-eket nem scriptelném, hanem verziókezelőbe történő berakáskor egy getfacl kimenetet is elraknék a fájl mellé, nem scriptbe (ebből a szempontból a playbook is az) raknám bele ezt az információt.
- A hozzászóláshoz be kell jelentkezni
És az első létrehozáskor/beállításkor hogy kerül oda az ACL? Amikor még nincs verziókövetőben semmi. Kézzel oda setfacl-ezel egy jót?
- A hozzászóláshoz be kell jelentkezni
Az alapértelmezett konfigokat a csomagkezelőnek/telepítő scriptnek "illik" a helyére rakni, és annak a metaadatait (meg magát a defaultot) tekintem a verziókezelő kiindulási állapotának, ezt kell a verziókezelőben leképzni.
- A hozzászóláshoz be kell jelentkezni
Amit csinálsz akkor az, hogy:
- telepítő script odarakja a very_important_config.cfg fájlt, ahova kell
- telepítő script beállítja rajta, hogy chmod/setfacl/chcon
- itt jön a verziókezelőbe az első push
- ...
- utána amikor kell, akkor átírod a konfigot, vagy módosítod a metaadatokat
- itt megint jön a verziókezelőbe a push
- ... (igény szerint ismétlendő)
Amit én csinálok, hogy:
- verziókezelőbe berakom a very_important_config.cfg fájlt és a telepítő scriptet
- telepítő script odarakja a very_important_config.cfg fájlt, ahova kell
- telepítő script beállítja rajta, hogy chmod/setfacl/chcon
- ...
- amikor módosítani kell, akkor a verziókezelőben módosítom a fájlt vagy a telepítő scriptet
- telepítő script odarakja a very_important_config.cfg fájlt, ahova kell
- telepítő script beállítja rajta, hogy chmod/setfacl/chcon
- ... (igény szerint ismétlendő)
Nekem jobban tetszik az enyém, de a Tiéd is működik nyilván.
- A hozzászóláshoz be kell jelentkezni
Lehet imperatív módon is - a deklaratív nekem jobban tetszik :)
- A hozzászóláshoz be kell jelentkezni
Szerintem ez nagyon jól hangzik. A kis rendszeremet szerintem módosítom ennek fényében (hogy mikor, azt nem tudom). Köszi a tippet!
- A hozzászóláshoz be kell jelentkezni
Eszembe jutott még -nem tudom, hogy erre alkalmas lenne-e- a seafile. Fájlszerveren használjuk nagy megelégedéssel, de nyilván itt kicsit más az elvárás, ilyen környezetben nincs tapasztalatom, viszont valós időben szinkronizál és van verzió követés is.
üdv: pomm
A 852-es kídlap telepötúsa sikeresen befejezádétt
- A hozzászóláshoz be kell jelentkezni
Egy ilyen kezdetleges megoldást mint amit említettem, már összedobtam. Viszont most szembesültem olyan dilemmákkal, amelyek ebbe a megoldásba nem férnek bele.
#!/bin/bash
savefolder="/mnt/egyebek/Linux/save/2022-01"
searchtext="modified by Nextra"
foundfiles=$(grep -Ril "${searchtext}" /etc)
cp -fr --parents "${foundfiles}" "${savefolder}"/
Ha piszkálódunk :), akkor már ugye máshol is, esetleg nem csak konfig fájlokat. Ilyen pl. teszem azt a komplett saját themes a /boot/grub2/themes/mageiaN. S itt ugyebár vannak képek is. Melyekbe értelemszerűen nem lehet megjegyzéseket bevinni. (Jó. exif, de inkább ne.) Erre mondjuk emlékszem, és el is mentettem. No de találtam olyan fájlt is, melybe nem is írhatok megjegyzést. Az /etc/issue tipikusan ilyen. Pedig azt is módosítottam. Lehet van még ilyen.
A git nekem még egyelőre kínai, én csak otthoni felhasználó vagyok. Valami olyasmi grafikus tool, melyben csak bejelölöm a mappaszerkezetben hogy mit mentsen le, ezt az összes kijelölést jegyezze is meg, és legközelebb már csak írja felül, ha változás van. Gondolkoztam a baculán, de az mintha inkább vállalati mentőeszköz lenne. Ránézek erre a seafile-ra.
- A hozzászóláshoz be kell jelentkezni
git nekem még egyelőre kínai
Git gyorstalpaló. Ha esetleg nem akarsz a mainstreammel úszni, akkor svn howto.
Személy szerint inkább egy verziókezelő rendszert javasolnék, mint egy általános backupot.
- A hozzászóláshoz be kell jelentkezni
Nem használtam git-tet, de igazából nem látom a különbséget a seafile-hoz képest leszámítva, hogy a seafile automtaikusan ment, amint változás van, nem kell ezt "kézzel" megtenni. Már pedig ez egy fontos kényelmi és biztonsági tényező.
üdv: pomm
A 852-es kídlap telepötúsa sikeresen befejezádétt
- A hozzászóláshoz be kell jelentkezni
Viszont az sem elhanyagolható, ha az adott változáshoz megjegyzést fűzhetsz ("commit message"), ami alapján, ha esetleg gond van, könnyebben vissza tudod keresni, hol történt, és ezért gyorsabb visszaállítani. Meg persze az se rossz, hogy egy dolgot hogyan kell megcsinálni (pl. 3 helyen is kell valamit átírni, hogy valami pont úgy működjön), és ezt könnyebb átültetni másik rendszerre is.
Persze a legjobb az lenne, ha mentéskor rögtön kérdezné is, milyen megjegyzést fűzöl hozzá, és menti is :)
- A hozzászóláshoz be kell jelentkezni