Archive for the 'shell scripting' Category

 

SVN : Error detected while processing /usr/share/vim/vimrc

Sep 19, 2011 in Apache, Debian, linux, scripting, shell scripting

Otra de subversion :

svn: Can't open file '/var/lib/svn/hostingaldescubierto.com/db/txn-current-lock': Permission denied

Esto es por que no hay permisos para modificar los ficheros, seguramente el propietario es root , pero estamos usando autenticación por apache, así le tenemos que dar permisos a www-data para que pueda commitear .

chown -R www-data.www-data /var/lib/svn/hostingaldescubierto.com/

SVN : Error detected while processing /usr/share/vim/vimrc

Sep 19, 2011 in linux, scripting, shell scripting

Esta es otra de las cosas que pueden pasarte cuando estás usando subversion, que te lies a commitear y aparezca este error… el vim… qué raro …. ummmm.

Pero no es ni mas ni menos que en alertantives de mi sistema no está bien configurado el editor por defecto, así que como no estoy pasando el parámetro -m “mensaje” a svn me abre el editor por defecto para que escriba qué es lo que estoy subiendo al servidor.

$ svn commit
Error detected while processing /usr/share/vim/vimrc:
line   20:
E319: Sorry, the command is not available in this version: syntax on
Press ENTER or type command to continue

Vamos a echar un vistazo a mi sistema a ver como lo tengo configurado :

$ update-alternatives --config editor
There are 4 choices for the alternative editor (providing /usr/bin/editor).

  Selection    Path                Priority   Status
------------------------------------------------------------
  0            /bin/nano            40        auto mode
  1            /bin/nano            40        manual mode
  2            /usr/bin/vim.basic   30        manual mode
* 3            /usr/bin/vim.tiny    10        manual mode

Press enter to keep the current choice[*], or type selection number:

vim.tiny no soporta los colores ( syntax on ) que tengo puesto en mi entorno, así que como no quiero desactivarlos , simplemente elijo ‘vim.basic’ como editor por defecto para el sistema y eso, soluciona el mensaje que aparece al commitear.

cambiar password de usuario sistema en modo batch

Jun 30, 2010 in bash, Debian, linux, scripting, shell scripting

En Debian existe una forma cómoda de cambiar la password de root usando un script


echo “root:mipassword” | chpasswd

Así de simple.

Como añadido, os recomiendo usar apg ( apg – generates several random passwords ) muy cómod para generar passwords


apt-get intall apg

un ejemplo:


$ apg

Please enter some random data (only first 8 are significant)
(eg. your old password):>
kodThunOw1 (kod-Thun-Ow-ONE)
pivVabraf1 (piv-Vabr-af-ONE)
mivpicEv7 (miv-pic-Ev-SEVEN)
DeksuvLynk7 (Deks-uv-Lynk-SEVEN)
DiwrogAvLyb6 (Di-wrog-Av-Lyb-SIX)
pheFruanigs8 (phe-Fru-an-igs-EIGHT)

trucos molones : extraer un fragmento de texto

Feb 17, 2010 in bash, linux, scripting, shell scripting

Cuántas vezces hemos tenido que buscar un fragmento en un fichero de texto desde el texto ‘tal’ hasta el texto ‘cual’. Con lo sencillo que es con linux y awk !!!!

Lo bueno que tiene linux es que cada día te sorprendes más y cada día eres consciente de lo poco que conoces, es como perderse por una megápolis.

Por ejemplo para sacar todos los usuarios desde el 100 al 111. Tomamos el 100 como march de origen y 111 como match de final y el contenido es lo seleccionado. Se podrías usar por ejemplo “<?php y ?>” o “<body>” y “</body>”

cat /etc/passwd | awk '/100/,/111/ { print } '
libuuid:x:100:101::/var/lib/libuuid:/bin/sh
Debian-exim:x:101:105::/var/spool/exim4:/bin/false
statd:x:102:65534::/var/lib/nfs:/bin/false
messagebus:x:103:108::/var/run/dbus:/bin/false
avahi-autoipd:x:104:109:Avahi autoip daemon,,,:/var/lib/avahi-autoipd:/bin/false
avahi:x:105:110:Avahi mDNS daemon,,,:/var/run/avahi-daemon:/bin/false
gdm:x:106:113:Gnome Display Manager:/var/lib/gdm:/bin/false
haldaemon:x:107:115:Hardware abstraction layer,,,:/var/run/hal:/bin/false
hplip:x:108:7:HPLIP system user,,,:/var/run/hplip:/bin/false
polkituser:x:109:120:PolicyKit,,,:/var/run/PolicyKit:/bin/false
festival:x:110:29::/home/festival:/bin/false
mysql:x:111:121:MySQL Server,,,:/var/lib/mysql:/bin/false

sed: cannot rename .//sedDtwt6w: Invalid cross-device link

Dec 23, 2009 in bash, Cosas de la vida, linux, marujadas, scripting, shell scripting

Error curioso al hacer un

sed -i 's/foofoo/blabla/g' *conf

Me lanza ester error, no me realiza el cambio y se para en el primer fichero que encuentra con *conf

sed: cannot rename .//sedDtwt6w: Invalid cross-device link

Este error aparece por que el sistema de ficheros es distinto al que estamos lanzando el sed. En mi caso los ficheros son enlaces simbólicos a ficheros de otro punto de montaje.

búsquedas y reemplazo

Jan 29, 2007 in Notas rápidas, shell scripting

Estoy escribiendo un documento en el que te detallo como instalar una aplicación con librerías de perl en Debian. Me interesa obtener de mi fichero tmp todos los nombres de librerias que tienen el formato libxxxx-perl y quiero obtener los nombres de paquetes. He usado este comando:

grep "lib.*perl" tmp  | sed 's/.*\(lib.*[^ ]perl\).*/\1/'

Bash shell

Jul 03, 2006 in bash, shell scripting

Ejemplos del for :

for (( i=0 ; i<6 ; i++ )) ;do echo $i ; done ;

resultado:

1
2
3
4
5
6