Fumados II
Este video se recomienda mirarlo bajos los placenteros efectos del Cannabis ;)
Crónica de una instalación anunciada…
Este video se recomienda mirarlo bajos los placenteros efectos del Cannabis ;)
En el dia de ayer, se publicó la versión 1.3.0 de Redmine y en mi actual instalación tengo la versión 1.2.2, estos son los pasos para hacer un upgrade de la instalación a la versión 1.3.0
Importante! Si siguen las instrucciones oficiales para realizar el upgrade con el comando svn update, la versión que tendrán será la 1.2.3, no la 1.3.0
Instalar dependencias
1 2 3 4 | server:~# cd /var/lib/redmine/ server:~# gem install rdoc -v=2.4.2 server:~# gem install rails -v=2.3.14 server:~# gem uninstall rails -v=2.3.11 |
server:~# cd /var/lib/redmine/ server:~# gem install rdoc -v=2.4.2 server:~# gem install rails -v=2.3.14 server:~# gem uninstall rails -v=2.3.11
Como verán, prefiero desinstalar la versión en uso de rails (-v=2.3.11), pero deben editar el archivo config/environment.rb y cambiar la linea:
RAILS_GEM_VERSION = ’2.3.11′
por lo siguiente:
RAILS_GEM_VERSION = ’2.3.14′
Backup Backup Backup imagine a Steve Ballmer gritando backup! backup! backup!
1 2 | server:~# mysqldump -u <username> -p database | gzip > /backup/redmine-db_`date +%y_%m_%d`.gz server:~# tar -cvzf /backup/redmine-files_`date +%y_%m_%d`.gz /var/lib/redmine/files |
server:~# mysqldump -u <username> -p database | gzip > /backup/redmine-db_`date +%y_%m_%d`.gz server:~# tar -cvzf /backup/redmine-files_`date +%y_%m_%d`.gz /var/lib/redmine/files
Ahora si podemos ejecutar svn update
1 2 3 4 5 | server:~# svn update * * * server:~# Checked out revision 8180. |
server:~# svn update * * * server:~# Checked out revision 8180.
Pueden ver que la copia local hizo update a la revision 8180, que no es la 1.3.0, sino la 1.2.3 pero a no preocuparse.
Actualizamos la base de datos y los plugins
1 2 | server:~# rake db:migrate RAILS_ENV=production server:~# rake db:migrate_plugins RAILS_ENV=production |
server:~# rake db:migrate RAILS_ENV=production server:~# rake db:migrate_plugins RAILS_ENV=production
Hacemos una limpieza de sesiones y cache
1 2 | server:~# rake tmp:cache:clear server:~# rake tmp:sessions:clear |
server:~# rake tmp:cache:clear server:~# rake tmp:sessions:clear
Reiniciamos Apache, ingresamos a nuestro Redmine y en Administration–> Information vemos que la versión es la 1.2.3, no la 1.3.0…
Dado que la instalación original de Redmine se hizo mediante un svn checkout, la url continua apuntando a la versión 1.2, debemos cambiarla
1
2
3
45
6
7
8
9
| server:~# cd /var/lib/redmine server:~# svn info | grep URL: URL: http://redmine.rubyforge.org/svn/branches/1.2-stable server:~# svn switch http://redmine.rubyforge.org/svn/branches/1.3-stable* * * * server:~# Checked out revision 8188. |
server:~# cd /var/lib/redmine server:~# svn info | grep URL: URL: http://redmine.rubyforge.org/svn/branches/1.2-stable server:~# svn switch http://redmine.rubyforge.org/svn/branches/1.3-stable * * * * server:~# Checked out revision 8188.
Nuevamente actualizamos la base de datos y los plugins (ahora si actualiza la DB)
1 2 | server:~# rake db:migrate RAILS_ENV=production server:~# rake db:migrate_plugins RAILS_ENV=production |
server:~# rake db:migrate RAILS_ENV=production server:~# rake db:migrate_plugins RAILS_ENV=production
Hacemos una limpieza de sesiones y cache
1 2 | server:~# rake tmp:cache:clear server:~# rake tmp:sessions:clear |
server:~# rake tmp:cache:clear server:~# rake tmp:sessions:clear
Reiniciamos Apache, ingresamos a nuestro Redmine y en Administration–> Information, ahora vemos que la versión es la 1.3.0
El paquete Proftpd en Debian por defecto no trae soporte para mod_sftp, en mi caso particular utilizo este en vez del Subsystem sftp de SSH, que nunca lo pude configurar a mi gusto y tampoco me provee de todas las opciones que mod_sftp pone a mi disposición.
El primer paso es instalar el source y algunas dependencias
12345 6 7 8 9 10 11 12 13 14 15 16 1718 19 20 21 22 23 24 25 26 27 28 29 | server:~# cd /usr/local/srcserver:~# aptitude install build-essential openssl libssl-dev devscriptsserver:/usr/local/src# cd proftpd-dfsg-1.3.3aserver:/usr/local/src# apt-get source proftpd-dfsgReading package lists... Done Building dependency tree Reading state information... Done Need to get 4,828 kB of source archives. Get:1 http://security.debian.org/ squeeze/updates/main proftpd-dfsg 1.3.3a-6squeeze4 (dsc) [1,426 B] Get:2 http://security.debian.org/ squeeze/updates/main proftpd-dfsg 1.3.3a-6squeeze4 (tar) [4,719 kB] Get:3 http://security.debian.org/ squeeze/updates/main proftpd-dfsg 1.3.3a-6squeeze4 (diff) [108 kB] Fetched 4,828 kB in 10s (442 kB/s) dpkg-source: info: extracting proftpd-dfsg in proftpd-dfsg-1.3.3a dpkg-source: info: unpacking proftpd-dfsg_1.3.3a.orig.tar.gz dpkg-source: info: applying proftpd-dfsg_1.3.3a-6squeeze4.diff.gz server:/usr/local/src# apt-get build-dep proftpd-dfsgReading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: dpatch libacl1-dev libattr1-dev libaudio2 libcap-dev libdrm-intel1 libdrm-radeon1 libdrm2 libgl1-mesa-dri libgl1-mesa-glx libglu1-mesa libice6 liblcms1 libltdl-dev libmng1 libncurses5-dev libodbcinstq1c2 libqt3-mt libsm6 libtool libwrap0-dev libxcursor1 libxdamage1 libxfixes3 libxi6 libxinerama1 libxmu6 libxrandr2 libxt6 libxxf86vm1 unixodbc-dev 0 upgraded, 31 newly installed, 0 to remove and 2 not upgraded. Need to get 23.3 MB of archives. After this operation, 63.6 MB of additional disk space will be used. Do you want to continue [Y/n]? Y server:/usr/local/src# cd proftpd-dfsg-1.3.3a |
server:~# cd /usr/local/src server:~# aptitude install build-essential openssl libssl-dev devscripts server:/usr/local/src# cd proftpd-dfsg-1.3.3a server:/usr/local/src# apt-get source proftpd-dfsg Reading package lists... Done Building dependency tree Reading state information... Done Need to get 4,828 kB of source archives. Get:1 http://security.debian.org/ squeeze/updates/main proftpd-dfsg 1.3.3a-6squeeze4 (dsc) [1,426 B] Get:2 http://security.debian.org/ squeeze/updates/main proftpd-dfsg 1.3.3a-6squeeze4 (tar) [4,719 kB] Get:3 http://security.debian.org/ squeeze/updates/main proftpd-dfsg 1.3.3a-6squeeze4 (diff) [108 kB] Fetched 4,828 kB in 10s (442 kB/s) dpkg-source: info: extracting proftpd-dfsg in proftpd-dfsg-1.3.3a dpkg-source: info: unpacking proftpd-dfsg_1.3.3a.orig.tar.gz dpkg-source: info: applying proftpd-dfsg_1.3.3a-6squeeze4.diff.gz server:/usr/local/src# apt-get build-dep proftpd-dfsg Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: dpatch libacl1-dev libattr1-dev libaudio2 libcap-dev libdrm-intel1 libdrm-radeon1 libdrm2 libgl1-mesa-dri libgl1-mesa-glx libglu1-mesa libice6 liblcms1 libltdl-dev libmng1 libncurses5-dev libodbcinstq1c2 libqt3-mt libsm6 libtool libwrap0-dev libxcursor1 libxdamage1 libxfixes3 libxi6 libxinerama1 libxmu6 libxrandr2 libxt6 libxxf86vm1 unixodbc-dev 0 upgraded, 31 newly installed, 0 to remove and 2 not upgraded. Need to get 23.3 MB of archives. After this operation, 63.6 MB of additional disk space will be used. Do you want to continue [Y/n]? Y server:/usr/local/src# cd proftpd-dfsg-1.3.3a
Una vez instaladas todas las dependencias, debemos editar el archivo /usr/local/src/proftpd-dfsg-1.3.3a/debian/rules y agregar al final de la sección CONF_ARGS la opción –with-modules=mod_sftp
1
2
3
4
5 | CONF_ARGS := --prefix=/usr \ --with-includes=$(shell pg_config --includedir):$(shell mysql_config --include|sed -e 's/-I//') \ --mandir=/usr/share/man --sysconfdir=/etc/$(NAME) --localstatedir=/var/run --libexecdir=/usr/lib/$(NAME) \ --enable-sendfile --enable-facl --enable-dso --enable-autoshadow --enable-ctrls --with-modules=mod_readme \ --enable-ipv6 --enable-nls --with-modules=mod_sftp |
CONF_ARGS := --prefix=/usr \
--with-includes=$(shell pg_config --includedir):$(shell mysql_config --include|sed -e 's/-I//') \
--mandir=/usr/share/man --sysconfdir=/etc/$(NAME) --localstatedir=/var/run --libexecdir=/usr/lib/$(NAME) \
--enable-sendfile --enable-facl --enable-dso --enable-autoshadow --enable-ctrls --with-modules=mod_readme \
--enable-ipv6 --enable-nls --with-modules=mod_sftpPara evitar que con alguna actualización Debian nos reinstale Proftpd, debemos marcar el paquete como una versión exclusiva.
1 | server:/usr/local/src/proftpd-dfsg-1.3.3a# dch -l local 'Proftpd with sftp support' |
server:/usr/local/src/proftpd-dfsg-1.3.3a# dch -l local 'Proftpd with sftp support'
Y finalmente compilamos el paquete
1 | server:/usr/local/src/proftpd-dfsg-1.3.3a# debuild -us -uc |
server:/usr/local/src/proftpd-dfsg-1.3.3a# debuild -us -uc
Cuando este proceso termina, tendremos en /usr/local/src/ los *.deb generados
123 4 5 6 7 8 | server:/usr/local/src/proftpd-dfsg-1.3.3a# cd ..server:/usr/local/src# ls -lh *.deb-rw-r--r-- 1 root root 1.5M Nov 27 02:28 proftpd-doc_1.3.3a-6squeeze4local1_all.deb -rw-r--r-- 1 root root 347K Nov 27 02:28 proftpd-mod-ldap_1.3.3a-6squeeze4local1_i386.deb -rw-r--r-- 1 root root 338K Nov 27 02:28 proftpd-mod-mysql_1.3.3a-6squeeze4local1_i386.deb -rw-r--r-- 1 root root 340K Nov 27 02:28 proftpd-mod-odbc_1.3.3a-6squeeze4local1_i386.deb -rw-r--r-- 1 root root 338K Nov 27 02:28 proftpd-mod-pgsql_1.3.3a-6squeeze4local1_i386.deb -rw-r--r-- 1 root root 337K Nov 27 02:28 proftpd-mod-sqlite_1.3.3a-6squeeze4local1_i386.deb |
server:/usr/local/src/proftpd-dfsg-1.3.3a# cd .. server:/usr/local/src# ls -lh *.deb -rw-r--r-- 1 root root 1.5M Nov 27 02:28 proftpd-doc_1.3.3a-6squeeze4local1_all.deb -rw-r--r-- 1 root root 347K Nov 27 02:28 proftpd-mod-ldap_1.3.3a-6squeeze4local1_i386.deb -rw-r--r-- 1 root root 338K Nov 27 02:28 proftpd-mod-mysql_1.3.3a-6squeeze4local1_i386.deb -rw-r--r-- 1 root root 340K Nov 27 02:28 proftpd-mod-odbc_1.3.3a-6squeeze4local1_i386.deb -rw-r--r-- 1 root root 338K Nov 27 02:28 proftpd-mod-pgsql_1.3.3a-6squeeze4local1_i386.deb -rw-r--r-- 1 root root 337K Nov 27 02:28 proftpd-mod-sqlite_1.3.3a-6squeeze4local1_i386.deb
Mi humilde homenaje…
