Atualizao (11/06/2011): no Ubuntu 11.04, a configurao para iniciar em modo texto
bem simples: Depois, atualizar o grub e reiniciar: O que fizeram basicamente a soluo que sugeri no texto original - criar e checar por parmetro especfico na carga do gdm, via/etc/init/gdm.conf. J facilita bastante a vida (no precisa mais criar entradas novas no grub), mas ainda no possvel trocar estados sem reiniciar a mquina... Para alterar o modo de inicializao do Linux pra no carregar o ambiente grfico (por exemplo, quando precisar de uma srie de boots pra testar mudanas de configurao de memria), temos que trocar seu run level para 3: Na prxima carga do sistema operacional, o nvel indicado ser acatado. Os valores possveis e seus significados: 0 System Halt Usar o comando shutdown -h* 1 Rescue Mode Single user, interface texto, somente login como root 2 Graphic Multi-User Modo default de operao 3 Text Multi-User Ambiente funcional, mas sem carregar X (Gnome, KDE, etc.) 4 No utilizado 5 No utilizado 6 System Restart Usar o comando shutdown -r* Se j estiver com o sistema carregado e quiser trocar o modo de execuo sem reiniciar a mquina, o comando esse: Essa a teoria geral. No Ubuntu (e outros derivados do Debian), especificamente, o modo 3 comporta-se da mesma forma que o 2, que o default! sudo vi /etc/default/grub
# Trocar a linha abaixo de GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" # para GRUB_CMDLINE_LINUX_DEFAULT="text" sudo update-grub sudo reboot 1 sudo vi /etc/init/rc-sysinit.conf 2 3 # localizar e alterar o valor da linha abaixo: 4 env DEFAULT_RUNLEVEL=3 1 sudo telinit 3 Achei vrias sugestes pra mudar esse comportamento, tentei vrias, nenhuma foi satisfatria. Mesmo colocando regras explcitas pra que o gdm (Gnome Desktop Manager) no seja carregado, isso no aconteceu. O que fiz foi criar uma nova opo no boot loader do Ubuntu, grub, passando um parmetro especfico, que checado no script doupstart, mecanismo responsvel pela carga do sistema e seus servios. 1. Habilitar exibio das opes de boot. O padro do grub no exibir o menu de opes. Ento, se voc tiver certeza que sempre ficar com o SHIFT pressionado durante sua carga (logo depois da exibio do splash screen da BIOS da mquina), no precisa executar esse passo. Eu recomendo, pelo menos nas primeiras vezes... 2. Criar a nova opo de inicializao. A verso do grub disponvel no Ubuntu 10 mudou um tanto a estrutura dos arquivos de configurao (pra quem conhece, no existe mais menu.lst). As opes ficam no arquivo /boot/grub/grub.cfg, mas no podemos edit-lo - devemos incluir nosso script em outro arquivo,/etc/grub.d/40_custom. Gerei o bloco acima a partir da entrada recovery do/boot/grub/grub.cfg. O importante o "text-mode" inserido na penltima linha - esse o parmetro que ser checado no script de carga do ambiente grfico. Pra constar, o bloco que usei como base: 1 sudo vi /etc/default/grub 2 3 # comentar a linha abaixo: 4 GRUB_HIDDEN_TIMEOUT=0 1 sudo vi /etc/grub.d/40_custom 2 3 # incluir as linhas abaixo 4 menuentry "Ubuntu, with Linux 2.6.32-22-generic (text-only mode)" { 5 set root='(hd0,5)' 6 linux /boot/vmlinuz-2.6.32-22-generic \ 7 root=UUID=69093b74-33e4-4063-a1fc- f06be98bc49f ro text-mode 8 initrd /boot/initrd.img-2.6.32-22-generic 9 } 1 menuentry 'Ubuntu, with Linux 2.6.32-22-generic (recovery mode)' --class ubuntu --class gnu-linux -- class gnu --class os { 2 recordfail 3 insmod ext2 4 set root='(hd0,5)' 5 search --no-floppy --fs-uuid --set 69093b74-33e4- 4063-a1fc-f06be98bc49f 6 linux /boot/vmlinuz-2.6.32-22-generic \ 7 root=UUID=69093b74-33e4-4063-a1fc- f06be98bc49f ro single 8 initrd /boot/initrd.img-2.6.32-22-generic 9 } Com a nova opo criada, atualizar o arquivo lido pelo grubexecutando o comando: 3. Checar existncia do parmetro text-mode. S falta verificar se o valor esperado foi passado e, se for o caso, no carregar o gdm. Pra isso, aproveitei a checagem que o upstart j faz - se estiver iniciando em modo recovery, a carga do gdm cancelada. S precisamos ajustar o teste existente: Curiosidade: o plymouth o responsvel pelo grfico que mostra uma barra de progresso ou animao similar, indicando a carga do sistema. Se essa instruo "quit" no fosse executada, o terminal usado pelo modo grfico (Ctrl+Alt+F7) ficaria direto executando a tal animao. isso, tudo configurado, agora s reiniciar o sistema e selecionar a nova entrada. Funciona, mas no o mundo ideal por duas razes: no conseguimos "trocar" de estado sem reiniciar a mquina (o que seria possvel se a troca de runlevel fosse suficiente), e tambm estamos atrelados ao kernel indicado na nova entrada do grub - quando uma nova verso for instalada, esse script deve ser ajustado, ou continuar usando o kernel antigo. Referncias: http://ubuntuforums.org/showthread.php?t=1195275 http://ubuntuforums.org/showthread.php?t=664199 http://www.debian-administration.org/articles/212 http://www.debianadmin.com/debian-and-ubuntu-linux-run-levels.html http://www.debian.org/doc/debian-policy/#contents http://www.linuxquestions.org/questions/linux-server-73/ubuntu-11-04-text-mode-882981/ 1 sudo update-grub 01 sudo vi /etc/init/gdm.conf 02 03 # encontrar o trecho abaixo e incluir o valor "text- mode" na comparao: 04 case "${ARG}" in (-s|s|S|single) 05 plymouth quit || : # We have the ball here 06 exit 0 07 ;; 08 09 # fica assim: 10 case "${ARG}" in (-s|s|S|single|text-mode)