Portal:KIWI/FAQ

Ir para: navegação, pesquisa

Índice

FAQ editar

Q: Existe uma interface gráfica para KIWI?

Sim,

  • existe um módulo do YaST para o KIWI, e é chamado de Criador de Imagem que fornece interação gráfica ao usuário.
  • O SUSE Studio é uma interface baseada na Web para o KIWI.

FAQ editar

Q: Como posso criar uma imagem 32-bit num sistema 64-bit?

Prefixando os seus comandos para o KIWI com "linux32", e.g.

linux32 kiwi --prepare ...
linux32 kiwi --create ...

FAQ editar

Q: Existe um equipamento que contém o KIWI?

Sim,

  • um equipamento baseado em JeOS contendo o KIWI com os repositórios apropriados e configurados existe, veja limejeos.

FAQ editar

Q: Como posso influenciar o estado dos serviços que utilizam o chkconfig?

Você pode chamar o chkconfig de dentro do script config.sh em suas descrições de imagem.

O script config.sh é chamado em um ambiente chroot na imagem descompactada. A distribuição de funções específicas são prefixadas de acordo, por exemplo "suseInsertService".

Consulte as páginas man para uma lista de funções disponíveis no script config.sh ("man KIWI::config.sh")

FAQ editar

Q: Como posso alterar o layout de teclado?

A tag "keytable", dentro do elemento "preferences" no arquivo config.xml, determina o leiaute do teclado da imagem. Adicione a tag, ou altere o valor para um leiaute de teclado do seu agrado.

<preferences>
   ...
      <keytable>us.map.gz</keytable>
   ...
</preferences>

FAQ editar

Q: Posso usar o YaST na área da imagem descompactada?

Não,

  • a área da imagem descompactada é um sistema de arquivos raiz incompletos com peças importantes em falta. Qualquer modificação da imagem descompactada, fora da etapa de preparar o KIWI, leva a inconsistências entre a imagem resultante após a etapa criar e a descrição da imagem.

É veementemente recomendado evitar quaisquer alterações manuais na imagem descompactada.

FAQ editar

Q: Quais formatos de pacote posso usar com o KIWI?

No momento, o KIWI suporta os gerenciadores de pacotes smart e o zypper. O formato do pacote é dependente do gerenciador de pacotes selecionado. A tabela abaixo mostra os formatos de repositório suportado pelos dois gerenciadores de pacotes.

tipo smart zypper
apt-dep
sim
não
apt-rpm
sim
não
dep-dir
sim
não
mirrors
sim
não
red-carpet
sim
sim
rpm-dir
sim
sim
rpm-md
sim
sim
slack-site
sim
não
up2date-mirrors
sim
não
urpmi
sim
não
yast2
sim
sim

FAQ editar

Q: Como posso adicionar os drivers binários da NVIDIA e/ou ATI?

Adicionar estes drivers binários exige mudanças na imagem de inicialização. Você precisará alterar o arquivo config.xml da imagem de arranque para o seu tipo de imagem, por exemplo /usr/share/kiwi/image/usbboot/suse-xx.x/config.xml para uma imagem usb, pela adição dos drivers.

<drivers type="drivers">
   <file name="drivers/nvidia/*"/>
   <file name="drivers/ati/*"/>
</drivers>
Aviso: POR FAVOR, CERTIFIQUE-SE DE QUE VOCÊ TRABALHA SOBRE UMA CÓPIA.

Então você terá que modificar o arquivo config.xml para que a sua imagem aponte para a sua descrição de imagem de inicialização recentemente criada.

O elemento drivers é opcional e útil apenas no contexto da descrição da imagem de inicialização (initrd). Não é necessário que uma imagem de boot seja composta de drivers e de um kernel completo. Portanto, pode-se economizar espaço significativo apenas incluindo os drivers necessários na imagem de inicialização. A utilização dos elementos "drivers" suporta este paradigma de otimização de espaço.

Quando o elemento "drivers" é especificado. o Kiwi incluirá apenas os drivers correspondentes ao nome do arquivo especificado ou de padrão glob na imagem de inicialização. O Kiwi procurará diretórios pré-definidos para combinar os "drivers" com base no valor do atributo "tipo", conforme listado abaixo.

  • drivers
Cada arquivo é especificado em relação ao diretório /lib/modules/<Version>/kernel.
  • netdrivers
Cada arquivo é especificado em relação ao diretório /lib/modules/<Version>/kernel/drivers.
  • scsidrivers
Cada arquivo é especificada em relação ao diretório /lib/modules/<Version>/kernel/drivers.
  • usbdrivers
Cada arquivo é especificado em relação ao diretório /lib/modules/<Version>/kernel/drivers.

A informação fornecida no elemento "drivers" só terá efeito se o script images.sh existe na descrição da imagem de inicialização e se a função suseStripKernel for chamada a partir do script.

FAQ editar

Q: Como posso criar uma senha criptografada para uso no arquivo config.xml?

A senha pode ser criada usando

kiwi --createpassword

numa linha de comando. Este processo é interativo e você será solicitado a fornecer uma senha.

A saída é uma string criptografada correspondente ao texto simples que foi digitado. Você pode recortar e colar essa string para o arquivo config.xml como o valor para a atributo "pwd" do elelmento "usuário".

FAQ editar

Q: Quando inicializa a partir da rede via PXE a seguinte mensagem é exibida:

Found TFTP server in kernel cmdline
Checking TFTP server name: 192.168.0.10
TFTP server: 192.168.0.10 not found
Using TFTP server from dhcp-info

Neste caso, o endereço dado pelo parâmetro "kiwitftp" do kernel não pode ser resolvido e o endereço do servidor DHCP é usado para o servidor TFTP também.

Esse comportamento padrão poderia ser potencialmente incorreto. No entanto, não há nenhum risco com esse comportamento. O cliente já recebe dados do servidor DHCP e por isso deve ser permitido receber dados adicionais a partir do mesmo servidor.

Se o servidor de TFTP não estiver sendo executado no servidor DHCP o download da imagem falhará. Recomenda-se fornecer o endereço do servidor TFTP no arquivo de configuração pxelinux, mesmo se ele for o mesmo endereço do servidor DHCP.

FAQ editar

Q: Como construir uma SLES10 Live CD gravável com um diretório /opt?

O melhor é que você use o SLES 10 como seu host de criação.

Certifique-se de ter instalado a versão mais recente do KIWI a partir daqui: http://download.opensuse.org/repositories/Virtualization:/Appliances/SLE_10/ .

Baixe o squashfs para o SLE10 para o diretório /usr/share/kiwi/repo/suse-repo/suse-sle10-repo/. Você pode obter o squashfs para o SLE10 a partir deste local: http://download.opensuse.org/repositories/filesystems/SLE_10/ .

Instale o pacote squashfs no seu sistema de criação SLES 10 também. O KIWI necessita chamar a ferramenta mksquashfs para criar a parte somente leitura, assim ela deve ser instalada.

Altere a descrição da imagem isoboot como segue:

  cd /usr/share/kiwi/image/isoboot/suse-SLES10/
  rm -f .checksum.md5
  vi config.xml

Adicione a linha <file name="fs/squashfs/*"/> para a seção de drivers, e.g.

  <drivers type="drivers">
     ...
     <file name="fs/squashfs/*"/>
     ...
  </drivers>

Tudo isto faz com que nós tenhamos o módulo squashfs dentro do initrd. O KIWI permite dividir sistemas apenas se a parte somente leitura pude ser usada comprimida. Caso contrário, não faria muito sentido dividi-la.

Edite a sua imagem do sistema config.xml e altere o seguinte:

a linha type

  <type boot="isoboot/suse-SLES10" flags="compressed">iso</type>

agora adiciona-se uma seção de divisão descrevendo leitura/gravação

     <split>
       <temporary>
          <file name="/var"/>
          <file name="/var/*"/>
          <file name="/opt"/>
          <file name="/opt/*"/>
       </temporary>
     </split>

Tudo isto faz com que usemos o sistema de divisão comprimido ao invés do iso de estilo antigo e você pode controlar com a seção de separação o que deve ser lido e gravado e o que deve permanecer somente leitura

É isso aí. Me desculpe se isso soa um pouco complicado, mas SLE10 era antes do início do programa equipamento e, portanto, existem alguns componentes de software em falta que são utilizados nas distribuições mais recentes.

FAQ editar

Q: Como construir um JeOS com um firstboot gráfico

Use o modelo JeOS e a fim de habilitar o recurso SUSE "firstboot" é necessário o arquivo config-yast-firstboot.xml no seu diretório de configuração. Ele pode ser copiado de /etc/YaST2/firstboot.xml que o pacote yast2-firstboot-2.17.4-1.64 contém.

Por favor, habilite as suas etapas necessárias no fluxo de trabalho http://forgeftp.novell.com/yast/doc/SLES11/tdg/bk09ch01s02.html .

Não é necessário criar o arquivo /var/lib/YaST2/reconfig_system! Isto é feito pelo KIWI!

Para poder utilizar o firstboot, adicione os seguintes pacotes em seu config.xml:

 yast2-ncurses
 yast2-firstboot

Se você deseja um sistema de firstboot gráfico você necessita adicionalmente dos seguintes pacotes no seu config.xml:

 yast2-installation
 yast2-qt
 xorg-x11-server

Você também precisa de um simples xorg.conf no diretório que é fornecido pelo nosso modelo:

 <your_kiwi_config_dir>/root/etc/x11

Aqui, como referência:

 /usr/share/kiwi/image/suse-SLE10-JeOS/root/etc/X11/xorg.conf

Você pode copiar os seus próprios scripts para o diretório:

 /usr/share/firstboot/scripts


Se você quer reconfigurar o seu teclado com o firstboot, você precisa dos pacotes abaixo:

 sax2-tools
 sax2-ident
 kbd

É isso - agora você deve ter um firstboot gráfico com o JeOS.

FAQ editar

Q: Posso construir uma imagem SLE10 com o openSUSE 11.1?

Claro, mas você precisa das ferramentas certas também instaladas no seu sistema de compilação e dos repositórios para o SLE10 (DVD/iso/...).

O Zypper a partir do SLE10 é muito antigo e não oferece os recursos que precisamos. Então você deve usar o smart como gerenciador de pacotes em seu config.xml:

<packagemanager>smart</packagemanager>

A fim de usá-lo, você deve instalar o smart em seu sistema de compilação.

Então, por favor, adicione o repositório para o seu sistema (em http://download.opensuse.org/repositories/smart) e instale o smart no seu sistema.

Se você for utilizar a versão KIWI <3,60 e usar ext3 como sistema de arquivos, você deve usar um tamanho de inode diferente, pois o openSUSE 11.1 usa um diferente como SLE10.

--fs-inodesize 128

Dica: Use o modelo JeOS SLES10 como base para a sua compilação.

FAQ editar

Q: Obtive o erro "dbus não está funcionando, verifique a sua instalação" no início da sessão

Por favor, adicione o seguinte pacote para o seu config.xml:

<package name="dbus-1-x11"/>

FAQ editar

Q: Como posso utilizar marcas na inicialização gráfica?

Há mais de uma maneira de conseguir isso. As diferentes formas são exclusivas, você não pode misturá-las.

1. Usando pacotes de marcas

É necessário fornecer bootsplash-branding-X e pacostes gfxboot-branding-X. Simplesmente adicione-os para o seu conjunto de pacotes no arquivo de configuração do KIWI, na linha type="image". A maneira mais fácil é dar uma olhada nos pacotes de marcas existentes no openSUSE Factory.

2. Usando tarball com gráficos

isto é útil no caso de aplicações exportadas a partir do SUSE Studio.

Você praticamente precisa ter os mesmos arquivos gráficos que sejam necessários para os pacotes acima. A diferença é que usará o KIWI tarball como arquivo de sobreposição na compilação de sua imagem.

Esta é a hierarquia de arquivos a oferecer (para o conteúdo da estrutura <your-theme>, verifique o pacote gfxboot no openSUSE Factory):

 /usr
 /usr/share
 /usr/share/gfxboot/
 /usr/share/gfxboot/themes
 /usr/share/gfxboot/themes/<your-theme>

Adicione as seguintes entradas no seu conjunto de pacotes no arquivo de configuração do KIWI, type="image" (assumindo que branding.tar.gz contém as imagens de marcas):

 <package name="gfxboot-devel"/>
 <archive name="branding.tar.gz" bootinclude="true"/>

Observação: Certifique-se de seguir as regras de marcas e recomendações para o openSUSE.

FAQ editar

Q: Onde posso solicitar melhorias, relatar bugs ou enviar correções?

1) Pesquisando nos arquivos da lista é seu melhor ponto de partida. Caso você seja incapaz de encontrar uma resposta para a sua pergunta nos arquivos, você pode postar para as listas depois de subscrevê-las.

2) Existe um canal do IRC no freenode

3) Você pode arquivar bugs usando o Novell bugzilla (uma conta da Novell é necessária).

  • Classificação: Todas
  • Produto: openSUSE.org
  • Componente: Sistema de Imagens
  • Sumário : "kiwi: sumarize o seu relatório aqui"

FAQ editar

DICA: SUSE Studio

Você também pode querer visitar o SUSE Studio Wiki. O KIWI é o back-end para o SUSE Studio e por isso muitos dos tutoriais do SUSE Studio se aplicam ao KIWI.

FAQ editar

Q: Como eu poderia obter uma lista de pacotes a partir de um sistema instalado para usá-los no KIWI?

Uma maneira fácil seria

rpm -qa --queryformat "\<package name=\"%{NAME}\"/\>\n" >rpms.txt

Isso produzirá uma lista de todos os pacotes rpm instalados no seguinte formato:

<package name="kernel-xen"/>

Você pode, então, simplesmente abrir o seu arquivo config.xml e colar o conteúdo do rpms.txt entre as duas seguintes tags:

<packages type="image">
</packages>

FAQ editar

DICA: Sistemas Live Híbridos

De: http://lizards.opensuse.org/2009/08/05/hybrid-live-systems/ , por marcus.

Ao falar sobre os sistemas Live, em dispositivos USB, as pessoas relatam muitos problemas com carregadores de boot como o grub para inicializar o pendrive. Mesmo que isto seja, mais frequentemente, um problema com o hardware USB ou da BIOS do PC, é uma situação chata que deveria ter uma solução melhor. Há também muitas pessoas que querem usar o pendrive como um contêiner de dados em combinação com um sistema Live para trabalhar junto.

Com a ISO de tecnologia híbrida e a integração no KIWI existe uma forma de criar esse dispositivo USB muito facilmente. A ISO híbrida é um sistema de arquivos ISO, que contém um MBR e, portanto, é vista como um disco da BIOS do PC. Como é uma ISO do carregador de boot isolinux é usada no lugar do grub que funciona melhor em muitos sistemas. Além disso, a ISO híbrida pode ser usada como um sistema Live em CD ou DVD, bem como em um dispositivo USB.

O quê é exigido para usar isto:

   * kiwi v3.68 ou posterior;
   * syslinux-3.82-2.1 ou posterior.

Como configuro uma ISO híbrida no KIWI?

Para ativar a criação de uma ISO híbrida no KIWI você só tem que adicionar o atributo hybrid="true" como parte do seu tipo de imagem ISO em config.xml:

<type boot="isoboot/suse-11.2" flags="clic" hybrid="true">iso

Você pode usar o suse-11.2-JeOS a partir dos pacotes modelos do KIWI como exemplo de descrição de imagem para seu teste da híbrida. O arquivo .iso gerado pode ser descarregado através de uma simples chamada dd no pendrive USB. O mesmo arquivo também pode ser usado para ser queimado em um CD/DVD.

dd if=LimeJeOS-openSUSE-11.2.i686-1.11.2.iso of=/dev/... bs=32k

Depois o pendrive pode ser testado. Por padrão, todas as tentativas para gravar dados vai para a RAM do sistema. Como um pendrive permite o armazenamento de dados persistentemente você pode criar uma partição sobre o pendrive usando o fdisk:

fdisk /dev/...

O KIWI impedirá de usar uma partição vfat para o sistema operacional. Portanto, certifique-se de criar uma partição de tipo 0×83 (Linux) e não uma partição vfat para o suporte de escrita. Se, além disso criar uma partição vfat você pode usá-la como um contêiner, para qualquer tipo de dados, independente do sistema Live. Nós escolhemos vfat aqui para compatibilização com os sistemas Windows.

Bugs conhecidos:

  • quando se utiliza o sistema de arquivos clicfs (flags = "clic"), o persistente recurso de gravação em uma única partição falhará porque o clicfs atualmente não pode lidar com as especialidades de raw block como o cow device. Será corrigido tão logo seja possível.

Divirta-se!