Arquivo persistente NÃO está funcionando para 13.04

2

Instalei com sucesso o 13.04 (64) em um WD "My Passport" (1 Tb) sem qualquer solavanco na estrada. Funciona muito bem ... Por isso, queria transmitir um pouco mais e experimentar o "LiveUSB" em um pen drive de 16 Gb.

Eu usei 4 instaladores USB diferentes, o último foi o Unetbootin (incluindo a inicialização do Ubuntu). Eu defino o arquivo persistente em 4 Gb para permitir uma configuração completa. NONE definiu o arquivo persistente corretamente (que é meu palpite), pois NENHUMA das minhas alterações foram salvas.

Li várias respostas para este problema, TODAS as quais não tinham informações relevantes (becos sem saída) ou o que foi dito já estava presente. Como editar o arquivo syslinux.cfg para - persistente.

Meu GUESS é que tem a ver com "Permissões", tentei configurar um usuário como administrador, ele também não conseguiu salvar. Parece-me que, se agora estão usando o SSDD para substituir o HDD mecânico, os polegares devem funcionar para uma carga / instalação padrão ...

Por favor, note que procuraram os sites dos autores por "Suporte" com resultados ZERO.

Eu formatei o drive "fat32"

Aqui estão os arquivos da unidade;

01/17/2013  12:06 PM         1,345,530 ubnkern
04/24/2013  01:10 PM        22,252,127 ubninit
05/06/2013  02:08 PM    <DIR>          .disk
05/06/2013  02:08 PM    <DIR>          EFI
05/06/2013  02:08 PM    <DIR>          boot
05/06/2013  02:08 PM    <DIR>          casper
05/06/2013  02:08 PM    <DIR>          dists
05/06/2013  02:08 PM    <DIR>          install
05/06/2013  02:08 PM    <DIR>          isolinux
05/06/2013  02:08 PM    <DIR>          pics
05/06/2013  02:08 PM    <DIR>          pool
05/06/2013  02:08 PM    <DIR>          preseed
05/06/2013  02:08 PM             1,053 ubnpathl.txt
04/24/2013  02:25 PM               229 README.diskdefines
04/24/2013  02:23 PM               134 autorun.inf
04/24/2013  02:25 PM            18,354 md5sum.txt
04/23/2013  10:10 AM         2,559,512 wubi.exe
05/06/2013  02:11 PM            11,694 ubnfilel.txt
>> 05/06/2013  02:11 PM             1,880 syslinux.cfg
05/06/2013  02:11 PM            60,928 menu.c32
>> 05/06/2013  02:24 PM     4,294,963,200 casper-rw

Como você pode ver, o casper-rw está lá.

Além disso, aqui está o conteúdo do arquivo syslinux.cfg;

default menu.c32
prompt 0
menu title UNetbootin
timeout 100

label unetbootindefault
menu label Default
kernel /ubnkern
append initrd=/ubninit file=/cdrom/preseed/ubuntu.seed boot=casper quiet splash -- persistent

label ubnentry0
menu label ^Help
kernel /ubnkern
append initrd=/ubninit  persistent

label ubnentry1
menu label ^Try Ubuntu without installing
kernel /casper/vmlinuz.efi
append initrd=/casper/initrd.lz file=/cdrom/preseed/ubuntu.seed boot=casper  quiet splash -- persistent

label ubnentry2
menu label ^Install Ubuntu
kernel /casper/vmlinuz.efi
append initrd=/casper/initrd.lz file=/cdrom/preseed/ubuntu.seed boot=casper only-ubiquity  quiet splash -- persistent

label ubnentry3
menu label ^Check disc for defects
kernel /casper/vmlinuz.efi
append initrd=/casper/initrd.lz boot=casper integrity-check  quiet splash -- persistent

label ubnentry4
menu label Test ^memory
kernel /install/mt86plus
append initrd=/ubninit  persistent

label ubnentry5
menu label ^Boot from first hard disk
kernel /ubnkern
append initrd=/ubninit  persistent

label ubnentry6
menu label Try Ubuntu without installing
kernel /casper/vmlinuz.efi
append initrd=/casper/initrd.lz file=/cdrom/preseed/ubuntu.seed boot=casper quiet splash -- persistent

label ubnentry7
menu label Install Ubuntu
kernel /casper/vmlinuz.efi
append initrd=/casper/initrd.lz file=/cdrom/preseed/ubuntu.seed boot=casper only-ubiquity quiet splash -- persistent

label ubnentry8
menu label OEM install (for manufacturers)
kernel /casper/vmlinuz.efi
append initrd=/casper/initrd.lz file=/cdrom/preseed/ubuntu.seed boot=casper only-ubiquity quiet splash oem-config/enable=true -- persistent

label ubnentry9
menu label Check disc for defects
kernel /casper/vmlinuz.efi
append initrd=/casper/initrd.lz boot=casper integrity-check quiet splash -- persistent

Aqui está uma idéia que eu tive, se essas referências "casper" fossem lidas como casper-rw?

Edit #3

Aqui está o conteúdo do arquivo "Grub.cfg";

if loadfont /boot/grub/font.pf2 ; then
    set gfxmode=auto
    insmod efi_gop
    insmod efi_uga
    insmod gfxterm
    terminal_output gfxterm
fi

set menu_color_normal=white/black
set menu_color_highlight=black/light-gray

menuentry "Try Ubuntu without installing" {
    set gfxpayload=keep
    linux   /casper/vmlinuz.efi  file=/cdrom/preseed/ubuntu.seed boot=casper quiet splash --
    initrd  /casper/initrd.lz
}

menuentry "Install Ubuntu" {
    set gfxpayload=keep
    linux   /casper/vmlinuz.efi  file=/cdrom/preseed/ubuntu.seed boot=casper only-ubiquity quiet splash --
    initrd  /casper/initrd.lz
}

menuentry "OEM install (for manufacturers)" {
    set gfxpayload=keep
    linux   /casper/vmlinuz.efi  file=/cdrom/preseed/ubuntu.seed boot=casper only-ubiquity quiet splash oem-config/enable=true --
    initrd  /casper/initrd.lz
}

menuentry "Check disc for defects" {
    set gfxpayload=keep
    linux   /casper/vmlinuz.efi  boot=casper integrity-check quiet splash --
    initrd  /casper/initrd.lz
}

Ok, isso é inicializado diretamente na área de trabalho, sem solicitações de login (NATCH). Eu estou pensando que o GRUB é o problema. Aqui está a sequência para inicialização;

  1. Menu de inicialização
  2. Selecione EFI USB
  3. Então há 4 opções do Grub (eu acredito), elas são;
  4. Experimente o Ubuntu (sem instalar)
  5. Instalar o Ubuntu
  6. Instalação OEM
  7. Verificar disco

Natch eu estou escolhendo "Try". E acho que esse é o problema real. Esforços para criar usuário falham após a reinicialização. Nada parece ser salvo / escrito no arquivo casper-rw.

Existem 9 itens no syslinux.cfg, o Grub mostra 4 ...

    
por Robert Blackney 06.05.2013 / 23:23

4 respostas

3

Se você está em uma máquina de boot segura / uefi, você possivelmente está enfrentando o bug 1159016. As máquinas uefi usam o grub em vez do syslinux, então o workaound até que uma correção seja feita é editar o stick / s / boot / grub / grub.cfg e adicione a palavra "persistente" às linhas do kernel.

    
por ubfan1 07.05.2013 / 01:59
1

Isso não se encaixa no escopo da minha resposta anterior, então estou criando uma nova.

OK, você usa o Unetbootin para criar seu pendrive. Olhando para o seu syslinux.conf, ele parece meio mutilado, mas você disse que poderia entrar em um Ubuntu funcional.

Bem, para se livrar das variáveis extras adicionadas usando o Unetbootin, etc. para criar um disco, vamos fazer a maneira real de criar um BootUSB.

Desde o final de 2010, o Ubuntu vem enviando o que é chamado de "ISO híbrido". Um ISO do hyrid é um híbrido entre uma imagem de HDD e uma imagem de CD. Basicamente, é um CD-ROM com um bootloader de 512-btye no começo, para que ele possa ser inicializado como um disco rígido também.

