Re: output warning for cygwin process running at setup__.exe
Greetings, Brian Inglis! >>> The problem is, not all packages are prepared to deal with locked shared >>> objects (in truth, none are). Which may leave system in an inconsistent >>> state even after reboot. > Cygwin setup uses standard Windows wininit processing to perform the > replacements on restart. Does it schedule a rebase after replacement? >> Server service like cygserver always start after windows re-start if it is >> registered. So restart does not always kill cygwin processes. I do not want >> to force to kill cygwin process by setupXX.exe but output the warning. > Only if a service is registered for Automatic startup: you can change this to > Manual, and restart services in a permanent last postinstall script prefix > e.g. > zp_zzz_services.dash, which can also be executed by a scheduled task, before > starting Cygwin from e.g. a XWin Server taskbar or Start Menu shortcut. > Cygwin setup could operate more consistently and transparently if setup > warned, > then shutdown running Cygwin services and noted them, and killed all remaining > processes, before beginning the install phase, then restarted previously noted > running services after the postinstall phase. Or it could rename the objects it failed to delete, and use wininit to cleanup. -- With best regards, Andrey Repin Monday, March 19, 2018 13:37:06 Sorry for my terrible english... -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Re: output warning for cygwin process running at setup__.exe
On 19.3.2018 5:56, Tatsuro MATSUOKA wrote: Sever survice like cygsever always start after windows re-start if it is registered. So restart does not always kill cygwin processes. I do not want to force to kill cygwin process by setupXX.exe but output the warning. Hi, I use script [1] for years in order to: - allways use latest setup.exe - stop all running Cygwin services* before setup is started - start formerlly runnig Cygwin services after setup is done - and more *) services I usually run; feel free to add more services according your needs 1: https://gist.github.com/Vlado-99/1d59bf05b70481377ff90bb53e13bb2d Vlado -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Re: output warning for cygwin process running at setup__.exe
On 2018-03-18 22:56, Tatsuro MATSUOKA wrote: > On 2018-03-18 20:56, Andrey Repin wrote: >>> On cygwin setup, one has to kill cygwin process to execute >>> autorebase in the end of setup process. I think it is better to >>> output warning at start stage setup if cygwin process running. > Sorry for my inadequate description. At postinstall stage, cygwin > setup execute /etc/postinstall/0p_000_autorebase.dash, this sometimes > fails when Cygwin process(es) is(are) alive. According to > http://cygwin.wikia.com/wiki/Rebaseall, we have to kill or stop > cygwin processes and services before rebase. This is why I propose > that warning messages in pre-install stage in cygwin setup. Sounds about right. If there's an existing Cygwin install, it is possible to run ps.exe and see if it find any running Cygwin processes before attempting an update. >>> If there's not an existing Cygwin install, you don't really have to worry >>> too much about Cygwin processes running. ;^> >> Yes. >>> The docs all recommend killing all Cygwin processes *before* running >>> setup, as setup can not replace running exes and active dlls during the >>> installation phase, before postinstall rebase of replaced dlls. >>> If setup can not replace any exe or dll, it warns you have to restart >>> your system to complete the replacement. After the restart, you then have >>> to rerun setup with no Cygwin processes running to successfully rebase >>> replaced dlls. >> The problem is, not all packages are prepared to deal with locked shared >> objects (in truth, none are). Which may leave system in an inconsistent >> state even after reboot. Cygwin setup uses standard Windows wininit processing to perform the replacements on restart. > Server service like cygserver always start after windows re-start if it is > registered. So restart does not always kill cygwin processes. I do not want > to force to kill cygwin process by setupXX.exe but output the warning. Only if a service is registered for Automatic startup: you can change this to Manual, and restart services in a permanent last postinstall script prefix e.g. zp_zzz_services.dash, which can also be executed by a scheduled task, before starting Cygwin from e.g. a XWin Server taskbar or Start Menu shortcut. Cygwin setup could operate more consistently and transparently if setup warned, then shutdown running Cygwin services and noted them, and killed all remaining processes, before beginning the install phase, then restarted previously noted running services after the postinstall phase. -- Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Re: output warning for cygwin process running at setup__.exe
- Original Message - > From: Andrey Repin > To: Brian Inglis ; cygwin > Cc: > Date: 2018/3/19, Mon 13:02 > Subject: Re: output warning for cygwin process running at setup__.exe > >G reetings, Brian Inglis! > >> On 2018-03-18 20:56, Andrey Repin wrote: >>>>>> On cygwin setup, one has to kill cygwin process to execute > autorebase >>>>>> in the end of setup process. I think it is better to output > warning at >>>>>> start stage setup if cygwin process running. > >>>> Sorry for my inadequate description. >>>> At postinstall stage, cygwin setup execute >>>> /etc/postinstall/0p_000_autorebase.dash, >>>> this sometimes fails when Cygwin process(es) is(are) alive. >>>> Acooding to http://cygwin.wikia.com/wiki/Rebaseall, >>>> we have to kill or stop cygwin porcesses and sevices before rebase. >>>> This is why I propose that warning messages in pre-install stage in > cygwin setup. >>> >>> Sounds about right. >>> If there's an existing Cygwin install, it is possible to run ps.exe > and see if >>> it find any running Cygwin processes before attempting an update. > >> If there's not an existing Cygwin install, you don't really have to > worry too >> much about Cygwin processes running. ;^> > > Yes. > >> The docs all recommend killing all Cygwin processes *before* running setup, > as >> setup can not replace running exes and active dlls during the installation >> phase, before postinstall rebase of replaced dlls. > >> If setup can not replace any exe or dll, it warns you have to restart your >> system to complete the replacement. After the restart, you then have to > rerun >> setup with no Cygwin processes running to successfully rebase replaced > dlls. > > The problem is, not all packages are prepared to deal with locked shared > objects (in truth, none are). > Which may leave system in an inconsistent state even after reboot. > Sever survice like cygsever always start after windows re-start if it is registered. So restart does not always kill cygwin processes. I do not want to force to kill cygwin process by setupXX.exe but output the warning. Tatsuro Tatsuro -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Re: output warning for cygwin process running at setup__.exe
Greetings, Brian Inglis! > On 2018-03-18 20:56, Andrey Repin wrote: > On cygwin setup, one has to kill cygwin process to execute autorebase > in the end of setup process. I think it is better to output warning at > start stage setup if cygwin process running. >>> Sorry for my inadequate description. >>> At postinstall stage, cygwin setup execute >>> /etc/postinstall/0p_000_autorebase.dash, >>> this sometimes fails when Cygwin process(es) is(are) alive. >>> Acooding to http://cygwin.wikia.com/wiki/Rebaseall, >>> we have to kill or stop cygwin porcesses and sevices before rebase. >>> This is why I propose that warning messages in pre-install stage in cygwin >>> setup. >> >> Sounds about right. >> If there's an existing Cygwin install, it is possible to run ps.exe and see >> if >> it find any running Cygwin processes before attempting an update. > If there's not an existing Cygwin install, you don't really have to worry too > much about Cygwin processes running. ;^> Yes. > The docs all recommend killing all Cygwin processes *before* running setup, as > setup can not replace running exes and active dlls during the installation > phase, before postinstall rebase of replaced dlls. > If setup can not replace any exe or dll, it warns you have to restart your > system to complete the replacement. After the restart, you then have to rerun > setup with no Cygwin processes running to successfully rebase replaced dlls. The problem is, not all packages are prepared to deal with locked shared objects (in truth, none are). Which may leave system in an inconsistent state even after reboot. -- With best regards, Andrey Repin Monday, March 19, 2018 07:01:13 Sorry for my terrible english...
Re: output warning for cygwin process running at setup__.exe
On 2018-03-18 20:56, Andrey Repin wrote: On cygwin setup, one has to kill cygwin process to execute autorebase in the end of setup process. I think it is better to output warning at start stage setup if cygwin process running. >> Sorry for my inadequate description. >> At postinstall stage, cygwin setup execute >> /etc/postinstall/0p_000_autorebase.dash, >> this sometimes fails when Cygwin process(es) is(are) alive. >> Acooding to http://cygwin.wikia.com/wiki/Rebaseall, >> we have to kill or stop cygwin porcesses and sevices before rebase. >> This is why I propose that warning messages in pre-install stage in cygwin >> setup. > > Sounds about right. > If there's an existing Cygwin install, it is possible to run ps.exe and see if > it find any running Cygwin processes before attempting an update. If there's not an existing Cygwin install, you don't really have to worry too much about Cygwin processes running. ;^> The docs all recommend killing all Cygwin processes *before* running setup, as setup can not replace running exes and active dlls during the installation phase, before postinstall rebase of replaced dlls. If setup can not replace any exe or dll, it warns you have to restart your system to complete the replacement. After the restart, you then have to rerun setup with no Cygwin processes running to successfully rebase replaced dlls. -- Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple