Re: script bash

2019-05-19 Per discussione Gollum1
Il 20 maggio 2019 00:07:50 CEST, Mario  ha scritto:
>Il 19/05/19 23:20, Gollum1 ha scritto:
>> Il 19 maggio 2019 17:43:17 CEST, Mario  ha
>scritto:
>> 
>>> Sto provando anche con
 VG='vgname'
 LV='lvname'
 TARGET0='/dev/'"$VG"'/'"$LV"
>> 
>> hai provato con:
>> 
>> TARGET0="/dev/$VG/$LV"
>> ? 
>> 
>> byez
>> 
>ciao Gollum,
>
>appena provato, stesso errore: fsck non trova la directory che però
>esiste...

hai provato a sostituire il comando con un echo, per vedere come vengono 
espanse le variabili? 
byez
-- 
gollum1

Inviato dal mio dispositivo Android con K-9 Mail. Perdonate la brevità e gli 
errori, maledetto correttore automatico.



Re: script bash

2019-05-19 Per discussione Mario
Il 19/05/19 23:20, Gollum1 ha scritto:
> Il 19 maggio 2019 17:43:17 CEST, Mario  ha scritto:
> 
>> Sto provando anche con
>>> VG='vgname'
>>> LV='lvname'
>>> TARGET0='/dev/'"$VG"'/'"$LV"
> 
> hai provato con:
> 
> TARGET0="/dev/$VG/$LV"
> ? 
> 
> byez
> 
ciao Gollum,

appena provato, stesso errore: fsck non trova la directory che però
esiste...



Re: script bash

2019-05-19 Per discussione Gollum1
Il 19 maggio 2019 17:43:17 CEST, Mario  ha scritto:

>Sto provando anche con
>> VG='vgname'
>> LV='lvname'
>> TARGET0='/dev/'"$VG"'/'"$LV"

hai provato con:

TARGET0="/dev/$VG/$LV"
? 

byez
-- 
gollum1

Inviato dal mio dispositivo Android con K-9 Mail. Perdonate la brevità e gli 
errori, maledetto correttore automatico.



Re: script bash

2019-05-19 Per discussione Mario
Il 19/05/19 11:02, Alessandro Pellizzari ha scritto:
> On 18/05/2019 19:30, Mario wrote:
> 
>> Lo script, eseguito da root, contiene queste variabili:
>>> TARGET0=/dev/"$VG"/"$LV"
>>> VG=vgname
>>> LV=lvname
>>> MOUNT=/mnt/mountdir
> 
> Devi dichiarare le variabili prima di usarle, quindi la riga con TARGET0
> dovrebbe essere la terza.
Nello script in realtà è dopo VG e LV. Nello scrivere la mail mi è
scappato come primo.

> Inoltre con VG=vgname assegni il valore vgname alla variabile VG.
> Probabilmente quello che vuoi è lanciare il comando vgname e assegnare
> il risultato alla variabile, quindi:
> 
> VG=`vgname`
> 
> (backtick, non apostrofo)
Non è esattamente questo che cerco di far fare: vorrei inviare il comando
>>> fsck.ext4 -a /dev/vgname/lvname
con il contenuto della variabile TARGET0 (che a sua volta è composta da
VG che contiene "vgname" e LV che contiene "lvname")

Sto provando anche con
> VG='vgname'
> LV='lvname'
> TARGET0='/dev/'"$VG"'/'"$LV"

ma ho lo stesso errore, anche nel mount.

> Probabilmente perché nel tuo terminale hai già assegnato quelle
> variabili, mentre nello script non esiste l'ambiente, quindi le
> variabili sono vuote.
Per ambiente intendi #!/bin/bash? sì, c'è all'inizio dello script.
O ti riferisci ad altro?

> 
> Bye.
> 

Grazie Alessandro per i suggerimenti. Altre idee?
ciao, Mario



Re: script bash

2019-05-19 Per discussione Alessandro Pellizzari
On 18/05/2019 19:30, Mario wrote:

> Lo script, eseguito da root, contiene queste variabili:
>> TARGET0=/dev/"$VG"/"$LV"
>> VG=vgname
>> LV=lvname
>> MOUNT=/mnt/mountdir

Devi dichiarare le variabili prima di usarle, quindi la riga con TARGET0
dovrebbe essere la terza.

Inoltre con VG=vgname assegni il valore vgname alla variabile VG.
Probabilmente quello che vuoi è lanciare il comando vgname e assegnare
il risultato alla variabile, quindi:

VG=`vgname`

(backtick, non apostrofo)

> ma se lancio nel terminale
>> fsck.ext4 -a /dev/vgname/lvname
> nessun problema.

Probabilmente perché nel tuo terminale hai già assegnato quelle
variabili, mentre nello script non esiste l'ambiente, quindi le
variabili sono vuote.

Bye.