100 Excelente! - Universidad de Costa Rica

Transcripción

100 Excelente! - Universidad de Costa Rica
100
Excelente!
Universidad de Costa Rica | Facultad de Ingeniería
Escuela de Ingeniería Eléctrica |Programación Bajo Plataformas Abiertas
Erick Carvajal Barboza | Laboratorio #4
•
Observe el contenido de los directorios usados por init para los scripts de inicialización de
servicios (/etc/init.d y /etc/rc[n].d). ¿Qué servicios se encuentran instalados en su
computadora? ¿Cuándo son ejecutados? ¿Qué diferencias hay entre los distintos
runlevels?
Para observar los contenidos de las carpetas deseadas se utilizó el comando “tree” el cual genera
una lista de los contenidos de un directorio en forma de árbol.
init.d
├── acpid -> /lib/init/upstart-job
├── acpi-support
├── alsa-restore -> /lib/init/upstart-job
├── alsa-store -> /lib/init/upstart-job
├── anacron -> /lib/init/upstart-job
├── ondemand
:
├── umountroot
├── unattended-upgrades
├── urandom
└── x11-common
rc0.d
├── K20speech-dispatcher -> ../init.d/speech-dispatcher
├── K20unattended-upgrades -> ../init.d/unattended-upgrades
├── K74bluetooth -> ../init.d/bluetooth
├── README
├── S20sendsigs -> ../init.d/sendsigs
├── S30urandom -> ../init.d/urandom
├── S31umountnfs.sh -> ../init.d/umountnfs.sh
├── S35networking -> ../init.d/networking
├── S40umountfs -> ../init.d/umountfs
├── S60umountroot -> ../init.d/umountroot
└── S90halt -> ../init.d/halt
rc1.d
├── K15pulseaudio -> ../init.d/pulseaudio
├── K20acpi-support -> ../init.d/acpi-support
├── K20kerneloops -> ../init.d/kerneloops
├── K20saned -> ../init.d/saned
├── K20speech-dispatcher -> ../init.d/speech-dispatcher
├── K20unattended-upgrades -> ../init.d/unattended-upgrades
├── K74bluetooth -> ../init.d/bluetooth
├── README
├── S30killprocs -> ../init.d/killprocs
├── S70dns-clean -> ../init.d/dns-clean
├── S70pppd-dns -> ../init.d/pppd-dns
└── S90single -> ../init.d/single
rc2.d
├── README
├── S20kerneloops -> ../init.d/kerneloops
├── S20speech-dispatcher -> ../init.d/speech-dispatcher
├── S20unattended-upgrades -> ../init.d/unattended-upgrades
├── S25bluetooth -> ../init.d/bluetooth
├── S50pulseaudio -> ../init.d/pulseaudio
├── S50rsync -> ../init.d/rsync
├── S50saned -> ../init.d/saned
├── S70dns-clean -> ../init.d/dns-clean
├── S70pppd-dns -> ../init.d/pppd-dns
├── S75sudo -> ../init.d/sudo
├── S99acpi-support -> ../init.d/acpi-support
├── S99grub-common -> ../init.d/grub-common
├── S99ondemand -> ../init.d/ondemand
└── S99rc.local -> ../init.d/rc.local
rc3.d
├── README
├── S20kerneloops -> ../init.d/kerneloops
├── S20speech-dispatcher -> ../init.d/speech-dispatcher
├── S20unattended-upgrades -> ../init.d/unattended-upgrades
├── S25bluetooth -> ../init.d/bluetooth
├── S50pulseaudio -> ../init.d/pulseaudio
├── S50rsync -> ../init.d/rsync
├── S50saned -> ../init.d/saned
├── S70dns-clean -> ../init.d/dns-clean
├── S70pppd-dns -> ../init.d/pppd-dns
├── S75sudo -> ../init.d/sudo
├── S99acpi-support -> ../init.d/acpi-support
├── S99grub-common -> ../init.d/grub-common
├── S99ondemand -> ../init.d/ondemand
└── S99rc.local -> ../init.d/rc.local
rc4.d
├── README
├── S20kerneloops -> ../init.d/kerneloops
├── S20speech-dispatcher -> ../init.d/speech-dispatcher
├── S20unattended-upgrades -> ../init.d/unattended-upgrades
├── S25bluetooth -> ../init.d/bluetooth
├── S50pulseaudio -> ../init.d/pulseaudio
├── S50rsync -> ../init.d/rsync
├── S50saned -> ../init.d/saned
├── S70dns-clean -> ../init.d/dns-clean
├── S70pppd-dns -> ../init.d/pppd-dns
├── S75sudo -> ../init.d/sudo
├── S99acpi-support -> ../init.d/acpi-support
├── S99grub-common -> ../init.d/grub-common
├── S99ondemand -> ../init.d/ondemand
└── S99rc.local -> ../init.d/rc.local
rc5.d
├── README
├── S20kerneloops -> ../init.d/kerneloops
├── S20speech-dispatcher -> ../init.d/speech-dispatcher
├── S20unattended-upgrades -> ../init.d/unattended-upgrades
├── S25bluetooth -> ../init.d/bluetooth
├── S50pulseaudio -> ../init.d/pulseaudio
├── S50rsync -> ../init.d/rsync
├── S50saned -> ../init.d/saned
├── S70dns-clean -> ../init.d/dns-clean
├── S70pppd-dns -> ../init.d/pppd-dns
├── S75sudo -> ../init.d/sudo
├── S99acpi-support -> ../init.d/acpi-support
├── S99grub-common -> ../init.d/grub-common
├── S99ondemand -> ../init.d/ondemand
└── S99rc.local -> ../init.d/rc.local
rc6.d
├── K20speech-dispatcher -> ../init.d/speech-dispatcher
├── K20unattended-upgrades -> ../init.d/unattended-upgrades
├── K74bluetooth -> ../init.d/bluetooth
├── README
├── S20sendsigs -> ../init.d/sendsigs
├── S30urandom -> ../init.d/urandom
├── S31umountnfs.sh -> ../init.d/umountnfs.sh
├── S35networking -> ../init.d/networking
├── S40umountfs -> ../init.d/umountfs
├── S60umountroot -> ../init.d/umountroot
└── S90reboot -> ../init.d/reboot
Se observa que rc0.d y rc6.d los servicios son practicamente los mismos, esto porque en ambos
casos, el sistema está a punto de apagarse. También los archivos desde el rc2.d hasta el rc5.d inclusive,
poseen los mismos servicios. Los servicios serán ejecutados de acuerdo a su prioridad, donde el
número más bajo implica una prioridad mayor, y donde una “S” significa que inicie el servicio y una
“K” que será detenido.
•
Instale los paquetes apache2, samba, smbclient, cifs-utils y smbfs. Compruebe como
ambos servicios son ejecutados automáticamente al instalar los paquetes. Verifique los
scripts de inicialización hayan sido agregados a los respectivos directorios.
Todos fueron instalados mediante el comando “sudo aptitude <paquete>”
•
Solicite a un compañero que ingrese, usando elinks, a la dirección IP de su computadora
(puede obtenerla con el comando ifconfig). ¿Qué sucede?
Al ingresar a la IP de un compañero desde algún navegador web, lo que se obtuvo fue una
página como la mostrada en la siguiente figura:
•
Modifique el archivo index.html en el directorio de páginas web de apache (/var/www) o
sustitúyalo por algunos archivos de texto propios. Repita el punto anterior. ¿Qué sucede
ahora?
Al ingresar a la IP de la máquina de un compañero que hubiera cambiado el archivo index.html,
lo que podía observar en el navegador, era lo que el compañero había sustituido por el contenido del
archivo. Tal y como se muestra en la siguiente figura:
•
Detenga apache. Repita el punto 3. ¿Qué sucede?
Para detener la ejecución de apache, se ejecutó el comando “sudo /etc/init.d/apache2 stop ”, y
cuando un compañero intentó ingresar a la IP donde se detuvo el apache, apareció en el navegador un
mensaje de que era imposible conectar con la página deseada.
•
Usando update-rc.d, desactive la ejecución automática de apache. Reinicie el sistema.
Compruebe que el comando haya funcionado adecuadamente .
Para desactivar la ejecución automática de apache, se utilizó el comando “sudo update-rc.d
apache2 remove ”. Se comprobó que efectivamente estaba deshabilitado después de reiniciar la
computadora, porque cuando se intentó entrar desde el navegador a la IP, fue imposible.
•
Usando update-rc.d, restaure la ejecución automática de apache a sus valores
predeterminados. Utilice una prioridad de arranque de 95 y una prioridad de parada de
10.
Se utilizó el comando “sudo update-rc.d apache2 defaults” para que se restaura la ejecución
automática de apache2, seguidamente, se utilizó “sudo update-rc.d apache2 start 95 2 stop 10 0”, esto
hace que el servicio apache2, se inicie en el nivel 2 con una prioridad 95 y se detenga en el nivel 0 con
prioridad de 10.
•
Usando el comando runlevel, compruebe cual es el runlevel actual. Cambie al runlevel 1.
¿Qué sucede?
Al utilizar el comando “runlevel” se verificó que se encuentra en el nivel 2. Para cambiar el
runlevel, se utilizó el comando “init 1”. Este nivel hizo que se cerrara todo lo que se tenía abierto en
Ubuntu, y se quedó en la pantalla en la que se carga el sistema operativo, sin embargo, de ahí nunca
pasó.
•
Agregue al usuario licit a la base de datos de usuarios de samba usando el comando
smbpasswd -a licit (use cualquier contraseña).
Para agregar el usuario licit a la base de datos de samba, primero se debe crear dicho usuario,
para eso se utilizó “sudo adduser” una vez hecho esto, se utilizó el comando “sudo smbpasswd -a licit”
•
Agregue un nuevo directorio compartido al final del archivo de configuración de samba
(/etc/samba/smb.conf):
[compartido]
comment = Mi directorio compartido
path = RUTA_AL_DIRECTORIO
read only = no
Se procedió a abrir el archivo y agregarle ese contenido, cambiando
“RUTA_AL_DIRECTORIO” por la ruta correspondiente a donde se encontraba “Mi directorio
compartido”
•
Desde otra computadora, liste los recursos compartidos de su equipo usando el comando
$ smbclient -U licit -L //dirección_ip
Al utilizar el comando “smbclient -U licit -L //192.198.12.54” se despliega una ventana como la
que se muestra en la siguiente figura:
•
Desde otra computadora, monte el directorio compartido usando el comando mount.cifs.
Recuerde que sólo el administrador puede montar sistemas de archivos:
# mount.cifs //dirección_ip/compartido punto_de_montaje -o username=licit
Para realizar el montaje se procedió a utilizar el comando “mount.cifs//
192.168.12.33/compartido /mnt -o username = licit ” Para comprobar que sirviera, se comprobó que se
podía ver los archivos y crear archivos en ambas computadoras.
•
Desmonte el directorio compartido usando el comando umount.
Para desmontar el directorio se utilizó el comando “sudo umount /mnt”.

Documentos relacionados