Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Ubuntu 02
Ubuntu 02
El root es un cuenta de administrador que corresponde al super usuario el que tiene todos los
privilegios y sólo puede haber uno.
La cuenta que creamos con la instalación es una cuenta de administrador pero limitada en
privilegios y puede haber todo lo que queramos. Estos usuarios administrador tenemos que
darle permiso de root.
En el instante que nace ms-dos era unix el que estaba en todos lados en las universidades en
los centros de investigación en las grandes empresas y surgio ms-dos algo simple pero que
pudo llegar a todas las personas eso iso que la computadora llegara a los hogares. Luego
nacio windows y es como microsoft puedo hacer de la computadora algo utilo para ser usado
por todas las personas y sobre todo hizo del sistema operativo su negocio como empresa.
Pero hay un mundo desconocido el mundo de los servidores que los usuarios comunes no
entienden. Por ejemplo sabes como funciona youtube que hay detras los servidores que
funcionan con linux.
Unix nace en paralelo al nacimiento de c. pero la licencia de unix era exageradamente cara por
lo tanto no era accesible para todos.
Linus Torvalds creo un núcleo basado en minix. El Kernel que significa nuez.
Linux es como el motor ya el mundo tenia su motor donde podía encajar todas las demás
piesas
GNU / LINUX
Linux era como un rompe cabeza hecho por trozos pequeños que encajaban en el conjunto
Chromium vs Firefox
GTK vs QT
RedHat en sus inicios era una distro libre pero se convirtio en pago porque los que lo hicieron
vieron un negocio
cd /usr/lib/jvm
sudo gedit /etc/envronment
JAVA_HOME=/usr/lib/jvm/java.../jre/
Las variables de entorno son necesarias para la seguridad del sistema para poder acceder de
manera segura a base de datos al sistema y otras cosas mas.
Hay variables de entorno.
Son necesarias para
Hay variables de entorno temporales y permanentes.
En el sistema ya hay muchas variables de entorno.
Las variables de entorno siempre van en mayusculas.
En la ruta de PATH se guardan todas las rutas de nuestros ejecutables
Crear una variable de entorno temporal es decir que no existe en otra terminal que
llamaremos YEISON
export PATH=$PATH:/home/walter/
echo $PATH
gedit saludar.c
#include<stdio.h>
int main() {
printf("Hola Mundo");
}
JAVA_HOME="/usr/local/jdk1.6.0_01"
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:$JAVA_HOME:"
LANG="es_CO.UTF-8"
EJEMPLO 1
http://www.gnu.org/software/bash/manual/bashref.html
EJEMPLO : CREAR UNA CUENTA DE USUARIO CON EL QUE INICIAR Y CERRAR SESIÓN
·1 Ver la carpeta del usuario que hemos creado para confirmar su creación
ls /home
cat /etc/passwd
cat /etc/passwd | cut -d":" -f1
(Ctrl+Alt+F1)
Seleccionar el usuario arturo y escribir su contraseña de acceso
·4 Desde la sesion de arturo mostrar los usuarios que tienen abierta una sesión en el sistema
who
Con el comando "whoami" podemos saber que usuario esta logueado actualmente
En el simbolo apagar sistema flecha derecha en el usuario arturo esta la opción "cerrar cesión"
Escribir en un terminal
who
La sesión de arturo ya no existe porque fue cerrada
Esto no lo puede hacer el usuario arturo por que no pertenece al grupo administrador (sudo)
Daremos privilegios de administrador al usuario arturo pero desde la sesión de walter que es
administrador. Cambiamos de sesión (Ctrl+Alt+F1) con walter y escribimos en un terminal.
who
Escribimos nuevamente el comando siguiente para matar la sesión de walter desde arturo
Eliminar un usuario (Con sudo le damos a nuestra cuenta administrador permisos de root)
ls /home
export
echo $JAVA_HOME
export MINOMBRE="Walter"
echo $MINOMBRE
EJERCICIO 1
·9 Realizar la suma de 10 y 20
expr 10 + 20
·10 Realizar la misma suma pero usando variables (se escriben sin espacios el =)
x=10
y=20
expr $x + $y
suma=`expr $x - $y`
expr $suma
suma=`expr 5 + 3`
expr $suma / 2
calculo=`expr $suma / 2`
expr $calculo
·13 Realizar el calculo de la suma de 2 números ingresados por teclado
read -p "Ingrese primera variable: " x
read -p "Ingrese segunda variable: " y
suma=`expr $x + $y`
echo "El resultado es $suma"
==========================================================
===============================
Para poder agregar un nuevo usuario administrador (sudo), estos son los comandos a
ejecutarse:
Donde nuevousuario es el nombre del usuario que desea crear. Este comando crea el usuario,
pero todo esto aún no le configura los permisos de administrador. Para dar ese permiso al
usuario recién creado, seguidamente ejecute:
Esto asignara el usuario al grupo sudo, lo cual le permitirá trabajar como un administrador.
==========================================================
===============================
RESUMEN
man ascii
Ctrl + Shift + u
Escribir cuando aparece un u subrayada el código hexadecimal 7E. Listo aparece el simbolo ~
ls
ls -a
ls -R
Muestra los archivos ordenados por fecha, los mas recientes primero
ls -lt
FECHA-HORA Y CALENDARIO
date
cal
SALIDA EN EL TERMINAL
echo "hola"
export
env
env | grep PATH
VARIOS
Crear un archivo, si este no existe lo crea y si existe lo elimina y lo vuelve a crear borrando su
contenido anterior.
Crear un archivo, si este no existe lo crea y si existe lo abre para añadir sin borrar su
contenido anterior.
Crear un archivo con el listado de la unidad actual pero solo el nombre de los archivos
ls >> listado1.txt
Borrar el archivo
rm listado.txt
touch vacio.txt
nl listado.txt
head listado.txt
wc listado.txt
COMANDOS
EJEMPLOS
1 0 0
(001, 000, 000)
(- - x, - - -, - - -)
Conceder al usuario, grupo y otros todos los permisos #chmod u+rwx,g+rwx,o+rwx archivo.txt
sobre un archivo. #chmod 777 archivo.txt
#chmod ugo+rwx archivo.txt
7 7 7
(11, 111, 111)
(rwx, rwx, rwx)
Conceder al usuario los permisos de lectura y #chmod u+rw archvo.txt
escritura sobre un archivo.
EJERCICIO
Dar todos los permisos al usuario, grupo y otros de archivo.
#chmod 0 carta.txt
#chmod ugo-rwx carta.txt
Dar al usuario del archivo todos los permisos, al grupo revocarle todos los permisos y a otros
solo de ejecución.
Asumiendo que el usuario, grupo y otros de un archivo tiene todos los permisos, proceda a
revocar al grupo y otros el permiso de lectura.
Asumiendo que un archivo tiene el siguiente permiso 377, proceda a dar el permiso de lectura
y revocarle el de escritura y ejecución al dueño del archivo.
MANEJO DE DIRECTORIOS
COMANDOS
·22 Borrar un directorio con todo su contenido si lo tuviera sin pedir confirmación.
rm -Rf directorio
NOTA
CREAR UN ALIAS
COMANDO
Se usa para reducir el tiempo de acceso a un comando que se escriba por teclado. Comandos
que son difíciles de recordar o que son demasiado extensos entonces se les puede dar un
nombre alternativo con el fin de que cada vez que se quiera ejecutar solo se use el nombre
alternativo.
El nombre del alias es "crear" que no es un archivo que exista físicamente por lo tanto no se
puede ver haciendo un listado pero si podemos usar de la siguiente manera.
crear
Este alias también lo podemos usar desde cualquier lugar donde nos encontremos como sigue:
[dev]#usb
unalias usb
¿Que nombre recibe el S.O. que permite tener abiertas varias sesiones, con usuarios distintos
al mismo tiempo?
ELIMINAR UN USUARIO
Eliminar un usuario (Con sudo le damos a nuestra cuenta administrador permisos de root)
ls /home
sudo cat /etc/passwd
(1)
·34 Crear una variable de entorno, permanente para todos los usuarios
sudo gedit /etc/environment
Escribimos al final:
QUIENSOY="Walter"
Guardamo y salimos
·35 Luego recargamos el fichero environment para que los cambios se puedan ver
source /etc/environment
·36 Mostrar el contenido de la variable de entorno creado (Hay que reiniciar previamente)
echo $QUIENSOY
Crear el usuario arturo desde walter y observar que la variable de entorno tambien es valido
para dicho usuario.
(2)
·37 Crear una variable de entorno, permanente pero solo para el usuario logueado
ls -a
sudo gedit .bashrc
·38 Dar privilegios de administrador del grupo sudo hay que estar logueado como walter
sudo adduser arturo sudo
su arturo
QUIENSOY="Arturo"
Guardar y salir
·40 Refrescar las variables de entorno
source /home/arturo/.bashrc
Desde la cuenta walter que se creo durante la instalación crear el siguiente archivo que es un
programa en c.
#include<stdio.h>
int main() {
printf("Hola Walter");
}
·44 compilar
gcc -o saludo saludar.c
·45 Ejecutar
./saludo
cd /
saludo
·46 Vamos añadir a la variable de entorno PATH la ruta de nuestro programa, para que se
puede encontrar en cualquier parte.
export PATH=/home/walter/:$PATH
export PATH=$PATH:/home/walter/
echo $PATH
·47 Ahora ya podemos ejecutar el archivo desde cualquier lugar que se encuentre
cd /
saludo
alumnos:x:1001:
profesores:x:1002:
wortiz:x:1001:1003:,,,:/home/wortiz:/bin/bash
sescurra:x:1002:1004:,,,:/home/sescurra:/bin/bash
wlescano:x:1003:1005:,,,:/home/wlescano:/bin/bash
kalva:x:1004:1006:,,,:/home/kalva:/bin/bash
cruiz:x:1005:1007:,,,:/home/cruiz:/bin/bash
walter@ubuntu:~$ ls /home/
alumnos:x:1001:wortiz,sescurra
profesores:x:1002:wlescano,kalva,cruiz
ls -l > listado
mkdir carpeta
ls -l
Cambiar de usuario archivo listado y directorio carpeta que pertenece a walter ahora que
perteneza a wortiz
ls -l
ls -l
mkdir carpeta1
ls -l > listado1
ls -l
ls -l
Ahora si queremos hacer que todos los archivos y directorios de la ruta actual pertenezcan al
grupo profesores
Pero si queremos cambiar solo de dueño (kalva) a todos los archivos y directorios de la ruta
actual
Si queremos cambiar de dueño (wlescano) y grupo (alumnos) en un único paso a todos los
archivos y directorios de la ruta actual.
NOTA
Al crear un archivo, por defecto será del dueño que lo crea o sea si estoy como root el dueño
es root, si estoy como walter el dueño será walter. Solo el dueño del archivo podrá cambiar
sus propiedades e incluso de dueño.
Cuando se crea un usuario no solo se crea la cuenta sino también su directorio de trabajo.
Un caso en el que esto puede serte de utilidad es si has creado un usuario nuevo y trabajas en
una distribución, como Ubuntu, en el que el usuario root está deshabilitado. En este caso, si
quieres que el nuevo usuario pueda hacer uso “sudo”, necesitarás añadirlo al grupo:
sudo adduser usuario sudo
sudo adduser wortiz sudo
(1)
(2)
·52 Crear el enlace directo indicando la ruta donde queremos colocarlo en nuestro caso en el
escritorio.
Se nos levanta una ventana llamado "Crear lanzador" y escribimos lo siguiente "Nombre:
Firefox" "Comando: /usr/bin/firefox" y damos al boton "Aceptrar y listo ya tenemos el enlace
directo en el escritorio llamado "FireFox"
Si sale problemas como enlace no es de confianza al hacer click con el mouse en el escritorio
es por la razón que quien lo hace es walter y como el archivo fue creado por root ya que al
hacer uso de "sudo" es root quien crea el enlace directo. Entonces se soluciona cambiando de
dueño y grupo al enlace directo y pase a walter con este comando:
En este caso no pasa nada porque no es una aplicación grafica de ventanas es de consola
entonces no se muestra nada.
Dentro hay un achivo llamado "netbeans" que es sobre el que tenemos que crear el acceso
directo esto serí así:
/usr/local/netbeans-8.2/bin/netbeans
Cambiar esto:
env_reset
Ir al simbolo del candado y hay esta el nombre del usuario actual logueado y en la fecha
derecha que esta la parte derecha del nombre sale una flecha con la opción "Cerrar la sesión"
Otra forma es "Ctrl+Alt+F1" y nos levanta una shell a toda pantalla para loguearnos con el
usuario que queramos y con exit salir y loguearnos con otro usuario o sino abrir otro shell a
pantalla completa con "Ctrl+Alt+F2" hasta el F6 existe. Para volver al entorno grafico
"Ctrl+Alt+F7"
En el entorno grafico en un terminal escribir "su wortiz" y si queremos salir y volver al usuario
walter por defecto se escribo "exit".
En el escritorio yo puedo hacer doble click con el mouse y se abre graficamente la carpeta
"miprograma"
(1)
(2)
cat textolistado
MANEJO DE PROCESOS
Esto significa que es capaz de ejecutar varios procesos(tareas) simultaneamente, sin que haya
problemas entre ellos.
QUE ES UN PROCESO
Un programa no es más que una serie de procesos que se están ejecutando. Los procesos se
pueden ejecutar en primer plano(foreground) o en segundo plano(background).
Un proceso también tiene un estado puesto que no sólo puede estar ejecutandose sino
tambien suspendido.
Cuando uno abre un programa lanza procesos lo mismo el sistema operativo lanza muchos
procesos que estan ejecutandose consumiendo recursos de ram y tiempo de procesador.
COMANDOS
EJEMPLOS
·59 Lanzar un proceso en segundo plano para poder seguir usando la terminal shell.
sudo gedit archivo &
·61 Ver el máximo de PID. Esto determina la cantidad máxima de procesos que se van
ejecutar.
cat /proc/sys/kernel/pid_max
ps
Listar todos los procesos incluido la de otros usuarios con información adicional de los usuarios
y procesos.
ps a
Listar los procesos actuales indicando los recursos que consume, la memoria libre, la hora y
otros datos de interés.
top
Ctrl+z
Listar los procesos de segundo plano para saber el PID correspondiente de dichos procesos.
jobs
Devolver un proceso de segundo plano al primer plano. Donde el PID se obtiene con el
comando “jobs”
fg PID
fg 2
Enviar una señal(SIGNAL) para matar un proceso donde 2847 es el PID del proceso
kill -9 2847
kill -1 2847
pstree
Activar el proceso de la calculadora en el primer plano. Para terminar el proceso escribir quit o
exit
bc
bc &
killall sleep
EJEMPLO
bc &
EJEMPLO
EJEMPLO
sleep 10m
En otra terminal(1) mostrar los procesos iniciados por el usuario actual en el sistema para
obtener PID del proceso sleep que es 3115 y que esta en el terminal(0).
ps -a | grep sleep
Desde la terminal(1) ejecutar el comando para matar el proceso sleep que esta en el
terminal(0)
https://blog.desdelinux.net/gnu-linux-distro-desarrollo-sftware/
REDES Y SERVIDORES
https://blog.desdelinux.net/redes-servidores/?utm_source=secciones
PREGUNTAS
Permiten al usuario usar el sistema casi sin saber nada sobre él y eso esta bién. Se parte de la
premisa de que el usuario no tiene por qué tener conocimientos avanzados.
QUE ES UN PROCESO
Todos los programas que lancemos, las consolas, los demonios, etc
Es el número con que el sistema identifica un proceso. Y se utiliza para referencia un proceso
en algún comando.
https://desarrolloweb.com/articulos/mysql-terminal-linux.html
https://platzi.com/tutoriales/1004-java-basico-2015/226-instalar-mysql-y-workbench-en-
linux-ubuntu-1404/
https://ubunlog.com/mysql-workbench-bases-datos/
https://blog.pandorafms.org/es/workbench-mysql/
https://blog.pandorafms.org/es/workbench-mysql/