Portál AbcLinuxu, 10. května 2025 03:10
Řešení dotazu:
[Desktop Entry] Type=Application Version=1.0 GenericName=File Synchronizer Name=MEGASync Comment=Easy automated syncing between your computers and your MEGA cloud drive. TryExec=megasync Exec=megasync Icon=mega Terminal=false Categories=Network;System; StartupNotify=false X-GNOME-Autostart-Delay=60 X-Desktop-File-Install-Version=0.22DE nástroje, co vytváří menu se spouštěči aplikací si ten adresář projdou a z nalezených .desktop souborů menu sestaví.
# pro celej system (zde se vytvari/kopiruji pri instalaci balicku) /usr/share/application # pro uzivatele (zde se vytvari kdyz pridas do spoustece) $HOME/.local/share/applications/ # pro uzivatele na plose $HOME/PlochaLinux sice nema Program Files, ale ma ruzne standard cesty kam se ve vychozim nahrava (specialita je pak /opt ktere ma nejbliz k ProramFiles, ale pouziva si minimalne), normalne si aplikace proste nainstaluje ruzne casti na patricna mista... system nastaveni do /etc, systemove knihovny do /lib, vetsinu pak rozprostre v /usr do lib,share,doc,man,locale,icons...
# dohledani kteremu balicku patri konkretni soubor dpkg-query -S jmeno_souboru # zobrazeni vsech souboru patrici konkretnimu baliku dpkg-query -L jmeno_baliku
/bin, /sbin, /usr/bin, /usr/sbin
. Ty bin jsou pro běžného uživatele a sbin jsou pro superuživatele a někdy je ani obyčejný uživatel nemá v cestě. Dělení na něco přímo v kořeni a něco v /usr má historický původ v unixu z doby, kdy /usr se mountovalo jako samostatný FS a někdy i jen RO FS a přibližně odráží to, že přímo v bin jsou více low level utility a v /usr/bin více high level utility a programy, se systémem něco mělo jít dělat i když se nepřimoutnul /usr. Knihovny si programy nasázejí do /lib /lib64 /usr/lib /usr/lib64
. Když jsou zdrojáky tak jsou v /src /usr/src
. Mnoho baliku si naskládá i dost informací do /usr/share
. a některé mají průběžná data ve /var/lib
(a samozřejmě konfiguace v /etc
) kde je .desktop byla řeč.
Instalační package má popis, co má udělat, a kusy naskádá na správná místa a při odinstalaci je zase posbírá a smaže. strom /opt
se používá poměrně hodně, ale hlavně pro uzavřený soft. Uzavřený soft si obvykle vše potřebné včetně knihoven přiveze sám a naskládá si to do právě zmíněného /opt. To že si vozí mnohdy knihovny, je podle mne proto, že i když linuxové API je dost stabilní, není to stabilita na 100%, protože by to omezovalo možný vývoj. Platí pravidlo, že když už něco vývojáři změní, tak musí změnit i to, co na změně závisí. Jenže do uzavřeného softu změnu nemohou promítnout a na druhou stranu se uzavřený soft nemůže 100% spolehnout na stabilitu knihoven, tak si přiveze svoje knihovny v dané přislušné funkční verzi. Přiklady: googleearth, chrome, SAS, Oracle database
dpkg-query
, teď tedy vidím nade mnou komentář, který jsem přehlédl, když si teď prohlížím vzniklý strom odpovědí, není to na první pohled jasné, tak to pro úplnost dopisuji.
sudo rm -rf /usr/{bin,lib,share}/brasero
Když to z nějakých příčin balíčkovač nebude schopný už smazat?
Zatímco widláci musí smazat jen celou složku brasero, pokud nemá spouštěč uninstall?
Chapu ze je to z prvu tezke pochopit ten poradek a system kterej v tom je, kdyz si zvyklej ze Widle meli totalni bordel kterej se jako poradek jenom tvaril... Pro zacatek si jen uvedom ze se o to nemusis starat, postara se o to spravce balicku :)V těch widlích si to může uživatel změnit kam to chce, jen ti nesvéprávní musí být vedeni balíčkovačem, který to změnit neumí, jsem chtěl říct.
A za druhé uživatel to nainstaluje a spustí nějakým zcela nečekaným způsobem.Toto si pochopitelně představit nedokážu (protože tautologie). Faktem je, že balíčkovací systém dost dobře umožňuje instalovat jen konkrétním a konktrolovaným způsobem. Cokoliv jiného (například rozbalení balíčku a ruční překopírování) odmítám nazvat instalací. Spustit aplikaci lze také jen určitým způsobem. Schválně, a to nemyslím ironicky, zda by si mě byl schopen překvapit nějakým scénářem.
/opt
adresáře ještě existuje možnost čistě uživatelské instalace, kdy se to cpe do do ~/.local
Nejsem si tedy jist, nakolik je to standardní, ale na takové ty programy stažené z webu to používám.
~/.local
ve standardech?
A je ve standardech /opt
? Subjektivně mi to přijde jako taková prasárnička.
/opt
a ~/.local
podle nějakých standardů je nesmysl. Buď to chceš na úrovni systému a dáš to mimo ~
, nebo to chceš na úrovni uživatele a dáš to někam do ~
.
cat /etc/fstab UUID=318424ab-b633-454e-8d04-b0c0c551d9f1 / btrfs defaults 0 0 UUID=7557c884-0876-4e7f-82be-7e93721568fb /boot ext4 acl,user_xattr 1 2nebo na ID
cat /etc/fstab /dev/system/root / ext4 noatime,acl,user_xattr,discard 1 1 /dev/disk/by-id/ata-OCZ-AGILITY3_OCZ-3W17E1197QC92G7L-part2 /boot ext4 noatime,acl,user_xattr,discard 1 2 /dev/disk/by-id/ata-ST3000DM001-1CH166_Z1F22WNJ-part1 swap swap defaults 0 0UUID se snad překopíruje (nikdy jsem to netestoval), ale ID jsou Typy a reálná seriová čísla disků, takže jsou jedinečná. Na druhou stranu zase to dává naprostou jedinečnost toho, že když měním disky v kompu, tak vždy vím přesně, co a odkud se připojuje. Podobně i grub může být vázán na UUID nebo ID.
/etc/udev/rules.d/70-persistent-net.rules
, muzes tam zamenit rucne MAC sitovky(ek) v novem HW, nebo soubor smazat a vytvori se po restartu znovu uz pro aktualni MAC
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.