C'è un modo per aggiornare la mia versione a 32 bit di Ubuntu alla versione a 64 bit? Uso Ubuntu 9.10.
Se non esiste un modo semplice, cosa succede se copio semplicemente la mia home e le /etc
directory nella nuova installazione, funzionerà?
C'è un modo per aggiornare la mia versione a 32 bit di Ubuntu alla versione a 64 bit? Uso Ubuntu 9.10.
Se non esiste un modo semplice, cosa succede se copio semplicemente la mia home e le /etc
directory nella nuova installazione, funzionerà?
Risposte:
Sfortunatamente, come altri sistemi operativi, non esiste un "percorso di aggiornamento" per farlo. Quasi sicuramente dovrai fare una reinstallazione.
Per quanto riguarda la conservazione dei dati, il backup della home directory sarebbe una buona idea insieme a qualsiasi altro dato e dovrebbe essere facilmente importato nella nuova installazione.
Fai sempre il backup dei tuoi dati prima di tentare qualsiasi cosa!
Non mi limiterei a copiarlo /etc
in caso di lievi differenze tra i requisiti di configurazione per le compilazioni di pacchetti a 64 bit, ma prendere una copia e quindi diff
reimpostare la copia sul sistema a 64 ma appena installato funzionerebbe. È probabile che il numero di modifiche non sia enorme, quindi fare questo e apportare le modifiche richieste manualmente non sarà una grande difficoltà.
Copiare /etc
come suggerisci dovrebbe funzionare bene però - lo farei solo nel modo più lungo per motivi di paranoia. La copia /home
, la principale area di preoccupazione durante la migrazione da un'installazione all'altra, ha maggiori probabilità di essere completamente sicura.
Se stai solo cercando di passare a 64 bit per utilizzare più RAM piuttosto che perché devi specificamente utilizzare applicazioni a 64 bit, puoi semplicemente usare un kernel a 64 bit con uno spazio utente a 32 bit. Debian in realtà fornisce pacchetti kernel a64 nei loro repository i386, quindi può essere fatto semplicemente aptitude install linux-image-2.6-amd64
, ma Ubuntu sfortunatamente no, quindi dovresti compilare il tuo kernel che potrebbe non valere il tempo + seccatura se non lo sei che tecnicamente sperimentato (cioè questo è semplice, ma solose hai già compilato il tuo kernel in precedenza, sii comodo con il processo). Se esegui un kernel a 64 bit con una userland a 32 bit, una singola app può comunque accedere a ~ 3Gb al massimo (in alcuni casi solo ~ 2Gb), ma il sistema nel suo insieme (tutti i processi insieme più le cose del kernel come IO cache e buffer) possono usare tutto quello che hai. Ogni VM VMWare conta come una singola app per questi scopi: eseguo uno dei miei host VM più vecchi in questo modo (le VM usano ~ 7Gb in totale con kernel a 64 bit, userland a 32 bit e VMWare a 32 bit) poiché era più veloce rispetto a un aggiornamento completo del sistema operativo host a 64 bit quando ho aggiornato la CPU della macchina a quella a 64 bit e ho aggiunto la RAM aggiuntiva - immagino che anche soluzioni VM simili funzionerebbero allo stesso modo.
Ho reinstallato la mia macchina da 32 bit 10.10 a 64 bit 10.10 il mese scorso, senza perdere alcun dato. L'unico trucco è scegliere gli strumenti di ridimensionamento del disco, non formattare l'intero disco, quando si reinstalla Ubuntu 10.10 a 64 bit.
L'esecuzione di un'area utente a 32 bit su un kernel a 64 bit può causare problemi non appena vengono coinvolte le strutture di sistema. Ad esempio, l'uso della libalsa a 32 bit su un kernel a 64 bit funzionerà quasi ma sarà inaffidabile e instabile perché le strutture di dati ioctl definite in asound.h hanno dimensioni e disposizioni diverse quando compilate con architetture a 64 bit e 32 bit.
Quindi usando jackd -d alsa -X alsaraw (o il suo equivalente jackd2) si interromperà con un'asserzione fallita quando si chiama un'utilità a 32 bit su un kernel a 64 bit. Il funzionamento audio standard sarà molto meno affidabile poiché i conteggi del buffer vengono interpretati in modo errato.
In generale, qualsiasi struttura di dati del kernel deve essere dichiarata in un modo in cui le loro dimensioni non differiscono tra i kernel a 32 e 64 bit, oppure il codice a 32 bit deve essere intelligente sull'uso di definizioni di strutture diverse in corrispondenza dell'architettura del kernel.
Quindi, tutto sommato, probabilmente è meglio reinstallare da zero e trasferire la propria partizione / directory home.
etckeeper
sul vecchio sistema e sul nuovo sistema e dopo aver installato tutti i pacchetti extra (dselect
edpkg -l
) installati sul vecchio sistema, unire le modifiche rispetto ai file di configurazione dist nel nuovo sistema;) ...