Fórum Ubuntu CZ/SK
Ubuntu pro osobní počítače => Instalace, aktualizace a spouštění => Téma založeno: regine 26 Září 2020, 04:25:17
-
Mám tři kompy. Jen u jednoho je vyžadováno sudo při instalaci čehokoliv z terminálu. Rád bych potřeboval odstranit požadavek. PLS poraďte.
user@acer:~$ apt-get update
Načítají se seznamy balíků… Hotovo
W: chmod 0700 of directory /var/lib/apt/lists/partial failed - SetupAPTPartialDirectory (1: Operace není povolena)
E: Nešlo otevřít zámkový soubor /var/lib/apt/lists/lock - open (13: Operace zamítnuta)
E: Nelze uzamknout adresář /var/lib/apt/lists/
W: Problém při odstraňování souboru /var/cache/apt/pkgcache.bin - RemoveCaches (13: Operace zamítnuta)
W: Problém při odstraňování souboru /var/cache/apt/srcpkgcache.bin - RemoveCaches (13: Operace zamítnuta)
user@acer:~$
THX.
-
Že je při instalaci požadováno sudo je zcela normální - naopak pokud lze instalovat bez sudo (zřejmě jsi přihlášen jako root), je vážný bezpečnostní problém.
Můžeš před instalací nejprve zadat příkaz
sudo -i
Pak už v dalších příkazech není sudo potřebné. Platí to samozřejmě pouze pro danou relaci.
-
Osobně mi taky docela vadí, že je potřeba sudo při každé prkotině, ale zrovna při instalaci programů mi to přijde v pořádku. Spíš nechápu, proč musím zadat heslo, když si měním rozložení monitorů, rozlišení, obnovovací frekvenci a podobné prkotiny. Nebo když si přidám ikonku ke svému vlastnímu účtu.
Každopádně sudo je vlastně to samé jako UAC ve Windows, tedy dočasné povýšení na práva administrátora/roota a je to bezpečnostní prvek.
-
Díky za odpovědi. Je mi jen divné, že u příkazu:
apt-get update
který slouží jen ke kontrole (It is useful to get info on an updated version of packages or their dependencies.) a ne pro instalaci. U ostatních dvou kompů není sudo požadováno v uvedeném případě.
Je požadováno jen na několik konkrétních adresářů/souborů.
Možná vznikla nedostupnost, mojí chybou, že jsem někdy něco řešil přímo jako root (mám ho zpřístupněný) v terminálovém režimu (ne v GUI). Snad by šlo napravit změnou práv, ale v tom už nejsem dost znalý.
-
Díky za odpovědi. Je mi jen divné, že u příkazu:
apt-get update
který slouží jen ke kontrole (It is useful to get info on an updated version of packages or their dependencies.) a ne pro instalaci. U ostatních dvou kompů není sudo požadováno v uvedeném případě.
Je požadováno jen na několik konkrétních adresářů/souborů.
Možná vznikla nedostupnost, mojí chybou, že jsem někdy něco řešil přímo jako root (mám ho zpřístupněný) v terminálovém režimu (ne v GUI). Snad by šlo napravit změnou práv, ale v tom už nejsem dost znalý.
Ano, je to právy k přísl. adresářům/souborům. Ty lze standardně změnit pomocí chmod. Jen musíš vědět o které se jedná..
Příkaz apt-get update sice sám o sobě nic neinstaluje, ale aktualizuje apt-cache (zapisuje do ní). A tato apt-cache (je ve složce /var/cache/apt) je ve vlastnictví roota, tudíž běžný user do ní zapisovat nemůže. Toto je standardní stav.
-
PLS, lze mi zde uvést příklad parametru pro chmod? Jak změnit právo na standardní.
Složky/adresáře jsem uvedl hned v prvním dotazu.
Jistě mohu zkusit, ale zpravidla jako nezkušený začnu špatně a potom pracně opravuji.
THX
-
PLS, lze mi zde uvést příklad parametru pro chmod? Jak změnit právo na standardní.
Složky/adresáře jsem uvedl hned v prvním dotazu.
Jistě mohu zkusit, ale zpravidla jako nezkušený začnu špatně a potom pracně opravuji.
THX
Měnit práva může jen aktuální vlastník, pokud tedy nejsi vlastníkem, musíš nejprve převzít vlastnictví objektu:
sudo chown user:user /soubor
nebo rekurzivně (pro celou složku vč. obsahu)
sudo chown -R user:user /složka
Až budeš vlastníkem, pak teprve můžeš změnit práva souboru:
sudo chmod 755 /soubor
Nebo opět rekurzivně (pro celou složku vč. obsahu):
sudo chmod -R 755 /složka
Někteří správci souborů umožňují toto "naklikat" ve Vlastnosti > Oprávnění objektů. Správce souborů ovšem musí být spuštěný s právy roota.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Pokud ti jde o to, že sis dříve vlastnictví/práva "rozvrtal" a nyní je chceš vrátit na standardní, musíš nejprve zjistit jaká ta standardní byla.
Dá se vygooglit seznam (https://www.vidarholen.net/contents/junk/ubuntu_permissions.html) úplně všech souborů/složek v Ubuntu s jejich právy (je velice obsáhlý). Z něj můžeš při obnově vycházet.
Ale zjednodušeně lze říci, že u naprosté většiny systémových složek je vlastník root který má práva rwx
Skupina root a skupina ostatní mají práva r-x Zapsáno v celku to tedy je rwxr-xr-x čili 755
Aktuální práva objektů zjistíš příkazem:
ls -l /cesta
Pokud tedy chceš změnit vlastnictví a práva na roota:
sudo chown -R root:root /složka
sudo chmod -R 755 /složka
-
Není pravda, že práva může měnit jen aktuální vlastník souboru. Superuživatel (root) může měnit přístupová práva souborů a adresářů i v případě, že sám jejich vlastníkem není.
Mimochodem, práva u příkazu „chmod“ lze zapsat nejen čísleně (755), ale i symbolicky: „u=rwx,go=rx“. Myslím, že nezkušeným uživatelům bude symbolický zápis připadat pochopitelnější. Celý příkaz pak vypadá například takto:
sudo chmod -R u=rwx,go=rx /usr