Linux/Unix Shell Scripting - Muchas dudas con comandos y scripts.

 
Vista:
Imágen de perfil de Raúl

Muchas dudas con comandos y scripts.

Publicado por Raúl (9 intervenciones) el 08/06/2013 01:09:16
Hola buenas, el otro dia tuve un examen teórico y me salió mal. Me bloqueé, tuve 20 preguntas en la cual preguntaban lo siguiente:

1.Que hace el comando pwd y qué nos mostraria en pantalla.
2.En nuestro directorio personal hay un directorio llamado datos , qué comando pondrías en la consola para ver solo las propiedades de dicho directorio, es decir, que me muestre los permisos, el usuario propietario, el grupo propietario, etc. Del directorio datos (no de su contenido).
3. Escribe los comandos necesarios para crear un directorio llamado compartido en el que todos los usuarios del sistema pueden escribir pero sólo los propietarios de los ficheros los pueden borrar.
4.Qué es, para qué sirve y en qué tipo de ficheros se utiliza el bit SUID. Comenta algún fichero que exista en el sistema que tenga este bit activado y el motivo por que se ha activado.
5.Hemos creado un script llamado ejercicio.sh. Este fichero está en nuestro directorio personal.Qué modificaciones harías para que puedas ejecutarlo directamente y para siempre, es decir, siempre que entremos en una consola lo podamos ejecutar.
6. Qué tenemos que hacer para crear un fichero y que quede oculto, es decir, que no se muestre con un simple ls.
7.Suponer que tenemos el fichero llamado fichero1 Que comando ejecutariamos para este fichero pueda ser leido, escrito y ejecutado por el usuario propietario pueda ser leido y ejecutado por el grupo propietario y pueda ser leido por el resto de usuarios.
8.Imaginad que en el directorio personal tenemos un fichero llamado fichero2 que es propiedad del usuario pepe. Los permisos de dicho fichero son rwxrwxrwx ¿Puede modificar y/o borrar ese fichero el usuario luis? Justificar la respuesta detalladamente.
9.Mostrar los nombres, (solo los nombres), de todos los usuarios que existen en el sistema.
10. Imaginad que tenemos que descargar una imagen de la direccion web http://descargas/imagen.iso. Queremos lanzar un comando desde la consola para descargar dicha imagen en segundo plano.
11. Realizar los ajustes necesarios en la solucion del ejercicio 10 para que, en el caso de cerrar nuestra sesión la imagen se siga descargando.
12. Imaginad que tenemos un proceso en segundo plano y que está detenido. ¿Cómo lo arrancariamos? Si teneis que suponer algo indicarlo en la respuesta.
13. Si tenemos un proceso que está ejecutando en 1º plano y lo queremos pasar a 2º plano y que siga ejecutandose en 2º plano ¿Qué comandos tendriamos que poner? Si teneis que suponer algo indicarlo en la respuesta.
14. Si tenemos un proceso que está ejecutando en 2º plano y queremos traerlo a 1º plano que comandos tendriamos que poner.Si teneis que suponer algo indicarlo en la respuesta.
15.¿Qué hace el comando ls -R la /? ¿Qué cambios tendriamos que hacer en dicho comando para redireccionar la salida de error a /dev/null?
16.¿Qué es PPID?¿Qué proceso tiene el PID1?
17.Explicar qué hace el siguiente script.Realiza dos llamadas al script una en la que se genere ERROR y otra en la que no lo genere, para esta segunda mostrar el resultado esperado para la entrada propuesta por vosotros mismos:


