Diferencia entre revisiones de «Introducción a Linux/Comandos»

Contenido eliminado Contenido añadido
m Bot: Correcciones ortográficas; cambios triviales
Línea 7:
Como última aclaración, las rutas siempre son relativas a la carpeta actual (es decir, en la carpeta /tmp/, el nombre pulse se refiere al archivo /tmp/pulse) a menos que anteponga una barra antes (en cuyo caso serían relativas a /, la carpeta raíz, indicador de ruta absoluta, como en el ejemplo anterior /tmp/)
 
* Regla número 1: la distinción entre mayúsculas y minúsculas es crucial. Los nombres de los comandos siempre se escriben en minúsculas; las opciones cambian de significado o son inservibles si se confunden
* Regla número 2: todos los parámetros se separan por espacios; la consola reconoce la primera palabra como el nombre del comando, y cada cadena de texto entre espacios como un parámetro (a excepción de los operadores, también separados entre espacios; ver más abajo). Para que un espacio no actúe como separador de parámetros (en una ruta de archivo, por ejemplo) antepóngase la barra inversa \. Ejemplo: <code>cd ~/Personajes/Froilán\ de\ Todos\ los\ Santos</code>
Estas barra se conoce como carácter de escape, y le da un significado diferente al caractercarácter siguiente. Por ejemplo, \n significa salto de línea, y \\ significa barra inversa.
 
Esta barra se puede conseguir pulsando Alt Gr + º (símbolo de ordinal) en teclados españoles.
 
En ciertos casos se puede simplemente entrecomillar la ruta, ej: <code>cd "Tales of the Abyss"</code>
* Regla número 3: los comandos se teclean tal como aquí, excepto los parámetros entre corchetes (que son opcionales, y de escribirse, se escribirán sin ellos) y entre símbolos &lt;&gt; (a cambiar por el valor o ruta que haga falta; igualmente se escriben sin símbolos &lt;&gt;).
* Regla número 4: las opciones se escriben anteponiendo un guion, si constan de una sola letra; o dos si constan de varias. En casi todos los comandos (o por lo menos en todos los comandos de sistema) todas las opciones que se utilicen de una sola letra se pueden contraer juntando todas las letras y usando un solo guion al principio. Esto funciona excepto cuando las opciones necesiten a su vez parámetros. <br />Ejemplo: <code>ls -a -l</code> equivale a <code>ls -al</code>
* Regla número 5: esta es una lista muy reducida que ofrece las opciones más típicas de los comandos más usados. Para más información, use los comandos de ayuda.
 
== Comandos de ayuda ==
 
{| class="wikitable" border="1"
Línea 26:
| info || Información general autoexplicativa
|-
| man &lt;comando&gt; || Manual completo (o casi completo) sobre un comando<br />Existe un manual para el propio comando man, al que se accede por <code>man man</code>
|-
| &lt;comando&gt; --help || Ayuda básica sobre un comando (no todos la ofrecen)
Línea 37:
|}
 
== Administración de carpetas y archivos ==
{| class="wikitable" border="1"
! Sintaxis
Línea 46:
|-
| ls [-a] [-l]
| visualiza los ficheros y carpetas en colores para distinguir los distintos tipos.<br /><code>-a</code> refleja los archivos ocultos, que empiezan por un punto en su nombre; no aparecen normalmente ni en la consola ni en modo gráfico.<br /><code>-l</code> da información extra sobre los archivos en vez de limitarse a escribir los nombres.
| &nbsp;
|-
Línea 53:
| mkdir &lt;ruta&gt; || crea directorios || <code>mkdir ~/Esto\ no\ es\ privado</code>
|-
| cd &lt;ruta&gt; || cambia de directorio<br />a falta de parámetro cambia a la carpeta personal |
| <pre>marivi@bellota:~$ cd AutoCAD
marivi@bellota:~/AutoCAD$</pre>
|-
| cd .. || cambia siempre al directorio inmediatamente superior<br />''¡no pegar los puntos al comando como en MS-Dos! No reconocerá el comando''
| <pre>marivi@bellota:~/AutoCAD/examples$ cd ..
marivi@bellota:~/AutoCAD$</pre>
Línea 75:
| rm [-i] [-r] &lt;ruta&gt;
| ''no mueve a la papelera, borra definitivamente los archivos''
<br />en principio, elimina ficheros de uno en uno
<br />para borrar una carpeta entera es necesario borrar los archivos de dentro primero, bien a mano o mediante la opción -r (recursivo; borra todo el interior)
<br />la opción -i hace que pida confirmación antes de borrar, muy conveniente si se usa con la opción -r
|<code>rm /home/tarea</code>
<br /><br /><code>rm -r /home/Tareas</code>
|-
| cat &lt;ruta&gt;
|visualiza contenido de un fichero; pueden concatenarse varios<br />la visualización se hace sin pausa; si el texto es más largo que la pantalla no se puede recuperar.
| <code>cat /etc/passwd</code>
|-
Línea 147:
|}
 
