05 abril 2013

perl: warning: Setting locale failed.

Al instalar cualquier paquete mediante el uso de apt-get en Ububtu Server 12.04 LTS, el sistema genera un error como este:
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
 LANGUAGE = "en_US:en",
 LC_ALL = (unset),
 LC_TIME = "es_ES.UTF-8",
 LC_MONETARY = "es_ES.UTF-8",
 LC_ADDRESS = "es_ES.UTF-8",
 LC_TELEPHONE = "es_ES.UTF-8",
 LC_NAME = "es_ES.UTF-8",
 LC_MEASUREMENT = "es_ES.UTF-8",
 LC_IDENTIFICATION = "es_ES.UTF-8",
 LC_NUMERIC = "es_ES.UTF-8",
 LC_PAPER = "es_ES.UTF-8",
 LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_ALL to default locale: No such file or directory
La forma de solucionarlo (fijando los locales en inglés y español) es la siguiente
$ sudo locale-gen en_US en_US.UTF-8 es_ES es_ES.UTF-8
Generating locales...
en_US.ISO-8859-1... done
en_US.UTF-8... up-to-date
es_ES.ISO-8859-1... done
es_ES.UTF-8... done
Generation complete.

$ sudo dpkg-reconfigure locales
Generating locales...
en_AG.UTF-8... done
en_AU.UTF-8... done
en_BW.UTF-8... done
en_CA.UTF-8... done
en_DK.UTF-8... done
en_GB.UTF-8... up-to-date
en_HK.UTF-8... done
en_IE.UTF-8... done
en_IN.UTF-8... done
en_NG.UTF-8... done
en_NZ.UTF-8... done
en_PH.UTF-8... done
en_SG.UTF-8... done
en_US.ISO-8859-1... up-to-date
en_US.UTF-8... up-to-date
en_ZA.UTF-8... done
en_ZM.UTF-8... done
en_ZW.UTF-8... done
es_ES.ISO-8859-1... up-to-date
es_ES.UTF-8... up-to-date
Generation complete.