Solo per coincidenza ho dovuto usare il mio script ATA-ID-to-device-name (trovato qui: /server/244944/linux-ata-errors-translating-to-a-device-name/ 426561 # 426561 ) su una partizione di sola lettura /
. Nel caso in cui tu sia curioso, era una console di ripristino di Ubuntu che ti consentirà di accedere alla tua /
partizione, ma la monterà di sola lettura per impostazione predefinita. Sono contento di questo, perché altrimenti non avrei probabilmente mai scoperto che il mio script si comporta in modo strano su un sistema R / O a causa di una linea specifica, questa:
IFS=: read HostMain HostMid HostSub <<< "$HostFull"
Questo non funziona se non c'è permesso di scrittura. Non avrei pensato che avrebbe fallito, però. Ma a quanto pare l' <<<
operatore non richiede di scrivere qualche file temporaneo da qualche parte.
Ma c'è un modo per aggirare la creazione di un file temporaneo o esiste un modo per specificare dove è scritto il file? Nella console di ripristino di Ubuntu, c'è --- stranamente --- permesso di scrivere sulla /run
directory, quindi sarebbe, se potessi in qualche modo "dire" read
di scrivere il file temporaneo in un altro posto del solito.
/dev/fd
non ha nulla a che fare con questo.<<<
è però il colpevole, perché crea un file temporaneo (che deve essere scritto da qualche parte).