anotaciones que no quiero recordar, ni olvidar

me

Blog Técnico

umask o como cambiar permisos por defecto de creación de ficheros y carpetas

Ratio: 0 / 5

Inicio inactivoInicio inactivoInicio inactivoInicio inactivoInicio inactivo

En ocasiones nos encontramos que varios usaurios de linux comparten ficheros en un NAS.
Si el hecho de que los ficheros de un mismo grupos se creen con permisos no totales para el grupo, supone un problema, podemos decirle que cree los ficheros o directorios con permisos totales para el grupo, con un

Mostrar/Ocultar código bash

Ver código
umask 007

Abría que ponerlo en uno de los siguientes ficheros, según tu distro de linux:

Mostrar/Ocultar código bash

Ver código
/etc/profile
/etc/bash.bashrc
 ~/.profile
~/.bashrc

Los 2 últimos serían sólo para el usuario en cuestión.

Si aun así no funciona busca la variable en mayúsculas UMASK en el fichero:

Mostrar/Ocultar código bash

Ver código
/etc/login.defs

(Si quieres entender umask pásate por aquí: http://mviera.io/blog/entendiendo-umask/ )

SSH sin contraseña: conectar vía ssh, de un linux a otro servidor, sin password

Ratio: 0 / 5

Inicio inactivoInicio inactivoInicio inactivoInicio inactivoInicio inactivo

Bla, bla bla.
Se ha hablado mucho de esto, pero vamos al grano: Tenemos una casa, y queremos entrar sin llave, podemos? No.
Si no quiero tener que usar esa otra llave, lo que tengo que hacer es en la casa en la que tengo que entrar, cambiar la cerradura.

En otras palabras, si quiero conectarme sin contraseña a mi servidor, tengo que entrar una vez, y dejar en el un fichero único, generado en mi ordenador. Así el servidor, cuando le solicito entrada con mi fichero, ve que soy yo y me abre la puerta.

En mi ordenador, el cliente que quiere entrar sin clave, ejecuto:

Mostrar/Ocultar código bash

Ver código
ssh-keygen -t rsa -b 2048

y sigo los pasos, esto me generará dos ficheros: id_rsa, que contiene la calve privada, y id.rsa.pub que contiene la calve pública.  Este segundo es el que tenemos que copiar en el servidor al cual queremos conectar. Lo copiaremos añadiéndola en el fichero authorized_keys, o en mi caso creándolo directamente, ya que no existe (ojo que no exista ya y vayamos a machacarlo quitando acceso a otros clientes):

Mostrar/Ocultar código bash

Ver código
scp ~/.ssh/id_rsa.pub root@DIRECCIONIP:/root/.ssh/authorized_keys

Por supuesto para ponerlo ahí al conectar por scp nos pide contraseña, la primera vez. También es posible que no pueda dejarlo por que el directorio .ssh del servidor no exista, tan sólo tenemos que crearlo.
Ahora ya podemos conectar por ssh.

Error, no puedo acceder como root via SSH con la contraseña (Ubuntu)

Ratio: 0 / 5

Inicio inactivoInicio inactivoInicio inactivoInicio inactivoInicio inactivo

Por defecto, a partir de la 12 de ubuntu, el acceso de root vía ssh viene deshabilitado, y personalmente para una vez al año que me toca habilitarlo, no suelo recordar cual era la variable del config.
A parte de que debamos hacer un "sudo su" y un "passwd" para definir una contraseña a root, debemos entrar en el config del demonio de ssd:

Mostrar/Ocultar código bash

Ver código
vim /etc/ssh/sshd_config

Y cambiar la permisión de login sin clave:

Mostrar/Ocultar código bash

Ver código
PermitRootLogin without-password

por yes:

Mostrar/Ocultar código bash

Ver código
PermitRootLogin yes

Para finalizar, reiniciamos el servicio.

Mostrar/Ocultar código bash

Ver código
service ssh restart

Partición /boot llena: ¿cómo liberar espacio?

Ratio: 0 / 5

Inicio inactivoInicio inactivoInicio inactivoInicio inactivoInicio inactivo

Esto sucede tras varias actualizaciones del kernel.
Debemos comprobar que este comando nos devuelve una versión del kernel:

Mostrar/Ocultar código bash

Ver código
uname -r

y entonces lanzar este script que lo que hace es buscar y eliminar las versiones que no sean esa versión:

Mostrar/Ocultar código bash

Ver código
dpkg --get-selections|grep 'linux-image*'|awk '{print $1}'|egrep -v "linux-image-$(uname -r)|linux-image-generic"|while read n;do apt-get -y remove $n;done

Luego limpiamos los restos:

Mostrar/Ocultar código bash

Ver código
apt-get autoclean

Y por asegurarnos de que todo está en orden lanzamos un:

Mostrar/Ocultar código bash

Ver código
update-grub2

Fin

Actualizado:

En ocasiones no podemos ejecutar los comandos anteriores por temas de dependencias, por lo que deberemos vaciar manualmente a otro directorio boot:

Por supuesto emepzamos sabiendo nuestro núcleo actual, ya que deberemos quitar los viejos y dejar el último y alguno más:

Mostrar/Ocultar código bash

Ver código
uname -r
mv /boot/vmlinuz-X.XX.X-* /home/usuario/micarpeta_backup_nucleos/
mv /boot/initrd.img-X.XX.X-* /home/usuario/micarpeta_backup_nucleos/

Ahora arreglamos las dependencias con esto:

Mostrar/Ocultar código bash

Ver código
apt-get autoclean
apt-get autoremove
apt-get -f install

Si aun así tienes problemas deberías probar aptitude, si lo tienes instalado:

Mostrar/Ocultar código bash

Ver código
aptitude upgrade

y seguir las instrucciones.

Ordenar un Array con respecto a otro Array

Ratio: 0 / 5

Inicio inactivoInicio inactivoInicio inactivoInicio inactivoInicio inactivo

No importa si el array contiene más elementos o si no contiene todos los del orden.
Que aproveche:

Mostrar/Ocultar código php

Ver código
function comparaarray($a, $b)
{
  global $order;
 
 
  foreach($order as $key => $value)
    {
      if($a==$value)
        {
          return 0;
          break;
        }
 
 
      if($b==$value)
        {
          return 1;
          break;
        }
    }
}
 
 
$order[0] = "tomates";
$order[1] = "melones";
$order[2] = "manzanas";
 
 
$array[0] = "chirimolla";
$array[1] = "tomates";
$array[2] = "uvas";
$array[3] = "peras";
$array[4] = "melocotones";
$array[5] = "sandia";
$array[6] = "manzanas";
 
 
usort($array, "comparaarray");
 
 
print_r($array);