Buenas estimados amigos de Capa 8 en esta ocasión les traemos un curso de bastante utilidad en el ambiente de consolas basadas en UNIX apoyanos a comentar y compartir el conocimiento, recuerda que todos somos capa ocho y amamos las tecnologías de la información . comparte tus dudas, comentarios y sugerencias. Enjoy
************************************************************
Listar archivos
[root@virtual directorio]# lsarchivo1.txt archivo.txt capaocho8 direc
************************************************************
Listar archivos en forma de lista (Valga la redundancia con umask es decir con los permisos y la fecha que se actualiza)
[root@virtual directorio]# ls -ltotal 16
-rw-r–r–. 1 root root 34 Aug 29 07:37 archivo1.txt
-rw-r–r–. 1 root root 28 Aug 29 07:36 archivo.txt
-rw-r–r–. 1 root root 32 Aug 29 07:37 capaocho8
drwxr-xr-x. 2 root root 4096 Aug 30 12:28 direc
************************************************************
listado con el i-nodo de los archivos
[root@virtual directorio]# ls -i265856 archivo1.txt 265854 archivo.txt 265857 capaocho8 266041 direc
************************************************************
Podemos combinar parametros ejemplo l & i para mostrar i-nodo mas detalles de archivos o directorios
[root@virtual directorio]# ls -litotal 16
265856 -rw-r–r–. 1 root root 34 Aug 29 07:37 archivo1.txt
265854 -rw-r–r–. 1 root root 28 Aug 29 07:36 archivo.txt
265857 -rw-r–r–. 1 root root 32 Aug 29 07:37 capaocho8
266041 drwxr-xr-x. 2 root root 4096 Aug 30 12:28 direc
************************************************************
para limpiar la terminal
[root@virtual directorio]# clear [root@virtual directorio]#************************************************************
Para agregar usuarios que puedan autenticarse al sistema
[root@virtual directorio]# adduser capaocho************************************************************
Para cambiar password a usuario que ya existe en el sistema
[root@virtual directorio]# passwd capaochoChanging password for user capaocho.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
************************************************************
Para ver usuarios que estan logeados en el sistema
[root@virtual directorio]# whocapaocho tty1 2014-08-30 05:55 (:0)
capaocho pts/0 2014-08-30 05:56 (:0.0)
************************************************************
Para ver con que usuario estoy logeado
[root@virtual directorio]# whoamiroot
************************************************************
–HFS: hierarchy File System (jerarquía del sistema de archivos):
/ -> Directorio raíz o directorio root
. -> Directorio Actual
.. -> Directorio Padre
************************************************************
Posicionarnos en un directorio
[root@virtual directorio]# cd direc/[root@virtual direc]#
************************************************************
Mostrar en forma de arbol los archivos y directorios contenidos en algun directorio especifico en este caso el directorio actual
[root@virtual directorio]# tree.
├── archivo1.txt
├── archivo.txt
├── capaocho8
└── direc
1 directory, 3 files
************************************************************
Ayuda a dar informacion de los comandos
[root@virtual directorio]#man //muestra la hoja de especificaciones del comando************************************************************
Muestra la ruta en la cual nos encontramos
[root@virtual directorio]# pwd/home/capaocho/directorio
************************************************************
Crear directorios
[root@virtual directorio]#mkdir <nombre_dir> //crea directorio con el nombre dado************************************************************
Mostrar el contenido de un archivo
[root@virtual directorio]# cat capaocho8hola somos capaocho we love I.T
************************************************************
Concatenar el contenido de los archivos
[root@virtual directorio]# cat archivo1.txt archivo.txthola
adios
comoEstas
yo
bien
y
tu
hola
somos
capa
ocho
adios
************************************************************
[root@virtual directorio]#touch <nombre_archivo> //crear archivo si ya existe lo sustituye se puede crear************************************************************
Imprimir en pantalla
[root@virtual directorio]# echo “Siguenos en facebook capaocho”Siguenos en facebook capaocho
************************************************************
Mandar imprecion a un archivo
[root@virtual directorio]#echo > //manda lo escrito en nuevaLinea a archivo************************************************************
[root@virtual directorio]#echo > //manda el contenido de otraLinea a archivo sustituyendo todo el contenido************************************************************
[root@virtual directorio]#echo >> // manda el contenido de otraLinea anexandola al final de archivo (Ya no lo sustituye)************************************************************
[root@virtual directorio]#cp //copia el archivo nombre1 a nombre2 tambien podemos usar rutas************************************************************
[root@virtual directorio]#mv //mover nombre de archivo a ruta especificada************************************************************ [root@virtual directorio]#rm //borrar archivo ordinariorio
************************************************************ [root@virtual directorio]#rm -r //borrar directorios en forma recursiva (con todo su contenido)
************************************************************ [root@virtual directorio]#rm -ri //pregunta si se desea borrar cada archivo
************************************************************
Muestra la fecha
[root@virtual directorio]# dateSat Aug 30 12:48:01 CDT 2014
************************************************************
Muestra el mes actual en forma de calendario
[root@virtual directorio]# calAugust 2014
Su Mo Tu We Th Fr Sa
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
************************************************************
Regresa numero de lineas, numero de palabras y numero de caracteres del archivo
[root@virtual directorio]# wc archivo.txt6 5 28 archivo.txt
************************************************************
[root@virtual directorio]#wc -l //regresa numero de lineas de nombreArchivo************************************************************
[root@virtual directorio]#wc -w //regresa numero de palabras de nombreArchivo************************************************************
[root@virtual directorio]#wc -c //regresa numero de caracteres de nombreArchivo************************************************************
[root@virtual directorio]#tr ‘’ < // cambia caracteres por otros dentro de archivo************************************************************
[root@virtual directorio]#diff // devuelve diferencia entre archivos************************************************************ [root@virtual directorio]#diff -w // devuelve diferencia entre archivos y no toma en cuenta espacios en blanco
************************************************************
[root@virtual directorio]#history // muestra lista de comandos que se ejecutaron con su identificador************************************************************ [root@virtual directorio]#! // ejecutra el comando marcado con numeroMarcadoEnHistory
************************************************************ [root@virtual directorio]#history -c // borra historial de comandos
************************************************************
[root@virtual directorio]#more // muestra nombreArchivo por partes (Porcentaje)************************************************************
[root@virtual directorio]#less // muestra nombreArchivo y podemos movernos arriva abajo etc.************************************************************
[root@virtual directorio]#tar cvf // c- crear, v- ver, f- archivo, este comando empaqueta un directorio en nombre.tar************************************************************
[root@virtual directorio]#tar tvf //muestra el contenido empaquetado en nombre.tar************************************************************
[root@virtual directorio]#tar xvf //x- extraer, comando desempaqueta nombre.tar************************************************************
[root@virtual directorio]#tar cvzf // z-zip, 2 en uno************************************************************
[root@virtual directorio]#tar xzf // descomprimir y desempaquetar************************************************************
[root@virtual directorio]#gzip // comprime archivo se crea paquete.tar.gz************************************************************
[root@virtual directorio]#gzip -l //muestra cuanto se comprimio un archivo************************************************************
************************************************************
[root@virtual directorio]#gzip -d // descomprime archivo************************************************************
[root@virtual directorio]#bzip2 // comprime nombreArchivo con nombre nombreArchivo.txt.bz2************************************************************
[root@virtual directorio]#bzip2 -d // descomprime y regresa nombreArchivo************************************************************
[root@virtual directorio]#zip -r // para comprimir archivoAComprimir a archivo.zip************************************************************
[root@virtual directorio]#unzip // descomprimir archivo************************************************************
[root@virtual directorio]#head //muesta contenido de un archivo************************************************************
[root@virtual directorio]#head -2 // muestra primeras dos lineas del contenido de nombreArchivo************************************************************
[root@virtual directorio]#tail //muestra las ultimas 10 lineas de un archivo************************************************************
[root@virtual directorio]#tail -3 //muestra las ultimas 3 lineas de archivo************************************************************
[root@virtual directorio]#sort //ordena archivo************************************************************
[root@virtual directorio]#sort -r // ordena archivo al reves************************************************************
[root@virtual directorio]#uniq //muestra palabras que son unicas y consecutivas************************************************************
[root@virtual directorio]#uniq -c // con -c muestra el numero de veces que fue repetido************************************************************
[root@virtual directorio]#locate // buscar archivo************************************************************
[root@virtual directorio]#find -name************************************************************ [root@virtual directorio]#whereis // busca archivos del sistema
************************************************************
ligas: evitan duplicar archivos en el sistema, no se tienen archivos duplicados, solo enlaces
[root@virtual directorio]#ln <rutaArchivo/archivo> // crea liga de archivo en directorio actual con nombre nombrLiga[root@virtual directorio]#ln -s <rutaArchivo/archivo> // crear ligas suaves no son seguras ya que se pueden modificar
************************************************************
Expreciones regulares: sirven para poder referenciar o sustituir caracteres dentro de un comando se delimitan entre comillas simples ‘’ , tambien sirven para reconocer patrones en un archivo.
[root@virtual directorio]#grep ‘’ //encuentra coincidencias [root@virtual directorio]# | grep ’’ // el resultado de comando1 se pasa a un analisis mediante una expreción regular para que muestre solo algunas coincidencias, ejemplo ls, y solo queremos ver cierto tipo de archivos [root@virtual directorio]#ls -l | grep ‘txt$’ // para decir que muestre todos los archivos que terminen con txt [root@virtual directorio]#ls -l | grep ‘^d’ // muestra las lineas que comience con la letra d en este caso los directorios‘.’ // cualquier caracter
[root@virtual directorio]#ls -l | grep ‘\.’ // el caracter de escape es la antidiagonal \ sirve para poner caracteres que aceptan las expreciones regulares, en este caso en particular muestra las lineas que tienen un punto (.)‘co*’ // muestra lo que comience con “co” seguido por cualquier cadena “c” tiene que estar “o” puede o no estar
‘\>’ fin de palabrA
[root@virtual directorio]#ls -l | grep ‘txt\>’ // muestra archivos que terminan en txt [root@virtual directorio]#ls -l | grep ‘?*zip’ // aquellos archivos que terminan en zip ?- dice que hay algo lo que sea y lo que esta atras puede o no ir [root@virtual directorio]#ls -l | grep ‘[tz]’ // muestra lineas que terminan en “t”o”z” [root@virtual directorio]#ls -l | grep ‘[l-]’ // unicamente archivos normales o ligas [root@virtual directorio]#ls -l | grep ‘[3]’ // unicamente archivos que tienen numero 3 [root@virtual directorio]#ls -l | grep ‘[5-8]’ // rango de numeros del 5 al 8 [root@virtual directorio]#grep ‘niñ[oa]’ // palabra niño o niña en nombreArchivo [root@virtual directorio]#grep ‘^….$’ // muestra lo que tega 4 caracteres [root@virtual directorio]#grep ‘perr\?a’ // per con una “r” y despues tenga “r” o no la tenga si la tiene o no sigue “a” [root@virtual directorio]#grep ‘perro*’ //puede o no estar la “o” pero forzosamente “perr” tiene que estar [root@virtual directorio]#grep ‘\(pi|pe\)so’ // contiene “p”i o “pe” y despues “so”{} // entre llaves el numero de veces que aparece a lo que precede
[root@virtual directorio]#grep ‘r\{2\}’ // 2 veces la letra “r” [root@virtual directorio]#grep ‘s\{1,2\}’ // aparece una o hasta 2 “s” [root@virtual directorio]#grep ‘s\{5\}’ // apartir de 5 “s” [root@virtual directorio]#sed // sustituir dentro de un flujo [root@virtual directorio]#sed s/’’//g // sustituye la palabra en loQueSeBusca por porLoQueSeSustituye, g- cambios en toda la linea si no se pone lo hace en todo el texto, [root@virtual directorio]#sed s/’’//gi // no distingue entre mayusculas y minusculas************************************************************
Procesos: es la instancia de un programa en la memoria RAM, todos los procesos hacen uso del procesador
Estados de los procesos:
Zombie: ocurre cuando un proceso trata de ser finalizado pero no lo hace ya no se ocupa pero sigue residiendo en la memoria para evitar esto linux elimina los procesos zombi
Muerto o dead: similar al zombie ocupa procesador pero no memoria RAM
Cada proceso genera un proceso hijo, el primer proceso que se utilisa en linux es init es el proceso que se usa en el kernel, init es el kernel cargado en la RAM
Cada proceso tiene su PID
PID-> id de proceso
PPID -> proceso identificador del padre
Cuando un proceso termina el padre debe saberlo
Huerfanos: es cuando ya no se ejecuta el proceso padre pero si el hijo, son adoptados por el init, pero si no lo hace se combierten en procesos zombie
[root@virtual directorio]#ps // muestra los procesos que se estan ejecutando en la terminal y su PID [root@virtual directorio]#ps a // muestra procesos ejecutandose en todas las terminales, su statusSs+ // S- dormido, +- listo
R+ // Corriendo y listo
[root@virtual directorio]#ps u // informacion más detallada de los procesos [root@virtual directorio]#ps x // informacion más detallada de los procesos [root@virtual directorio]#ps aux // combinando todos para tener informacion mas detallada [root@virtual directorio]#w //procesos en la red, muestra ip y que hacen los usuarios en la red [root@virtual directorio]#top // monitor,muestra procesos en tiempo real [root@virtual directorio]#pstree // muestra arbol de procesos desde init hasta el ultimo proceso [root@virtual directorio]#kill // comando para matar procesos [root@virtual directorio]#kill -l // lista id de las señales para poder matarlas (por medio de id)9- sigkill // mata prcesos indiscriminadamente no toma en cuenta si tiene hijos o no
15- asecino amable // Dice al proceso que termine
35- en adelante señales para ser modificadas
[root@virtual directorio]#yes // proceso que imprime muchas veces “y” se usa para pruebas en procesos [root@virtual directorio]#jobs // muestra procesos en terminal que estan en segundo plano para recuperarlos usamos: [root@virtual directorio]#fg % [root@virtual directorio]#ps aux | grep ‘yes’ // buscar los procesos que tengan como nombre yes [root@virtual directorio]#killall // mata proceso que ejecuta un comando [root@virtual directorio]#& // para abrir en segundo plano [root@virtual directorio]#nohup //peligrosp para usuarios porque genera proceso aleatorio [root@virtual directorio]#nohup // hace inmortal [root@virtual directorio]#cat /proc/meminfo // muestra información de la memoria [root@virtual directorio]#cat /proc/cpuinfo // informacion de CPU [root@virtual directorio]#cat /proc/cmdline // abrimos captura con pid [root@virtual directorio]#su // modo super usuario [root@virtual directorio]#cd /proc/1 // entramos al proceso init, damos un cat stat y dice que programa es [root@virtual directorio]#cat maps // muestra mapa de memoria de proceso [root@virtual directorio]#cd /proc/sys // luego #ls -l, nos muestra parametros del sistema************************************************************
Comandos en RED
[root@virtual directorio]#ifconfig // muestra informacion de direccionamiento ip, mascara de red, tarjetas etc [root@virtual directorio]#route // muestra los servicios y configuraciones de res de la NIC [root@virtual directorio]#telnettelnet> open
to // para acceso remoto no seguro ya que la información viaja en claro no se cifra
[root@virtual directorio]#ssh @ // protocolo de acceso remoto seguro, cifra información [root@virtual directorio]#ssh @ // ejecutar un solo comando en el servidor [root@virtual directorio]#scp usuario@: // para copiar de manera segura desde un host origen hasta un host destino [root@virtual directorio]#scp @: // copiar desde el servidor archivo [root@virtual directorio]#scp * @:/ // copiar todo el contenido de un directorio al destino [root@virtual directorio]#scp -r <ruta/directorio>@: // copiar directorio [root@virtual directorio]#wall // mandar mensaje a todos los de la redSFTP
[root@virtual directorio]#sftp @ // da prom para sftpsftp >ls // listado del home del servidor
sftp >lls // contenido de la carpeta local
Enviar archivo de computadora al server
sftp>put // enviar archivo
sftp>get // obtener archivo
sftp>rm // borrar archivo o carpeta del server
sftp>lrm // borrar archivo local
sftp>rmdir // borrar carpeta
sftp>lcd // mover en carpeta del server
sftp>cd //
sftp>exit // salir
[root@virtual directorio]#echo -d “:” | cut -d “:” -f1 // cut es el comando para cortar cadenas en este caso nuestro delimitador es un dos puntos “:” e imprimira cadena1 si podemos -f2 mostrara la cadena2 [root@virtual directorio]# && // ejecuta dos comandos primero comando1 y luego comando2 [root@virtual directorio]#ls -l | cut -d “-” -f3 // muesta la ultima linea de los permisos y despues toda la info del listado, en este caso el delimitador es un guion “-” [root@virtual directorio]#date | cut -d “:” -f3 // obtiene minutos actuales del sistema [root@virtual directorio]#ssh @ who | cut -d “ ” -f1 && who | cut -d “ ” -f13 // obtener usuarios conectados al servidor y dice hora en que se conectaron