COMANDOS LINUX Flashcards
pwd
IMPRIME EL DIRECTORIO ACTUAL
whoami
LISTA EL USUARIO ACTUAL
exec <command></command>
EJECUTA EL COMANDO Y TE SACA DEL SHELL
history
LISTA LOS ULTIMOS COMANDO TECLEADOS
touch
Sirve para dos cosas:
Crea un fichero vacios con los permisos de la mascara umask (VER www.howtoforge.es)
-a => con esta opcion cambiamos la fecha de acceso del fichero a la fecha en la que estamos lanzando el comando
-m => Cambiamos la fecha de modificacion
-c => No crea el fichero si este no existe
umask
Comando que nos muestra el umask (permisos por defecto).
Un fichero por defecto tiene permisos 666
Un dirfectorio por defecto tiene permisos 777
Si el umask fuese 0022 entonces
666 - 022 =644
6 para usuario, 4 para grupos y 4 para otros usuarios
Directorios Seria ertonces 755
FIJATE QUE SON 4 NUMEROS 0022. RECUERDA QUE EL PRIMERO 0 ERA PARA PERMISOS ESPECIALES TIPO STICKYBIT para que solo lo pueda borrar ROOT o el propietario, SETUID O SETGID -> Esto era para ejecutarlo como si fueras el propietario
ls
LISTAR FICGHEROS.
-a MUESTRA FICHEROS OCULTOS
-l LISTADO LARGO
-R RECURSIVO
cp
PARA COPIAS
-u COPIA SI EL ORIGEN ESTA MÁS ACTUALIZADO QUE EL DESTINO
-r RECURSIVO
mv
MUEVE EL FICHERO PERO TAMBIEN RENOMBRA. OJO!! NO EXISTE rename.
-i PREGUNTA ANTES DE SOBREESCRIBIR
rm
BORRA FICHEROS
-i PREGUNTA
-r RECURSIVO
tar
cvfz -> PARA CREAR UN FICHERO COMPRIMIDO
c CREAR, v VER, f EMPAQUETAR CONTENIDO, z SI QUEREMOS CREAR UN ZIP TGZ
xvfz -> DESCOMPRIMIR
tvfz -> LISTA EL CONTENIDO
cpio
El comando cpio es un programa de archivado que copia una lista de archivos en un único archivo de salida de gran tamaño. Este comando inserta encabezados entre los archivos individuales para facilitar la recuperación. Puede utilizar el comando cpio para copiar sistemas de archivos completos a otro segmento, a otro sistema oa un dispositivo de medios, como una cinta o un disquete USB.
(ALGO ASI COMO BACKUP)
-i EXTRAER
-o CREAR (COMPRIMIR)
dd
COPIA A BAJO NIVEL
if => INPUT FILE
of=> OUTPUT FILE
bs=> BLOCK SIZE
count=> CUENTA NUEMERO DE BLOQUES
dd if=/dev/zero of=empty.img bs=1024 count=720q
mkdir
CRER DIRECTORIOS
-p CREAR TODOS LOS SUBDIRECTORIOS NECESARIOS
rmdir
ELIMINAR DIRECTORIOS
-p BORRA EL ARBOL COMPLETO
chown
CAMBIAR PROPIETARIO
chown user:group files
chgrp
CAMBIAR EL GROUP OWNER (REQUIERE SER SUPERUSUARIO, POR ESO SE HACE CON SUDO)
chmod
chmod 755
chmod 422
STICKYBIT, SET UID, SET GID
LOS PERMISOS REALMENTE NO LLEVAN 3 NUMEROS SINO CUATRO.
POR EJEMPLO:
0777
SI EL PRIMERO NUMERO ES UN 1 ENTONCES ES STICKY BIT:
1777
STICKYBIT-> SOLO ROOT ó OWNER PUEDEN BORRAR EL FICHERO O RENOMBRARLO.
SI EL PRIMER NUMERO ES UN 2 ENTONCES ES SET GID
277
SET GID-> EJECUTAR EL PROGRAMA COMO SI FUERA EL OWNER
SI EL PRIMER NUMERO ES UN 4 ENTONCES ES SET UID
4777
SET UID> EJECUTAR EL PROGRAMA COMO SI FUERA EL OWNER PERO A NIVEL DE USUARIO
ACL (Acces CONTROL LIST)
setfacl
getfacl
setfacl:
-x => BORRAR ACL: setfacl -x u:david fichero(SOLO SE PONE EL USUARIO)
setfacl -m u:david:rw fichero => CREAR ACL
-b => TODAS LAS ENTRADAS
getfacl file (OBTENER LAS ACLS DE UN FICHERO)
find / -type d -name cadena -perm
Buscar
whereis
RUTA DONSE ENCUENTRA UN COMANDO
SE USA ASÍ
whereis rm
whereis lsof
whereis ls
ln
SE UTILIZA PARA CREAR ENLACES SIMBOLICOS.
POR DEFECTO ES HARD
-s simbolico (soft)
-d directorios (A DIRECTORIOS TIENE QUE SER SIMBOLICO, NO PUEDE SER HARD)
ENLACE HARD: ENLACE DE UN FICHERO A OTRO DE MODO TAL QUE SI BORRAMOS EL FICHERO ORIGINAL, EL QUE APUNTABA HACIA EL EN MODO HARD SIGUE TENIENDO LA INFORMACIÓN. PORQUE AMBOS COMPARTEN EL MISMO I-NODE EL ORIGINAL Y CON EL QUE HICIMOS EL ENLACE HARD. LOS BLOQUES SOLO SE LIBERAN CUANDO EL NUMERO DE HARDLINKS EN EL i-node ES 0. LA ESTRUCTURA SE LLAMA I-NODE.
PARA VER EL NUMERO DE INODE DE UN FICHERO: COMANDO STAT
STAT
INFORMACIÓN A BAJO NIVEL DE UN FICHERO, INCLUYENDO EL ID DE INODE
Ejemplo:
stat fichero.txt
DEVUELVE UN CAMPO links QUE INDICA EL NUMERO DE HARDLINKS
SPLIT
Genera ficheros de trozos
-l Lineas
-b Bytes
tr
ABC abc < fichero.txt PASA DE MAYUSCULAS A MINUSCULAS LOS CARACTERES INDICADOS
uniq
ELIMINA LINEAS DUPLICADAS
nl
MUESTRA NUMEROS DE LINEA.
-b a MUESTRA NUMEROS DE LINEA EN LINEAS VACIAS.
head
MUESTRA LAS PRIMERAS LINEAS
tail
MUESTRA LAS ULTIMAS “N” LINEAS
more/less
INFORMACION PAGINADA
cut
CORTA EN VERTICAL
-b POR BYTES
-f POR CAMPOS
-c POR CARACTERES
wc
SIRVE PARA CONTAR Y EN FUNCION DEL ARGUMENTO:
wc -l => CUENTA LINEAS
wc -w => CUENTA PALABRAS
wc -m =>CUENTA CARACTERES ¡¡OJO!!
wc -c => CUENTA BYTES ¡¡OJO!!
grep
egrep
fgrep
grep => para busquedas
egrep => busquedas con expresiones regulares
fgrep => No permite expresiones regulares
tee
Redirigir a ficheros
$ prog | tee output.txt
¿Como concatenan cat y paste?
cat => concatena en vertical
paste => concatena en horizontal
sort -k 3 fichero.txt
Para ordenar.
-n => Ordena por valor numerico
-r => Invierte el orden
-k => El numero de campo
-f => Da igual mayusculas que minusculas
fsck
check y repair
lsof
lista procesos abiertos para un fichero
df
Espacio libre
df -h => Espacio en unidades comunes
du
Espacio ocupado
du -sch
mount -t filesystem Origen Destino
montar unidadades
ldd
Librerias que utiliza una aplicacion en Linux
ps
Muestra procesos
top
Muestra dinamica de los procesos
nice
set prioridad a un comando
kill
Envia señal a un porceso. OJO!! NO LO MATA DIRECTAMENTE. ENVIA LA SEÑAL
nohup
Que el terminal sobreviva a tu logout y la tarea continue en segundo plano
fork()
¿Son identicos en todo padre e hijo?
¿Que devuelve si estas en el padre?
¿Que devuelve si estas en el hijo?
En linux todo son procesos y se crean con Fork.
Padre e Hijo son clones MENOS EN EL PID (cada uno tiene su PID).
SI ESTAS EN EL PADRE TE DEVUELVE EL PID DEL HIJO.
SI ESTAS EN EL HIJO TE DEVUELVE UN 0.
GETPPID() => FUNCION QUE DEVUELVE EL PROCESO PADRE
crontab -e
Configurar el demonio cron en:
/etc/crontab
dmesg
Listar mensajes de consola cuando arranca el sistema operativa
inetd
Arrancar servicios de red. inetd es un servidor de servidores.
ifconfig
Muestra configuracion de red del interface.
ping
Ping al servidor. Enviar paquetes ICMP ECHO REQUEST al host.
ifup/ifdown
Activar/Desactivar interfaces
tcpdump
Volcado de paquetes tcp
nslookup www.saladana.org
Obtener informacion sobre servidores DNS
route
Gestion de routing. Rutas del kernel de linux no confundir con traceroute. Esto es de las tablas de enrutamiento del Kernell de Linux.
traceroute
Camino que sigue una conexion con una ip de destino
netstat
Informacion sobre puertos abiertos y estadisticas de red
! /bin/sh
Fuerza a que este script se ejecute o interprete por ese shell
$0
Nombre del comando en un script de shell script
$#
Numero de parametros de un script
$$
Devuelve el PID
date
Devuelve fecha y hora
time
OJO!!! DEVUELVE EL TIEMPO DE EJECUCION DE UN PROCESO
locale
Configuracion de idioma de un teclado
iconv
Transforma de un encoding a otro:
iconv -f iso-8859-1 -t UTF-8 fichero.txt > fichero-utf8.txt
lpq
Ver cola de impresion
lpr
Enviar trabajos a imprimir
useradd
adduser
Crear cuenta de usuario
–group => lo metes en un grupo
lsmod
Listar modulos Cargados por el Kernell
lsusb
Listar las entradas usb
lspci
/var/cache/apt/archives
Paquetes descargados
/var/lib/apt/lists
Catalogos descargados
scp usuario@example.com:/ruta/al/directorio/archivo.txt .
Copia de seguridad
nmap
Auditoria y seguridad de redes. Escanea puertos.