O que isso significa para você? Isso significa que você pode copiar diretamente a imagem do CD para a unidade USB e ter uma unidade USB Ubuntu totalmente inicializável.

NOTA: Usar o dd para criar um disco irá apagar tudo nele. Faça backup de qualquer coisa que você queira salvar (e seu arquivo casper-rw, já que ele não existe no CD)!

Windows:

EDIT: Existe realmente um método mais fácil de fazer isso, que é muito menos técnico. Você poderia simplesmente baixar o Win32 Disk Imager , que foi feito por desenvolvedores do Ubuntu para fazer a mesma coisa que o dd for Windows faz, apenas de uma maneira muito mais simples. É muito intuitivo. Se você optar por seguir esse caminho, basta baixá-lo no link fornecido e pular para a última seção.

O Windows não tem a capacidade nativa de copiar diretamente um arquivo para um disco rígido como precisamos, então a primeira coisa que você precisa fazer é baixar dd para Windows (usei a versão 0.5 para meus testes).

Para garantir a segurança do seu HDD, você deve renomear o arquivo de dd.exe para dd-removable.exe. Isso garantirá que o dd funcionará somente em discos removíveis.

Seguindo em frente, primeiro você precisa descobrir qual unidade você copiará a imagem.

Primeiro, abra um prompt de comando Ctrl + R, digite "cmd" e pressione Enter.

A partir daqui, você deseja cd no diretório em que você salvou o programa dd. Para mim, isso foi Desktop. Para você, isso pode ser Downloads.

cd Desktop

Agora, você quer que o DD forneça uma lista de todos os dispositivos

dd --list

Isto imprimirá uma lista de todos os dispositivos. Você está procurando por um que diga "Mídia removível". (Acredito, meu caso de teste da VM ainda mostra isso como um disco fixo que não deveria ser o caso).

De todas as entradas que dizem "Mídia removível", você quer encontrar a que tem o mesmo tamanho do seu disco rígido. Isso pode ser um pouco difícil, pois é em bytes, mas a fórmula geral é de 1 bilhão por 1 gigabyte. Não é garantia, mas deve ser o último da lista.

Uma vez que você tenha localizado qual o número do disco que você tinha, vá em frente e copie o arquivo para o disco USB! Você executará um comando semelhante a este:

dd if=C:\path\to\ubuntu\ISO of=\?\Harddisk2\Partition0

É importante notar que é sempre Partition0, a variável aqui é qual o número "Harddisk" a usar. No meu caso, eu tinha um disco rígido de inicialização virtual (que deveria ser Harddisk1 por padrão) e tinha um disco virtual USB que acabou sendo Harddisk1.

Linux:

Primeiro, determine o nome do dispositivo da sua unidade flash:

mount

Na lista você deve ver algo que diz algo como / media / ???? - ???? cada '?' é um número ou uma letra de A-F. Se você tiver mais de um desses, o CD para / media e descobrir qual deles tem os arquivos do seu USB. Se for 0000-FFFF, procure essa entrada no comando mount . Ele deve dizer algo como "/ dev / sdb1 montado em / media / 0000-FFFF". O importante a notar aqui é o "/ dev / sdb1"

Portanto, se a saída obtida for "/ dev / sdb1", o dispositivo de unidade será / dev / sdb - basta remover o número do final.

Certifique-se de fazer seus backups, conforme mencionado acima, antes de executar os próximos comandos.

sudo umount /dev/sdb1 #unmount your flash drive
sudo dd if=/path/to/ubuntu/iso of=/dev/sdb #write the file to the flash drive

Ambos:

Quando o comando estiver concluído, você deve ter um Ubuntu inicializável sem todas as coisas extras adicionadas pelo Unetbootin ou qualquer outro programa. É um disco puro do Ubuntu, como se tivesse sido feito a partir de um CD-ROM.

Antes de recolocar seus arquivos de backup, você precisará redimensionar a partição usando o Utilitário de Disco do Windows (sob as Ferramentas Administrativas - > Gerenciamento do Computador no painel de controle) ou o Gparted.

Uma vez que você tenha seu disco funcionando, você pode editar /boot/grub/menu.cnf e (eu acredito que seja) /isolinux/txt.cfg e anexar a opção "persistir" e remover o seu backup de casper- rw na raiz da unidade.

    
por Chuck R 07.05.2013 / 04:07
0

