Hola a todos Estoy haciendo un script para hacer backups con tar sobre un disco extraible iomega. La cuestion es que quiero controlar si el disco esta realmente montado ya que si no esta montado y lanzo el tar, el fichero se me crea en el sistema y me llena el disco. Alguien sabe como controlar eso? Gracias Emiliano Sutil
Debe haber mas de un millon de formas,
Estoy haciendo un script para hacer backups con tar sobre un disco extraible iomega. La cuestion es que quiero controlar si el disco esta realmente montado ya que si no esta montado y lanzo el tar, el fichero se me crea en el sistema y me llena el disco.
Alguien sabe como controlar eso?
a vuelapluma, se me ocurre usar el comando ´mount´, con un grep de la línea que te interese. Si la línea existe, usar ´cut´ en los campos adecuados. Con eso deberías de tener la respuesta. Sirve? HTH -- Saludos, miguel
El día 11/01/06, miguel gmail
Debe haber mas de un millon de formas,
Estoy haciendo un script para hacer backups con tar sobre un disco extraible iomega. La cuestion es que quiero controlar si el disco esta realmente montado ya que si no esta montado y lanzo el tar, el fichero se me crea en el sistema y me llena el disco.
Alguien sabe como controlar eso?
a vuelapluma, se me ocurre usar el comando ´mount´, con un grep de la línea que te interese. Si la línea existe, usar ´cut´ en los campos adecuados. Con eso deberías de tener la respuesta.
Sirve?
Pues si me sirve, esto es basicamente lo que voy a aplicar isMounted=`mount | grep backup` if [ -z "$isMounted" ] ; then echo "NO ESTA MONTADO"; else echo "ESTA MONTADO"; fi Asi de simple, gracias, a veces el bosque no deja ver los arboles Emi HTH
-- Saludos, miguel
-- Para dar de baja la suscripción, mande un mensaje a: suse-linux-s-unsubscribe@suse.com Para obtener el resto de direcciones-comando, mande un mensaje a: suse-linux-s-help@suse.com
El día 11/01/06, miguel gmail
Asi de simple, gracias, a veces el bosque no deja ver los arboles
ein? No es al reves? :D
Ya te digo, mira si estaba desorientado ;-) --
Saludos, miguel
-- Para dar de baja la suscripción, mande un mensaje a: suse-linux-s-unsubscribe@suse.com Para obtener el resto de direcciones-comando, mande un mensaje a: suse-linux-s-help@suse.com
Directamente y sin leer documentación no. Pero se me vienen a la mente un par de ideas como: - Si es USB el iOmega entonces haz un grep sobre /proc/bus/usb/devices. - Mas artesanalmente, haz un grep sobre df, si esta montado debería mostrarlo Espero te sirva. El Miércoles, 11 de Enero de 2006 05:49, Emiliano Sutil escribió:
Hola a todos
Estoy haciendo un script para hacer backups con tar sobre un disco extraible iomega. La cuestion es que quiero controlar si el disco esta realmente montado ya que si no esta montado y lanzo el tar, el fichero se me crea en el sistema y me llena el disco.
Alguien sabe como controlar eso?
Gracias
Emiliano Sutil
-- <*******> HACKER Persona que disfruta del reto intelectual de superar o rodear las limitaciones de forma creativa... El resto es simple delincuencia. <*******> ************************ Hugo Sandoval Consultor www.softwarelibre.com.ve www.virtualnet.com.ve ************************
2006/1/11, Hugo Sandoval
Directamente y sin leer documentación no. Pero se me vienen a la mente un par de ideas como: - Si es USB el iOmega entonces haz un grep sobre /proc/bus/usb/devices. - Mas artesanalmente, haz un grep sobre df, si esta montado debería mostrarlo
Lo voy a hacer artesanalmente, pero en vez de con el comando df con el mount. Gracias a todos por vuestros consejos Un saludo Emi
Hola :) Emiliano Sutil wrote:
Hola a todos
Estoy haciendo un script para hacer backups con tar sobre un disco extraible iomega. La cuestion es que quiero controlar si el disco esta realmente montado ya que si no esta montado y lanzo el tar, el fichero se me crea en el sistema y me llena el disco.
Alguien sabe como controlar eso?
Hay varias maneras, como ya te han comentado. Yo te comento una posibilidad genérica, no sólo para ver si un dispositivo está montado. En los shell scripts, puedes usar una variable: $? que guarda el estado de salida de un comando. Por ejemplo: ping -c 5 IP.IP.IP.IP if [ $? = 0 ] then echo "equipo responde" else echo "equipo no responde" fi Lo que se hace aquí es hacer un ping a un equipo y a los 10 pings parar. Si el comando ping ha devuelto 0 (como salida), es que ha sido exitoso (el equipo remoto ha contestado al ping). Si devuelve cualquier otro valor, el equipo remoto no responde. La línea 2 lo que hace es comparar el valor que almacena la variable $?, si es 0 -> éxito. OJO, la variable $? SÓLO guarda el estado de salida del último comando ejecutado, si ejecutas otro luego ... cambia. Nunca lo he probado con un mount y menos ahora con el submount y esas cosas que te montan los dispositivos al usarlos y los desmonta al no usarlos. Otra opción es comprobar en: /proc/mounts o en: /etc/mtabs Ambos guardan información sobre qué dispositivos están montados y con qué opciones. HTH Rafa -- Rafa Grimán Systems Engineer Silicon Graphics Spain Santa Engracia , 120 - Planta Baja 28003 Madrid, Spain Tel: +34 91 3984200 Fax: +34 91 3984201 Móvil: +34 628 117 940 http://www.sgi.com
El día 11/01/06, Rafa Grimán
Hola :)
Emiliano Sutil wrote:
Hola a todos
Estoy haciendo un script para hacer backups con tar sobre un disco extraible iomega. La cuestion es que quiero controlar si el disco esta realmente montado ya que si no esta montado y lanzo el tar, el fichero se me crea en el sistema y me llena el disco.
Alguien sabe como controlar eso?
Hay varias maneras, como ya te han comentado. Yo te comento una posibilidad genérica, no sólo para ver si un dispositivo está montado.
En los shell scripts, puedes usar una variable:
$?
que guarda el estado de salida de un comando. Por ejemplo:
ping -c 5 IP.IP.IP.IP
if [ $? = 0 ] then echo "equipo responde" else echo "equipo no responde" fi
Lo que se hace aquí es hacer un ping a un equipo y a los 10 pings parar. Si el comando ping ha devuelto 0 (como salida), es que ha sido exitoso (el equipo remoto ha contestado al ping). Si devuelve cualquier otro valor, el equipo remoto no responde.
La línea 2 lo que hace es comparar el valor que almacena la variable $?, si es 0 -> éxito.
OJO, la variable $? SÓLO guarda el estado de salida del último comando ejecutado, si ejecutas otro luego ... cambia.
Nunca lo he probado con un mount y menos ahora con el submount y esas cosas que te montan los dispositivos al usarlos y los desmonta al no usarlos.
Otra opción es comprobar en:
/proc/mounts
o en:
/etc/mtabs
Ambos guardan información sobre qué dispositivos están montados y con qué opciones.
HTH
Rafa
Interesante el comando, en este caso no lo voy a usar pero me lo apunto para posibles experimentos Un saludo Emi
El 11/01/06, Emiliano Sutil
El día 11/01/06, Rafa Grimán
escribió:
[...]
Interesante el comando, en este caso no lo voy a usar pero me lo apunto para posibles experimentos
comentario: "$?" no es un comando, mas bien es una variable !!! salu2. -- -- Victor Hugo dos Santos Linux Counter #224399
Hola. El Miércoles, 11 de Enero de 2006 10:49, Emiliano Sutil escribió:
Hola a todos
Estoy haciendo un script para hacer backups con tar sobre un disco extraible iomega. La cuestion es que quiero controlar si el disco esta realmente montado ya que si no esta montado y lanzo el tar, el fichero se me crea en el sistema y me llena el disco.
Alguien sabe como controlar eso?
sabiendo que ya tienes solucion, comento un truquillo que utilizo a veces y que es util para ver de un simple vistazo (o comprobar) si una unidad extraible esta montada. estando la unidad desmontada haces touch /puntodemontaje/DISPOSITIVO_DESMONTADO eso crea un fichero vacio en ese punto de montaje. luego con un simple ls o puedes comprobar el estado de la unidad o si estas buscando por consola, te das cuenta fijo. y no te llevas el susto de que te "ha desaparecido" -- Un Saludo. Carlos Lorenzo Matés
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2006-01-11 a las 15:22 +0100, Carlos Lorenzo Matés escribió:
estando la unidad desmontada haces
touch /puntodemontaje/DISPOSITIVO_DESMONTADO
eso crea un fichero vacio en ese punto de montaje.
Ese truco también lo hago yo, no me acordaba. Y luego con un simple: if ! test -f /puntodemontaje/DISPOSITIVO_DESMONTADO ; then ya tienes la condición para usarlo en los scripts. No resulta un script que puedas exportar directamente, porque depende de haber creado la bandera, y si se borra por accidente la lias, porque el test dará el mismo resultado que estando montado. Otro truco, si la partición es ext2/3 o reiser es comprobar la existencia del directorio "lost+found" - pero no funciona si es xfs o fat. - -- Saludos Carlos Robinson -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.0 (GNU/Linux) Comment: Made with pgp4pine 1.76 iD8DBQFDxR1EtTMYHG2NR9URAlD5AKCSPFWJtsauBLfzkpWbliALFp3QSACfZ8Rq XFdNEIeJEvD6TDf9QaR8S6g= =Hsez -----END PGP SIGNATURE-----
La verdad es que el truco esta bien, ingenios y simple,
De momento no lo voy a usar porque ya lo hice de la otra manera, pero me lo
apunto, nunca esta de más tener alternativas
un saludo
Emi
El día 11/01/06, Carlos E. R.
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
El 2006-01-11 a las 15:22 +0100, Carlos Lorenzo Matés escribió:
estando la unidad desmontada haces
touch /puntodemontaje/DISPOSITIVO_DESMONTADO
eso crea un fichero vacio en ese punto de montaje.
Ese truco también lo hago yo, no me acordaba. Y luego con un simple:
if ! test -f /puntodemontaje/DISPOSITIVO_DESMONTADO ; then
ya tienes la condición para usarlo en los scripts. No resulta un script que puedas exportar directamente, porque depende de haber creado la bandera, y si se borra por accidente la lias, porque el test dará el mismo resultado que estando montado.
Otro truco, si la partición es ext2/3 o reiser es comprobar la existencia del directorio "lost+found" - pero no funciona si es xfs o fat.
- -- Saludos Carlos Robinson -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.0 (GNU/Linux) Comment: Made with pgp4pine 1.76
iD8DBQFDxR1EtTMYHG2NR9URAlD5AKCSPFWJtsauBLfzkpWbliALFp3QSACfZ8Rq XFdNEIeJEvD6TDf9QaR8S6g= =Hsez -----END PGP SIGNATURE-----
-- Para dar de baja la suscripción, mande un mensaje a: suse-linux-s-unsubscribe@suse.com Para obtener el resto de direcciones-comando, mande un mensaje a: suse-linux-s-help@suse.com
Recientemente he estado haciendo un script para hacer backups incrementales con tar en un dispositivo externo. El script he intentado que sea bastante genérico para que le pudiera valer a todo el mundo así que no comprueba que el dispositivo externo esté montado. Aunque inicialmente era un shell script, al final lo hice en PHP para guardar en un archivo externo la lista de directorios de los que hacer el backup. Si te interesa lo tienes en http://jupiter.orta.org.es/?download/sysbackup.html Podrías verificar, como te han comentado, que el dispositivo está montado y despues llamar a "mi" script . Saludos.
Hola
Le echaré un ojo a ver que tal va....
Gracias por tu ayuda
Emi
El día 12/01/06, Luis
Recientemente he estado haciendo un script para hacer backups incrementales con tar en un dispositivo externo. El script he intentado que sea bastante genérico para que le pudiera valer a todo el mundo así que no comprueba que el dispositivo externo esté montado.
Aunque inicialmente era un shell script, al final lo hice en PHP para guardar en un archivo externo la lista de directorios de los que hacer el backup.
Si te interesa lo tienes en http://jupiter.orta.org.es/?download/sysbackup.html
Podrías verificar, como te han comentado, que el dispositivo está montado y despues llamar a "mi" script .
Saludos.
-- Para dar de baja la suscripción, mande un mensaje a: suse-linux-s-unsubscribe@suse.com Para obtener el resto de direcciones-comando, mande un mensaje a: suse-linux-s-help@suse.com
Si usan el comando df da una lista de las unidades y su capacidad libre. Con un Grep posterior podrias ver si la unidad esta presente en la lisa o no (Montada o No). Saludos. Claudio. El mié, 11-01-2006 a las 15:22 +0100, Carlos Lorenzo Matés escribió:
Hola.
El Miércoles, 11 de Enero de 2006 10:49, Emiliano Sutil escribió:
Hola a todos
Estoy haciendo un script para hacer backups con tar sobre un disco extraible iomega. La cuestion es que quiero controlar si el disco esta realmente montado ya que si no esta montado y lanzo el tar, el fichero se me crea en el sistema y me llena el disco.
Alguien sabe como controlar eso?
sabiendo que ya tienes solucion, comento un truquillo que utilizo a veces y que es util para ver de un simple vistazo (o comprobar) si una unidad extraible esta montada.
estando la unidad desmontada haces
touch /puntodemontaje/DISPOSITIVO_DESMONTADO
eso crea un fichero vacio en ese punto de montaje.
luego con un simple ls o puedes comprobar el estado de la unidad o si estas buscando por consola, te das cuenta fijo.
y no te llevas el susto de que te "ha desaparecido"
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2006-01-12 a las 01:52 -0300, joe_xxi escribió:
Si usan el comando df da una lista de las unidades y su capacidad libre. Con un Grep posterior podrias ver si la unidad esta presente en la lisa o no (Montada o No).
No exactamente. cer@nimrodel:~> df -h /nuevo/ Filesystem Size Used Avail Use% Mounted on /dev/hdd6 15G 7.6G 6.5G 54% / Y /nuevo no está montado: cer@nimrodel:~> cat /etc/mtab | grep nuevo cer@nimrodel:~> Si lo monto, la salida es diferente: cer@nimrodel:~> df -h /nuevo/ Filesystem Size Used Avail Use% Mounted on /dev/hdd14 15G 3.5G 12G 23% /nuevo El detalle es fijarse en la columna "Mounted on". Es un poco más complicado. - -- Saludos Carlos Robinson -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.0 (GNU/Linux) Comment: Made with pgp4pine 1.76 iD8DBQFDxpiftTMYHG2NR9URAobqAJoDGZcL7GiFIvLEdzXqyB3HQ5w+YwCgh9dh RhQM+sSX1jnHSgH2Oe9QXvg= =ntlN -----END PGP SIGNATURE-----
participants (9)
-
Carlos E. R.
-
Carlos Lorenzo Matés
-
Emiliano Sutil
-
Hugo Sandoval
-
joe_xxi
-
Luis
-
miguel gmail
-
Rafa Grimán
-
Victor Hugo dos Santos