Archivo de la etiqueta: SysAdmin

svn error E000022 invalid UTF-8 sequence

Hace poco me paso que necesitaba actualizar un repo SVN con

$ sudo svn up

Con lo cual me encuentro que no es posible, por el siguiente error:

svn: E000022: Error converting entry in directory '/var/www/html/sigp-ag/upload/cp' to UTF-8
svn: E000022: Valid UTF-8 data
(hex: 31 34 38 37 38 38 35 35 35 35 2d 48 68 31 35 65 2d 43 75)
followed by invalid UTF-8 sequence
(hex: c3 2e 64 6f)

La unica forma de lograr update del repo era ir directorio por directorio de los que YO sabia que habia cambios haciendo svn up
Obviamente no es nada practico, el problema es que el SVN de que se trata el error ni siquiera de donde proviene…

Mi compañero de trabajo me decia, «si ! es molesto hacer así svn up por cada directorio que uno sabe que hay cambios, pero intenté arreglarlo y no pude»

Así que me dispuse a resolverlo, googleando mucho, veo que no hay mucha información, y nadie termina por resolver el problema, encontrando diferentes notas de personas que se encontraron el error, pude encontrar la forma de identificar el probleme y resolverlo !

Primero que nada, el problema viene de una codificación no estandar al sistema operativo (en mi caso está por default el encodign UTF 8), y la codificación no standard que encuentra el SVN obviamente se encuentra en alguno de los archivos del directorio que denuncia, en mi caso:

/var/www/html/sigp-ag/upload/cp

el problema no tiene nada que ver con el encoding del contenido del archivo, sino del nombre del archivo que tiene una codificación invalida para UTF 8

La forma de detectar cual es el archivo que tiene el problema es haciendo:

$ echo "\x31\x34\x38\x37\x38\x38\x35\x35\x35\x35\x2d\x48\x68\x31\x35\x65\x2d\x43\x75\xc3\x2e\x64\x6f" | xargs -0 printf

En mi caso lo unico que hice fue anteponer \x en cada numero empezando por la secuencia que es valida para SVN y a continuación por la invalida según SVN:

1487885555-Hh15e-Cu�.do

Ese es el archivo en mi caso que trae problemas: aqui hay 2 posibilidades, 1 borrar el archivo (la facil), 2 cambiar el encodig del nombre del archivo que está trayendo problemas…

Yo lo que hice fue, eliminar el archivo del versionado, directamente todo el directorio lo saque del versionado, y listo

Upgrade Nextcloud 12 a 13 (funciona entre cuales quiera versión que las haya aplicado)

Luego de ejecutar el actualizador automatico de nextcloud dentro de la versión 12, me pareció bien y util.

Ayer u antes de ayer, apareció una release mayor 13, donde publicaban mejoras de rendimiento y otras cosas importantes

Por lo que me propuse actualizar «a mano» la versión que tenía instalado en mi vps

les comparto las instrucciones que me llevaron al exito de la actualización y me han servido entre varias versiónes entre las que tuve que actualizar el producto…, de hecho las instrucciones me han quedado con versiones entre las que actualizaba cuando tenía owncloud ! jajaja

cd
mkdir owncloud_descomprimir
cd owncloud_descomprimir
wget https://download.owncloud.org/community/owncloud-8.1.4.tar.bz2
tar xjf owncloud-8.1.4.tar.bz2
mv owncloud owncloud8.1.4
sudo mv owncloud8.1.4 /var/www/html/
cd /var/www/html/
cp owncloud8.0.3/config/config.php owncloud8.1.4/config/config.php
sudo chown www-data:search -Rf owncloud8.1.4
sudo chmod 775 -Rf owncloud8.1.4
cd
mkdir -p backup/owncloud/8.0.3  ##backup por si algo sale mal
cd backup/owncloud/8.0.3
cp -Rf  /var/www/html/owncloud8.0.3/config ./
mysqldump -uroot -p owncloud | gzip -9 > ./owncloud8.0.3.sql.gz

cd /var/www/html/owncloud8.0.3
sudo -u www-data php occ maintenance:mode --on
sudo vim /etc/apache2/sites-available/cloud.conf         # cambiar el directorio con la nueva versión
sudo vim /etc/apache2/sites-available/cloud-ssl.conf     # cambiar el directorio con la nueva versión
sudo service apache2 restart
sudo vim /var/www/html/owncloud8.1.4/config/config.php   # cambiar la version en el parametro

sudo -u www-data php occ upgrade
sudo -u www-data php occ maintenance:mode --off
sudo -u www-data php console.php files:scan NombreUsuarioQueTieneMuchosArchivos

instalar filezilla ultima versión en Xential ubuntu 16.04

Intentar utilizar el filezilla en ubuntu 16.04 recien instalado desde los repositorios oficiales, es basicamente la muerte, debido a que el programa hace Crash con solo usarlo despues de recien instalado

