Diferencia entre revisiones de «Usuario:ManuelRomero/ProgramacionWeb/ComandosLinux»

De WikiEducator
Saltar a: navegación, buscar
Línea 20: Línea 20:
 
#'''find''' buscar archivos por nombre, tipo, fecha, permisos. ejemplo: '''find . -name "*.php"'''
 
#'''find''' buscar archivos por nombre, tipo, fecha, permisos. ejemplo: '''find . -name "*.php"'''
 
}}
 
}}
 +
 
{{MRM_Resumen|Title=Lista de comandos con necesidad de privilegios|
 
{{MRM_Resumen|Title=Lista de comandos con necesidad de privilegios|
#'''sudo''' ejecutar un comando con privilegios de superusuario: '''sudo comando'''
+
#'''sudo''' ejecutar un comando con privilegios de superusuario: '''sudo comando'''
#'''apt update''' actualizar lista de paquetes (Debian/Ubuntu).
+
#'''apt update''' actualizar lista de paquetes (Debian/Ubuntu).
#'''apt upgrade''' actualizar paquetes instalados.
+
#'''apt upgrade''' actualizar paquetes instalados.
#'''apt install''' instalar paquetes. ejemplo: '''sudo apt install nginx'''
+
#'''apt install''' instalar paquetes. ejemplo: '''sudo apt install nginx'''
#'''dpkg -i''' instalar un .deb local: '''sudo dpkg -i paquete.deb'''
+
#'''dpkg -i''' instalar un .deb local: '''sudo dpkg -i paquete.deb'''
#'''chmod''' cambiar permisos de archivos. ejemplo: '''chmod 644 archivo.txt''' o '''chmod +x script.sh'''
+
#'''chmod''' cambiar permisos de archivos. ejemplo: '''chmod 644 archivo.txt''' o '''chmod +x script.sh'''
#'''chown''' cambiar propietario y grupo. ejemplo: '''chown usuario:grupo archivo'''
+
#'''chown''' cambiar propietario y grupo. ejemplo: '''chown usuario:grupo archivo'''
#'''useradd''' o '''adduser''' crear usuarios. ejemplo: '''sudo adduser alumno'''
+
#'''useradd''' o '''adduser''' crear usuarios. ejemplo: '''sudo adduser alumno'''
#'''passwd''' cambiar contraseña de un usuario: '''sudo passwd usuario'''
+
#'''passwd''' cambiar contraseña de un usuario: '''sudo passwd usuario'''
#'''usermod''' modificar usuario (añadir a grupos, shell, etc). ej: '''sudo usermod -aG www-data usuario'''
+
#'''usermod''' modificar usuario (añadir a grupos, shell, etc). ej: '''sudo usermod -aG www-data usuario'''
#'''deluser''' eliminar usuario: '''sudo deluser usuario'''
+
#'''deluser''' eliminar usuario: '''sudo deluser usuario'''
#'''mount''' / '''umount''' montar y desmontar sistemas de archivos (discos, volúmenes).
+
#'''mount''' / '''umount''' montar y desmontar sistemas de archivos (discos, volúmenes).
#'''mkfs''' crear sistema de ficheros en una partición (ej. mkfs.ext4 /dev/sdb1).
+
#'''mkfs''' crear sistema de ficheros en una partición (ej. mkfs.ext4 /dev/sdb1).
#'''systemctl''' controlar servicios systemd: '''sudo systemctl start nginx''', '''enable''', '''status''', '''stop'''.
+
#'''systemctl''' controlar servicios systemd: '''sudo systemctl start nginx''', '''enable''', '''status''', '''stop'''.
#'''journalctl''' ver logs del systemd: '''sudo journalctl -u nginx.service''' o '''-f'''.
+
#'''journalctl''' ver logs del systemd: '''sudo journalctl -u nginx.service''' o '''-f'''.
 
}}
 
}}
 +
 
