User Tools

Site Tools


Writing /var/lib/dokuwiki/data/meta/teaching/ie0117/2013-i/actividad_2.meta failed
Unable to save metadata file. Hint: disk full; file permissions; safe_mode setting.
teaching:ie0117:2013-i:actividad_2

Actividad 2

Preguntas de la actividad

  • Cómo uso algún comando o programa? Como accedo a la ayuda?
  • Qué es un sistema de archivos?
  • Cómo crear, borrar, mover, archivos y directorios?
  • Qué es una red de computadoras? Internet?
  • Bueno, cómo es que se configura la red? Qué es una red de computadoras?
  • Quiero tener mi propia página web! Cómo? Y si lo quiero en mi casa y quiero que sea accesible al público?
  • Y si mi hermano quiere usar mi compu, le doy mi clave de usuario o puedo hacer algo más? Y que tal si queremos compartir algunos archivos (suid)?

Temas tentativos a cubrir

  • Man
  • Apache
  • Simple network administration (/etc/network/interfaces)
  • Working with the terminal (filesystem cmds)
  • Simple system administration (adduser, addgroup)
  • Environment (PATH)
  • File Systems

Explicaciones

  • Para que sirven los archivos .xsession .bashrc .bash_history ?
  • Por que algunas archivos tienen un . al inicio?
  • Archivos de configuración locales (puntos) y globales (etc)
  • No deje pasar los errores!! En linux típicamente si el comando no devuelve nada a la consola significa que todo estuvo bien, pero si hubo algún mensaje, siempre hay que revisarlo detenidamente para estar seguro que no es un error o para entender el error y corregir el problema inmediantemente. Un ERROR ignorado solo se ACUMULA! no lo deje.
  • Que es source y destination (o target)? (para cp mv)
  • comando argumentos: ej: cp test/prueba6 test/2

Explicar al final:

  • stdin, stdout, stderr
  • |
  • >
  • >>
  • 2>&1
  • $?

Instrucciones

  • Programas que vamos a usar:

pwd cd ls mkdir touch mv rm cp adduser su id chmod chown addgroup mount umount cat echo grep umask

  • Conteste y anote que hace cada uno de estos comandos. (recuerde el comando man) (google también ayuda)
  • Para el resto de la actividad trate de ejecutar el comando ls después de cada comando para saber que está pasando (que archivos hay en el directorio actual? esto puede ayudar a identificar en que directorio se encuentra)

Creando, listando y desplazándonos

  • Cree los siguientes directorios en su home:
mkdir test
mkdir test/1
mkdir test/2
mkdir test2
mkdir test2/2
  • Cree los siguientes archivos dentro de esos directorios
touch test/prueba1
touch test/1/prueba2
touch test/2/prueba3
touch test2/prueba4
touch test2/2/prueba5
  • Dibuje un árbol (o raíz) de estos directorios, subdirectorios y archivos. (Cada bifurcación o nodo es un directorio/subdirectorio y cada hoja (o fin de raiz) es un archivo. Suponga que el inicio de la raíz o del tallo del árbol es /home/<nombre de usuario>
  • En que directorio me encuentro? (pwd)
  • Cuál es mi directorio home?
  • Cómo me cambio a mi directorio home? :
cd

o

cd ~

o

cd /home/<nombre_de_usuario>
  • Qué es ~ ?
  • Cambie de directorio a test2/2
cd test2/2  #método 1

o

cd
cd test2   #método 2
cd 2

o

cd /home/<nombre de usuario>/test2/2 #método 3

o

cd ~/test2/2 #método 4
  • Que diferencia existe entre estos?
  • Después de usar el método 4 puede usted usar el método 1 para cambiar al directorio test/2 ?
  • Explique que hacen los comandos:
cd ..
cd .
cd ~
cd -
  • Concluya que significa .., ., ~, - (cuidado con el -, no siempre significa lo mismo)
  • Desde el directorio actual (y sin usar el comando cd) cree un archivo en el directorio ~/test llamado prueba6
  • Liste el contenido del directorio test/1 de dos formas
  • Liste los archivos del directorio /usr/bin por orden de modificación, los más nuevos primero.

Copiando, moviendo, eliminando

  • Copie el archivo prueba6 al directorio ~/test/2 (use cp, lea el manual para entender la sintaxis)
  • Siempre liste el directorio fuente y el directorio destino para saber que el resultado fue el deseado (siga haciendo esto en TODOS los siguientes pasos)
  • Mueva el archivo prueba6 de vuelta al directorio donde se encontraba originalmente
  • Cambie de directorio a su home y desde ahí (sin cambiar de directorio), borre el archivo prueba1 . (tiene que buscar donde se encuentra el archivo prueba1)
  • Realice los siguientes comandos:
cd 
mv test2 test
  • Que sucedió? Dibuje el nuevo árbol.
  • Regrese el sistema de archivos a su estado anterior.

Agregando usuarios

  • Agregue un usuario adicional a su computadora con la clave que usted desee:
sudo adduser usuario2
  • Liste el directorio /home
ls /home
  • Ahora debería ver los homes de los dos usuarios
  • Conviértase en el nuevo usuario:
su usuario2
  • Introduzca el comando id . Para que sirve?
  • Cámbiese a su nuevo home
cd
  • En que directorio se encuentra? (use el comando adecuado para corroborar esto)
  • Cree un directorio llamado prueba_usuario2
mkdir prueba_usuario2
  • Dentro de este directorio cree y edite un archivo con el nombre test.txt y ponga el siguiente contenido dentro:
Esto es una prueba, esta línea fue escrita por el usuario2
  • Regrese a su usuario original:
exit
  • o presionando Ctrl-D
  • Use id para corroborar su identidad. (echo $USER que hace?)
  • Regrese al directorio de su usuario.
  • Escuche las explicaciones del profesor sobre permisos.
  • Edite con nano el archivo /home/usuario2/prueba_usuario2/test.txt y agregue lo siguiente al final del archivo
Esto intenta escribir el primer usuario!
  • Aplique el comando para guardar los cambios (Ctrl-X). Qué pasa?
  • liste los permisos del archivo /home/<nombre usuario2>/prueba_usuario2/test.txt (ls -al). Qué hace -a y que hace -l?
  • Cambie los permisos del archivo test.txt para que su usuario original si pueda editar el archivo. (ponga atención a las explicaciones del profesor)
  • Cambie los permisos del directorio prueba_usuario2 del usuario2 para que el usuario1 pueda crear archivos adentro.
  • 1) Conviértase en usuario2 y cree un nuevo archivo test2.txt dentro del directorio prueba_usuario2.
  • 2) Intente editar desde el usuario1 este archivo. Qué pasa?
  • Borre test2.txt
  • Utilice el setuid o setugid (suid, sgid) y umask sobre el directorio prueba_usuario2 y realice nuevamente el paso 1) y 2) . Cuáles son los permisos de los archivos del directorio prueba_usuario2 ?
  • Que hace el comando su sin nombre de usuario como argumento?

Materiales

wget http://www.kernel.org/pub/linux/kernel/v3.0/testing/linux-3.6-rc2.tar.bz2

Evaluación

En esta actividad se evaluará: 1) Compartir un directorio entre varios usarios, 2) Editar archivos correctamente sin permisos de superusuario por dichos usuarios en dicho directorio compartido

~~DISCUSSION~~

teaching/ie0117/2013-i/actividad_2.txt · Last modified: 2022/09/20 00:08 (external edit)