Practica GNU Basico
description
Transcript of Practica GNU Basico
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
PRACTICA GNU/BASICO COMPLETO
Objetivos:Nuestro objetivo con esta práctica es que usted en un corto tiempo tenga la habilidad de manejar y comprender un Sistema GNU/Linux, estos ejercicios fueron tomados del libro GNU/Básico de Antonio Perpiñan.
Tiene que realizar cada ejercicio mencionado aquí y marcar los que no comprenda, luego preguntara estos ejercicios al GNU/Instructor.
1) UNIX
Es un sistema operativo multitarea, multiusuario, creado en 1969 por Thompson y Ritchier de los laboratorios Bell.
2) 5 variedades de UNIX
Solaris, AIX, HPUX, SCO, BSD las normas POSIX, son las normas con la que debe cumplir una distribución de UNIX para que pueda ser reconocido como el mismo.
3) GNU
Sus siglas significan GNU Is Not Unix. Es un proyecto creado en 1984 por Richard Stallman con el objetivo de conseguir un sistema operativo libre.
4) LINUX
Es la denominación de un sistema operativo tipoUnix y el nombre de un núcleo. Es uno de los paradigmas más prominentes del software libre y del desarrollo del código abierto, cuyo código fuente está disponible públicamente, para que cualquier persona pueda libremente usarlo, estudiarlo, redistribuirlo y, con los conocimientos informáticos adecuados, modificarlo. Creado en 1991 por Linus Torvalds.
5) Las 4 libertades de la licencia GPL que caracteriza al sistema operativo libre
Libertad 0: El software se puede usar. Libertad 1: El software se puede modificar. Libertad 2: El software se puede distribuir. Libertad 3: El software se puede distribuir ya modificado.
6) Interactuemos con el sistema operativo GNU/LINUX
Mediante el GUI y el CLI que son el modo grafico y la línea de comandos o modo consola respectivamente.
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
7) Entremos a una sección del modo consola
Utilizando la combinación de las teclas CTRL + ATL + F1.CTRL + ATL + F2CTRL + ATL + F3CTRL + ATL + F4
8) 3 formas terminamos una sección en la consola
Con CTRL+D, exit, logout
9) Crear un archivo con el comando cat
[email protected]>~:$ cat > frutas peras, manzanas, piña
10) Despleguemos el contenido del archivo frutas
[email protected]>~:$ cat frutas
11) Borremos el archivo frutas
[email protected]>~:$ rm frutas
12) Hagamos una copia de un archivo
[email protected]>~:$ cp /etc/passwd archivocopia.txt .
13) Renombremos un archivo
[email protected]>~:$ mv archivocopia.txt nuemovido.pdf
14) Movamos un archivo a un directorio
[email protected]>~:$ mv nuemovido.pdf directorio
15) Completemos un nombre de un comando o un archivo
Poniendo parte del nombre y presionando la tecla Tab.
16) Veamos un listado de los comandos que hemos escrito
[email protected]>~:$ history
17) Ejecutemos el último comando
[email protected]>~:$ !!
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
18) Ejecutemos el comando numerado en el history como el 503
[email protected]>~:$ !503
19) Listemos el contenido de un directorio
[email protected]>~:$ ls directorio
20) Una ruta relativa
[email protected]>~:$ cd Desktop/
La que parte de donde estamos
21) Una ruta absoluta
La que parte desde el directorio raíz, es decir, la /[email protected]>~:$ cd /var/log/
22) Veamos en que ruta estamos:
[email protected]>~:$ pwd
23) Crearemos un directorio en su nombre:
[email protected]>~:$ mkdir directorio
24) Borremos un directorio vació
[email protected]>~:$ rmdir directorio
25) Cambiémonos a otro directorio
[email protected]>~:$ cd /usr/loca/
26) Volvamos al directorio padre del directorio en el cual nos encontramos actualmente
[email protected]>~:$ cd ..
27) Los archivos o directorios ocultos se crean con un punto delante:
[email protected]>~:$ mkdir .Doris [email protected]>~:$ touch .moldan
Nota: Son archivos o directorios especiales y se identifican porque tienen un “.” delante.
28) Veamos los archivos ocultos
[email protected]>~:$ ls a
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
29) Tres formas de cambiarnos a nuestro directorio home
[email protected]>~:$ cd [email protected]>~:$ cd ~ [email protected]>~:$ cd /home/usuario
30) Encontremos archivos sin saber en que directorio se encuentran
[email protected]>~:$ locate archivo Nota: Para utilizar este comando hay que actualizar la base datos updatedb, ya que si creamos un archivo ahora mismo no lo encontraremos.
31) Veamos la información completa sobre archivos y directorios.
[email protected]>~:$ ls l
32) Obtengamos información y un gran desglose sobre un comando
[email protected]>~:$ man rm
33) Salgamos del manual de comandos
q
34) Obtengamos una informacion mas detallada sobre un comando
[email protected]>~:$ info comando
35) Obtengamos solo las opciones de un comando con –help.
[email protected]>~:$ uname help
36) Despleguemos donde están las documentación del sistema?
[email protected]>~:$ ls /usr/share/doc/
37) Los meta caracteres
Son ciertos caracteres que especiales que el shell interpreta:* ? [ ] [!] |> 2> >> 2>> >&< <<() & $ && ||
38) El meta carácter *
Significa todo. Ejemplo: [email protected]>~:$ echo /usr/local/*
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
39) El metacarácter “? “
Es reemplazado por cualquier otro carácter que desconocemos. Ejemplo: [email protected]>~:$ echo ?ola Nota: Tiene que tener creado un archivo que empiece con cualquier letra seguido de ola.
40) Los corchetes [ ]
Podemos escribir un rango de caracteres con los cuales queremos que el shell concuerde. Ejemplo [email protected]>~:$ ls [af]*
41) [^ ]
Estamos indicando que debe concordar los caracteres que no se encuentran en el rango dado. Ejemplo: [email protected]>~:$ ls [^09]*
42) Los metacarácter relacionados con comandos, si los anteriores eran relacionados con archivos, son
“;” “&” “()”
43) El “;”
Para separar comandos en una linea del shell. Ejemplo: [email protected]>~:$ ls; echo Hola
44) El “()”
Para encerrar grupos de comandos, y tratarlos como si fueran uno solo. Ejemplo: [email protected]>~:$ (sleep 20; echo Hola)
45) Hagamos que en el ejemplo anterior no tengamos que esperar a que termine el proceso para entonces seguir escribiendo en el PROMP
[email protected]>~:$ (sleep 20; echo Hola) &
46) Las comillas simples ' '
El shell no interpretaría las metacaracteres contenidos entre ellas. Ejemplo [email protected]>~:$ echo '*?* [az]*'
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
47) “\”
Para que el shell no interprete el siguiente carácter o escapar espacio en un nombre de un archivo o directorio. Ejemplo [email protected]>~:$ echo \*
48) Usemos “#”
Para señalar comentarios. Ejemplo: [email protected]>~:$ ls #es un comentario de contenidos de un directorio
49) Mandemos la salida de un comando a un archivo llamado mujer.txt
[email protected]>~:$ ls > mujer.txt
50) Hagamos que la salida de un archivo sea la entrada de un comando
[email protected]>~:$ wc < mujer.txt
51) Añadamos el contenido de un archivo a otro sin sobrescribirlo
[email protected]>~:$ cat /etc/passwd >> mujer.txt
52) Mandemos la salida de error de un comando a un archivo
[email protected]>~:$ ls /mujer.txt 2> errores.txt Nota: Con esta opción no enviara la salida de error a pantalla sino aun archivo.
53) Mezclemos la salida estándar de un comando con la entrada estándar de otro
[email protected]>~:$ cat /etc/X11/xorg.conf | wc
54) Una variable
Es una palabra con un valor interpretado por el shell
55) Declaramos una variable llamada ABIERTOS cuyo valor sea “solucion”
[email protected]>~:$ ABIERTOS=”solucion”
56) Mira el valor de esa variable
[email protected]>~:$ echo $ABIERTOS
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
57) Mira todas las variables del shell
[email protected]>~:$ set
58) Mira todas las variables que personifican tu ambiente
[email protected]>~:$ env
59) Expande a tu ambiente la variable que creaste
[email protected]>~:$ export ABIERTOS=’Mi Nombre es Jose’
60) La variable que contiene como valor las rutas para el shell buscar los ejecutables o comandos
[email protected]>~:$ echo $PATH [email protected]>~:$ echo $ABIERTOS
61) Encuentra archivos en el directorio actual de 10 Mebyte
[email protected]>~:$ find /proc/ type f size +2000k name "*"
62) Encuentra archivos en su home cuyo permisos sean 777
[email protected]>~:$ find ~ perm 777
63) Encuentra un archivo de nombre carta en tu home y bórralo con la opción exec
[email protected]>~:$ find ~ name carta exec rm \{\} \;
Nota: Asegúrese que este creado. Hay un espacio entre la llave final y la barra invertida
64) Encuentra archivos que no han sido acezados en los últimos 30 días
[email protected]>~:$ find ~ atime +30
65) Encuentra archivos que hayan sido modificados hace 5 días.
[email protected]>~:$ find ~ mtime 5
66) Encuentre archivos creados en los últimos 5 días
[email protected]>~:$ find ~ ctime 5
67) Vea el record de quienes han ingresado al sistema
[email protected]>~:$ last
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
68) Vea el contenido de un archivo con sus líneas enumeradas
[email protected]>~:$ cat /etc/passwd |nl
69) Cuente por palabra, caracteres y líneas la salida del archivo fstab
[email protected]>~:$ wc clw /etc/fstab
70) Para ver el texto compaginado de un archivo que exceda la pantalla:
[email protected]>~:$ cat /etc/X11/xorg.conf | less [email protected]>~:$ less /etc/X11/xorg.conf
71) Haga lo anterior pero visualícelo por pantalla
[email protected]>~:$ more /etc/group [email protected]>~:$ cat /etc/group | more
72) Sortear el archivo carlos.txt de forma alfabética
[email protected]>~:$ cat > carlos.txtabefz [email protected]>~:$ sort d carlos.txt
73) Sortee el archivo numeros.txt en orden numérica
[email protected]>~:$ sort n numeros.txt
Nota: Tiene que crear el archivo numero que contenga 1 2 4 5 6 2 3 8.
74) Ordene el archivo meses.txt en orden cronológica y escriba la salida al archivo Mesesordenado.txt
[email protected]>~:$ sort meses.txt o mesesordenado.txt
Nota: Tiene que crear el archivo meses.
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
75) Ordena el archivo anterior pero en forma reversa e ignorando mayúscula o minúscula
[email protected]>~:$ sort rf meses.txt
76) Revisa si el archivo carlos.txt esta ordenado si no ordénalo por la columna numero 2
[email protected]>~:$ sort c k 2 carlos.txt
Nota: Antes creamos el archivo carlos.txt con tres columna separadas por tab.
77) Sortear u ordenar el archivo numeros.txt, que tiene “:” entre dos cantidades, por la columna 2
[email protected]>~:$ sort n t”:” k2,2 numeros.txt
78) Ordene el archivo papi.txt en forma de diccionario ignorando los espacios en blancos delanteros
[email protected]>~:$ sort d b papi.txt
Nota: Tiene que crear el archivo papi.txt
79) Tome las 2 últimas líneas del messages
[email protected]>~:$ tail 2 /var/log/messages
80) Tome las 3 primeras líneas del archivo anterior
[email protected]>~:$ head 3 /var/log/messages
81) Imprima líneas únicas de un archivo que contiene varias líneas iguales y que esta previamente ordenado de modo que se imprima una sola de varias líneas iguales a parte de su otro contenido que no se repite.
[email protected]>~:$ uniq frutas.txt
Nota: Tiene que crear el archivo frutas.txt con líneas duplicadas. Use el comando cat para crear el archivo.
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
82) Despliegue las líneas de un archivo enumeradas por las veces que las mismas se repiten
[email protected]>~:$ uniq c frutas.txt
83) Muéstrame una sola vez solo las líneas duplicadas del archivo anterior
[email protected]>~:$ uniq d frutas.txt
84) Muéstrame solo las líneas únicas sin las duplicadas
[email protected]>~:$ uniq u frutas.txt
85) Corte los primeros 3 caracteres del archivo anterior
[email protected]>~:$ cut c 1 3 frutas.txt
86) Corte la columna 2 de passwd tomando como separador de columnas los dos puntos
[email protected]>~:$ cut d":" f2 /etc/passwd
87) Seleccione los nombres de los usuarios ingresados en el sistema
[email protected]>~:$ who | cut d” “ f1 | sort u
88) Despliegue las columnas una y cinco del archivo /etc/passwd
[email protected]>~:$ cut d”:” f1,5 /etc/passwd
89) Cambie todos los tabs en archivo.txt a tres espacios y muéstralo en pantalla
[email protected]>~:$ expand t 3 archivo.txt
Nota: Tiene que crear el archivo con varias columnas separadas con la tecla del tabulador.
90) Muestre el contenido enumerado de group incluyendo aquellas enumeradas
[email protected]>~:$ nl /etc/group
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
91) Mostrar el valor numérico de los bytes y su equivalente en ASCII del archivo /etc/X11/xorg.conf , enumera las líneas y muéstrame solo las primeras 17 líneas.
[email protected]>~:$ od c /etc/X11/xorg.conf | nl | head 17 | less
92) Modifícame para impresión el archivo texis.txt poniendo espacio doble entre las líneas y poniéndole como cabezal "MY TEXIS".
[email protected]>~:$ pr d h "MY TEXIS" texis.txt |less
Nota: Tiene que crear el archivo texis.txt con algún mensaje dentro.
93) Divide el archivo seis.txt que tiene 6 líneas, en archivo de 2 líneas cada uno y que sus nombres comiencen con dividido.
[email protected]>~:$ split l 2 seis.txt dividido
Nota: Antes cree el archivo ls l > seis.txt. Luego ls para ver los que ha creado.
94) Observa el resultado de lo anterior
[email protected]>~:$ wc l dividido??
95) Podemos dividir archivos en el número de Megabyte o Kilobyte que le indiquemos. En este caso en archivos de 5 megabyte tomando en cuenta que el original tiene 10.
Elegir uno de los archivos del resultado del ejercicio 61 y cópielo en el directorio actual.
[email protected]>~:$ split b # m archivo_a_dividir archivo_dividido Encontremos el resultado y comprobemos que cada uno tiene 5 megabyte
[email protected]>~:$ls archivo_dividido?? | xargs du sch
Nota: el xargs pasara como argumento al du el resultado de ls
96) Reporte las diferencias de dos archivos ignorando mayúscula o minúscula
[email protected]>~:$ diff i frutas.txt carlos.txt
97) Lístame el contenido de frutas en reverso
[email protected]>~:$ tac frutas.txt
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
98) Muéstrame una lista de los logins y logouts, con los más recientes de último
[email protected]>~:$ last | tac
99) Cree un archivo con varias líneas de contenido
[email protected]>~:$ cat > sopa perro Gato perra Aniy rrosa Camaron
100)Cambie todas las letras minúsculas a mayúsculas
[email protected]>~:$ tr [az] [AZ] < sopa
101)Cambie todas las ocurrencias de “rr” por “r”
[email protected]>~:$ tr [p] [r] < sopa
102) Elimine en el archivo anterior todas las ocurrencias de “p”
[email protected]>~:$ tr d "p" < sopa
103) Reemplaza todas las ocurrencias de “p” con” l”
[email protected]>~:$ tr “p” “l” < sopa
104) Imprime la variable PATH en una sola línea
[email protected]>~:$ echo $PATH |tr ":" "\n" [email protected]>~:$ echo $PATH
105) Reemplace”perro” por “pelo” en el archivo sopa y guarde los cambios en otro archivo
[email protected]>~:$ sed e 's/perro/pelo/g' sopa > sopamodificado
Nota: Tiene que crear un archivo que contenga la palabra perro.
106) Cree un archivo con este contenido
[email protected]>~:$ cat > studiantes.txt Rosa Milly Patria
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
107) Cree otro archivo con este contenido
[email protected]>~:$ cat > notas.txt 99 88 77
108) Fusione las líneas de estos dos archivos una al lado de la otra, sepárela con “:” y guárdela salida a otro archivo
[email protected]>~:$ paste d “:” studiantes.txt notas.txt > notasestudiantes
109) Fusione todas las líneas del archivo notas en una sola línea usando como separador “:”
[email protected]>~:$ paste d “:” s notas.txt
110) Cámbiate al directorio /etc con pushd y de ese modo que se guarde en ese comando la ruta de la que se cambio
[email protected]>~:$ pushd /etc
111) Retorne al directorio desde donde hizo su último pushd o cambio
[email protected]>~:$ popd
112) Muestre una lista de todos los directorios que ha almacenado pushd.
[email protected]>~:$ dirs
113) Copie los archivos studiantes.txt y notas.txt al directorio Desktop y si en el directorio hay otro archivo con el mismo nombre que pregunte si quiero sobrescribirlo
[email protected]>~:$ cp i studiantes.txt notas.txt Desktop/
114) Haga un backup del directorio que esta trabajando
[email protected]>~:$ cp a directoriotrabajo etcbackup
115) Borra el backup forzadamente que hiciste
[email protected]>~:$ rm r etcbackup
116) Crea un directorio con los permisos de 755
[email protected]>~:$ mkdir m 755 directorio
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
117) Diga que tipo de archivo es el /etc/passwd
[email protected]>~:$ file /etc/passwd
118) Mire la fecha en que se creo el archivo notas.txt
[email protected]>~:$ ls l notas.txt
119) Cámbiele los atributos de la fecha al archivo anterior a agosto 19 2003, 5:59pm.
[email protected]>~:$ touch t 20030819559 notas.txt
120) Cambie la fecha de modificación del archivo anterior
[email protected]>~:$ touch m notas.txt
121) Cambie la fecha de acceso del archivo anterior
[email protected]>~:$ touch a notas.txt
122) Cambie la fecha actual por 04082006
root@root># date s 20060804
123) Diga la fecha en forma entendible con nombre de día y mes
[email protected]>~:$ date +”Hoy es %A el %d de %h %Y”
124) Imprima la fecha en formato de m/d/a
[email protected]>~:$ date +”%D”
125) Muestre la hora actual usando el reloj de 12hora seguido por dos puntos entonces los minutos actuales seguido por AM o PM.
[email protected]>~:$ date +”%l:%M %p”
126) Redireccione el error estándar a un archivo
[email protected]>~:$ programa 2> archvio.txt
127) Imprime el contenido de cada archivo del directorio actual a pantalla con xargs
[email protected]>~:$ ls a* | xargs cat nota: Xargs tomo como argumento la salida del ls y se la paso como argumento al comando cat. Como es probable que el pront se da;e escriba luego de pararlo reset, para
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
arreglar el pront.
128) Muestre todos los usuarios del sistema y también guárdelo en un archivo.
[email protected]>~:$ last | tee listado aliado2
Nota: El tee es como combinar > y |
129) Encuentra la palabra “Rosa” en el archivo studiantes.txt
[email protected]>~:$ grep “Rosa” studiantes.txt
130) Encuentra el archivo que contiene la palabra “perro”
[email protected]>~:$ grep l “perro” *
Nota: Tiene la palabra tiene que existir en algún archivo.
131) Liste las líneas que no concuerdan con el patrón dado
[email protected]>~:$ grep v “Patria” studiantes.txt
Nota: La palabra tiene que existir en el archivo.
132) Imprima las líneas que igualan el patrón dado y sus números de líneas en pantalla
[email protected]>~:$ grep n “Patria” studiantes.txt
133) Cuenta todas las líneas en el archivo anterior que concuerdan con el patrón de búsqueda
[email protected]>~:$ grep c “Patria” studiantes.txt
134) Inicie el proceso man find y envíelo background con ctrl + z
[email protected]>~:$ man find
135) Ejecute en background updatedb
[email protected]>~:$ updatedb &
136) Mire los procesos suspendidos y los que están corriendo en el background
[email protected]>~:$ jobs
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
137) Active el comando man find el cual detuvo y salga de el con “q”.
1ro : bg (actuara sobre el proceso único detenido y lo mandara al background) 2do : fg %# ( # indica el numero del proceso que queremos traer al primer plano y que hemos visto con jobs)
138) Traiga el comando updatedb al primer plano
fg %# ( # indica el numero del proceso que queremos traer al primer plano y que hemos visto con jobs)
139) Cuando en el segundo plano se están ejecutando varios procesos y los vemos con jobs aparecerán algunos con signos de + y – uno indica el trabajo activo mas reciente y el otro el trabajo previo al trabajo actual.
140) Monitorea los procesos de tu terminal
[email protected]>~:$ ps
141) Monitorea los procesos de otra Terminal
[email protected]>~:$ ps t tty# (# el numero de la otra consola)
142) Muéstrame los procesos con sus procesos hijos o dependientes de ellos
[email protected]>~:$ pstree
143) Muéstrame los procesos activos dinámicamente:
[email protected]>~:$ top
144) El proceso padre de todos los procesos es:
El proceso INIT
145) En la tty2 ejecuta el comando top y luego cámbiate a la tty3
[email protected]>~:$ top
146) Mira los procesos de la tty2 con sus PID o números con los que son reconocidos por el shell
[email protected]>~:$ ps t tty2
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
147) Encuentre el pid del proceso “top” y mándele una señal de muerte con kill:
[email protected]>~:$ kill 9 #pid > tty2
148) Ahora corre de nuevo el proceso y mándamele una señal para que se interrumpa
[email protected]>~:$ kill 2 #pid > tty2 o El proceso corriendo presionar CTRL. + C
149) Pedimos a un proceso que este corriendo que se cierre correctamente
[email protected]>~:$ kill 15 #pid
150) Genera el mismo proceso de nuevo y esta vez mandamos una señal para que se detenga temporalmente
[email protected]>~:$ kill 18 #pid > tty2 o Sobre el proceso corriendo presionar CTRL + Z
151) Programamos una tarea para que se realice en un minuto
[email protected]>~:$ at now +1 minutesat> echo “mi nombre o username es:”at> whoamiat> echo “mi directorio actual es:”at> pwdat> ctrl + d
152) Cree un link o enlace simbólico a un archivo y lo observamos con ls:
[email protected]>~:$ ln s archivoreal archivosimbólico [email protected]>~:$ ls l archivosimbólico
153) Borramos el archivo real y observamos que paso con el enlace simbólico:
[email protected]>~:$ rm archivoreal [email protected]>~:$ cat archivosimbólico Error el archivo del que dependía su contenido fue borrado
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
154) Cree un link duro a un archivo
[email protected]>~:$ ln archivo2 archivoduro
Nota: copie el archivo /etc/passwd a su directorio y con ese prepare el enlace.
155) Borramos el archivo original y vea el contenido del enlace duro y diga lo que observa
[email protected]>~:$ rm archivo2 [email protected]>~:$ cat archivoduro
Nota: No se borro el contenido porque a diferencia del enlace simbólico el enlace duro apunta al inode o numero que representa el archivo de modo que habrán dos archivos con el mismo numero de identificación y si uno de ellos se borra como es el caso el otro no es afectado.
156) Cree un directorio y copie todos los link o enlace que creamos al directorio nuevo
[email protected]>~:$ mkdir directorionuevo [email protected]>~:$ cp a directorioactual directorionuevo
157) Observe el número de inode de un archivo
[email protected]>~:$ ls i archivo
158) Vemos cual es el dueño y el grupo al cual pertenece el archivo anterior
[email protected]>~:$ ls l /etc/passwd
159) Cambiarle el dueño a root
[email protected]>~:$ chown root frutas.txt
160) Cambiarle el grupo a estudiantes
[email protected]>~:$ chgrp estudiantes carlos.txt
161) A un archivo que tenga creado le cambiamos de dueño a root y el grupo a estudiantes al mismo tiempo:
[email protected]>~:$ chown R root.estudiantes frutas.txt
162) Veamos los permisos que tiene con:
[email protected]>~:$ ls l directorio
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
[email protected]>~:$ stat directorio
163) Cambiamos los permisos de lectura, escritura y ejecución para el grupo para los otros de solo lectura y ejecución
[email protected]>~:$ chmod R g+rwx,o=rx canastas
Nota: Crear el directorio o tomas uno que este creado.
164) Vemos los cambios realizados con
[email protected]>~:$ stat archivo o directorio
165) Para cambiar los permisos a un archivo que sea de solo lectura y escritura para el dueño y el grupo y de solo lectura para los otros
[email protected]>~:$ chmod 664 archivo o
[email protected]>~:$ chmod ug=rw,o=r archivo
166) Para hacer que los permisos por defecto para todo lo que vaya a crear en su directorio sean de lectura, escritura y ejecución para el dueño y el grupo y para los otros que sea solo de lectura y ejecución
[email protected]>~:$ umask 002 022 evitar que los otros y el grupo escriban pero todos los permisos para el dueño
027 evitar grupo escriba y ningún permiso para otros. Lo conseguimos restandole 777(suma de todos los permisos) a lo equivalente a los permisos que queremos que tenga
167) El comando básico para crear, borrar o cambiar particiones en un disco es:
root@root># fdisk
168) Programa basado en curses para particionar discos duros:
root@root># cfdisk
169) Crea un sistema de archivo ext2 en la partición /dev/hda2 teniendo en cuenta que se borrara todo el contenido de la partición:
root@root># mkfs t ext2 c /dev/hda2
Nota: Cuidado al ejecutar este ejercicio, puede dañar el sistema operativo.
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
170) Montamos una memoria USB con:
root@root># mount /dev/sda1 /media/nombrememoria
Nota: El dispositivo depende de como este llamado en /dev/sda?
171) Desmontémosla:
root@root># umount /media/nombrememoria
172) Observe los sistemas de archivo montados y sus puntos de montaje
[email protected]>~:$ cat /etc/fstab
173) Mostramos un resumen del espacio libre en una partición de manera legible:
[email protected]>~:$ df h
174) Muestre información sobre el uso de los inodes en los sistemas de archivos montados:
[email protected]>~:$ df i
175) Muestre la información del espacio en disco utilizado en un árbol de directorio:
[email protected]>~:$ du –h /proc/kcore
176) Revisamos manualmente si hay problemas en el sistema de archivos y que se reparen:
root@root># fsck /dev/nombre_dispositivo
177) Muestre el nombre del sistema (solo el nombre del kernel):
[email protected]>~:$ uname
178) Muestre la versión del sistema:
[email protected]>~:$ uname v
179) Muestre toda la información del sistema:
[email protected]>~:$ uname a
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
180) Para mostrar el nombre del hardware:
[email protected]>~:$ uname m
181) Actualizamos la base de datos utilizada por el comando locate de la siguiente manera:
[email protected]>~:$ updatedb
182) Encuentre páginas man acerca de bash:
[email protected]>~:$ whatis bash
183) Los comandos relacionados con los directorios
[email protected]>~:$ apropos directorios o
[email protected]>~:$ man k directorios
184) Los vínculos leídos por el sistema al arranque de este para saber cual servicio va a iniciar o a detener se encuentran en:
[email protected]>~:$ ls /etc/rc.d/rc [email protected]>~:$ ls /etc/init.d/rc
185) Podemos iniciar el servicio de red de la siguiente manera:
root@root># /etc/init.d/networking [email protected]>~:$ service network restart
186) Reinicie la maquina en 30 minutos cosa que le de tiempo a los usuarios tiempo para salvar sus trabajos
[email protected]>~:$ shutdown r +30
187) Apague la maquina correctamente
[email protected]>~:$ init 0 o
[email protected]>~:$ halt
188)Busque las líneas que empiezan con root en /etc/passwd.
deivy@elvlap:~$ grep “^root” /etc/passwd
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
189)Busca líneas que igualan por lo menos una de esta tres palabras root,sys y admin en /etc/passwd
deivy@elvlap:~$ grep i '\(root\|sys\|admin\)' /etc/passwd
190)Busque cadena sys en passwd e imprima la líneas y su número.
deivy@elvlap:~$ grep n estudiantes /etc/passwd
191)Imprima el número de líneas que contienen la cadena estudiantes en el directorio /home/.
deivy@elvlap:~$ grep c deivy /home/estudiantes
192)Liste líneas que empiezan con números en grep /home/deivy/junior.
deivy@elvlap:~$ grep '[09]' /home/deivy/junior
193)Ejecute un ls l dentro del directorio Trabajo y imprime la primera y la tercera columna.
deivy@elvlap:~$ ls l |awk '{print $1 $3}'
194)Búscame en /etc/passwd dividido por dos puntos (:) la columna 1 y 4.
deivy@elvlap:~$ cat /etc/passwd |awk F":" '{print $1,$4}'
195)Mostremos la hora y fecha de nuestro sistema en un formato largo con el comando awk.
deivy@elvlap:~$ date | awk '{print $1; print $2; print $3; print $6; }'
196)Busquemos la raíz cuadrada de un numero con el comando awk.
deivy@elvlap:~$ awk '{ printf ("%5.7f\n ", sqrt($1)) }' Nota: la opcion (sqrt) en awk sirve para sacar el valor de la raiz cuadrada de un determinado numero.
197)Suma las variables del archivo.txt
deivy@elvlap:~$ awk '{ $1 = $2 + $3; print $0 }' archivo.txt
Nota: El archivo tiene que estar con tres columnas numéricas.
198)Reemplace root con Administrador en /etc/passwd y guarden en user.txt.
deivy@elvlap:~$ sed e ‘s/root/Administrador/g’ /etc/passwd > user.txt
199)Queremos eliminar las líneas vacías de un fichero podemos usar algo como.
deivy@elvlap:~$ cat fichero | sed '/^[ ]*$/d' > fichero.reemplazado
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
200)Para añadir un texto al comienzo de todas las líneas podemos hacer.
deivy@elvlap:~$ cat Junior| sed 's/^/Texto al comienzo:/g' > Junior.nuevo
Nota: El archivo Junior tiene que estar creado con varias líneas.
201)Queremos añadir texto al final de todas las líneas de un flujo de datos; lo haremos con las siguientes expresiones de sed.
deivy@elvlap:~$ cat Junior | sed 's/$/Esto se añir al final/g' > Junior.nuevo
202)Cambia todas las minusculas a mayusculas de /home/deivy/Junior.
deivy@elvlap:~$ sed '1,$ s/[az]/[AZ]/g' /home/deivy/Junior
203)Muestra el directorio de trabajo actual
[k1k1@GNU][~]$__________________
204)Crea un directorio
[k1k1@GNU][~]$__________________
205)Elimina el directorio especificado (debe estar vacío)
[k1k1@GNU][~]$__________________
206)Muestra el tipo de archivo o directorio.
[k1k1@GNU][~]$__________________
207)Busca ficheros coincidentes con la expresión de búsqueda
[k1k1@GNU][~]$__________________
208)Cambia la hora del sistema a las 15:30
[k1k1@GNU][~]$__________________
209)Muestra el valor de la variable de entorno especificada (nombrevariable)
[k1k1@GNU][~]$__________________
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
210)Muestra las variables de entorno definidas para el usuario actual
[k1k1@GNU][~]$__________________
211)Muestra información sobre la memoria RAM y Swap (total, libre y ocupada)
[k1k1@GNU][~]$__________________
212)Muestra las 10 primeras líneas del fichero nombrefichero
[k1k1@GNU][~]$__________________
213)Listado de los comandos utilizados por el usuario
[k1k1@GNU][~]$__________________
214)Convierte a minúsculas todos los caracteres del archivo 'fichero.txt'
[k1k1@GNU][~]$__________________
215)Muestra las últimas diez líneas del fichero nombrefichero
[k1k1@GNU][~]$__________________
216)Apaga el sistema instantáneamente
[k1k1@GNU][~]$__________________
217)Reiniciar el sistema instantáneamente
[k1k1@GNU][~]$__________________
218)Lista los ficheros y directorios de la ubicación actual
[k1k1@GNU][~]$__________________
219)Crea enlaces duros y simbólicos
[k1k1@GNU][~]$__________________
220)Muestra información interesante sobre el sistema
[k1k1@GNU][~]$__________________
221)Utilizar la función de autocompletar
[k1k1@GNU][~]$__________________
Fundación Código Libre Dominicano www.codigolibre.org Dorys Moldan
222)Para Mostrar el valor anteponer de las siguientes variables
[k1k1@GNU][~]$__________________