== Copias de seguridad ==
{| class="wikitable" border="1"
! Sintaxis
Línea 172:
/media/HD_BACKUPS/mysql.201008 <--- Dir. Destino
</pre>
La opción --link-dest comprueba antes de copiar en el nuevo directorio (/media/HD_BACKUPS/mysql.201008 en el ejemplo) si el mismo ya existe en la copia anterior indicada en la opción --link-dest. Si existe crea un ''enlace duro'' a la misma. Si no copia el fichero.<br />
Los enlazes duros permiten acceder a un fichero desde varias rutas alternativas, en este caso desde .../mysql.201001/ruta1 y .../mysql.201008/ruta2. Cuando desde una ruta borramos el fichero con rm, el fichero sigue estando accesible desde el resto de rutas o enlaces duros. Cuando se elimina el último enlace duro el fichero es eliminado. Con esta técnica podemos crear instantaneas de un directorio tal y como estaba en una fecha dada al tiempo que el espacio ocupado en disco es similar a una copia incremental, ya que entre una fecha y otra sólo se almacenan los ficheros que han cambiado.
|}
 
== Relativos a permisos y usuarios ==
{| class="wikitable" border="1"
! Sintaxis
Línea 183:
|-
| passwd [-d] [&lt;usuario&gt;]
| sustituyendo usuario por el nombre de usuario (o no escribiendo nada para el usuario que ejecute el comando) permite cambiar la contraseña, o establecer una nueva si no tiene<br />La opción <code>-d</code> permite borrarla, dejando la cuenta sin contraseña (peligroso)<br />Sólo el superusuario puede cambiar contraseñas que no sean la suya<br /><br />En caso de error la contraseña quedará sin cambios.
| <pre>marivi@bellota:~$ passwd
Cambiando la contraseña para marivi.
Línea 193:
| chmod &lt;permisos&gt; &lt;ruta&gt;
| cambia los permisos de acceso a un archivo.
<br />Los permisos se pueden dar mediante un número octal o mediante la notación
<br />&lt;usuarios afectados&gt;&lt;modo de concesión&gt;&lt;permisos&gt; donde:
* los usuarios afectados se expresan con la letra '''u''' (usuario propietario), '''g''' (usuarios que compartan grupo con el propietario), '''o''' (otros usuarios que no compartan grupo), '''a''' (todos) o una combinación de varias
* modo de concesión: añadir privilegios ('''+'''), retirarlos ('''-''') o establecerlos como los únicos existentes ('''=''')
* los permisos en sí, entre otros '''r''' (lectura), '''w''' (escritura), '''x''' (ejecución para archivos, permiso de paso para directorios)
Consulte la sección de permisos de archivo para más información
| <code>chmod a=rwx konquest</code><br />Se permite a todos los usuarios leer, escribir y ejecutar konquest
<br /><code>chmod u-wx konquest</code>
<br />Se deniega al usuario propietario la posibilidad de escribir o ejectuar konquest
|-
| chown <usuario>[:<grupo>] <ruta>
Línea 214:
| su [&lt;usuario&gt;]
| cambio de usuario (es necesario introducir la contraseña del nuevo usuario)
<br />si no se marca a qué usuario cambiar por defecto prueba a cambiarse por root
<br />curiosidad: se puede cambiar a usuario root con la contraseña del usuario normal mediante <code>sudo su</code>''
| &nbsp;
|-
| gksu &lt;comando&gt;
| versión gráfica de sudo
| <code>gksu kate /etc/fstab</code><br />aparecerá una ventana para introducir en la contraseña, de introducirla correctamente arrancará el comando <code>kate /etc/fstab</code> con permisos de superusuario, cargando su configuración y permitiendo abrir y modificar ese archivo, de permiso restringido.<br />''el ejemplo anterior sólo sirve para Kubuntu o un sistema que incluya el editor de archivos kate; en cualquier caso el funcionamiento del comando gksu es el mismo.''
|}
 
