Mazání souborů ve Fedoře 17

Přešel sem z jiné distribuce na Fedoru 17 a prosím o radu ve dvou záležitostech.

  1. Jak automaticky vymazat složku /tmp při vypnutí ve Fedoře 17 lxde? Našel sem dvě řešení pro Fedoru. Jedno předpokládá existenci souboru /sbin/halt.local, druhé předpokládá existenci souboru /etc/init.d/rsyslog. Ani jeden z těchto souborů v mé Fedoře 17 (lxde) nemám…

  2. Jak smazat staré balíčky (závislosti po odinstalovaných aplikacích). Mám pocit, že příkaz yum remove odstranil vždy jen jeden balíček a závislosti ponechal. Dají se zbytečné balíčky dodatečně nějak odstranit?

Děkuji, Michal

ad 1) to co pises s mazanim /tmp nesouvisi, navic to pro Fedoru to ve velmi diskutabilni postup.
Jedna z moznosti je, pokud mas dostatek RAM prevest si /tmp na tmpfs
Do /etc/fstab pridej
tmpfs /tmp tmpfs nodev,nosuid,noexec,mode=1777 0 0
Druha je pri shutdownu pustit pres systemd skript, napr. zde:

ad 2) yum standardne nemaze “opustene” zavislosti. Muzes si doinstalovat plugin yum-plugin-remove-with-leaves, pripadne je muzes jednou za cas probrat pomoci package-cleanup. Dalsi moznosti je, pokud si instaloval nejakou aplikaci a pak ji zase chces odebrat provest undo teto operace pomoci yum history.

Na první otázku nemám odpověď. Druhá lze řešit přes plugin YUMu remove-with-leaves (v balíčku yum-plugin-remove-with-leaves). Při odstranění balíčku potom stačí přidat příkaz --remove-leaves a odinstalují se i nepotřebné balíčky, na kterých odstraňovaný balíček závisí.

Jeste doplnim ze Fedora resi mazani /tmp pres /etc/cron.daily/tmpwatch takze hromadeni souboru nehrozi.

Je to možné, ale já bych byl stejně rád, aby mi fungoval tento dobrý tip podle příručky Fedory:

Vymazání složky /tmp během ukončení systému

Jako uživatel root do příkazové řádky zadejte

cp -a /etc/init.d/rsyslog /root/rsyslog.zaloha
gedit /etc/init.d/rsyslog

V souboru rsyslog najděte sekci stop(), ve které pod řádek
killproc rsyslogd

vložte

rm -rf /tmp/* /tmp/.[^.]*

Protože soubor /etc/init.d/rsyslog v mé Fedoře 17 lxde není, objeví se hned na začátku chybové hlášení:

cp: cannot stat `/etc/init.d/rsyslog’: No such file or directory

Podobná situce je v případě odkazu výše, protože v mé Fedoře 17 není ani soubor /lib/systemd/system/runonshutdown.service. Obávám se, že uvedený soubor nelze jen tak jednoduše vytvořit - asi by to nebylo funkční. Samotný skript samozřejmě není problém.

Soubor /etc/init.d/rsyslogd v F17 uz neexistuje a v prirucce to je tim padem spatne. Duvod je ten ze F17 uz nepouziva SysV init ale systemd. Soubor /lib/systemd/system/runonshutdown.service tedy vytor s obsahem podle prikladu, dale vytvor skript, ktery v konfiguraci runonshutdown.service odkazes, prijimajici parametry “start” a “stop” kde na start nebudes delat nic a na stop provedes rm.

Jen na okraj, Fedora 17 lxde defaultně nemaže předmětný adresář vůbec (žádný anacron, apod.).

Ale teď ke tvé odpovědi. Jak sem se snažil naznačit ve svém předchozím příspěvku, žádný ze zmíněných postupů nefunguje. Už sem asi 50x restartoval Fedoru při zkoušení. Popsaný problém zůstal nevyřešen i na zahraničním linux fóru. Samotný mazací skript funguje, ale pouze ručně spuštěný. Navíc adresář se dá mazat jen s právy roota (proboha proč - v jiné distribuci ho může mazat běžný user).

Všeobecně - bez ohledu na výše uvedené - lze říci, že lxde verze je hodně zabugovaný spin, kde nefunguje řada věcí, které jinde normálně fungují. Možná je to jeden z důvodů, proč si Fedoru 17 lxde zatím stáhlo asi jen 70 lidí, což je opravdu strašně málo. Určité bugy se dají opravit, ale některé zásadní věci zůstávají nevyřešeny. Teď nevím, jestli mám pokračovat tady na fóru s několika dalšími dotazy, když zde odpovídáte často pouze jeden nebo dva a pravděpodobně žádný z vás nemá lxde verzi nainstalovanou.

Jelikož Fedora 18 bude defaultně používat tmpfs (tudíž to považuje za dobrý nápad) a ještě ti to covex napsal ať to použiješ v 1. příspěvku. Nebylo by vhodné se vydat touhle cestou? A nemusíš řešit mazání.
A jinak jaké konkrétně bugy v lxde?

Jen na okraj, Fedora 17 lxde defaultně nemaže předmětný adresář vůbec (žádný anacron, apod.).

Fedora (ať s gnome, kde nebo lxde - prostředí je to poslední, co to ovlivňuje) má nastavené promazávání v /etc/cron.daily/tmpwatch, kde se mažou soubory, na které se nesáhlo déle než X dnů. Je to z důvodu, že do /tmp se můžou ukládat i relativně podstatné věci, které není záhodno smazat jen tak bez ověření.

Navíc adresář se dá mazat jen s právy roota (proboha proč - v jiné distribuci ho může mazat běžný user).

Beru jako výkřik, na který je zbytečné reagovat, ale … jakmile někde můžeš jako běžný uživatel mazat cizí soubory, měl bys to okamžitě hlásit jako security bug :wink: