aiuto Voyage MPD

Progetti, domande e idee sparse sull'autocostruzione di sorgenti digitali per musica "liquida" basate su computer o sistemi dedicati, interfaccie digitali, DAC, ecc.
Rispondi
andreaea
new member
Messaggi: 5
Iscritto il: 23 mag 2012, 19:44

aiuto Voyage MPD

Messaggio da andreaea »

ciao a tutti
sono nuovo (iscritto) del forum ma vi seguo da un po'
premetto sono un nuovissimo utilizzatore di Linux (1 giorno! niubbo allo stato puro!! :rofl:) e quindi moolto ignorante in materia

volendo implementare un PC con Voyage e MPD (ho seguito la procedura consigliata qui http://guidainstallazionevoyagempdlinux ... zioni.html), nei giorni scorsi ho fatto delle prove installando su chiavetta usb e tutto ha funzionato; poi sono passato all'installazione su HD

Sul PC ho un disco con 4 partizioni:
/dev/sda1 (boot) - HPFS/NTFT - XP pro
/dev/sda2 - HPFS/NTFT - XP pro (muletto per prove ecc.)
/dev/sda3 - Linux - Voyage Linux
/dev/sda4 - HPFS/NTFT - documenti

Essendo inesperto di Linux e non essendo molto chiara la guida (parlo da neofita Linux ovviamente :oops:) l'installazione mi ha cambiato l'MBR e invece di avere la schermata di Windows per scegliere il sistema operativo compariva quella di Linux.
Per poter comunque avviare Windows ho modificato il file /boot/grub/menu.lst in modo che almeno mi fosse permesso di entrare in windows.
All'avvio potevo scegliere se entrare in Linux o in Windows.
Il problema è che io vorrei (per varie ragioni che non sto a elencare) che il boot fosse fatto in ambiente Windows e non in ambiente Linux.
Ho cercato sul web e ho trovato la procedura per poter ottenere quello che vorrei:
ho provato a installare Grub su /dev/sda3

Codice: Seleziona tutto

grub-install /dev/sda3
ho creato un file boot.lnx (lunghezza 512 bytes), su una chavetta, e messo il file sulla partizione primaria Windows dove risiede anche il boot.ini

Codice: Seleziona tutto

dd if=/dev/sda1 of=/dev/sdf1/boot.lnx bs=512 count=1
ho modificato il boot.ini (aggiungendo la voce Linux che punta al file boot.lnx)
ho ripristinato il MBR con Acronis (e ora parte la prima schermata Windows con le varie opzioni per il boot).
Alla prima schermata mi compare la finestra Windows con le varie opzioni, ma quando seleziono Linux si apre una schermata nera e si pianta tutto.

Adesso vorrei rifare l'installazione di Voyage da capo ma avrei bisogno di sapere quali comandi servono per installare su sda3 senza toccare il MBR (ma devo creare una partizione ulteriore in sda3?)

grazie 1000 a chi mi vorrà aiutare!
Avatar utente
UnixMan
sostenitore
Messaggi: 12096
Iscritto il: 27 ott 2005, 22:34
Località: L'Aquila (Italy)
Has thanked: 79 times
Been thanked: 48 times

Re: aiuto Voyage MPD

Messaggio da UnixMan »

Se il problema è semplicemente quello di quale OS avviare di default, ti conviene lasciare Grub dov'è (nel MBR). Per configurarlo e cambiare il sistema avviato di default, i timeout, ecc, basta editare un file di configurazione.

Nel caso di Voyage (che usa ancora "grub-legacy"), il file da editare è /boot/grub/menu.lst

(laddove invece si usi il nuovo grub 2, nelle distribuzioni Debian-based il file da editare è /etc/default/grub e, dopo averlo modificato, è necessario lanciare il comando "update-grub" per rendere effettive le modifiche).
Ciao, Paolo.

«Se tu hai una mela, e io ho una mela, e ce le scambiamo, tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee.»
andreaea
new member
Messaggi: 5
Iscritto il: 23 mag 2012, 19:44

Re: aiuto Voyage MPD

Messaggio da andreaea »

Ciao Paolo, grazie per la riposta!
Come dicevo nel post, ho esigenze di avviare con Windows e non con Linux. e' proprio per questo motivo che ho aperto l'argomento, altrimenti mi sarei tenuto tutto com'era.
Avatar utente
UnixMan
sostenitore
Messaggi: 12096
Iscritto il: 27 ott 2005, 22:34
Località: L'Aquila (Italy)
Has thanked: 79 times
Been thanked: 48 times

Re: aiuto Voyage MPD

Messaggio da UnixMan »

Lo puoi fare con grub! Non ricordo se nella configurazione di default di voyage grub sia configurato per far partire immediatamente voyage senza chiedere nulla, ma grub è un boot loader che ti permette di scegliere da un menù quale sistema avviare. È molto più versatile del boot loader di windows e può avviare non solo Linux ma (direttamente o tramite chain-loader) anche windows e praticamente qualsiasi altro OS che sia installato sulla macchina. È possibile configurarlo sia per attendere indefinitamente una scelta da parte dell'utente che per avviare automaticamente uno dei sistemi configurati (quello che si vuole) dopo un timeout a piacere.

http://it.wikipedia.org/wiki/GRUB

Fare il contrario (cioè caricare di default il boot-loader di windows e poi utilizzare questo per avviare grub e da questo Linux) IMHO non conviene assolutamente. Se quello che ti disturba è il doppio passaggio (menù di grub prima e del boot loader di windows poi), questo può facilmente essere evitato. Basta inserire tutte le entries per le varie versioni di windows direttamente nel menù di grub ed eliminare il menù nel boot loader di windows.

BTW:
andreaea ha scritto: Il problema è che io vorrei (per varie ragioni che non sto a elencare) che il boot fosse fatto in ambiente Windows e non in ambiente Linux.
Un boot loader è un programma di basso livello che interagisce direttamente con l'hardware, non è in nessun "ambiente". ;)

Se proprio vuoi usare quella schifezza del boot loader di windows, come giustamente hai fatto devi installare grub nel boot sector della partizione di voyage (/dev/sda3) anziché nel MBR del disco (/dev/sda) e poi "imbrogliare" il boot loader di windows per fargli caricare grub (in effetti gli fai caricare una copia del boot sector che contiene la specifica installazione di grub). IIRC, la procedura che hai seguito è corretta, salvo un errore sostanziale:
andreaea ha scritto:ho creato un file boot.lnx (lunghezza 512 bytes), su una chavetta, e messo il file sulla partizione primaria Windows dove risiede anche il boot.ini

Codice: Seleziona tutto

dd if=/dev/sda1 of=/dev/sdf1/boot.lnx bs=512 count=1
questo! :o

in primo luogo, cosa diavolo è /dev/sdf1/ ?! :? :shake:

Nei sistemi Unix (e similari come Linux) qualsiasi cosa al mondo è rappresentata da un file. Il file system "/dev" non è una directory qualsiasi, ma il luogo deputato a contenere i device files e SOLO quelli (nei sistemi moderni di solito non è neanche un vero file system su un disco, ma un file system virtuale generato dal kernel).

I "device file" non sono null'altro che le "interfaccie" attraverso le quali i programmi comunicano con il kernel. Più precisamente, sono le interfaccie a quelli che nel mondo windows sono chiamati "device driver".

Non devi assolutamente confondere i device file, che in questo caso rappresentano un disco e le sue partizioni con il "mount point" su cui tali partizioni sono eventualmente montate.

("sd*" sta' per "scsi disk", in quanto l'accesso avviene attraverso il sottosistema SCSI anche se in realtà si tratta di dispositivi SATA, USB, firewire, ecc. Su voyage i dischi PATA appaiono invece come "hd*" in quanto il suo kernel utilizza il vecchio sottosistema dedicato. La lettera che segue -a,b,c,...,z- è solo un numero progressivo che serve a distinguere i vari dischi. Il numero -1,2,...,n- che eventualmente segue indica la partizione. Il device senza numero rappresenta l'intero disco, mentre quelli seguiti da un numero servono all'accesso diretto alle varie partizioni eventualmente presenti).

Nel caso di dischi e partizioni, il device file è una interfaccia a basso livello ai dati grezzi che ci sono scritti fisicamente. Scrivere su un device file significa by-passare completamente qualsiasi file system o altra sovrastruttura. Copiare qualcosa con "dd" (che non fa altro che copiare pedissequamente un certo numero di bytes da un file ad un altro) su un device file anziché nel suo mount point significa distruggere il file system, sovrascrivendo l'inizio della partizione (e quindi di solito anche le strutture del file system che eventualmente ci era stato creato) con i bytes che ci hai copiato. Cosa che ovviamente è ben diversa dal copiare un file nel file system!

Insomma occhio a quello che fai, perché con un comando sbagliato puoi distruggere tutto (ma proprio tutto) in un colpo solo. Senza che ti venga chiesta alcuna conferma.

Altra cosa fondamentale è che i file system dei sistemi Unix e Linux sono organizzati in modo rigido: non puoi (*) scrivere quello che ti pare dove capita, ma devi sempre seguire rigorosamente l'organizzazione prevista. Nel caso di Linux, questa è definita dal "Filesystem Hierarchy Standard" (FHS), a sua volta parte della "Linux Standard Base" (LSB).

http://it.wikipedia.org/wiki/Linux_Standard_Base

http://it.wikipedia.org/wiki/Filesystem ... y_Standard

(*) non è che non puoi nel senso che ti viene impedito: sei tu che devi stare attento a non farlo! I sistemi Unix assumono che gli utenti (ed in particolar modo l'amministratore di sistema) sappiano esattamente cosa stanno facendo. Su Linux nulla ti impedirà mai di fare ciò che vuoi, compreso darti la zappa sui piedi o distruggere il sistema in un colpo solo. Qualsiasi cosa tu gli dica di fare (se hai i permessi per farlo) lui la fa':

"UNIX was not designed to stop you from doing stupid things, because that would also stop you from doing clever things".

Tornando al punto, IIRC il file "boot.lnx" deve contenere una copia del boot sector della partizione di voyage che contiene grub (ed ovviamente la copia deve essere fatta dopo che grub è stato correttamente installato in quel boot sector).

Quindi, assumendo che il disco sistema visto dal live system sia "sdf", prima devi montare il file system /dev/sdf1 da qualche parte (ad es. sotto /mnt/windows oppure /media/disk o quello che ti pare) e poi dare il comando:

Codice: Seleziona tutto

dd if=/dev/sdf3 of=/mnt/windows/boot.lnx bs=512 count=1
che copia i primi 512 bytes della 3a partizione del disco sdf (cioè il boot sector) nel file boot.lnx (nella root del file system montato su /mnt/windows/, qualunque esso sia).

Ma, ripeto, si tratta di una procedura macchinosa e poco affidabile. È infinitamente più comodo ed affidabile avere grub nel MBR ed avviare qualsiasi OS direttamente con quello, fidati. ;)
Ciao, Paolo.

«Se tu hai una mela, e io ho una mela, e ce le scambiamo, tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee.»
Rispondi
  • Argomenti simili
    Risposte
    Visite
    Ultimo messaggio