Eu fiz muitas personalizações ao vivo para o Ubuntu, já que já faz um tempo. Eu me lembro do dia em que você teve que configurar a persistência manualmente.

  • Vejo que você tem a opção persistent do kernel, esse é o primeiro passo. Apenas para garantir, você também deve adicionar persistent às outras entradas de inicialização (além de "Teste de memória" e "Inicializar do primeiro disco rígido").
  • Você deve estar usando um sistema de arquivos baseado em FAT para seu disco USB.
  • O arquivo que é persistente tem para ser denominado casper-rw e deve existir na raiz da unidade

Se você não tem esse arquivo casper-rw, então esse é o seu problema. Vou guiá-lo através da criação de um através do próprio Ubuntu LiveUSB.

A primeira coisa é, quando você inicializa o LiveUSB e acessa a área de trabalho, abre um terminal e digita

mount -o remount,rw /cdrom #(/cdrom is actually your USB disk when using a USB).

Como os sistemas de arquivos baseados em FAT não podem criar arquivos esparsos, teremos que esperar em dd para criar um arquivo completo de 4GB:

dd if=/dev/zero of=/cdrom/casper-rw bs=1M count=4096

Isto fará um arquivo de 4 gigabytes (ou próximo o suficiente, não tenho certeza se o dd usa notação binária ou decimal para Megs) chamado casper-rw na raiz da sua unidade.

A etapa final é criar um sistema de arquivos ext2 nesse arquivo. Fantasia!

mkfs.ext2 -F /cdrom/casper-rw

Agora, quando você reinicializar você deve inicializar em uma instalação USB ativa e persistente.

EDIT: Em resposta ao meu comentário abaixo, parece que nada mudou em relação ao carregamento do arquivo de persistência. A única ressalva é que, para funcionar, ele DEVE estar na raiz de um sistema de arquivos FAT (ou seja, o sistema de arquivos precisa ser carregado com o driver vfat. Isso significa FAT16 ou FAT32). Para meu conhecimento, o exFAT não funcionará.

EDIT 2: Apenas pesquisou o suporte a Linux exFAT. Atualmente, o exFAT precisa ser montado usando uma extensão FUSE e não é suportado pelo driver vfat, portanto não funcionará.

EDIT 3: OK, então você tem o casper-rw. Intrigante. Então, em algum lugar ao longo da linha, ele não está inicializando com a opção persistente. Agora, eu sei que costumava ser quando você viu o ícone para o cara com um teclado embaixo dele que você tinha que apertar uma tecla. Caso contrário, ele será inicializado com a opção de kernel "talvez-ubquity". No entanto, não tenho certeza de onde o splash scree estava recebendo o resto de seus flags de boot (está escrito em PostScript para gfxboot. Totalmente horrível de tentar decifrar), se fosse mesmo. Portanto, não pressionar nenhuma tecla ao inicializar pode invalidar as alterações feitas em grub.cnf ou syslinux.conf.

EDIT 4: Estou passando pelo código gfxboot-theme-ubuntu agora, e parece que ele puxa todas as suas linhas de comando diretamente do syslinux.conf - mesmo que ele exista no root. No entanto, a entrada syslinux.conf que acrescenta "talvez-uquity" e executa se nenhuma tecla for pressionada é algo que eu ainda estou tentando decifrar.

    
por Chuck R 06.05.2013 / 23:39
0

Eu tive esse problema com o 13.04 agora e corrigi-lo editando boot / grub / grub.cfg e adicionando persistente à linha de comando.

Eu observei em sua postagem que você adicionou essa palavra-chave AFTER the -, que pode ser o problema lá, já que o - significa 'não há mais opções de kernel após este ponto'. Você pode verificar as opções com as quais seu kernel realmente inicializou, observando o conteúdo de / proc / cmdline

Então, em vez de "- persistent", tente "persistent -".

Uma outra coisa que notei é que, quando a persistência está funcionando (exceto as que sobrevivem a uma reinicialização), o arquivo casper-rw é montado e exibido como um volume na unidade à esquerda.

    
por smeenz 02.09.2013 / 03:27