Examen de Sistemas Operativos

SnAk0

Weno gente ya se que es echarle un poco de morro xD pero vereis tengo las preguntas del examen y pensaba que buscando un poco por el google y tal las responderia facil, pero el caso es que algunas de ellas no tengo ni zorra y me gustaria a ver si algun entendido en linux me puede echar una mano. Todas las preguntas tienen que poder responderse desde Hyperterminal pero en caso contrario si me podriais indicar la solucion por interfaz grafica tambien me serviria de ayuda.
Bueno pues a continuacion las enumero:

1.Que sistema de UNIX estas utilizando? Cual es la version? Tipo de procesador?ç

2.Elimina del directorio actual todos los archivos que comiencen por un número seguido de carácter cualquier, un signo + y cualquier terminacion.

3.Qué tipo de archivos corresponden al patron *[A-z]?

  1. Crea en el directorio web_rrhh/paginas un archivo llamado index.html y otro llamado .html

  2. Haz un listado del directorio web_rrhh/paginas de forma que se visualice toda la informacion de ambos ficheros (su tamaño, permisos,propietario, etc)

6.Haz un enlace duro del archivo doc1 con nombre doc1 tambien pero en la carpeta copias

7.Haz un eclace blando del archivo doc1 con nombre doc1_ad tambien pero en la carpeta copias

8.Situate en la carpeta documentos y haz una copia de todos los archivos que comiencen por doc a la carpeta copias

9.Elimina el driectorio web_rrhh completo

10.Crea un fichero lista_ps con el contenido de la orden ps

  1. Crea un fichero llamado ejecutables y asígnale permisos de ejecución para todos los usuarios

  2. Elimina todos los permisos del archivo ejecutable

  3. Muestra todos los procesos que ha iniciado el usuario root

14.¿Puede el PID de algun proceso ser mayor que su PPID?

15.¿Como podrias matar desde un terminal un proceso en otro terminal que se haya quedado bloqueado?

16.Crea un script que recibe un directorio por parametro y que haga lo siguiente:
a. Crear un directorio llamado papelera en /tmp
b. Mueva todos los archivos del directorio pasado por parametro a esa papelera

  1. ¿Queñadirias al script anterior si quisieras controlar que el directorio pasado por parametro no existe?

  2. Crea un script que muestre al usuario un mensaje inventado por ti de forma infinita.

FIN xD

P.D.: He omitido muchas preguntas que ya se. son en total unas 40 preguntas.
P.D.2: Si, me e saltado todo el tercer trimestre por eso estoy tan pez.
P.D.3: Gracias de antemano a los que me echeis un cable estoy to jodio y no tengo ni maquina virtual ni el linux instalado.

GaMuSSo

/!\ Todos los -help de los comandos estan en internet /!\

  1. Crea en el directorio web_rrhh/paginas un archivo llamado index.html y otro llamado .html

Si no sabes hacer esto retirate. en cualquier caso para crear archivos siempre lo puedes hacer con el VI editor.

vi nombredearchivo.tpM

y te crea 'nombredearchivo.tpM' el solito en la carpeta que estés.

  1. Haz un listado del directorio web_rrhh/paginas de forma que se visualice toda la informacion de ambos ficheros (su tamaño, permisos,propietario, etc)

te metes en la carpeta y.... ls -la
o si no > ls -la /web_rrhh/paginas

6.Haz un enlace duro del archivo doc1 con nombre doc1 tambien pero en la carpeta copias

mirate el help del comando ln

7.Haz un eclace blando del archivo doc1 con nombre doc1_ad tambien pero en la carpeta copias

mirate la sintaxis de ln -s

  1. Situate en la carpeta documentos y haz una copia de todos los archivos que comiencen por doc a la carpeta copias

cp doc* /copias

9.Elimina el driectorio web_rrhh completo

Situate en la carpeta anterior y pon rm -R web_rrhh
Si esto no funciona (sinceramente nunca me acuerdo y miro el help)
Mirate el help de rm y rmdir

10.Crea un fichero lista_ps con el contenido de la orden ps

ps > lista_ps (creo que era así no sé alomejor omito algo)

  1. Crea un fichero llamado ejecutables y asígnale permisos de ejecución para todos los usuarios

tu@tuhost:> vi ejecutables (se abre el vi...)
escribes un espacio

:wq (los dos puntos te abren la entrada de instrucciones del vi y el wq signfica write&quit)
tu@tuhost:>chmod 777 ejecutables

  1. Elimina todos los permisos del archivo ejecutable

tu@tuhost:> chmod 000 ejecutables

14.¿Puede el PID de algun proceso ser mayor que su PPID?

