Come bypassare la schermata "Provalo / Installa" quando si avvia da Live Session USB? (senza installazione in USB)


35

Questo è già stato chiesto più volte (l'ho trovato qui , qui e qui ), ma praticamente tutti semplicemente consigliano di eseguire un'installazione completa sulla chiavetta USB. Ma ne ho bisogno per rimanere come una sessione LIVE, non una "installazione completa su USB", per una serie di motivi (il più importante è che usando la sessione Live posso facilmente installare Ubuntu usando l'icona del desktop)

Quindi, i miei vincoli per saltare la schermata di benvenuto (e scegliere automaticamente l'opzione "Prova Ubuntu") sono:

  • Deve essere effettivamente la sessione di Ubuntu Live (o il più vicino possibile al valore predefinito). Stessa selezione di software (gparted è presente nelle sessioni live, gimp non lo è, ad esempio), utente (nome e ID), comportamento (nessuna schermata di accesso, nessuna password per sudo, solo per citarne alcuni), nessun GRUB, ecc. un'installazione completa Ubuntu su USB.

  • Deve essere in grado di installare Ubuntu nel computer (mentre l'installazione completa richiede il file ISO, una chiavetta USB aggiuntiva e il fastidio di Startup Disk Creator)

  • Se possibile, per essere veloce come il "launcher basato su testo" (quello che hai quando premi un tasto subito dopo il caricamento del kernel)

  • Deve essere completamente automatico, incustodito dall'avvio al desktop.

  • Seleziona una lingua diversa da quella predefinita. Può essere una selezione con filo rigido (in realtà, deve, poiché lo stesso avvio deve essere completamente incustodito). Ma preferibilmente può essere facilmente modificato ("facilmente" come nella modifica di un file di configurazione e nel riavvio)

È possibile?

Le soluzioni (fantastiche) proposte che ho escluso finora sono:

  • Installazione di Ubuntu nella chiavetta USB (per tutti i motivi sopra indicati)

  • Rimuovi Ubiquitypacchetto (rimuove la possibilità di installare il sistema anche da quella USB)

  • Ubuntu Customization Kit (ubk): diversi limiti e avvertenze , e non è nemmeno nei repository

  • Remastersys / LiLi: è lo stesso dell'installazione USB diretta completa, solo personalizzata.

Una soluzione ideale sarebbe qualcosa come "creare USB malato usando Startup Disk Creator, quindi aprirlo e rimuovere / modificare / aggiungere file (s) xxx, yyy, zzz"


Ho sostituito il codice sulla mia USB che avevo in syslinux.cfg con quello che mi era stato suggerito, ma ho ancora ricevuto il prompt. (Linee originali: prompt vesamenu.c32 0 timeout 50 ui gfxboot bootlogo) È possibile che dovrei fare qualcosa con txt.cfg (sotto): etichetta persist menu label ^ Modalità persistente kernel / casper / vmlinuz append bootkbd = us console- setup / layoutcode = it_US console-setup / variantcode = nodeadkeys locale = us_us persistente noprompt cdrom-detect / try-usb = file vero = / cdrom / preseed / ubuntu.seed boot = casper initrd = / casper / initrd.lz splash - etichetta menu dal vivo etichetta ^ kernel modalità live / casper / vmlinuz append
user142859

Risposte:


41

Questa guida è stata realizzata per Ubuntu (Gnome). Funziona anche per Kubuntu (KDE), con alcune eccezioni

Sono stato in grado di avviare direttamente il Live CD in una sessione Live senza timeout o menu di fantasia, opzionalmente con un language pack installato.

Live USB (16.04)

  1. Montare l'USB con Ubuntu installato
  2. Eseguire il backup del file syslinux/syslinux.cfg. Lo modificheremo, quindi dobbiamo sostituirlo nuovamente se qualcosa va storto.
  3. Aprire i seguenti file nella directory syslinux: syslinux.cfge txt.cfg
  4. Elimina (o commenta) tutto in syslinux.cfg.
  5. Il txt.cfgfile ha le voci di menu predefinite di GRUB. Copia quello live su syslinux.cfg:

    default live
    label live
    menu label ^Try Ubuntu without installing
    kernel /casper/vmlinuz.efi
    append file=/cdrom/preseed/ubuntu.seed boot=casper cdrom-detect/try-usb=true persistent noprompt floppy.allowed_drive_mask=0 ignore_uuid initrd=/casper/initrd.lz quiet splash --
    
  6. È possibile aggiungere tutti i parametri specifici del kernel necessari per il proprio dispositivo nella riga append.

  7. Salvare isolinux.cfg e avviare il sistema tramite USB. Si avvierà direttamente sul desktop ora.

Live USB (13.10)

  1. Montare l'USB con Ubuntu installato
  2. Eseguire il backup del file isolinux/isolinux.cfg. Lo modificheremo, quindi dobbiamo sostituirlo nuovamente se qualcosa va storto.
  3. Aprire i seguenti file nella directory isolinux: isolinux.cfge txt.cfg
  4. Elimina tutto in isolinux.cfg.
  5. Il txt.cfgfile ha le voci di menu predefinite di GRUB. Copia quello live su isolinux.cfg:

    default live
    label live
    menu label ^Try Ubuntu without installing
    kernel /casper/vmlinuz.efi
    append file=/cdrom/preseed/ubuntu.seed boot=casper cdrom-detect/try-usb=true persistent noprompt floppy.allowed_drive_mask=0 ignore_uuid initrd=/casper/initrd.lz quiet splash --
    
  6. È possibile aggiungere tutti i parametri specifici del kernel necessari per il proprio dispositivo nella riga append.

  7. Salvare isolinux.cfg e avviare il sistema tramite USB. Si avvierà direttamente sul desktop ora.

[ fonte ]

Live USB (11.04)

  1. Vai alla cartella principale di Live USB
  2. Inserisci la syslinuxdirectory
  3. Rendi il syslinux.cfgfile scrivibile
  4. Sostituisci il contenuto del file syslinux.cfgcon:

    default live
    label live
      say Booting an Ubuntu Live session...
      kernel /casper/vmlinuz
      append  file=/cdrom/preseed/ubuntu.seed boot=casper initrd=/casper/initrd.lz quiet splash noprompt --
    
  5. Opzionale: localizza il sistema (vedi sotto)

CD live

  1. Se hai un Live CD nell'unità CD, montalo. Altrimenti, se hai un file ISO disponibile, montalo /media/cdromeseguendo il comando successivo in un terminale (sostituisci il nome del .isofile di conseguenza):

    sudo mount -o loop,ro ubuntu-11.04-desktop-amd64.iso /media/cdrom
    
  2. Creare una directory temporanea in cui è possibile memorizzare il contenuto del CD, ad esempio ~/live-cd( mkdir ~/live-cd)
  3. Copia il contenuto del CD nella cartella ~/live-cd/iso( cp -r /media/cdrom ~/live-cd/iso)
  4. Poiché il Live CD non è più necessario, può essere smontato ( sudo umount /media/cdrom)
  5. Apri la ~/live-cd/isocartella ( cd ~/live-cd/iso)
  6. Inserisci la isolinuxdirectory ( cd isolinux)
  7. Rendi il isolinux.cfgfile scrivibile ( chmod u+w isolinux.cfg)
  8. Sostituisci il contenuto del file isolinux.cfgcon:

    default live
    label live
      say Booting an Ubuntu Live session...
      kernel /casper/vmlinuz
      append  file=/cdrom/preseed/ubuntu.seed boot=casper initrd=/casper/initrd.lz quiet splash --
    
  9. Opzionale: localizza il sistema (vedi sotto)
  10. Apri un terminale ed esegui:

    cd ~/live-cd
    chmod u+w iso/isolinux/isolinux.bin
    mkisofs -r -V "Ubuntu Live session" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o ubuntu-11.04-live-amd64.iso iso
    
  11. Il nuovo iso sarà disponibile all'indirizzo ~/live-cd/ubuntu-11.04-live-amd64.iso. Per risparmiare spazio, è ~/live-cd/isopossibile rimuovere la directory. ( rm -rf ~/live-cd/iso)
  12. Ora masterizza il ubuntu-11.04-live-amd64.isofile su un CD, se necessario.

Localizza Ubuntu (traduzioni)

Se si desidera che il sistema nelle lingue inglese, spagnolo, portoghese, Xhosa o cinese semplificato, hai appena di aggiungere l' locale=opzione di avvio con en, es, pt, xho zhalla appendlinea come in:

... quiet splash locale=pt --

Altrimenti, se non si desidera modificare il file contenente il file system radice ( filesystem.squashfs) e non si ha problemi a fare hacking, continuare a leggere.

Apri un terminale e vai alla ~/live-cd/isodirectory e inserisci il codice da http://pastebin.com/VTdt9WFZ in un file (chiamalo install-locale) ed eseguilo.

Questo script monta filesystem.squashfs, recupera le informazioni sulla versione dei language pack da esso, scarica i pacchetti e li inserisce nella directory locale-hack. Successivamente, viene creato uno script che installa i pacchetti lingua al momento dell'avvio. Per farlo funzionare, lo script modifica anche il file syslinux.cfgo isolinux.cfgper applicare queste modifiche.

Ti verrà chiesto un locale, inserisci qualcosa come nlo de. La sceneggiatura non è così intelligente da capire cose come Dutcho German. Successivamente, il file può essere rimosso

I comandi del terminale che dovrebbero essere eseguiti:

cd ~/live-cd/iso
wget http://pastebin.com/raw.php?i=VTdt9WFZ -O install-locale
bash install-locale
rm install-locale

Notare che l'aggiunta del language pack può far sì che il .isofile generato sia più grande di 700 MB che non si adatta a un CD. Per le macchine virtuali, tuttavia, è sufficiente. Questo hack ha come effetto collaterale che Plymouth non funziona (cioè non si ottiene una schermata di avvio elaborata), ma almeno il sistema viene tradotto quando si accede. Altrimenti, è stato necessario installarlo language-pack-gnome-*manualmente.

Riferimenti


+1 per quello! Ha funzionato! (usando il metodo Live USB). Prenderò anche in considerazione l'aggiunta noprompt cdrom-detect/try-usb=truealla appendlinea, poiché è così txt.cfg. Sai cosa fanno questi parametri aggiuntivi? Inoltre, è possibile migliorare la soluzione per includere la lingua?
MestreLion,

nopromptarresta il sistema senza chiedere la rimozione del CD. L'ho aggiunto alla linea Live USB perché non ha senso con i supporti USB. Non so cosa cdrom-detect/try-usb=true. Tutti i language pack non sono inclusi per impostazione predefinita nel Live CD a causa delle sue dimensioni. Per impostare una locale diversa (ad es. NL), passa l' locale=nl_NLopzione sulla appendlinea. Questo imposterà le impostazioni locali ma non la lingua per Gnome perché il pacchetto non è semplicemente disponibile sul Live CD.
Lekensteyn,

@MestreLion: aggiornato con un hack per un ambiente localizzato.
Lekensteyn,

@Lekensteyn: i pacchetti sono disponibili sul Live CD, perché quando si seleziona una lingua diversa, Ubuntu avvia la sessione Live in quella lingua. Proverò il tuo suggerimento in merito locale=pt_BR. Forse è tutto ciò che serve.
MestreLion,

@MestreLion: non proprio, l'ho provato con entrambi locale=nle con il menu di selezione della lingua su Try / Install. In entrambi i casi, ho ottenuto un layout inglese, anche se il localecomando genera nl_NL.UTF-8.
Lekensteyn,

1

Quanto sopra funziona alla grande per entrambe le installazioni di Startup Disk Creator e UNetbootin. Se si utilizza un'unità flash persistente, si desidera aggiungere la parola persistente in questo modo:

default live
label live
  say Booting an Ubuntu Live session...
  kernel /casper/vmlinuz
  append  file=/cdrom/preseed/ubuntu.seed boot=casper persistent initrd=/casper/initrd.lz quiet splash noprompt --

Per un sistema a 64 bit il codice è leggermente diverso

default live
label live
  say Booting an Ubuntu Live session...
  kernel /casper/vmlinuz.efi
  append  file=/cdrom/preseed/ubuntu.seed boot=casper persistent initrd=/casper/initrd.lz quiet splash noprompt --

È diverso dalla risposta di Lekensteyn combinata con il suo commento del 20 giugno 11 alle 8:08?
MestreLion,

Non sono sicuro, dove posso trovare il suo commento del 20 giugno 11 alle 8:08?
CSCameron,

È il terzo dall'ultimo commento nella sua risposta sopra
MestreLion,

La risposta originale è stata modificata dal mio post, la risposta originale di Lekensteyn non menzionava "persistente" o ".efi" richiesto per 64 bit.
CSCameron,

1

Nel 14.04 e forse prima, Ubiquity utilizza upstart per iniziare. Puoi disabilitarlo modificando /etc/init/ubiquity.conf.

1) Se non si utilizza l'installazione Live stessa, prima montare casper-rw:

# Mount the usb_drive manually if nautilus has not done it for you
# Change sdb1 to the proper location of your usb drive, find it using sudo blkid
sudo mkdir /media/$USER/usb_drive
sudo mount /dev/sdb1 /media/$USER/usb_drive
# Create a mount point for the read-write file system and mount via loopback
sudo mkdir /media/$USER/casper-rw
sudo mount -o loop /media/$USER/usb_drive/casper_rw /media/$USER/casper-rw
cd /media/$USER/casper-rw

2) Modifica etc/init/ubiquity.confall'interno dell'installazione Live e commenta le seguenti righe:

#start on (starting gdm
#          or starting kdm
#          or starting xdm
#          or starting lxdm
#          or starting lightdm)

Se stai rimasterizzando il disco, puoi semplicemente modificare il master ubiquity.confnel sistema squashfs. Ubiquity sarà quindi completamente fuori mano al riavvio.

3) Smontare le unità

sudo umount /media/$USER/*

0

Qual è il motivo per cui non volevi remaster? È possibile installare il sistema operativo, creare un iso con remastersys estrarre il file squashfs e sostituire quello sull'iso stock (o cartella USB premade)

Lo faccio spesso


1
Usando remastersys finirei con un'installazione completa, non con una sessione live. Leggi il mio primo vincolo: deve essere effettivamente la sessione Ubuntu Live (o il più vicino possibile al valore predefinito). Stessa selezione di software (gparted è presente nelle sessioni live, gimp non è, ad esempio), utente (nome e ID), comportamento (nessuna schermata di accesso, nessuna password per sudo, solo per citarne alcuni), nessun GRUB, ecc. una installazione completa di Ubuntu su USB.
MestreLion,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.