{{MRM_Resumen|Title=Red y transferencia de ficheros|
 
{{MRM_Resumen|Title=Red y transferencia de ficheros|
 
  #'''ssh''' acceder a otro servidor de forma segura. ejemplo: '''ssh usuario@servidor'''
 
  #'''ssh''' acceder a otro servidor de forma segura. ejemplo: '''ssh usuario@servidor'''
Línea 58: Línea 60:
  
 
{{MRM_Resumen|Title=Editores en terminal|
 
{{MRM_Resumen|Title=Editores en terminal|
#'''nano''' editor simple y fácil de usar. guardar con '''Ctrl+O''', salir con '''Ctrl+X'''.
+
#'''nano''' editor simple y fácil de usar. guardar con '''Ctrl+O''', salir con '''Ctrl+X'''.
#'''vim''' o '''vi''' editor más potente (modo normal/insertar/comandos). salir: '''Esc :wq''' (guardar y salir).
+
#'''vim''' o '''vi''' editor más potente (modo normal/insertar/comandos). salir: '''Esc :wq''' (guardar y salir).
#'''git''' editor por defecto en commits puede ser vim/nano (depende de configuración).
+
#'''git''' editor por defecto en commits puede ser vim/nano (depende de configuración).
#'''gedit''' o '''code''' (Visual Studio Code) son GUI, si hay entorno gráfico.
+
#'''gedit''' o '''code''' (Visual Studio Code) son GUI, si hay entorno gráfico.
 
}}
 
}}
 
{{MRM_Resumen|Title=Redirecciones y tuberías|
 
{{MRM_Resumen|Title=Redirecciones y tuberías|
#'''>''' redirige salida y **sobrescribe**. ejemplo: '''ls > listado.txt'''
+
#'''>''' redirige salida y **sobrescribe**. ejemplo: '''ls > listado.txt'''
#'''>>''' redirige salida y **añade** al final. ejemplo: '''echo "nueva línea" >> listado.txt'''
+
#'''>>''' redirige salida y **añade** al final. ejemplo: '''echo "nueva línea" >> listado.txt'''
#'''<''' redirige entrada desde un archivo. ejemplo: '''wc -l < archivo.txt'''
+
#'''<''' redirige entrada desde un archivo. ejemplo: '''wc -l < archivo.txt'''
#'''2>''' redirige errores. ejemplo: '''comando_inexistente 2> errores.txt'''
+
#'''2>''' redirige errores. ejemplo: '''comando_inexistente 2> errores.txt'''
#'''&>''' redirige salida estándar + errores juntos.
+
#'''&>''' redirige salida estándar + errores juntos.
#'''|''' (pipe) conectar salida de un comando con otro. ejemplo: '''ls -l | grep ".php"'''
+
#'''|''' (pipe) conectar salida de un comando con otro. ejemplo: '''ls -l | grep ".php"'''
#'''tee''' redirige a fichero y muestra en pantalla. ejemplo: '''ls | tee salida.txt'''
+
#'''tee''' redirige a fichero y muestra en pantalla. ejemplo: '''ls | tee salida.txt'''
 
}}
 
}}
  

Revisión de 20:32 17 sep 2025

Lista de comandos usados en clase



Icon summary.gif
Lista de comandos
  1. ls listar el contenido de un directorio. opciones :-a mostrar todos, -l mostrar detalle.
  2. cd cambiar de directorio a la ruta especificada .
  3. pwd mostrar el directorio actual.
  4. mkdir crear un directorio. ejemplo: mkdir proyecto
  5. touch crear un fichero vacío o actualizar la fecha de modificación. ejemplo: touch archivo.txt
  6. cp copiar archivos o carpetas. ejemplo: cp origen destino ; con opción -r para directorios.
  7. mv mover o renombrar archivos. ejemplo: mv viejo.txt nuevo.txt
  8. rm eliminar archivos. ejemplo: rm archivo.txt ; rm -r carpeta/ para directorios.
  9. ln crear enlaces. por defecto son hard links. para enlaces simbólicos: ln -s archivo enlace
  10. tree mostrar estructura de carpetas en forma de árbol (suele requerir instalar paquete tree).
  11. cat mostrar el contenido de un fichero por pantalla.
  12. less / more paginar el contenido de ficheros largos.
  13. head ver las primeras líneas de un fichero. ejemplo: head -n 10 fichero
  14. tail ver las últimas líneas. útil con -f para seguimiento en tiempo real: tail -f /var/log/syslog
  15. grep buscar texto dentro de ficheros. ejemplo: grep -n "error" archivo.log
  16. find buscar archivos por nombre, tipo, fecha, permisos. ejemplo: find . -name "*.php"



Icon summary.gif
Lista de comandos con necesidad de privilegios
  1. sudo ejecutar un comando con privilegios de superusuario: sudo comando
  2. apt update actualizar lista de paquetes (Debian/Ubuntu).
  3. apt upgrade actualizar paquetes instalados.
  4. apt install instalar paquetes. ejemplo: sudo apt install nginx
  5. dpkg -i instalar un .deb local: sudo dpkg -i paquete.deb
  6. chmod cambiar permisos de archivos. ejemplo: chmod 644 archivo.txt o chmod +x script.sh
  7. chown cambiar propietario y grupo. ejemplo: chown usuario:grupo archivo
  8. useradd o adduser crear usuarios. ejemplo: sudo adduser alumno
  9. passwd cambiar contraseña de un usuario: sudo passwd usuario
  10. usermod modificar usuario (añadir a grupos, shell, etc). ej: sudo usermod -aG www-data usuario
  11. deluser eliminar usuario: sudo deluser usuario
  12. mount / umount montar y desmontar sistemas de archivos (discos, volúmenes).
  13. mkfs crear sistema de ficheros en una partición (ej. mkfs.ext4 /dev/sdb1).
  14. systemctl controlar servicios systemd: sudo systemctl start nginx, enable, status, stop.
  15. journalctl ver logs del systemd: sudo journalctl -u nginx.service o -f.



Icon summary.gif
Red y transferencia de ficheros
#ssh acceder a otro servidor de forma segura. ejemplo: ssh usuario@servidor
#scp copiar ficheros de/para otro host. ej: scp archivo usuario@host:/ruta/
#rsync sincronizar carpetas local/remoto (eficiente). ej: rsync -avz origen destino
#curl hacer peticiones HTTP desde la terminal y descargar contenido. ejemplo: curl -I https://example.com
#wget descargar archivos desde la web. ej: wget https://.../archivo.tar.gz
#ss o netstat ver conexiones de red y puertos abiertos.
#hostname ver o fijar el nombre del host.



Icon summary.gif
Procesos y rendimiento
#ps aux listar procesos en ejecución.
#top monitorear procesos y uso de CPU/memoria en tiempo real. alternativa: htop (mejor, requiere instalación).
#kill enviar señal a un proceso. ej: kill PID o kill -9 PID (forzar).
#nice / renice ajustar prioridad de procesos.
#uptime tiempo de actividad y carga promedio.
#free -h ver uso de memoria.
#df -h ver uso de disco por partición.
#du -sh carpeta/ tamaño de una carpeta.



Icon summary.gif
Editores en terminal
  1. nano editor simple y fácil de usar. guardar con Ctrl+O, salir con Ctrl+X.
  2. vim o vi editor más potente (modo normal/insertar/comandos). salir: Esc :wq (guardar y salir).
  3. git editor por defecto en commits puede ser vim/nano (depende de configuración).
  4. gedit o code (Visual Studio Code) son GUI, si hay entorno gráfico.



Icon summary.gif
Redirecciones y tuberías
  1. > redirige salida y **sobrescribe**. ejemplo: ls > listado.txt
  2. >> redirige salida y **añade** al final. ejemplo: echo "nueva línea" >> listado.txt
  3. < redirige entrada desde un archivo. ejemplo: wc -l < archivo.txt
  4. 2> redirige errores. ejemplo: comando_inexistente 2> errores.txt
  5. &> redirige salida estándar + errores juntos.






Detalles de comandos

Icon activity.jpg
sudo
  • Hacer como superusuario
  • Precede a un comando que queramos ejecutar como superususario
  • Para incorporar un usuario en superusuario ejecutar visudo y copiar la línea que empiece por su sustituyendo su por el usuario





Icon activity.jpg
apt-get
apt-get install nombre_paquete
  • Realizar una instalación





Icon activity.jpg
ls


  • ls (de listar (list)
listar el contenido de un directorio o fichero.
$ ls /home/directorio
El comando ls tiene varias opciones
  1. -a para mostrar los archivos ocultos.
  2. -l para mostrar los usuarios, permisos y la fecha de los archivos.


Icon casestudy.gif
uso de ls
Ls 1.png
Ls 2.png






Icon activity.jpg
cd (change directory, cambiar directorio)
  • cd sirve para cambiar de directorio a una ruta distinta de la que te encuentras.
  • Por ejemplo, si estas en el directorio /home/alumno y deseas acceder a /home/alumnos/web, seria:
$ cd web
  • Aquí estamos dando una ruta relativa ya que me muevo a partir del directorio en el que me encuentro.
  • Si quiero cambiarme a otra ubicación tendré que dar una ruta absoluta
  • Por ejemplo si estando en /home/alumno quiero moverme a /var/www
$ cd /var/www
  • También nos podemos mover al directorio superior del que nos encontramos
  • Si estás en /home/alumno y deseas subir un nivel (es decir ir al directorio /home), ejecutas:
$ cd ..


(Comment.gif: Cuidado con poner o no la barra al principio.

cd www
#intenta cambiar al directorio www a partir del directorio actual
#es una ruta relativa
cd /var/www
#intenta cambiar al directorio /var/www indiferentemente de dónde esté 
#es una ruta absoluta

)







Icon activity.jpg
pwd
  • pwd (print working directory, mostrar el directorio actual)




Icon activity.jpg
mkdir
  • mkdir (make directory, crear un directorio)
  • mkdir crea un directorio con el nombre y ruta especificado.
$pwd
/home/profesor
$ mkdir ejercicios
$ ls 
 ejercicios