En principio los Parent suelen ser mas pequeños no?

  1. ¿Queñadirias al script anterior si quisieras controlar que el directorio pasado por parametro no existe?

if [ $1 -f ] (-f comprueba que el parametro que le pasas sea un 'folder')
then
(tu programa)
fi

  1. Crea un script que muestre al usuario un mensaje inventado por ti de forma infinita.

#! /bin/bash

var=1

while [ var -eq 1 ]
do

echo Mensajeeeeeeeee

done

  1. Muestra todos los procesos que ha iniciado el usuario root

MIRATE EL PS --HELP CABRON que ahí sale

15.¿Como podrias matar desde un terminal un proceso en otro terminal que se haya quedado bloqueado?

Con el ps puedes ver todos los procesos de todos los terminales y encontrar el PID para hacer kill. No te digo el comando miratelo en el ps --help

SnAk0

perdona me confundi no queria decir hyperterminal si no terminal, vamos al consola de linux. perdon por la errata

GaMuSSo

Bueno ya te he hecho los deberes quiero MI BERENJENA.

Joder he sacado un 9 en esta asignatura este año y en 1 semana ya se me olvidan cosas xD

SnAk0

No tengo ni idea que es el ps xDDD y como ya te e dicho no puedo hacer un --help ya que no tengo el linux para poder probarlo y tp tengo maquina virtual. te agradezco mucho la ayuda.

Poisonous

1.Que sistema de UNIX estas utilizando? Cual es la version? Tipo de procesador?

?xd Pon cualquier tonteria

Estoy usando un sistema unix-like, GNU/linux, concretando mas aun la distribucion Ubuntu en su version para 32 bits.

2.Elimina del directorio actual todos los archivos que comiencen por un número seguido de carácter cualquier, un signo + y cualquier terminacion.

rm [0-9].'+'*

3.Qué tipo de archivos corresponden al patron *[A-z]?

Cadenas de caracteres formadas por cualquier combinacion de las letras del abecedario. ej

hola, adios, desjsjasdjkdqwA

ej de palabra q no

2-Pac

GaMuSSo

#5 http://www.ss64.com/bash/ j00gle es tu amigo

bash command list, primer link oh dios mio estaba escondido.

#6 la dos no para representar un caracter cualquiera no es $ la suma igual y la terminacion , en resumen > $+ lo del numero me lo imaginaba pero no se la sintaxis correcta, porque pones los puntos y las comillas simples? yo no lo di asi y tu manera me gusta mas.

SnAk0

sois los putos amos joder gracias tios me salvais el culo enserio

Poisonous

#7 hombre, no se especifica si el + es 1 operador unario o 1 caracter, yo lo consideré un caracter, por eso va entre comillas simples.

El punto -> Un carácter cualquiera excepto salto de linea.

GaMuSSo

#9 cuajanudo gracias, no lo sabía

Al despistao, he actualizado con algunas que quedaban, mirate la web que te he puesto en #7 con los comandos que te he dejado (te lo he dejado mascaito mascaito).

La unica razón por la que no he puesto todos los comandos del tirón es porque espero que si no te da la gana mirar esa pagina y mirar un poco, espero sinceramente que supendas y te dediques tu vida a poner tochos. Aun así con lo que te han contestado deberías aprobar.

Me piro a 'estudiar' CISCO, entre comillas porque estan todos los examenes contestados en internet xD

SnAk0

GaMuSSo no para ponerse asi joder xD me he mirado la pagina y he estado comprobando todo muchas gracias de verdad.lo que no tengo muy claro es lo del comando vi no me suena de nada. ah y falta el scrip de la pregunta 16 xD ^^ enserio loco me has ayudado muchisimo

GaMuSSo

no es un comando, es un programa.

Cuando lo ejecutes verás que te cambia la pantalla. Sólo te diré que para salir uses :q! para salir sin guardar y :wq para guardar el archivo (aunque lo dejes en blanco), sinceramente es un coñazo de editor que nos obligan a usar.

Me da palo hacer el 16, no cuela xD

SnAk0

entonces para no usar el vi? en la pregunta 4 esq te juro q no me acuerdo xD

neo-ns

empieza por descargate el vmware y un linux jejeje

SnAk0

#2 en la pregunta 17 donde pones (tu programa) no se exactamente a lo que te refieres. podrias aclararlo?

elkaoD

Para lo del sistema Unix usado y tal, uname !

Para borrar el directorio completo, rm -Rf

Para crear archivos, touch

Para el 13, ps y grep

Usuarios habituales

  • elkaoD
  • SnAk0
  • neo-ns
  • GaMuSSo
  • Poisonous