O instalador permite a partir da linha de comando ( shell elevado , por favor):
setup-x86.exe --root c:\cygwin -q --upgrade-also
para a versão de 64 bits:
setup-x86_64.exe --root c:\cygwin -q --upgrade-also
Detalhes:
- Substitua
c:\cygwin
pelo diretório de instalação raiz do CygWin.
- Sugestão para fechar qualquer shell ou programa do CygWin (por exemplo:
net stop sshd
se você instalou o OpenSSH).
- O parâmetro
-q
não é obrigatório.
Funciona via GUI (shell do DOS) ou mesmo no console remoto (SSH ou telnet). Não testado no PowerShell (alguém fez?).
Exemplo de saída de atualização correta:
G:\Instalac\CygWin\v2.852>Starting cygwin install, version 2.852
User has backup/restore rights
Current Directory: g:\Instalac\CygWin\Packages
Could not open service McShield for query, start and stop. McAfee may not be installed, or we don't have access.
root: c:\cygwin system
Selected local directory: g:\Instalac\CygWin\Packages
net: Direct
Loaded cached mirror list
get_url_to_membuf http://cygwin.com/mirrors.lst
getUrlToStream http://cygwin.com/mirrors.lst
site: http://ftp.hawo.stw.uni-erlangen.de/cygwin/
get_url_to_membuf http://ftp.hawo.stw.uni-erlangen.de/cygwin/x86/setup.bz2
getUrlToStream http://ftp.hawo.stw.uni-erlangen.de/cygwin/x86/setup.bz2
get_url_to_membuf http://ftp.hawo.stw.uni-erlangen.de/cygwin/x86/setup.bz2.sig
getUrlToStream http://ftp.hawo.stw.uni-erlangen.de/cygwin/x86/setup.bz2.sig
Changing gid back to original
Visited: 122 nodes out of 4415 while creating dependency order.
Dependency order of packages: _autorebase base-cygwin cygwin _update-info-dir libgcc1 libiconv2 libintl8 alternatives libattr1 li
bgmp10 coreutils libstdc++6 terminfo libncursesw10 libreadline7 bash findutils sed base-files libuuid1 libblkid1 libsmartcols1 zl
ib0 util-linux bashdb zlib-devel binutils libbz2_1 bzip2 libffi6 libp11-kit0 libtasn1_6 p11-kit p11-kit-trust ca-certificates cry
pt libmpfr4 gawk editrights libpcre1 grep libsigsegv2 diffutils csih cygrunsrv popt libpopt0 cygutils cygwin-devel dash file liba
tomic1 libcloog-isl4 libgomp1 libisl10 libmpc3 libquadmath0 libssp0 w32api-headers w32api-runtime windows-default-manifest gcc-co
re libexpat1 liblzma5 libdb4.8 libgdbm4 libopenssl100 libsqlite3_0 libcharset1 libiconv libintl-devel libuuid-devel python gdb li
bargp getent groff gzip hostname info ipc-utils libncurses10 less libapr1 libiodbc2 libmysqlclient18 libcom_err2 libkrb5support0
libk5crypto3 libkrb5_3 libgssapi_krb5_2 libsasl2_3 libopenldap2_4_2 perl openssl libpq5 libaprutil1 libedit0 libproxy1 libneon27
libpipeline1 libserf1_0 login lynx make man-db mintty nano ncurses openssh procps psmisc rebase run screen subversion xz tar tzco
de vim-minimal which zsh
Changing gid to Administrators
Ending cygwin install
Se, durante a atualização, você teve problemas como estes:
The following DLLs couldn't be rebased due to errors:
/usr/bin/cygcrypt-0.dll
ou:
The following DLLs couldn't be rebased because they were in use:
/usr/bin/cygcrypt-0.dll
ou:
ReBaseImage (/usr/bin/cygcrypt-0.dll) failed with last error = 6
... então você deve refazer a recuperação após a instalação:
1.- Feche todos os shell, programas e serviços CygWin.
2.- Abrir c:\CygWin\bin\ash.exe
como administrador (elevado).
3.- Corra /bin/rebaseall
.
cygwin1.dll
, os programas Cygwin começarão a se comportar mal e as documentações do Cygwin recomendam uma reinicialização. Portanto, é melhor fechar todos os programas Cygwin e executarsetup.exe
diretamente a partir decmd
(se você deseja automatizar, use um arquivo em lotes, não um script de shell).