Actualització de Fedora Workstation 23 a 24 amb DNF

Logotip de la distribució de Gnu/Linux, Fedora

Logotip de la distribució de Gnu/Linux, Fedora


En un terminal amb permisos d’administració o accés a «sudo», fem:


dnf upgrade --refresh

dnf install dnf-plugin-system-upgrade

dnf system-upgrade download --releasever=24

dnf system-upgrade reboot

I, un cop reiniciat el sistema, i despres d’una bona estona de baixada, instal·lació, actualització, neteja i verificació de paquets, tot hauria d’estar en ordre.

Més informació al wiki sobre actualització amb DNF del Projecte Fedora.

Publicat en General | Etiquetes , , | Deixar un comentari

Còpia de seguretat incremental amb rsync en una línia

vault-154023_640
Amb marca de temps, preservant tots els atributs dels fitxers i directoris, fitxer de registre d’activitat i efectuant una còpia incremental, realment només es transfereixen els fitxers modificats des de l’última còpia, sent la resta d’entrades hard links a l’última còpia:

ahir=$(date --date="yesterday" +"%d%m%Y");avui=$(date +"%d%m%Y");logsave -a camí_al_fitxer_de_registre$avui rsync -avzhH --progress --link-dest=/Còpia$ahir /DirectoriOrigen/* /Còpia$avui/

Publicat en General | Etiquetes , , , , | Deixar un comentari

Error llibreria «libudev» en iniciar el client de l’Spotify

En Tux connectat a l'Spotify
Si us trobeu amb un error similar a aquest en iniciar el client Gnu/Linux de l’Spotify (en teoria encara està en beta):

papapep@SIST-001:~$ spotify
spotify: error while loading shared libraries: libudev.so.1: cannot open shared object file: No such file or directory

reviseu si teniu instal·lada la llibreria libudev-dev. Si no la teniu instal·lada, feu-ho. Si ja la teniu instal·lada, però encara us dóna l’error, podeu resoldre-ho fent un:

sudo ln -s /usr/lib/libudev.so /usr/lib/libudev.so.1

A partir d’aquest moment, ja us hauria de funcionar correctament. Això m’ha funcionat a una Debian Wheezy, probablement a d’altres distros s’hagi d’adaptar el camí de la llibreria en fer l’enllaç.

Publicat en General | Etiquetes | Deixar un comentari

Gnome 3, finestres i botons

Logotip del projecte Gnome
Una cosa tan, teòricament, simple com moure els botons de les finestres a l’esquerra i poder decidir quins volem que es vegin, pot ser una mica de mal de cap si no sabem ben bé el com. Al Gnome 3.14, el que utilitza actualment la Fedora 21 (probablement us funcioni també a d’altres distribucions GNU/Linux que tinguin una versió similar del Gnome), executant un:

gsettings set org.gnome.desktop.wm.preferences button-layout 'close,maximize,minimize:'

tindrem 3 formosos botons a l’esquerra de la barra de, la majoria de, les aplicacions. Algunes, com el Chrome, s’ho passen per l’arc de triomf, per les llibreries que utilitzen, però la majoria de cops funcionarà correctament.

Els 3 botons de la finestra

Si us fixeu en la combinació “close, maximize, minimize:“, els noms dels botons són auto-explicatius. Els dos punts (:) indiquen a quina banda de la finestra els volem. Si són a l’esquerra dels dos punts, a l’esquerra, si comencem la cadena de text pels dos punts i després posem la descripció dels botons, sortiran a la dreta de les finestres.

Tan senzill com això. 🙂

Publicat en General | Etiquetes , , , | 2 Respostes

OpenVPN, claus, certificats i SELinux

OpenVPN
Si voleu connectar amb un servei de VPN basat en OpenVPN i teniu els fitxers de claus i certificats fora de ~/.cert, i teniu SELinux activat, clar, o feu això o tindreu molts maldecaps per a fer la connexió (cal fer-ho amb un usuari amb permisos d’administració):

semanage fcontext -a -t home_cert_t /cami_on_teniu_el_fitxer/fitxer

i

restorecon -R -v /cami_on_teniu_el_fitxer/fitxer

això repetit pels 3 fitxers, 2 .crt i 1 .key que tindreu.

Fet això, si no hi ha cap altra cosa que us estigui blocant l’accés, ja us hauria de funcionar i hauríeu de poder connectar amb el servidor.

Publicat en General | Etiquetes , , , | Deixar un comentari

Com arreglar un problema amb les actualitzacions de BDD del Drupal

Així et quedes amb un problema d’aquests en cercle viciós…

M’he trobat entrampat en un error d’actualització de la base de dades que ataca un Drupal de forma que no podia instal·lar, actualitzar ni fer res amb els mòduls pel fet que el sistema intentava aplicar uns canvis a la BDD que ja s’havien fet en algun moment anterior, però ell es pensava que encara estaven pendents, entrant en un cercle sense fi.

En intentar instal·lar nous mòduls o actualitzar els que disposen de noves versions:

No s'ha pogut afegir el camp <em class="placeholder"webform_confirm_email</em.<em class="placeholder"request_lifetime</em: el camp ja existeix. [error]

Fent una actualització de la base de dades, per intentar resoldre el problema, deia:

root@vhost1:/var/www/vhost1/sites/all/modules# drush updb
The following updates are pending:

webform_confirm_email module :
7101 - Add request_lifetime column.

backup_migrate module :
7205 - Increase the length of all ids to 255.

panels module :
7303 - Add a custom cache table for Panels

Efectivament, mirant la taula al mysql,

mysql use vhost1;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql describe webform_confirm_email;
+------------------+----------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+------------------+----------------------+------+-----+---------+-------+
| nid | int(10) unsigned | NO | PRI | NULL | |
| eid | smallint(5) unsigned | NO | PRI | 0 | |
| email_type | tinyint(4) | NO | | 0 | |
| request_lifetime | int(11) | YES | | NULL | |
+------------------+----------------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

El primer que se m’ha acudit, donat que no trobava l’arrel del problema i reinstal·lar o actualitzar el mòdul problemàtic no era viable, ha estat esborrar manualment el camp de la taula (lleig, però és un mòdul menor que no faig servir encara) i seguidament intentar aplicar l’actualització de BDD que el torni a crear i ja es quedi estable tot plegat:

alter table webform_confirm_email drop request_lifetime;

En tornar a fer un drush updb:

No s'ha pogut afegir el camp <em class="placeholder"webform_confirm_email_code</em.<em class="placeholder"datetime</em: el camp ja existeix.
alter table webform_confirm_email_code drop datetime;

Bé, sembla que el tema té el dia “catxondu”…
Torno a repetir l’operació d’esborrar la columna de la taula i demés, però em surt un 3r error similar…això no té fi.

En situacions desesperades, actuacions desesperades: Drupal utilitza una taula que es diu “system” per a controlar les versions dels mòduls i de les actualitzacions de la BDD.

mysql describe system;
+----------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------------+--------------+------+-----+---------+-------+
| filename | varchar(255) | NO | PRI | | |
| name | varchar(255) | NO | | | |
| type | varchar(12) | NO | MUL | | |
| owner | varchar(255) | NO | | | |
| status | int(11) | NO | MUL | 0 | |
| bootstrap | int(11) | NO | | 0 | |
| schema_version | smallint(6) | NO | | -1 | |
| weight | int(11) | NO | | 0 | |
| info | blob | YES | | NULL | |
+----------------+--------------+------+-----+---------+-------+
9 rows in set (0.00 sec)

Aquesta té un camp que es diu “schema_version” que ja haureu vist abans al missatge d’actualitzacions pendents del “drush updb”:

webform_confirm_email module :
7101 - Add request_lifetime column.

aquest “7101” és el valor del camp “schema_version” per al mòdul “webform_confirm_email”.

Mirant quin valor té actualment aquest camp a la BDD:

mysql select max(schema_version) from system where filename="sites/all/modules/webform_confirm_email/webform_confirm_email.module";
+---------------------+
| max(schema_version) |
+---------------------+
| 7000 |
+---------------------+
1 row in set (0.00 sec)

Així doncs, si la base de dades ja té els camps correctament creats, però el sistema de control de canvis a la BDD de Drupal pensa que encara són pendents per culpa d’aquest “7000”, què fem? efectivament, actualitzar-li el valor i veure si així ja es queda content (evidentment, aquí s’apliquen totes les mesures necessàries de còpia de seguretat i prevenció de desastres, avisats quedeu):

mysql update system set schema_version=7101 where filename="sites/all/modules/webform_confirm_email/webform_confirm_email.module";

Verifiquem el valor actual del camp:

mysql select max(schema_version) from system where filename="sites/all/modules/webform_confirm_email/webform_confirm_email.module";
+---------------------+
| max(schema_version) |
+---------------------+
| 7101 |
+---------------------+
1 row in set (0.00 sec)

Així, ara tornem a provar a fer el “drush updb”:

root@laboratori2:/var/www/vhost1/sites/all/modules# drush updb
The following updates are pending:

backup_migrate module :
7205 - Increase the length of all ids to 255.

panels module :
7303 - Add a custom cache table for Panels.

Do you wish to run all pending updates? (y/n): y
Performed update: panels_update_7303 [ok]
Performed update: backup_migrate_update_7205 [ok]
Finished performing updates. [ok]

Com podeu veure, ja no surt com a pendent l’actualizació 7101, al haver-li dit al sistema que ja ho havia fet.

root@laboratori2:/var/www/vhost1/sites/all/modules# drush updb
The following updates are pending:

backup_migrate module :
7205 - Increase the length of all ids to 255.

panels module :
7303 - Add a custom cache table for Panels.

Do you wish to run all pending updates? (y/n): y
Performed update: panels_update_7303 [ok]
Performed update: backup_migrate_update_7205 [ok]
Finished performing updates. [ok]
root@laboratori2:/var/www/vhost1/sites/all/modules# drush up
Comprovant dades d'actualitzacions disponibles ... [ok]
Verificades les dades d'actualització disponibles per String Overrides. [ok]
Verificades les dades d'actualització disponibles per Token. [ok]
Verificades les dades d'actualització disponibles per Universally Unique ID. [ok]
Verificades les dades d'actualització disponibles per Variable. [ok]
Verificades les dades d'actualització disponibles per Views. [ok]
Verificades les dades d'actualització disponibles per Views Slideshow. [ok]
Verificades les dades d'actualització disponibles per Webform. [ok]
Verificades les dades d'actualització disponibles per Webform Conditional. [ok]
Verificades les dades d'actualització disponibles per Webform Confirm Email. [ok]
Verificades les dades d'actualització disponibles per Webform Phone Number. [ok]
Verificades les dades d'actualització disponibles per Webform Validation. [ok]
Verificades les dades d'actualització disponibles per Wysiwyg. [ok]
Verificades les dades d'actualització disponibles per XML sitemap. [ok]
Verificades les dades d'actualització disponibles per Administration menu. [ok]
Verificades les dades d'actualització disponibles per Advanced help. [ok]
Verificades les dades d'actualització disponibles per Arrange Fields. [ok]
Verificades les dades d'actualització disponibles per Block. [ok]
Verificades les dades d'actualització disponibles per Bundle copy. [ok]
Verificades les dades d'actualització disponibles per CAPTCHA. [ok]
Verificades les dades d'actualització disponibles per Chaos tools. [ok]
Verificades les dades d'actualització disponibles per Cycle. [ok]
Verificades les dades d'actualització disponibles per Devel. [ok]
Verificades les dades d'actualització disponibles per DHTML Menu. [ok]
Verificades les dades d'actualització disponibles per Drupal for Firebug. [ok]
Verificades les dades d'actualització disponibles per File entity. [ok]
Verificades les dades d'actualització disponibles per Google Map Field. [ok]
Verificades les dades d'actualització disponibles per HTML Export. [ok]
Verificades les dades d'actualització disponibles per Internationalization. [ok]
Verificades les dades d'actualització disponibles per Views translation. [ok]
Verificades les dades d'actualització disponibles per IMCE. [ok]
Verificades les dades d'actualització disponibles per IMCE Wysiwyg API bridge. [ok]
Verificades les dades d'actualització disponibles per jQuery plugins. [ok]
Verificades les dades d'actualització disponibles per jQuery UI. [ok]
Verificades les dades d'actualització disponibles per Localization client. [ok]
Verificades les dades d'actualització disponibles per Localization update. [ok]
Verificades les dades d'actualització disponibles per Language Switcher Dropdown. [ok]
Verificades les dades d'actualització disponibles per Libraries. [ok]
Verificades les dades d'actualització disponibles per Menu breadcrumb. [ok]
Verificades les dades d'actualització disponibles per Node export. [ok]
Verificades les dades d'actualització disponibles per Panels. [ok]
Verificades les dades d'actualització disponibles per Pathauto. [ok]
Verificades les dades d'actualització disponibles per Pathologic. [ok]
Verificades les dades d'actualització disponibles per Phone. [ok]
Verificades les dades d'actualització disponibles per PNG Behave. [ok]
Verificades les dades d'actualització disponibles per reCAPTCHA. [ok]
Verificades les dades d'actualització disponibles per RSS Permissions. [ok]
Verificades les dades d'actualització disponibles per simplehtmldom API. [ok]
Verificades les dades d'actualització disponibles per Site map. [ok]
Verificades les dades d'actualització disponibles per String Overrides. [ok]
Verificades les dades d'actualització disponibles per Token. [ok]
Verificades les dades d'actualització disponibles per Universally Unique ID. [ok]
Verificades les dades d'actualització disponibles per Variable. [ok]
Verificades les dades d'actualització disponibles per Views. [ok]
Verificades les dades d'actualització disponibles per Views Slideshow. [ok]
Verificades les dades d'actualització disponibles per Webform. [ok]
Verificades les dades d'actualització disponibles per Webform Conditional. [ok]
Verificades les dades d'actualització disponibles per Webform Confirm Email. [ok]
Verificades les dades d'actualització disponibles per Webform Phone Number. [ok]
Verificades les dades d'actualització disponibles per Webform Validation. [ok]
Verificades les dades d'actualització disponibles per Wysiwyg. [ok]
Verificades les dades d'actualització disponibles per XML sitemap. [ok]
Verificades les dades d'actualització disponibles per Administration menu. [ok]
Verificades les dades d'actualització disponibles per Advanced help. [ok]
Verificades les dades d'actualització disponibles per Arrange Fields. [ok]
Verificades les dades d'actualització disponibles per Block. [ok]
Verificades les dades d'actualització disponibles per Bundle copy. [ok]
Verificades les dades d'actualització disponibles per CAPTCHA. [ok]
Verificades les dades d'actualització disponibles per Chaos tools. [ok]
Verificades les dades d'actualització disponibles per Cycle. [ok]
Verificades les dades d'actualització disponibles per Devel. [ok]
Verificades les dades d'actualització disponibles per DHTML Menu. [ok]
Verificades les dades d'actualització disponibles per Drupal for Firebug. [ok]
Verificades les dades d'actualització disponibles per File entity. [ok]
Verificades les dades d'actualització disponibles per Google Map Field. [ok]
Verificades les dades d'actualització disponibles per HTML Export. [ok]
Verificades les dades d'actualització disponibles per Internationalization. [ok]
Verificades les dades d'actualització disponibles per Views translation. [ok]
Verificades les dades d'actualització disponibles per IMCE. [ok]
Verificades les dades d'actualització disponibles per IMCE Wysiwyg API bridge. [ok]
Verificades les dades d'actualització disponibles per jQuery plugins. [ok]
Verificades les dades d'actualització disponibles per jQuery UI. [ok]
Verificades les dades d'actualització disponibles per Localization client. [ok]
Verificades les dades d'actualització disponibles per Localization update. [ok]
Verificades les dades d'actualització disponibles per Language Switcher Dropdown. [ok]
Verificades les dades d'actualització disponibles per Libraries. [ok]
Verificades les dades d'actualització disponibles per Menu breadcrumb. [ok]
Verificades les dades d'actualització disponibles per Node export. [ok]
Verificades les dades d'actualització disponibles per Panels. [ok]
Verificades les dades d'actualització disponibles per Pathauto. [ok]
Verificades les dades d'actualització disponibles per Pathologic. [ok]
Verificades les dades d'actualització disponibles per Phone. [ok]
Verificades les dades d'actualització disponibles per PNG Behave. [ok]
Verificades les dades d'actualització disponibles per reCAPTCHA. [ok]
Verificades les dades d'actualització disponibles per RSS Permissions. [ok]
Verificades les dades d'actualització disponibles per simplehtmldom API. [ok]
Verificades les dades d'actualització disponibles per Site map. [ok]
Verificades les dades d'actualització disponibles per String Overrides. [ok]
Verificades les dades d'actualització disponibles per Token. [ok]
Verificades les dades d'actualització disponibles per Universally Unique ID. [ok]
Verificades les dades d'actualització disponibles per Variable. [ok]
Verificades les dades d'actualització disponibles per Views. [ok]
Verificades les dades d'actualització disponibles per Views Slideshow. [ok]
Verificades les dades d'actualització disponibles per Webform. [ok]
Verificades les dades d'actualització disponibles per Webform Conditional. [ok]
Verificades les dades d'actualització disponibles per Webform Confirm Email. [ok]
Verificades les dades d'actualització disponibles per Webform Phone Number. [ok]
Verificades les dades d'actualització disponibles per Webform Validation. [ok]
Verificades les dades d'actualització disponibles per Wysiwyg. [ok]
Verificades les dades d'actualització disponibles per XML sitemap. [ok]
Comprovades les dades d'actualització disponibles per 109 projectes. [status]
Update information last refreshed: dv., 21/02/2014 - 12:37

Update status information on all installed and enabled Drupal projects:
Nom Versió instal·lada Proposed version Estat
Administration menu (admin_menu) 7.x-3.0-rc4 7.x-3.0-rc4 Actualitzat
Advanced help (advanced_help) 7.x-1.0 7.x-1.1 Actualització disponible
Arrange Fields (arrange_fields) 7.x-1.14 7.x-1.14 Actualitzat
Drupal 7.24 7.26 SECURITY UPDATE available
Bundle copy (bundle_copy) 7.x-2.x-dev 7.x-2.x-dev Actualitzat
CAPTCHA (captcha) 7.x-1.0 7.x-1.0 Actualitzat
Chaos tools (ctools) 7.x-1.4 7.x-1.4 Actualitzat
Cycle (cycle) 7.x-1.x-dev 7.x-1.x-dev Actualitzat
Devel (devel) 7.x-1.3 7.x-1.4 Actualització disponible
DHTML Menu (dhtml_menu) 7.x-1.0-beta1 7.x-1.0-beta1 Actualitzat
Drupal for Firebug (drupalforfirebug) 7.x-1.4 7.x-1.4 Actualitzat
Media (media) 7.x-1.3 7.x-1.4 SECURITY UPDATE available
Google Map Field (google_map_field) 7.x-2.4 7.x-2.4 Actualitzat
HTML Export (html_export) 7.x-2.x-dev 7.x-2.x-dev Actualitzat
Internationalization (i18n) 7.x-1.10 7.x-1.10 Actualitzat
Views translation (i18nviews) 7.x-3.x-dev 7.x-3.x-dev Actualitzat
IMCE (imce) 7.x-1.7 7.x-1.8 Actualització disponible
IMCE Wysiwyg API bridge (imce_wysiwyg) 7.x-1.0 7.x-1.0 Actualitzat
jQuery plugins (jquery_plugin) 7.x-1.0 7.x-1.0 Actualitzat
jQuery UI (jquery_ui) 7.x-1.x-dev 7.x-1.x-dev Actualitzat
Localization client (l10n_client) 7.x-1.3 7.x-1.3 Actualitzat
Localization update (l10n_update) 7.x-1.0-beta3 7.x-1.0-beta3 Actualitzat
Language Switcher Dropdown (lang_dropdown) 7.x-1.5 7.x-1.5 Actualitzat
Libraries (libraries) 7.x-2.1 7.x-2.2 Actualització disponible
Menu breadcrumb (menu_breadcrumb) 7.x-1.5 7.x-1.5 Actualitzat
Node export (node_export) 7.x-3.0 7.x-3.0 Actualitzat
Panels (panels) 7.x-3.4 7.x-3.4 Actualitzat
Pathauto (pathauto) 7.x-1.2 7.x-1.2 Actualitzat
Pathologic (pathologic) 7.x-2.11 7.x-2.12 Actualització disponible
Phone (phone) 7.x-1.x-dev 7.x-1.0-beta1 Actualització disponible
PNG Behave (pngbehave) 7.x-1.9 7.x-1.9 Actualitzat
reCAPTCHA (recaptcha) 7.x-1.10 7.x-1.11 Actualització disponible
RSS Permissions (rss_permissions) 7.x-1.0-beta1 7.x-1.0-beta1 Actualitzat
simplehtmldom API (simplehtmldom) 7.x-1.12 7.x-1.12 Actualitzat
Site map (site_map) 7.x-1.0 7.x-1.0 Actualitzat
String Overrides (stringoverrides) 7.x-1.8 7.x-1.8 Actualitzat
Token (token) 7.x-1.5 7.x-1.5 Actualitzat
Universally Unique ID (uuid) 7.x-1.0-alpha5 7.x-1.0-alpha5 Actualitzat
Variable (variable) 7.x-2.3 7.x-2.4 Actualització disponible
Views (views) 7.x-3.7 7.x-3.7 Actualitzat
Views Slideshow (views_slideshow) 7.x-3.0 7.x-3.1 Actualització disponible
Webform (webform) 7.x-3.19 7.x-3.20 SECURITY UPDATE available
Webform Conditional (webform_conditional) 7.x-1.0-beta2 7.x-1.0-beta2 Actualitzat
Webform Confirm Email (webform_confirm_email) 7.x-1.2 7.x-1.2 Actualitzat
Webform Phone Number (webform_phone) 7.x-1.14 7.x-1.17 Actualització disponible
Webform Validation (webform_validation) 7.x-1.3 7.x-1.4 SECURITY UPDATE available
Wysiwyg (wysiwyg) 7.x-2.2 7.x-2.2 Actualitzat
XML sitemap (xmlsitemap) 7.x-2.0-rc2 7.x-2.0-rc2 Actualitzat

NOTE: A security update for the Drupal core is available.
Drupal core will be updated after all of the non-core modules are updated.

Security and code updates will be made to the following projects: Advanced help [advanced_help-7.x-1.1], Devel [devel-7.x-1.4], Media [media-7.x-1.4], IMCE [imce-7.x-1.8], Libraries API [libraries-7.x-2.2], Pathologic [pathologic-7.x-2.12], Phone [phone-7.x-1.0-beta1], reCAPTCHA [recaptcha-7.x-1.11], Variable [variable-7.x-2.4], Views Slideshow [views_slideshow-7.x-3.1], Webform [webform-7.x-3.20], Webform Phone Number [webform_phone-7.x-1.17], Webform Validation [webform_validation-7.x-1.4]

Note: A backup of your project will be stored to backups directory if it is not managed by a supported version control system.
Note: If you have made any modifications to any file that belongs to one of these projects, you will have to migrate those modifications after updating.
Do you really want to continue with the update process? (y/n): y
Project advanced_help was updated successfully. Installed version is now 7.x-1.1.
Backups were saved into the directory /root/drush-backups/vhost1/20140221113749/modules/advanced_help. [ok]
Project devel was updated successfully. Installed version is now 7.x-1.4.
Backups were saved into the directory /root/drush-backups/vhost1/20140221113749/modules/devel. [ok]
Project media was updated successfully. Installed version is now 7.x-1.4.
Backups were saved into the directory /root/drush-backups/vhost1/20140221113749/modules/media. [ok]
Project imce was updated successfully. Installed version is now 7.x-1.8.
Backups were saved into the directory /root/drush-backups/vhost1/20140221113749/modules/imce. [ok]
Project libraries was updated successfully. Installed version is now 7.x-2.2.
Backups were saved into the directory /root/drush-backups/vhost1/20140221113749/modules/libraries. [ok]
Project pathologic was updated successfully. Installed version is now 7.x-2.12.
Backups were saved into the directory /root/drush-backups/vhost1/20140221113749/modules/pathologic. [ok]
Project phone was updated successfully. Installed version is now 7.x-1.0-beta1.
Backups were saved into the directory /root/drush-backups/vhost1/20140221113749/modules/phone. [ok]
Project recaptcha was updated successfully. Installed version is now 7.x-1.11.
Backups were saved into the directory /root/drush-backups/vhost1/20140221113749/modules/recaptcha. [ok]
Project variable was updated successfully. Installed version is now 7.x-2.4.
Backups were saved into the directory /root/drush-backups/vhost1/20140221113749/modules/variable. [ok]
Project views_slideshow was updated successfully. Installed version is now 7.x-3.1.
Backups were saved into the directory /root/drush-backups/vhost1/20140221113749/modules/views_slideshow. [ok]
Project webform was updated successfully. Installed version is now 7.x-3.20.
Backups were saved into the directory /root/drush-backups/vhost1/20140221113749/modules/webform. [ok]
Project webform_phone was updated successfully. Installed version is now 7.x-1.17.
Backups were saved into the directory /root/drush-backups/vhost1/20140221113749/modules/webform_phone. [ok]
Project webform_validation was updated successfully. Installed version is now 7.x-1.4.
Backups were saved into the directory /root/drush-backups/vhost1/20140221113749/modules/webform_validation. [ok]

Code updates will be made to drupal core.
WARNING: Updating core will discard any modifications made to Drupal core files, most noteworthy among these are .htaccess and robots.txt. If you have made any modifications to these files, please back them up before updating so that you can re-create your modifications in the updated version of the file.
Note: Updating core can potentially break your site. It is NOT recommended to update production sites without prior testing.

Do you really want to continue? (y/n): y
Project drupal was updated successfully. Installed version is now 7.26.
Backups were saved into the directory /root/drush-backups/vhost1/20140221113749/drupal. [ok]
'all' cache was cleared in /var/www/vhost1#vhost1 [success]
You have pending database updates. Run `drush updatedb` or visit update.php in your browser. [warning]
The following updates are pending:

system module :
7079 - Convert the 'filesize' column in {file_managed} to a bigint.

node module :
7014 - Add an index on {node}.language.

taxonomy module :
7011 - Drop unpublished nodes from the index.

devel module :
7005 - Delete variable 'devel_form_weights' from database as it was removed from code.
7006 - Change variable 'dev_mem' to 'devel_memory'.

file_entity module :
7101 - Create the {image_dimensions} database table.

Do you wish to run all pending updates? (y/n): y
Performed update: devel_update_7005 [ok]
yPerformed update: devel_update_7006 [ok]
Performed update: file_entity_update_7101 [ok]
Performed update: taxonomy_update_7011 [ok]
Performed update: node_update_7014 [ok]
Performed update: system_update_7079 [ok]
Finished performing updates.

Quedant tot el sistema actualitzat, funcional i estable.

Publicat en General | Etiquetes , , , | 1 Resposta

Seguretat en les comunicacions: el xifrat i la signatura de contingut

Security-Policies-Part2
Sovint em pregunten què és el «text estrany» que reben amb els meus correus electrònics i penso que ha arribat el moment de fer-ne un petit article i explicar perquè, probablement, tothom hauria de plantejar-se amb caràcter immediat millorar la seva seguretat en les comunicacions, que és de què va aquest text estrany.

Quan rebeu un missatge de correu electrònic que comença amb un text així:


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

I acaba amb una sopa de lletres similar a aquesta:


-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQEcBAEBAgAGBQJSsvZ3AAoJEJuo2ANsrVnjCdIIAMRsIZlY7Xp/LClnL7OlSaIJ
JrRLXtS8rGBYepKrlLP2OPwNszy3ydacbXcOanIUXfEsRbr5erSaLpc9lIfblEBK
Avz3xgIqYObhSGIRA9npeIDHwK6BPJYtNK93Rj+9x+AgP6sj0uTdIv+VvTEauuJu
AS6nkqmOdfeIT90TDBHqULMc2lF0k0NZGlYKkLCEpQb6iF9TdBvJ2q3ogeBpjLCm
ysyna5WEWITNwgy11ieSV+BAabn6+VspxfsfyRN9hYQooFYlhVUsJxbWmMc0Dq0v
+/b5s3dlig1lP2Zz+DsGWXMQsNycPV7K4koweg1VSBJnKZz4pOgmOuZB6S0lKI8=
=Oq5B
-----END PGP SIGNATURE-----

esteu rebent un missatge signat amb xifrat de clau pública. A continuació intentaré fer-vos cinc cèntims de què va tot això.

El que veuen els receptors dels meus correus, la part de la “sopa de lletres”, és la signatura del hash (funció resum en català) del missatge amb un sistema de xifrat de clau pública, també anomenat de parella de claus asimètriques. El resultat d’aplicar la meva clau al contingut del missatge.
Aquesta signatura permet dues coses: 1) acreditar que jo sóc el remitent real del correu (sempre que s’hagin respectat les mesures de seguretat pertinents) i, 2) que ningú ha modificat el contingut del meu missatge. Ni tan sols afegint o treient un espai en blanc o un caràcter invisible. Qualsevol modificació, per minúscula que sigui, faria variar la “sopa de lletres”.

Xifrat de parella de claus asimètriques?

Imagineu-vos que teniu a casa una bústia segura de correu, que la gent la pot obrir per deixar-hi cartes dirigides a vosaltres amb una clau que els hi doneu. Tot i que tothom que vosaltres volgueu té la clau per obrir-la i deixar-hi cartes, absolutament ningú excepte vosaltres la pot obrir per treure-les i veure’n el contingut. Curiós, oi?

A més, si l’altra persona també té una bústia d’aquestes “especials”, posant la clau de la seva bústia a la vostra podrà acreditar que la persona que surt com a remitent de la carta n’és el remitent real, sense que l’hagin suplantat. I què té a veure la seva bústia amb la meva i amb saber qui és? us preguntareu.

De què estem parlant realment?

En realitat, evidentment, no estem parlant de bústies físiques, ni de cartes escrites en paper. El que he explicat abans és el concepte que s’utilitza en el xifrat de parella de claus asimètriques que utilitza el Gnupg (GNU Privacy Guard), hereder del PGP (Pretty Good Privacy).

Aquestes claus de xifrat són dues: una de pública (la clau per a que us deixin “cartes” a la bústia) i una de privada (la de treure les cartes i llegir-les).

Com és evident, la clau pública (com el seu nom indica) no hi ha cap problema en escampar-la, de fet la seva funció és just aquesta, però la privada l’heu de conservar de la forma més segura que pogueu, o tota la seguretat se’n va a pastar fang.

I com funciona tot plegat?

Per un complex procediment matemàtic que queda fora de l’àmbit d’aquesta simple explicació, el sistema de criptografia de clau pública o de clau asimètrica permet que xifrant un escrit amb la clau pública d’una persona, el destinatari del mateix, exclusivament la clau privada (la parella de la pública) d’aquella mateixa persona el pugui desxifrar.

Cas pràctic

Imaginem que tenim dos amics, en Pere i en Pau. Per intercanviar informació entre ells de forma segura, en Pere ha de xifrar el contingut destinat a Pau amb la clau pública d’en Pau, que el desxifrarà amb la seva clau privada. De la mateixa forma, en Pau xifrarà la resposta per en Pere amb la clau pública d’en Pere i aquest només la podrà veure utilitzant la seva pròpia clau privada.

Amb això s’evita el típic problema de la criptografia simètrica (una sola contrasenya per xifrar i desxifrar), en el que si algú obté la clau de xifrat d’alguna de les parts, tota la comunicació entre totes les persones implicades (dues o moltes més) queda compromesa.

Utilitzant el mateix sistema de clau pública, si volem enviar informació i que el destinatari sàpiga segur que li hem enviat nosaltres, l’hem de signar amb la nostra clau. Un cop ho rebi, el destinatari verificarà la signatura amb la nostra clau pública que té, la mateixa que utilitza per xifrar-nos contingut que ens vol fer arribar, i això li permetrà saber que ningú ens està suplantant i que som el remitent real que ha rebut.

Per tant, la seguretat d’aquest sistema recau especialment en quant potent sigui la vostra parella de claus (n’hi ha de diferents graus de seguretat), de la fortalesa de la contrasenya que utilitzeu per accedir a la vostra clau privada i desencriptar la informació (no us pensaveu pas que la podria utilitzar qualsevol que la tingués sense més, oi?) i en la forma en què ho conserveu tot plegat.

I aquest sistema és completament segur?

No existeix cap sistema «completament segur». Si algú us diu això, directament us està mentint. Hi ha dues frases típiques al sector de la seguretat que són: «Un sistema informàtic ha de ser suficientment segur com per què a ningú li valgui la pena fer l’esforç necessari per trencar la seva seguretat» i (la frase realment parla d’empreses, però és aplicable): «Hi ha dos tipus de persones: les que saben que els hi han entrat a l’ordinador i les que no ho saben».

Dit d’altra manera, l’objectiu és arribar a un punt de seguretat en el que obtenir el que tinguem no valgui l’esforç necessari per a arribar-hi. Arribats a aquest punt, la probabilitat de que algú ho intenti baixa radicalment.

Per altra banda, ens trobem la típica frase: «si no tinc res a amagar, perquè m’haig de preocupar?». Però, curiosament, les persones que solen dir-la ni deixen la porta de casa oberta, ni el cotxe en marxa i amb les claus posades, ni el portàtil obert i sol a un bar o a una biblioteca, etc. Aleshores, si sabem de totes totes que ens espien, perquè els hi hem de permetre i posar fàcil? encara que parlem de si la gata miola o de si plou o no plou! els deixeu entrar a casa? doncs perquè els hi heu de permetre tenir accés a tot el que feu?

El tema dóna per molt més i caldria parlar de moltes altres consideracions de seguretat i de procediment per tenir encara un sistema de comunicacions prou més robust, però com a article introductori i que s’entengui una mica de què va, és suficient.

Publicat en General | Etiquetes , , , | 4 Respostes

Crida a la participació a la Debian Women BCN 2014 MiniDebConf

Debian WomenEls dies 15 i 16 de març de 2014 es celebrarà a Barcelona, impulsat per Debian Women, la BCN 2014 MiniDebConf, conferència oberta a tothom però exclusivament amb ponents que s’identifiquin com del sexe femení.
Amb això s’intenta dues coses: la difusió de Debian i la seva filosofia i, simultàniament, la promoció de la participació de les persones que s’identifiquen com del sexe femení a les comunitats de programari lliure.

A continuació reprodueixo el Call for Proposals (CfP) original que podeu trobar al Wiki del projecte Debian Women, el qual agrairem que escampeu i feu arribar a qualsevol comunitat, grup, associació o persones que puguin estar interessades en participar:

===============================================
MiniDebConf 2014 Barcelona Call for Proposals
===============================================

Debian Women is proud to announce that it will hold a MiniDebConf in Barcelona on 15-16 March 2014, where Debian enthusiasts from far and wide will gather to talk about the latest Debian changes and the Debian community, as well as to meet new and old friends.

We want to have a MiniDebConf with both talks and social events, to which everyone in Debian is invited but where the speakers in the talks are all people who identify themselves as female. We consider this important to:

* Encourage women who haven't yet given their first DebConf talk
* Provide role models for women who are interested in contributing
* Debunk the myth that there are not enough women who can give
talks in DebConf

The idea behind the conference is not to talk about women in free software, or women in Debian, but rather to make discussion about Debian subjects more inclusive for women. If you agree with this
goal, spread the word. Forward this call for potential speakers and help us make this event a great success!

Debian Women invites submissions of proposals for papers, presentations, discussion sessions and tutorials for the event. Submissions are not limited to traditional talks: you could propose a performance, an art installation, a debate or anything else. All talks are welcome, whether newbie or very advanced level. Regular sessions will be 45 minutes long, including time for questions, with a 15 minute break between events.

If you have one or more proposals, please send it to proposals@bcn2014.mini.debconf.org. Don't forget to include in your message: your name or nick, the title of the event, description, language, and any other information that might be useful. We will try to get some sponsorship to help with speakers' travel expenses.

Please submit your proposal(s) before the 31st of January so that we can start the evaluation process and build the conference program. We might continue to receive proposals after date if there is still free space in the schedule.

We hope to see you in Barcelona!

For more information, visit http://bcn2014.mini.debconf.org

Source: https://wiki.debian.org/DebianWomen/Projects/MiniDebconf-Women/2014/CallForProposals

Publicat en General | Etiquetes , , , , | Deixar un comentari

Senyor meu Monesvol, déu i pasta vertadera (aka acte de contrició 2.0)

A partir d’un apunt d’en Giorgio, induït per la (mala :P) influència de’n Sisco Garcia, on esmentava la paradoxa de la utilització de xarxes socials privatives per part de les persones que solem fer defensa del programari lliure i les seves virtuts, he fet un “acte de contrició” (sí, l’educació religiosa et marca per tota la vida, mal que em pesi). He estat donant un parell de voltes a tot plegat i he analitzat, sense cap intenció de fer-ho ni general, ni extrapolable a ningú que no sigui jo mateix, de forma completament subjectiva, les funcions que li demano a una xarxa social per a utilitzar-la, així com quina mena d’ús en faig.

Explico una mica com ho he enfocat:

  • Totes les dimensions les he puntuat amb un mínim de 0 i un màxim de 10
  • Privacitat: indico el nivell de privacitat que em suggereix l’eina. No tant les opcions que ofereix, sinó el trasfons real que té la política d’empresa o del grup que hi hagi darrera. Evidentment, no en sóc un expert, per tant és prou subjectiu.
  • Llibertat: el grau de llibertat que m’atorga l’eina, des de si em demana més del compte per a registrar-m’hi a si és disponible en català, passant per si és programari lliure o privatiu.
  • Difusió: en nivell de difusió que considero que té qualsevol cosa que hi publiqui (Facebook el valoro en dos apartats, però no el faig servir fa molt temps).
  • Facilitat: el que em costa interaccionar amb l’eina, si les reaccions al que publico m’arriben de forma fàcil i si puc replicar-hi també de forma simple. Si els clients són multiplataforma, són madurs (a nivell de desenvolupament), si tenen en consideració les altres xarxes socials per a fer “pont” entre elles, etc.
  •  Activitat: aquí valoro el pes de cada eina en funció de si les empro per a informar-me o fer difusió a nivell tècnic, del meu entorn personal o en general.

D’aquest breu exercici d’introspecció 2.0, n’ha sorgit la següent taula i la gràfica que en deriva.

taula

 

XarxesSocials
Trobeu a faltar alguna dimensió important? en teniu alguna de personal que s’hi pugui afegir?

El següent pas, com a mínim per a mi, és esbrinar, vistes les últimes notícies sobre privacitat, xarxes socials, ingerències de les agències governamentals i demés, com ho faig per no quedar-me aïllat en el ghetto friki de xarxes socials on, no ens enganyem, és prou poc probable que “la massa” s’hi tiri de cap, sense haver de vendre l’ànima al diable.

 

 

Publicat en General | Etiquetes , | 1 Resposta

L’estupidesa bonista disfressada d’evolució social

Fa temps, molt temps, que em treu de polleguera una cosa, i ara ho haig de vomitar tot, ho sento.
Parlo de l’estupidesa d’haver d’anomenar les coses en tots els gèneres possibles o, també sovint, feminitzar-ho. Es veu prou habitualment a les xarxes socials crides del tipus “Totes a tal lloc a tal hora!” a l’hora de convocar manifestacions, assemblees, reunions o el que sigui. També es pot sentir en discursos i conferències de premsa dels polítics, que segueixen aquesta veta “bonista” tant els “d’esquerres” com els de dretes. Quant més, suposadament, d’esquerres són, més solen agafar aquesta mena de discurs com a propi. Contingut no en tenen pas gens ni mica de bo avui en dia, però la parafernàlia i floritura tota la que calgui.

estupidesaDe veritat us penseu que fent això aconseguiu alguna cosa més, o millor, que emprant una expressió habitual “tots” o els genèrics “tothom” o “totes les persones” en aquestes situacions? Ho trobo de vergonyós a estúpid, passant per totes les variants pejoratives intermitges.
Probablement no sigui la persona més feminista del món, però tinc molt clara la igualtat home-dona, la llibertat de tot tipus, al mateix nivell i compartida que hem de tenir ambdós gèneres. Defenso sense cap mena de dubte, no sent-ho, la llibertat dels homosexuals, lesbianes, transexuals i qualsevol altra casuística que es pugui donar en aquest tema. Però això ja passa de taca d’oli!

Si una persona es sent ofesa per que la forma d’expressar-se de forma genèrica en moltes situacions tendeix -per causes de tradició masclista probablement, sí- a ser el masculí, doncs es cerca una alternativa en la redacció o forma d’expressió. Estic ben segur de que en ben pocs, poquíssims, casos no es trobarà una sol·lució correcta que no signifiqui començar a posar “diputats i diputades”, “bombers i bomberes”, “tots i totes”, etc.

Per altra banda, per la mateixa línia lògica, els “mascles opresors” ens hem de sentir ofesos per la utilització sistemàtica dels femenins, fins i tot quan toca (la persona, la ciutadania, la comunitat, la junta)?? Va home, va.
Si alguna persona té problemes de veritat amb això, és que té ben poques coses importants de què ocupar-se i, a més, poca capacitat de trobar les alternatives que comentava abans. Una mica, o un molt que n’anem molt mancats, de sentit comú, si us plau.

Actualització: en Tomàs Mallafrè, bon company de patiments cibernètics i de molts altres tipus, em passa enllaç a aquest més que encertat article que parla de la mateixa temàtica, però des del coneixement filològic, cosa que mai he pretès fer jo, per altra banda.

Publicat en General | Etiquetes , , , | 1 Resposta