until test "$(date +%H:%M:%S)" = "08:30:00"; do comando; done
Repite el comando o script indicado, y termina de hacerlo a la hora indicada.
#Linux#Sysadmin
En comandos con salidas muy largas, puedes combinar con awk indicando inicio/fin con strings para limitar la salida:
# dmidecode | awk /'BIOS Info'/,/'BIOS Rev'/
BIOS Information
Vendor: Xen
Version: 4.2.amazon
....
...
BIOS Revision: 4.2
#Linux#SysAdmin
Con el uso de cuotas de disco (disk quotas) es posible limitar la cantidad de espacio disponible por cada usuario, por grupos o de manera global para todos.
Aprende a fondo como implementar/administrar cuotas de disco en Linuxtotal.
https://t.co/9n9z4KreVV
#linux#sysadmin
SEGURIDAD SSH BÁSICA
PermitRootLogin no
Configura esta directiva en /etc/ssh/sshd_config y reinicia el servicio sshd. Con esto se evitan potenciales ataques de fuerza de bruta sobre root.
Es realmente un pecado informático no verificar esto.
#Linux#sysadmin
ADVERTENCIA: NO USES ESTE SCRIPT!!!!!!!
Ruleta Rusa en el shell:
[ $[ $RANDOM % 6 ] == 0 ] && rm -rf /algun/dir || echo "TUVISTE SUERTE ESTA VEZ"
#Linux#sysadmin
ADVERTENCIA NUEVAMENTE: NO USES ESTE SCRIPT!!!!!!! (y menos en producción jejejeje)
5 Primeras y 5 últimas líneas del archivo indicado:
head -5 /var/log/messages
tail -5 /var/log/messages
O combina las dos salidas:
(head -5; echo "------"; tail -5) < /var/log/messages
#Linux#sysadmin
El siguiente comando te devuelve una lista de los directorios en la variable PATH:
echo $PATH
Si deseas ver los directorios línea por línea, añade el comando tr (transform), donde sustituyes el separador : por nueva línea \n
echo $PATH | tr ':' '\n'
#Linux#sysadmin
¿Como ejecutó varias veces un script, sin usar cron, en tiempos arbitrarios de cada x minutos?
for x in 1 3 2 6 1; do script; sleep ${x}m; done
Ejecuta el script a varios intervalos de tiempo en minutos.
#Linux#sysadmin
Eliminar líneas en blanco de un archivo:
awk NF archivo
sed sed -e '/^$/d' archivo
tr -s '\n' < archivo
Con grep:
grep . archivo
grep "\S" archivo
grep -v "^$" test
Si lo requieres en un nuevo archivo, solo redirecciona la salida:
grep . archivo > archivo2
#linux#sysadmin
4 maneras de crear archivos vacíos (empty file)
touch file
>file
echo -n "" > file
cat /dev/null > file
Ojo!! con echo "" > file, se genera un archivo de 1 byte porque genera un newline, con la opción -n lo evitas.
#linux#sysadmin
https://t.co/vceQZcJkje
From: RMS@[email protected] (Richard Stallman)
Subject: new UNIX implementation
Date: Tue, 27-Sep-83
Correo original de RMS solicitando ayuda para su futuro proyecto Unix GNU.
¿Cuantos le debemos nuestra profesión a este correo?
#Linux#Sysadmin
Tips de VI
[ESC] :r! sed -n '50,80 p' < file.php
Estando en vi o vim, inserta de la línea 50 a la 80 en el archivo actual donde este el cursor.
#Linux#sysadmin
@linuxtotal rsync -avz --progress archvio.ext /dir/
La -z comprime el archivo antes de enviar y descomprime en el destino, ahorra mucho tiempo. Y -a para considerar tanto archivos como carpetas (abarca -r, recursivo).
rsync --progress archivomuygrande.iso otro/directorio/
Cuando copies archivos de tamaño muy grande dentro del mismo servidor, en vez de utilizar "cp" puedes usar "rsync" para observar el avance o progreso de la copia.
#Linux#sysadmin
@linuxtotal Creo que te refieres al fingerprint del servidor remoto.
Se puede hacer algo mas complejo como
Linea=$(ssh remoteserver "echo" 2>&1 | grep error | grep -o "line:[^ ]*" |cut -d: -f 1)
sed -i ${Linea} $HOME/.ssh/known_hosts
(Lo escribí al aire, no tengo donde probar ahorita)
Si la llave privada del servidor cambió, desde el cliente ssh no te permitirá loguearte hasta que no borres la entrada correspondiente en "~/.ssh/known_hosts", dos maneras de hacerlo:
ssh-keygen -R hostname
sed -i 8d ~/.ssh/known_hosts (suponiendo renglón 8)
#Linux#SysAdmin
Situación muy común, añadir un programa a tu PATH actual:
export PATH="$PATH:/ruta/a/programa"
Si esto debe ser permanente, agrégalo a tu .bashrc con vim o desde el shell:
echo 'export PATH="$PATH:/ruta/a/programa"' >> ~/.bashrc
#Linux#sysadmin
curl -Lw '%{http_code}' -s -o /dev/null -I https://t.co/22gEG8kf07
Regresa solo el código de estado HTTP (code status) del sitio indicado.
#linux#sysadmin