Lo que fui incursionando para poder resolver este tema, sería anecdótico contárselos en este articulo, por lo que voy a simplemente mostrar la forma de instalar y utilizar la ultima versión (que al momento de escribir esta entrada es la 3.30)

Pasos para instalar:

$ sudo apt purge filezilla # si ya lo tienen instalado

## Ir al navegador y descargar el cliente desde el sitio oficial https://filezilla-project.org/download.php

en mi caso obtuvo el archivo: FileZilla_3.30.0_x86_64-linux-gnu.tar.bz2, sigamos con los pasos

$ tar xjf FileZilla_3.30.0_x86_64-linux-gnu.tar.bz2
$ sudo cp Filezilla3 /usr/local/bin/filezilla-folder
$ sudo ln -s /usr/local/bin/filezilla-folder/bin/filezilla /usr/local/bin/filezilla  # con esto es accesible desde cualquier ubicacion que estemos en el filesystem

Listo ! ya lo deberíamos tener listo

$ filezilla

Problemas:
Me a ocurrido que me dice:

filezilla: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.22' not found (required by ./filezilla)

revisando:…

$ strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_3.4.20
GLIBCXX_3.4.21
GLIBCXX_DEBUG_MESSAGE_LENGTH

Que mala suerte ! el filezilla pide justo una versión más de la ultima que tenemos disponible en el systema

Vemos como lo solucionamos:

$ sudo add-apt-repository ppa:ubuntu-toolchain-r/test

$ sudo apt-get update

Tiró error: W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: http://screenshots.getdeb.net xenial-getdeb InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY A8A515F046D7E7CF
W: Failed to fetch http://archive.getdeb.net/ubuntu/dists/xenial-getdeb/InRelease  The following signatures couldn'
t be verified because the public key is not available: NO_PUBKEY A8A515F046D7E7CF
W: Some index files failed to download. They have been ignored, or old ones used instead.


$ wget -q -O- http://archive.getdeb.net/getdeb-archive.key | sudo apt-key add -

$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A8A515F046D7E7CF
$ sudo apt-get update
$ sudo apt-get install gcc-6 g++-6
$ gcc-6 --version | head -n 2
gcc-6 (Ubuntu/Linaro 6.3.0-18ubuntu2~16.04) 6.3.0 20170519
Copyright (C) 2016 Free Software Foundation, Inc.

Ahora si ! tenemos disponible

$ strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_3.4.20
GLIBCXX_3.4.21
GLIBCXX_3.4.22
GLIBCXX_3.4.23
GLIBCXX_3.4.24
GLIBCXX_DEBUG_MESSAGE_LENGTH

Con esto podremos ejecutar y tener instalado el filezilla ultima versión

Gracias por leer !

Saludos
PegasusOnline

Extraer audio desde video de youtub3

Para extraer el audio desde un video de youtube en un solo paso, podemos utilizar el programa (que ya hemos utilizado en entradas anteriores) con parámetros adicionales (–extract-audio –audio-format mp3)

Pero para ello, debemos primero actualizar la libreria de avconv (incluida en el package libav-tools) lamentablemente en mi distro no está disponible y tampoco está disponible la ultima release de la librería lamemp3 (lazada en el 2011 !! ).

Lo que pongo a continuación son las instrucciones necesarias para hacer la sig. secuencia de acciones:

1.- actualizar la librería lame (que incluye el encoder mp3)
2.- actualizar la librería libav-tools a la última release
3.- y por último vamos a ejecutar el programa youtube-dl para que descargue el audio del video directamente desde la url del video !

enjoy!

$ wget http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Flame%2Ffiles%2Flame%2F3.99%2F&ts=1447026961&use_mirror=ufpr

$ mv lame-3.99.5.tar.gz\?r\=http%3A%2F%2Fsourceforge.net%2Fprojects%2Flame%2Ffiles%2Flame%2F3.99%2F lame-3.99.5.tar.gz

$ tar xzf lame-3.99.5.tar.gz
$ cd lame-3.99.5/
$ ./configure
$ make
$ sudo make install

$ sudo apt-get install git
$ sudo apt-get install yasm
$ git clone git://git.libav.org/libav.git
$ sudo tar xf ./libav-11.4.tar.xz
$ cd libav-11.4/
$ ./configure  --enable-libmp3lame
$ make
$ sudo make install
$ youtube-dl --extract-audio --audio-format mp3 https://youtu.be/gWMQMPP8p3A

Universal Media Server as service/daemon

Como vimos en la entrada anterior
La forma de instalar y de configurar este servidor lógico de streaming, ahora en esta entrada vamos a ver como se puede dejar ejecutando como un daemon (si cierran la session del usuario no importa!, UMS seguirá disponible en la LAN para disponibilizar los recursos que querramos. Seguir leyendo Universal Media Server as service/daemon