== Otros ==
{| class="wikitable" border="1"
! Sintaxis
Línea 239:
| shutdown <tiempo>
| reinicia el sistema operativo, ejecutando un init otra vez.
<br />El tiempo se escribe en minutos, <code>now</code> para apagar ahora.
<br />Son necesarios permisos de superusuario generalmente.
|
|-
| halt <tiempo>
| apaga el equipo.<br />Misma sintaxis y permisos que el anterior.
|
|-
| reboot <tiempo>
| reinicia el equipo.<br />Misma sintaxis y permisos que el anterior.
|
|-
Línea 254:
| Limita el tiempo de CPU dedicada a un proceso.
| Ej1: Limitar el tiempo máximo de CPU de los plugins externos de Firefox
(válido a partir de Firefox 3.7)<br />
cpulimit -e plugin-container -l 30
|}
 
== Manejo de ficheros de texto ==
En general los siguientes comandos se utilizan en la práctica anidados en tuberías de forma que la salida de un comando se utiliza como entrada para el siguiente eliminando la opción <ruta> lo cual le indica al comando que utilize como fichero de entra la salida del comando anterior. P.ej, para mostrar los 10 primeros resultados de un fichero de texto conteniendo la palabra "amarillo" ejecutaríamos un comando similar a:
cat "fichero de texto" | grep -i amarillo | head -n 10
Línea 273:
|}
 
== Monitorización ==
En general, las opciones de monitorización pueden ser considerados comandos de nivel avanzado o muy avanzado.
{| class="wikitable" border="1"
Línea 279:
! Explicación
|-
| top || permite ver y administrar los procesos en ejecución (útil para matar procesos que cuelguen el sistema)<br />pulsar Q para abandonar, K para matar un proceso (pedirá el número de proceso, visible en la columna izquiefa); &lt; y &gt; para cambiar de página<br />''sólo se pueden matar procesos de la propia cuenta; se pueden matar procesos de otras ejecutando el comando como root, pero esto sólo se debería hacer si tiene completa idea de lo que está haciendo.
|-
| htop || Similar a top, pero con una interfaz basada en menús, más amigable de uso.
Línea 295:
| iostat || Permite ver estadísticas de lecturas/escrituras a dispositivos externos
|-
| inotifywatch<br />inotifywait || Las versiones modernas del kernel de Linux permiten notificar a las aplicaciones de usuario cualquier acceso o cambio a un fichero de forma instantánea. Los comandos inotifywatch e inotifywait nos permiten "conectar a la escucha" con el kernel para ser avisados de cualquier cambio producido en uno o varios ficheros de forma instantanea.
|-
| strace -p <pid><br /> || Permite monitorizar las llamadas desde una aplicación de usuario al núcleo o kernel del sistema.
|-
| stap || Comando extremadamente avanzado que permite monitorizar el funcionamiento del kernel en tiempo real. Un tutorial en inglés puede encontrarse [http://sourceware.org/systemtap/tutorial/node2.html aquí]
|}
 
== Gestión de energía ==
Permite controlar parámetros sobre la gestión de energía, como la frecuencia de la CPU, deshabilitar USBs no usados, ...
{| class="wikitable" border="1"
Línea 311:
|}
 
== Operadores ==
{| class="wikitable" border="1"
! Sintaxis