#!/bin/bash
clear
if [$# -le 10] then
echo "ERROR"
exit 1
fi
for i in $*
do
if [ "$i" >= "$1" ] then
echo "$i"
fi
done
exit 0

Algunas respuestas me suenan y las sé pero son poquisimas, Necesito aprender todas estas series de cosas de cara al 14 de junio.

en un examen que tienes que preguntar sobre comandos y sobre scripts. ¿Qué considerariais importante? Un saludo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 104
Oro
Ha mantenido su posición en Linux/Unix Shell Scripting (en relación al último mes)
Gráfica de Linux/Unix Shell Scripting

Que hace el comando pwd y qué nos mostraria en pantalla

Publicado por xve (309 intervenciones) el 09/06/2013 09:22:19
Te muestra la ruta actual donde nos encontramos.

1
man pwd
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 104
Oro
Ha mantenido su posición en Linux/Unix Shell Scripting (en relación al último mes)
Gráfica de Linux/Unix Shell Scripting

qué comando pondrías en la consola para ver solo las propiedades de dicho directorio

Publicado por xve (309 intervenciones) el 09/06/2013 09:23:34
1
ls -l | grep nombreDirectorio
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 104
Oro
Ha mantenido su posición en Linux/Unix Shell Scripting (en relación al último mes)
Gráfica de Linux/Unix Shell Scripting

3 - directorio para que todos puedan escribir per solo el propietario pueda borrar

Publicado por xve (309 intervenciones) el 09/06/2013 09:29:17
No tengo muy claro como permitir únicamente crear y modificar y no eliminar... Puedes revisar los comandos lsattr y chattr...

Si te funciona ya nos comentaras, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 104
Oro
Ha mantenido su posición en Linux/Unix Shell Scripting (en relación al último mes)
Gráfica de Linux/Unix Shell Scripting

4 - Qué es, para qué sirve y en qué tipo de ficheros se utiliza el bit SUID

Publicado por xve (309 intervenciones) el 09/06/2013 09:36:39
SUID (Set owner User ID up on execution) es un tipo de permiso especial que se le da a un archivo.

Normalmente en Linux/Unix, cuando se ejecuta un programa con SUID, hereda los permisos de acceso del usuario que lo creo.

En mi caso, lo utilizo mucho que todos los usuarios puedan ejecutar un archivo que unicamente tiene derechos de ejecución el root.

algo así:
1
chmod +s /bin/smbmount

Con este ejemplo, cualquier usuario podrá utilizar el comando smbmount

Aquí tienes toda la documentación: http://mmc.geofisica.unam.mx/LuCAS/Manuales-LuCAS/doc-unixsec/unixsec-html/node56.html
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 104
Oro
Ha mantenido su posición en Linux/Unix Shell Scripting (en relación al último mes)
Gráfica de Linux/Unix Shell Scripting

5 - Siempre podamos ejecutar una aplicación que esta en una carpeta dada

Publicado por xve (309 intervenciones) el 09/06/2013 09:43:08
Para ello, tienes que ponerlo en tu path.

Esto puede variar, dependiendo de si únicamente tienes tu que ejecutarlo, o si también lo tiene que ejecutar otro usuario.

Para ello, puedes modificar el archivo .bashrc que esta en la carpeta del usuario y añadir al final algo como:
PATH=$PATH':/home/usuario'

De esta manera, cuando vuelvas a entrar en tu consola, cualquier archivo ejecutable que este en la carpeta del usuario podrá ser ejecutada desde cualquier lugar sin indicar la ruta...

Recuerda que de esta manera, es únicamente para el "usuario" cualquier otro usuario no tendrá esos derechos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 104
Oro
Ha mantenido su posición en Linux/Unix Shell Scripting (en relación al último mes)
Gráfica de Linux/Unix Shell Scripting

6 - Qué tenemos que hacer para crear un fichero y que quede oculto

Publicado por xve (309 intervenciones) el 09/06/2013 09:44:49
Simplemente añadirle un punto (.) delante del mismo. Todo archivo que empiece por un punto es oculto a un simple ls
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 104
Oro
Ha mantenido su posición en Linux/Unix Shell Scripting (en relación al último mes)
Gráfica de Linux/Unix Shell Scripting

7 - privilegios a un archivo

Publicado por xve (309 intervenciones) el 09/06/2013 09:48:40
Que comando ejecutariamos para este fichero pueda ser leido, escrito y ejecutado por el usuario propietario pueda ser leido y ejecutado por el grupo propietario y pueda ser leido por el resto de usuarios.

Creo que seria algo así:
1
chmod 0754 file


1
2
3
4
5
6
7
8
9
10
Numerical permissions
#	Permission
7	full
6	read and write
5	read and execute
4	read only
3	write and execute
2	write only
1	execute only
0	none


1
man chmod
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 104
Oro
Ha mantenido su posición en Linux/Unix Shell Scripting (en relación al último mes)
Gráfica de Linux/Unix Shell Scripting

8 - Puede un usuario eliminar un archivo si tiene permisos?

Publicado por xve (309 intervenciones) el 09/06/2013 09:50:52
Imaginad que en el directorio personal tenemos un fichero llamado fichero2 que es propiedad del usuario pepe. Los permisos de dicho fichero son rwxrwxrwx ¿Puede modificar y/o borrar ese fichero el usuario luis? Justificar la respuesta detalladamente.

Si que puede, tiene permisos para ello.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 104
Oro
Ha mantenido su posición en Linux/Unix Shell Scripting (en relación al último mes)
Gráfica de Linux/Unix Shell Scripting

9 - Mostrar los nombres, (solo los nombres), de todos los usuarios que existen en el sistema

Publicado por xve (309 intervenciones) el 09/06/2013 09:58:37
1
cat /etc/passwd | cut -d: -f1
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 104
Oro
Ha mantenido su posición en Linux/Unix Shell Scripting (en relación al último mes)
Gráfica de Linux/Unix Shell Scripting

10 - Descargar una imagen en segundo plano

Publicado por xve (309 intervenciones) el 09/06/2013 10:02:19
Seria algo asi:
1
wget http://descargas/imagen.iso &

Al poner al final el & indicamos que se ejecuta en segundo plano
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 104
Oro
Ha mantenido su posición en Linux/Unix Shell Scripting (en relación al último mes)
Gráfica de Linux/Unix Shell Scripting

12 - Arrancar un proceso que esta sen segundo plano

Publicado por xve (309 intervenciones) el 09/06/2013 10:07:54
Para trabajar con los procesos que hay en segundo plano, se utilizan las instrucciones jobs fg y bg.

1
2
3
4
5
6
7
8
9
10
11
12
13
# find / -ctime -1 > /tmp/changed-file-list.txt
 
# [CTRL-Z]
[1]+  Stopped                 find / -ctime -1 > /tmp/changed-file-list.txt
 
# jobs
[1]+  Stopped                 find / -ctime -1 > /tmp/changed-file-list.txt
 
# bg
[1]+ find / -ctime -1 > /tmp/changed-file-list.txt &
 
#jobs
[1]+  Running                 find / -ctime -1 > /tmp/changed-file-list.txt &
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 104
Oro
Ha mantenido su posición en Linux/Unix Shell Scripting (en relación al último mes)
Gráfica de Linux/Unix Shell Scripting

14 - Traer un proceso a primer plano

Publicado por xve (309 intervenciones) el 09/06/2013 10:10:34
1
2
3
4
# jobs
[1]+  Running                 find / -ctime -1 > /tmp/changed-file-list.txt &
 
# fg 1
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 104
Oro
Ha mantenido su posición en Linux/Unix Shell Scripting (en relación al último mes)
Gráfica de Linux/Unix Shell Scripting

15 - ¿Qué hace el comando ls -R la /? redireccionar la salida de error a /dev/null

Publicado por xve (309 intervenciones) el 09/06/2013 10:14:56
con man ls veras cada una de las opciones

Para redireccionar la salida de errores a /dev/null, creo que seria algo así:
1
# ls -R la / &2 > /dev/null
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 104
Oro
Ha mantenido su posición en Linux/Unix Shell Scripting (en relación al último mes)
Gráfica de Linux/Unix Shell Scripting

16 - ¿Qué es PPID?

Publicado por xve (309 intervenciones) el 09/06/2013 10:17:22
PPID (Parent Process ID)

Define el ID del proceso padre que ha ejecutado un proceso dado
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Raúl

Muchas dudas con comandos y scripts.

Publicado por Raúl (9 intervenciones) el 09/06/2013 13:57:46
Muchas gracias a todos!!!!!! me salvais el pellejo jejejeje 1 saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar