Comandos básicos en la terminal de ubuntu

           
            También te puede interesar

http://www.ubuntu-guia.com/2009/07/problemas-tarjeta-audio-hda-intel-en.html?m=1


Comando echo:
El comando echo imprime sus argumentos (o hace eco de los mismos) a la terminal tal como se muestra en el Listado 3.
Listado 3. Ejemplos de Echo
 [ian@echidna ~]$ echo Word Word [ian@echidna ~]$ echo A
                    phrase A phrase [ian@echidna ~]$ echo Where are my spaces? Where are
                my spaces? [ian@echidna ~]$ echo "Here are my spaces." # plus comment Here
                are my spaces.

La administración de usuarios y grupos solamente puede realizarlas el usuario root utilizando los comandos de gestión de usuarios. Las tareas y los comandos para realizarlas son:
  • Creación de usuarios / useradd
  • Modificación de usuarios / usermod
  • Eliminación de usuarios / userdel
  • Creación de grupos / groupadd
  • Modificación de grupos / groupmod
  • Eliminación de grupos / groupdel
  • Añadir usuarios a un grupo / adduser
  • Quitar usuarios de un grupo / deluser

Creación de usuarios

El comando useradd permite añadir un usuario indicando como parámetros la información particular para crear el usuario en la misma líne de comandos. La sintaxis es:
//Crear usuario
useradd [opciones] nombre-usuario
Entre las opciones más destacables tenemos:
  • -g: Grupo principal que queremos tenga el usuario (debe existir previamente)
  • -d: Carpeta home del usuario. Suele ser /home/nombre-usuario
  • -m: Crear carpeta home si es que no existe.
  • -s: Intérprete de comandos (shell) del usuario. Suele ser /bin/bash
Ejemplo, si deseamos crear un usuario llamado 'pedro' cuyo grupo principal sea 'profesores', cuya carpeta home sea /home/pedro y su intérprete de comandos sea /bin/bash, ejecutaremos el siguiente comando:
// Crear un usuario
sudo useradd -g profesores -d /home/pedro -m -s /bin/bash pedro
De esta manera habremos creado al usuario pedro y su carpeta home. Si no utilizamos la opción -m, no se creará la carpeta home del usuario; en tal caso tendríamos que crearla manualmente. Tan solo nos quedará establecer su contraseña con el comando passwd:
// Establecer la contraseña del usuario
sudo passwd pedro
Entonces el sistema nos preguntará dos veces la contraseña que queremos asignar a pedro.

El comando useradd permite crear muchos usuarios automáticamente mediante archivos de comandos (scripts).

Se recomienda que el nombre de usuario sea en minúsculas y además de letras también puede contener números y algún signo como guiones normales y guiones bajos. Debemos recordar que unix distingue entre mayúsculas y minúsculas, es decir, Pepe es distinto de pepe.

Modificación de usuarios

Se utiliza el comando usermod y permite cambiar el nombre del usuario, su carpeta home, su intérprete de comandos, los grupos a los que pertenece y algunos otros parámetros.
// Cambiar el home de un usuario
sudo usermod -d /home/carpeta_pedro pedro 

Eliminación de usuarios

Se realiza con el comando userdel seguido del nombre del usuario. Con la opción -r eliminará también su carpeta home, ejemplo:
// Eliminación de un usuario
sudo userdel -r pedro
Eliminaría el usuario pedro y su carpeta home.

Creación de grupos

El comando groupadd permite añadir un grupo indicando como parámetro el nombre del grupo. Ejemplo, si deseamos crear un grupo llamado 'alumnos' ejecutaremos:
// Añadir un grupo
sudo groupadd alumnos
 

Modificación de grupos

El comando groupmod permite modificar el nombre de un grupo o el gid del mismo. La sintaxis es: sudo groupmod [-g nuevo-gid] [-n nuevo-nombre] nombre-grupo, ejemplo:
// Cambiar el gid del grupo profesores
sudo groupmod -g 2000 profesores

Eliminación de grupos

Se realiza con el comando groupdel seguido del nombre del grupo, ejemplo:
// Eliminación de un grupo
sudo groupdel profesores
Eliminaría el grupo profesores. Si algún usuario tuviera dicho grupo como grupo primario, el comando groupdel no eliminará el grupo.

Añadir usuarios a un grupo

Se utiliza el comando adduser seguido del nombre del usuario y del nombre del grupo al que queremos añadirle, ejemplo:
// Añadir a 'juan' al grupo 'profesores'
sudo adduser juan profesores 

Quitar usuarios de un grupo

Se utiliza el comando deluser seguido del nombre del usuario y del nombre del grupo del que queremos quitarle, ejemplo:
// Quitar a 'juan' del grupo 'profesores'
sudo deluser juan profesores
Para más información de todos estos comandos se puede consultar la ayuda del manual ejecutando man seguido del nombre del comando, ejemplo man adduser.

Herramienta gráfica de administración de usuarios

Ubuntu dispone de una herramienta gráfica de administración de usuarios que es 'users-admin'. Para ejecutarla podemos abrir una consola de root y ejecutar users-admin o si hemos iniciado sesión como root, podemos pulsar Alt+F2 y ejecutar users-admin. 
Herramienta users-admin para administración de usuarios y grupos
Se trata de una herramienta bastante intuitiva que dispone de una pestaña para administrar usuarios y otra para administrar grupos.

Los comandos SSH usados más frecuentemente y su utilización



cd
Cambia el directorio a un directorio en particular.
cd : Si el comando es ejecutado sin argumentos,  nos llevará al directorio principal del usuario.
cd ~ : Le lleva de regreso a su directorio principal (el directorio en el que aparece cuando recién inicia sesión en su servidor).
cd /usr/local/apache : Le lleva al directorio /usr/local/apache/.
cd - : Lo mueve de regreso hacia el último directorio en el que estuvo.
cd .. : Lo mueve un nivel hacia arriba en el árbol del directorio.
ls
Lista todos los archivos/directorios en el directorio actual.
ls -a : Muestra todos los archivos/directorios en el directorio actual, incluidos los archivos ocultos.
ls -l : Muestra una lista ordenada del directorio actual.
ls -al : Muestra una lista ordenada del directorio actual, incluyendo los archivos ocultos.
du
Muestra la utilización del disco del directorio actual.
du -h : Muestra la utilización del disco, por carpeta, en el directorio actual, en un formato humanamente legible.
du -sh : No despliega el tamaño por carpeta, solo muestra el total del espacio utilizado, en un formato humanamente legible.
du -la * |sort -n|tail -15: un ejemplo de un comando combinado:
  • du -la * : Regresa el tamaño de todos los archivos en el directorio dado.
  • sort -n : Ordena los resultados por valor numérico.
  • tail -15 : Imprime solo los últimos 15 resultados, lo que significa los 15 archivos más grandes de un directorio dado. 
Copiar, mover y borrar
cp
Comando utilizado para copiar un archivo.
cp /home/path/filename.ext /home/newpath/newfilename.ext : hace una copia de filename.ext desde el directorio /home/path/ al directorio /home/newpath/ con el nombre newfilename.ext.
cp -R /home/path/* /home/newpath/ : hace una copia de todos los archivos y directorios de /home/path/ y los pone en el directorio de /home/newpath/.
mv
Comando utilizado para mover un archivo – la utilización es la misma que con con cp (ver arriba).
rm
Comando utilizado para borrar archivos.
rm filename.ext : Borra filename.ext, pregunta por confirmación antes de borrar.
rm -f filename.ext : Borra filename.ext sin preguntar por confirmación.
rm -rf /home/directory/ :Borra la carpeta en el directorio, todos los archivos y los subdirectorios dentro, sin confirmación. (Sea muy cuidadoso con este comando). 
Buscar, localizar, ver y editar
vi
Editor de texto. Su utilización se muestra aquí.
vi filename.ext : Abre filename.ext  en el editor de texto vi.
cat
Utilizado para imprimir en pantalla.
cat filename : Imprime el contenido del archivo filename en pantalla.
cat filename |more : |more reparte el contenido del archivo en múltiples páginas (deslícese entre las páginas presionando la barra espaciadora, salga presionando la letra q).
tail
Mismo principio que con cat pero solo imprime el final del archivo. Utilizado muy a menudo para ver los últimos eventos que se muestran en un archivo de registro.
tail -f /path/filename.txt : Para vigilar el archivo continuamente, incluso cuando se está actualizando.
tail -100 /path/filename.txt : Para imprimir las últimas 100 líneas de un archivo.
grep
Busca una cadena dentro de un archivo.
grep string filename : Imprime en pantalla la instancia en la cual se ha encontrado la cadena string en el archivo filename.
grep -r string *  : Imprime en pantalla las instancias en las que se ha encontrado la cadena string en la carpeta actual, así como en los archivos de sus subcarpetas.
find
Búsqueda de archivos.
find /path/to/search/ -name filename : Busca en /path/to/search por un archivo de nombre filename.
find / -name filename : Encuentra todos los archivos llamados filename en cualquier lugar de su servidor.
find /path/to/search -name "*string*" : Encuentra todos los archivos que tienen ‘string’ en su nombre de archivo. 
Seguridad del servidor, monitoreo del procesador y de la red
last
Muestra las últimas conexiones al servidor y cuándo fueron hechas las mismas.
last -20 : Muestra solo los últimos 20 inicios de sesión.
last -20 -a : Muestra solo los últimos 20 inicios de sesión, con el nombre del equipo desde los cuales fueron hechas las conexiones.
last -20 -ai : La misma que la anterior, pero muestra la dirección IP en lugar de mostrar el nombre del equipo.
w
Muestra quién está conectado actualmente y desde dónde han iniciado sesión.
who
Parecido a w pero  muestra solo al usuario, hora de la conexión y el nombre del equipo desde el cual se realizó la conexión.
netstat
Muestra todas las conexiones de red actuales.
netstat -an : Muestra todas las conexiones al servidor, las direcciones IP de origen y destino, así como los puertos.
netstat -rn : Muestra la tabla de ruteo de todas las direcciones IP ligadas al servidor.
top
Muestra los procesos que se están ejecutando así como su utilización de recursos en una tabla, en tiempo real.
Shift + M para ordenar por utilización de memoria.
Shift + P para ordenar por utilización del CPU. (Presione ctrl + c para salir).
ps
Enlista los procesos que se ejecutan y sus PID (ID del proceso).
ps U username : Muestra los procesos que se ejecutan por el usuario username.
ps aux : Muestra todos los procesos del sistema que se ejecutan.
ps aux --forest : Muestra y ordena todos los procesos del sistema que se ejecutan.
kill
Utilizado para terminar un proceso.
kill -9 PID : Donde PID se refiere al número de ID del proceso. 
Permisos y propiedad
(Nota: Usted debe o bien ser el propietario del archivo/directorio, o haber iniciado como usuario root antes de poder ejecutar cualquiera de estos comandos).
chown
Utilizado para cambiar la propiedad de un archivo (dos variables: USUARIO - GRUPO)
chown root filename.ext : Cambia el propietario del archivo filename.ext al usuario root.
chown root.apache filename.ext : Cambia el propietario al usuario root y grupo a apache.
chown -R root /home/folder : Cambia el propietario de todo lo incluido (carpetas y archivos también) en el directorio /home/folder al usuario root.
chmod
Utilizado para cambiar los permisos del archivo.
chmod 755 filename.ext : Cambia los permisos de archivo para  filename.ext a 755. 
Varios
ln
Crea un enlace entre archivos, directorios y URLs.
ln -s /usr/local/apache/conf/httpd.conf /etc/httpd.conf : Ahora puede editar /etc/httpd.conf en lugar de  /usr/local/apache/conf/httpd.conf.
ln -s /home/www/path domain.com : Hace que el dominio domain.com apunte hacia el directorio  /home/www/path (¡No olvide hacer otra entrada conhttp://www.domain.com!)
touch
Crea un archivo vacío.
touch /home/path/filename.html : crea un archivo vacío llamado filename.html en el directorio /home/path (que puede luego ser editado en VI, por ejemplo).
wc
Imprime el número de palabras en un archivo.
wc -l filename.ext : Imprime el número de líneas en filename.ext. 
Archivar
tar
Usado en combinación con argumentos para crear y extraer archivos .tar.gz y .tar.
tar -vxfz filename.tar.gz : Descomprime y extrae los archivos contenidos en filename.tar.gz
tar -vxf filename.tar : Descomprime y extrae los archivos contenidos en filename.tar
tar -vcf archive.tar directory/ : Toma todos los archivos y carpetas en /directory/ y los archiva en  archive.tar 
Apache
httpd
httpd -v : Imprime la fecha de creación y número de versión del servidor Apache.
httpd -l : Listas compiladas en módulos Apache.
service httpd restart : Reinicia el servidor web Apache. 
MySQL
mysql
mysqladmin processlist : Muestra las conexiones activas de MySQL así como las consultas.
mysqladmin drop databasename : Descarta (borra) la base de datos llamada databasename.
mysqladmin -u root -p create databasename : Crea una base de datos llamada databasename.
mysql -u username -p password databasename < databasefile.sql : Restaura una base de datos MySQL en databasename desde databasefile.sql.
mysqldump -u username -p password databasename > databasefile.sql : Lleva a cabo un dump de MySQL de la base de datos llamada databasename y lo envía a databasefile.sql.

Comentarios

Entradas populares