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
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
mkdir test
mkdir test/1
mkdir test/2
mkdir test2
mkdir test2/2
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>
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
Agregando usuarios
sudo adduser usuario2
ls /home
su usuario2
cd
mkdir prueba_usuario2
Esto es una prueba, esta línea fue escrita por el usuario2
exit
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~~