sábado, 15 de febrero de 2014

Examenes SOII - 1º Parcial - Práctico

Ejercicio 1-A

- Para crear el usuario lanzamos el siguiente comando: adduser user1
- Despues nos colocamos en el directorio /home/administrador y creamos el archivo "texto.txt" con el comando:  vi texto1.txt
- Una vez creado nos dirigimos a el directorio /etc/sudoers, accedemos mediante vi a sudoers: vi sudoers , y una vez dentro escribimos los siguientes comandos.

user1 ALL=/usr/bin/vim /proc/swaps, !/usr/bin/vim /home/administrador/texto1.txt



Ejercicio 1-B


Para crear el script1 hacemos:


- Para crearlo en la carpeta /home/administrador/bin hacemos: vi script1.sh
- Para darle permisos al archivo hacemos: chmod u+x script1.sh
- Para modificar el archivo bash.bashrc en la carpeta /etc hacemos: vi bash.bashrc
- Para poder ejecutar el script desde cualquier directorio añadimos la siguiente linea:
export PATH=$PATH:/home/administrador/bin


Ejercicio 1-D

- Para modificar el archivo bash.bashrc en la carpeta /etc hacemos: sudo vi bash.bashrc

- Añadir al final del archivo bash.bashrc la siguiente línea
- PS1='Bienvenido $USER (\A)
- \A : Da el formato de la hora en HH:MM

Ejercicio 1-F

- Para crear el fichero de 50 MB hacemos: sudo dd if=/dev/zero of=/mydisc bs=1024 count=51200

- Para hacer uso del loop device facemos: sudo losetup /dev/loop0 /mydisc
- Crear un punto de montaje en /media co comando mkdir /media/disco2
- Para montar el dispositivo con el tipo ext4 facemos: sudo mount -t ext4 -o ro,noexec /dev/loop0 /media/disco2

Ejercicio 1-G

- Crea un nuevo fichero en el que se escribirá el contenido especificado en el enunciado
  vi script.sh 
- Cambia los permisos del script1.sh para que el usuario y el grupo propietarios sean root y root respectivamente: chown root:root script.sh 
- Crea el usuario user1test: sudo adduser user1test
- Editamos el fichero sudoers: visudo -f /etc/sudoers
- Añadimos la siguiente linea:
user1test ALL=(ALL:ALL) /bin/sh /home/alumno/script.sh

Ejercicio 1-H

- Crea un script llamado fecha en /home/administrador/bin. El script simplemente
 tiene que mostrar la fecha actual en horas:minutos: vi /home/administrador/bin/fecha.sh
 #!/bin/bash
 date +"%H:%M"
- Si el scrip no permite la ejecucion indica el comando para modificar los 
 permisos: sudo chmod u+x /home/administrador/bin/fecha.sh
-Modifica el archivo correspondiente para que esa modificacion del PATH este
 disponible en todos los terminales.
//añadimos al fichero /etc/bash.bashrc al final despues de "fi"

export PATH=$PATH:/home/administrador/bin

miércoles, 12 de febrero de 2014

Bloque I - Primeras prácticas con Linux

1) Guión práctica “edición de archivos de configuración con vi”


3. Modificando el .bashrc


1) cd /etc
   sudo chmod a+w bash.bashrc
   Escribimos al final del documento despues de fi
   date
   Welcome $USER , write exit for closing this shell


2) mkdir bin
   vi data.sh
    echo “Data actual” ; date
   chmod u+x data.sh
  
 Escribimos al final del documento despues de fi
  export PATH=$PATH:/home/administrador/bin

2) Guión práctica “control de procesos”

2.Comandos básicos para control de procesos


1) Dependen de init o seu PID e 1
 pstree -p | grep 5133
2)O seu pai é gnome-terminal


1) htop
   f2; columns; avaliable, flags + f5 priority
2) mayus+p
3) f3; htop, f9, sigterm


3.Prioridad de los procesos


2) nice -n 0 procesos1.sh (prioridad 20)
nice -n 10 procesos2.sh (prioridad 30)
nice -n 20 procesos3.sh (prioridad 39)
3) Añadir columna utime+
procesos1.sh   4-6 seg
procesos2.sh   4-6 seg
proceso3.sh 4-6 seg


4.Nohup y envío de señales


1 - sleep 1000 & sleep 1500 & sleep 2000 &


nohup sleep 1000 & sleep 1500 & sleep 2000 &


2 - disown PID
3 - pstree -nps
4 - kill -9 PID PID PID


3) Guion práctica sudo

2. Comando sudo


1) mount -a non funciona porque non é superusuario.
   - Si que funciona.
2) Mostra os comandos os que ten permiso o usuario.
3) sudo adduser proba
4) sudo -l -U proba Mostra os comandos os que ten permiso proba.
5) sudo -k Borra a cache
6) O que ocorre e que agora somos root sen necesidade de volver a poñer a contraseña.
- Si queremos cambiar al $HOMBRE y demás variables de entorno, utilizamos el guión medio "-":
O guión simula un login real.
7) sudo su proba


3. Configuración de sudo


1) sudo visudo -f  /etc/sudoers
   # User privilege specification
root    ALL=(ALL:ALL) ALL
proba   ALL=(root) /bin/kill


sudo su proba
sudo kill pid del proceso

4) Guión de prácticas sobre sistemas de arquivos en Linux

I. Crear un filesystem sobre un archivo y montarlo


1) man dd
2) sudo dd if=/dev/zero of=/mydisc bs=1024 count=29696
3) Un loop device es un pseudo-dispositivo que hace que un fichero sea accesible como si fuese un dispositivo de bloques (block device). Es decir, que cuando montamos una imagen hacemos uso de un dispositivo bucle, pero esto sucede de forma transparente para nosotros, ya que el APP del sistema operativo se encarga de hacer esa tarea.
4) sudo losetup /dev/loop0 /mydisc
   sudo losetup -a , indica los loop device que estan ocupados
5) mkfs -t ext3 /dev/loop0
6) sudo mkdir /media/disco2
7) sudo mount -o rw,noexec /dev/loop0 /media/disco2
   - Efectivamente non podemos executar nada.


II. Aumentar el espacio de swap utilizando un archivo regular


1) su administrador
2) dd if=/dev/zero of=/swapfile1 bs=1024 count=307200
3) mkswap /swapfile1
4) chmod 0600 /swapfile1
5) swapon /swapfile1
6) vi /etc/fstab
   /swapfile1 swap swap defaults 0 0 //Opcional
7) “Verificacion del swap” $ free -m
     more /proc/swaps    //MEJOR




5) Prácticas de arranque de Linux


1) sudo grub-install -v
2.1) initctl list
2.2) sudo inictctl stop rsyslog
       sudo inictctl start rsyslog
3) sudo apt-get install bum
    sudo bum
           encontrar el servicio y boton derecho parar ahora
encontrar el servicio y boton derecho


4.1) http://coewww.rutgers.edu/www1/linuxclass2011/lessons/startup/sec_10.php
vi sample.sh
chmod 755 sample.sh
sudo mv sample.sh /etc/init.d/sample.sh
4.2) sudo update-rc.d sample.sh  start 34  2 3 4 5 . stop 66  0 1 6 .
4.3) Crearonse 7 carpetas co nome de rc(1,2,3,4,5,6,S) na carpeta /etc
4.4)     man service
4.5) service sample.sh status(estado)
        service sample.sh start
        service sample.sh stop
4.6) update-rc.d -f sample.sh remove



init $ (cambia al nivel)
runlevel (lvl actual)