Kupodivu autoři Fedory konstatují, že současný způsob aktualizací na Linuxu má velké mouchy (což jsem tu někde v diskusi zmiňoval už před časem). A volí řešení velmi blízké tomu, které mají Windows už řadu let. S tím že místo přesně definovaného požadavku na restart používají heuristiku, což je poněkud prasárna. Ale to se snad časem doladí. A třeba se jednou dočkáte i nějakého API, které by problematiku řešilo.
http://msdn.microsoft.com/en-us/library/windows/desktop/aa373524(v=vs.85).aspx
Co konstatují "autoři" Fedory (ve skutečnosti skupiny magorů kolem Poetteringa a jeho příšerných produktů systemd a spol. se neshoduje s realitou a zkušenostmi za desítky let uživání). O tom, že Windows je třeba "dohnat a předehnat", takže v podání Lennart boys budou místo jednoho rebootu dokonce dva, už ani nemluvě. Pokud si čvachtáte blahem nad nekonečným kolotočem restartů ve Windows po instalaci, tak to je vaše volba, jen nemám zájem na tom, aby se tahle kravina zaváděla v Linuxu. S API nebo bez.
Tahle krávovina doufám zůstane omezena na Fedoru a GnomeOS.
Jinak pro Laela - v podstatě jediná možnost, jak netrávit u instalace těch vašich úžasných Windows mládí, je sosnout nejnovější "integrated" warez release od osvědčené skupiny. Ani s vaším genitálním API totiž ten poklad neumí stáhnout aktualizace při instalaci - což bude patrně tím, že po každé instalaci aktualizací po instalaci se po rebootu objeví mraky aktualizací aktualizací, po rebootu následují aktualizace aktualizací aktualizací a takhle furt dokola. A to právě "díky" tomu "úžasnému" API a zamykání souborů.
Tahle krávovina doufám zůstane omezena na Fedoru a GnomeOS.
Jinak pro Laela - v podstatě jediná možnost, jak netrávit u instalace těch vašich úžasných Windows mládí, je sosnout nejnovější "integrated" warez release od osvědčené skupiny. Ani s vaším genitálním API totiž ten poklad neumí stáhnout aktualizace při instalaci - což bude patrně tím, že po každé instalaci aktualizací po instalaci se po rebootu objeví mraky aktualizací aktualizací, po rebootu následují aktualizace aktualizací aktualizací a takhle furt dokola. A to právě "díky" tomu "úžasnému" API a zamykání souborů.
Samozřejmě pokud instalujete z média bez integrovaného Service Packu, je poté aktualizace delší.
Jaká je podle vás alternativa k zamykání souborů a tomu API? Prostě přebušit běžící soubory, a doufat, že šťastnou shodou okolností nenastane žádná kolize mezi běžícími a nově instalovanými komponentami?
Abychom mluvili konkrétněji: přečtěte si tenhle link, sekci So why bother with all this?
http://blogs.gnome.org/hughsie/2012/06/04/offline-os-updates-looking-forward-to-gnome-3-6/
Ten problém se vůbec neomezuje na média bez integrovaného SP. I s posledním integrovaným SP už je to tragédie i v případě Windows 7. Když jsem cca před 2 měsíci známému přeinstalovával zbořený notebook s W7, tam s instalací Office 2010 těch restartů bylo cca 10 a skutečně je to práce min. na půl dne (jako největší tragédie z hlediska rychlosti aktualizací se v tomto ohledu jeví zaplevelení systému nej(h)různějšími verzemi .NET a následná rekompilace po aktualizaci, táhne se to jako smrad i na i7 s SSD diskem :-(
Znova opakuji, že "kolize" se omezují na případnou nutnost restartování služby, případně GUI. Např. Zypper umí ovlivněné procesy detekovat, jenže u Fedory se rozhodli místo toho znovu vynalézat s Lennartem kolo. Restart celého systému má smysl pouze v případě aktualizace glibc, případně kernelu (pokud nechci použít kexec), dvojitý restart nemá smysl zhola žádný.
A napadlo vás třeba pouštět ty setupy s parametrem /norestart? Pokud to vzácně vede ke kolizi, kterou příští setup nemůže skousnout, tak vás to vyzve k restartu před další instalací.
Těch (h)různých verze .NETu je fakt moc. Verze 4.0, 3.5 (obsahuje 2.0 a 3.0) a 1.1 (obsahuje 1.0). Pochopitelně pokud naprosto zbytečně instalujete všechny verze od 1.0 a service packy k tomu, může to být dost nudně strávené odpoledne :)
Samozřejmě pro řadu aktualizací restart není nutný.
S "pouhým" restartem GUI je ten problém, že ty samé knihovny mohou používat i služby. Službu totiž můžete napsat třeba v Qt (třída QtService).
Kexec použít opravdu nechcete, protože nedojde k reinicializaci HW, a může to vyústit v problémy. Někdy to vyjde, jindy ne - podle HW, počasí a nálady :)
A napadlo vás třeba pouštět ty setupy s parametrem /norestart?
To se musíte zeptat v Redmondu, proč je to nenapadlo a neustále obtěžují nesmyslnými restarty. Nicméně to jaksi nevyřeší problém toho, že systém vůbec nedetekuje nutnost další aktualizace, dokud se ten restart neprovede.
Pochopitelně pokud naprosto zbytečně instalujete všechny verze od 1.0 a service packy k tomu, může to být dost nudně strávené odpoledne :)
Já neinstaluji nic, instalace těch .Net ptákovin jsou defaultně zaškrtnuté a obvykle označené jako důležité nebo kritické. Opět mi nezbývá, než vás odkázat na chlebodárce v Redmondu a požádat, abyste jim sdělil, že naprosto zbytečně zasírají počítače nepotřebnými kravinami.
Myslím že o potřebě restartu jsme už mluvili. Aktualizace se opravdu detekují, jen pokud je instalace kompletně dokončená. A pokud je pro dokončení instalace potřeba restart, asi by nebylo dobré aktualizovat před ním.
Aha, vy myslíte patche. Tak to jsou jasně nepotřebné krávoviny :)