From fb6a4abc9269bed7c7be9a9d58f03916881c4965 Mon Sep 17 00:00:00 2001 From: "Paulo Henrique de Lima Santana (phls)" Date: Tue, 15 Sep 2020 20:09:01 -0300 Subject: Create new portuguese translation (thanks to Thiago Pezzo and Emerson Queiroz) --- portuguese/ports/hurd/hurd-install.wml | 921 +++++++++++++++++++++++++++++++++ 1 file changed, 921 insertions(+) create mode 100644 portuguese/ports/hurd/hurd-install.wml diff --git a/portuguese/ports/hurd/hurd-install.wml b/portuguese/ports/hurd/hurd-install.wml new file mode 100644 index 00000000000..a15de4af3fe --- /dev/null +++ b/portuguese/ports/hurd/hurd-install.wml @@ -0,0 +1,921 @@ +#use wml::debian::template title="Debian GNU/Hurd — Configuração" NOHEADER="yes" +#include "$(ENGLISHDIR)/ports/hurd/menu.inc" +#use wml::debian::translation-check translation="880b5a08b2c42a084e5fac050dec2c85f4a41849" + +

Configuração do Debian GNU/Hurd

+ +

+Este documento objetiva fornecer um conjunto de instruções fácil e relativamente +indolor de como configurar o Debian GNU/Hurd com mínimo esforço. +

+ +

+Ele é baseado no The Hurd Installation Guide de Neal H. Walfield. Muito +obrigado ao Neal por sua contribuição. +

+ +

Visão geral

+ +

+O GNU é similar em natureza a qualquer sistema do tipo Unix: após fazer o login, +o(a) usuário(a) é apresentado(a) ao shell e ao familiar VFS Unix (virtual +filesystem - sistema de arquivo virtual). Embora o GNU tente ser compatível com +POSIX, ele não é Unix. O GNU/Hurd se baseia em muitos conceitos do +Unix e os expande para tanto adicionar novas funcionalidades quanto para +corrigir aquelas que foram entendidas como falhas no projeto original. A +diferença mais notável são os tradutores, programas de espaço de usuário(a) +que interagem com o VFS. Esses sistemas de arquivo não residem no kernel e nem +precisam ser executados como root; eles só precisam de acesso à instância de +apoio (backing store) e ao ponto de montagem. Outra diferença é +que os processos, em vez de possuírem uma única identidade de usuário(a) fixa +no momento de criação, têm tokens de identidade que ficam em separado do +processo, ou seja, elas podem ser adicionadas com a permissão apropriada de +uma autoridade ou destruídas. +

+ +

+Estar familiarizado(a) com o ambiente Unix (e especialmente com o espaço de +usuário(a) GNU, encontrado em variantes populares tais como o GNU/Linux) é +um imperativo para se sentir à vontade no GNU. Ter experiência com as +ferramentas do Debian também se revelarão inestimáveis para a configuração e +a manutenção de uma máquina GNU/Hurd. +

+ +

+Este guia se empenha em fazer a instalação do GNU/Hurd um processo tão indolor +quanto possível. Se houver erros, eles são certamente erros do(a) autor(a) +deste texto. Por favor relate-os, junto com qualquer outra sugestão ou crítica, +para ele(a); tudo será aceito com satisfação. +

+ +# Nota do tradutor: excerto ignorado na tradução, pelo menos por enquanto +#

2. Real Estate or Finding A Home

+# +#

+#If you do not have an available partition or an extra hard drive, this can be +#the longest step. In this case, you will need to repartition the hard drive. +#One solution is to use GNU's partition editor, +#Parted. It features not only +#basic partition editing but also partition resizing and moving functionality. +#The manual is quite complete and includes several tutorials. Note that also +#there is a 63 GNU HURD or SysV partition type, it should not be +#used or else the installation CD will not find it. Just use 83 +#Linux +#

+# +#

+#The Hurd supports several extensions to the ext2fs filesystem format. Foremost +#among these are passive translators and a fourth set of permission bits for +#unknown users (users without an identity, not the other user). To use these +#extensions, the owner of the partition must be set to hurd. +#mke2fs, unless specifically overridden on the command line, will +#set the owner to whatever kernel it is running on. As the Hurd will diligently +#respect this setting, care must be taken to set this appropriately or the Hurd +#will fail in subtle ways. Be aware that even if a file system is owned by a +#particular kernel, others may still use it; they just may not be able to use +#certain extensions. +#

+# +#

+#To create a filesystem, use mke2fs and pass it -b 4096 +#-I 128 -o hurd to designate the Hurd as the owner of the new file +#system. For instance, assuming the partition is /dev/hda1: +#

+# +#
 
+# \# mke2fs -b 4096 -I 128 -o hurd /dev/hda1
+#
+# +# +#

3. The Boot Loader

+# +#

+#The bootloader of the GNU system is Grub, the GRand Unified Boot loader, +#and it is its main purpose to boot the GNU system core (Mach and the Hurd). +#Any boot loader that supports the multiboot standard, though, may be used to +#load Mach and the Hurd. At the moment (that we're aware of), GNU Grub is the +#only bootloader that supports such standard. +#

+# +#

+#A word about Grub. Unlike traditional boot loaders on the x86, such as LILO, +#Grub is very powerful. It has a command line interface, bootp, dummy terminal +#support and a plethora of other features. In addition, it can boot almost any +#kernel. If you have ever booted an alpha or sparc, you will understand what +#Grub can do. Therefore, do not be scared: Grub is better. You will like it. +#You will not go back. +#

+# +#

+#It is probably better if you install +#Grub before installing the +#Hurd, but you can always install it onto your hard drive at a later date. +#

+# +# +#

4. Cross Install

+# +#

+#The next step is to get a base system. There are several alternatives, if you +#are running a Debian system you can use the package crosshurd. Otherwise you +#can get an updated base system tarball from any of the mirrors listed at +#. +#

+# +#

+#The tarball is set up to extract everything into the current directory. +#After the filesystem is mounted, the archive can be extracted. +#Assuming that the filesystem is on /dev/hda2, the mount point +#is /gnu and archive is in current user's home directory, the +#following is required: +#

+# +#
 
+# \# mount -t ext2 /dev/hda2 /gnu
+# \# cd /gnu
+# \# tar --same-owner -xvjpf ~/gnu.tar.bz2
+#
+# +# +#

5. Booting GNU/Hurd

+# +#

+#All is now in readiness to boot GNU/Hurd for the first time. Note that depending +#on your version of GRUB, small details with vary. Please make sure whether you +#have GRUB1 (aka legacy aka 0.95 and later up to 0.97), or GRUB2 (aka 1.95 and +#later). Examples below will provide both versions, make sure to pick the right +#one. +#

+# +#

+#Please also note that some problems have been reported when booting with only +#128MB memory, because of swap not being setup yet at this stage. Make sure to +#provide at least 256MB memory. +#

+# +#

+#If your system already has GRUB installed, just reboot it. Else, you need to use +#a Grub boot disk. On Debian, the grub-disk (grub1) or grub-rescue-pc (grub2) +#packages provides CD and Floppy disk images. Make sure that the Grub boot disk +#is in the drive, reboot. If all goes well, either a Grub menu or command line +#will be displayed. If the menu has a GNU/Hurd entry, you will +#probably be able to just reuse it to save a lot of typing burden. For now, if +#presented with a menu, press c to go to the command line. +#

+# +#

+#First, GNU Mach needs to be loaded. This requires knowing the filesystem +#and the path to GNU Mach. Grub uses a partition nomenclature that is a bit +#different from both Linux and the Hurd: both IDE and SCSI drives are named +#(hdN,M). N is the drive number (zero based) as +#enumerated by the BIOS. That is, Grub makes no distinction between IDE and SCSI +#disks. M identifies the partition on the drive. It is zero based +#in grub1 but one based in grub2. If this sounds confusing, relax: Grub is also +#helpful. +#

+# +#

+#To determine on which filesystem a particular file resides, Grub provides the +#find command. When this command is issued along with a filename, +#Grub searches on each filesystem for the specified file and prints where it was +#found. For example, to search for the kernel, /boot/gnumach.gz: +#

+# +# +# +# +#
 
+#   grub1> find /boot/gnumach.gz
+#   (hd0,0)
+#
 
+#   grub2> search -f /boot/gnumach.gz
+#   (hd0,1)
+#
+# +#

+#Here, Grub1 indicates that /boot/gnumach.gz is on +#(hd0,0) and Grub2, on (hd0,1) (remember the difference +#in partition numbering between Grub1 and Grub2). To save you a couple of +#typing, set Grub's root to that value: +#

+# +# +# +# +#
 
+#   grub1> root (hd0,0)
+#
 
+#   grub2> set root=(hd0,1)
+#
+# +#

+#Before loading the kernel, at least one option, the root partition, must be +#specified on the command line. This will be used by the Hurd itself (i.e. not +#Grub). As such, it must be in terms that the Hurd can understand. +#

+# +#

+#GNU Mach enumerates disks starting at zero. IDE drives are prefixed with +#hd, while SCSI disks are prefixed with sd. Like +#Linux, drives are number by their position on the controller. For instance, the +#primary master is hd0 and the secondary slave is hd3. +#Partitions use the BSD slice naming convention and append sM to the +#drive name to indicate a given partition. Note that M is a one, not +#zero, based index. The slice number is simple to calculate: if you have Grub2, +#just reuse the same index, if you have Grub1, just increment what was used for +#Grub1 by one. +#

+# +#

+#Since the Hurd has not yet been configured, it must be started in single user +#mode. Adding a -s to the kernel command line is all that is +#required. +#

+# +#

+#To sum it up, assuming that the first drive (i.e. (hd0)) is the +#master on the master controller, we would have: +#

+# +# +# +# +#
 
+#   grub1> kernel /boot/gnumach.gz root=device:hd0s1 -s
+#   [Multiboot-elf, ...]
+#
 
+#   grub2> multiboot /boot/gnumach.gz root=device:hd0s1 -s
+#
+# +#

+#Next, the root filesystem server and the exec server must be +#loaded. This is done using Grub's boot module capability. The ${var} are +#filled in by GNU Mach. The arguments are used by the Hurd to indicate what +#type of information is being provided. Since the ext2fs command line is very +#long, it can be broken up by escaping the newline character in the normal Unix +#fashion. Be sure that there is not space after the antislash at the end of each +#line. Also be sure to differentiate { and } from +#( and ). Mind the subttle differences between Grub1 and +#Grub2: Grub2 needs that the filename be repeated and quotes need +#to be used. Note that at this stage the --readonly option of +#ext2fs.static must not be passed. +#

+# +# +# +# +#
 
+#  grub1> module /hurd/ext2fs.static \
+#   --multiboot-command-line=${kernel-command-line} \
+#   --host-priv-port=${host-port} \
+#   --device-master-port=${device-port} \
+#   --exec-server-task=${exec-task} -T typed ${root} \
+#   $(task-create) $(task-resume)
+#    [Multiboot-module  0x1c4000, 0x2cfe6a bytes]
+#  grub1> module /lib/ld.so.1 /hurd/exec $(exec-task=task-create)
+#    [Multiboot-module  0x494000, 0x27afe bytes]
+#
 
+#  grub2> module /hurd/ext2fs.static ext2fs \
+#   --multiboot-command-line='${kernel-command-line}' \
+#   --host-priv-port='${host-port}' \
+#   --device-master-port='${device-port}' \
+#   --exec-server-task='${exec-task}' -T typed '${root}' \
+#   '$(task-create)' '$(task-resume)'
+#  grub2> module /lib/ld.so.1 exec /hurd/exec '$(exec-task=task-create)'
+#
+# +#

+#Alternatively, you can throw these lines into a menu.lst +#(Grub1) or grub.cfg (Grub2) configuration file in the partition, +#and load it by using configfile /path/to/menu.lst (Grub1) or +#configfile /path/to/grub.cfg (Grub2) from the grub prompt. You +#can of course also simply install grub in some MBR and point it to there. +#

+# +#

+#GNU/Hurd can be now booted: +#

+# +#
 
+#grub> boot
+#
+# +#

+#If GNU/Hurd fails to boot, it could be due to shared IRQs: GNU Mach does not +#play well with these. You can verify your situation by looking at, for +#instance, the /proc/interrupts file under GNU/Linux. Also, as GNU +#Mach does not support loadable kernel modules, many of the drivers are compiled +#into the default kernel. If there are old peripherals, this can be a problem: a +#device may incorrectly respond to a probe intended for a completely unrelated +#device and thereby cause a crash. Building a new kernel with only the required +#device drivers will usually solve this problem. GNU Mach is easily cross +#compiled. If you are running Debian, install the mig package, +#and your stock gcc should do. +#

+# +#

+#If this does not help, ask on the appropriate mailing list. +#

+# +# +#

6. Native Install

+# +#

+#Once you are presented with a shell prompt, and any time that the Hurd is in +#single user mode, it is necessary to set the terminal type: +#

+# +#
 
+# \# export TERM=mach
+#
+# +#

+#Be warned that CONTROL-C and family will not work in single user +#mode. +#

+# +#

+#We can now run the native-install script. This will configure the +#packages and set up several important translators: +#

+# +#
 
+# \# ./native-install
+#
+# +#

+#Before the script terminates, it will indicate that you can now reboot and enter +#multi-user mode. Do so, this is the Hurd, welcome! +#

+ + +

Instalação

+ +

+Você simplesmente pode usar o instalador do Debian, veja as +imagens preparadas de CD. +Então os seguintes passos serão necessários para uma configuração apropriada. +

+ +

+Você também pode obter uma imagem pré-instalada e executá-la no qemu: +

+ +
 
+$ wget https://cdimage.debian.org/cdimage/ports/current-hurd-i386/debian-hurd.img.tar.gz
+$ tar xzf debian-hurd.img.tar.gz
+$ kvm -m 1G -drive file=$(echo debian-hurd*.img),cache=writeback
+
+ +

+Para habilitar o acesso à máquina através de ssh, você pode adicionar +

+ +
 
+-net nic -net user,hostfwd=tcp:127.0.0.1:2222-:22
+
+ +

+e fazer ssh para sua porta TCP local 2222. +

+ +

+Você também pode converter a imagem para o formato VDI do virtualbox: +

+ +
 
+$ VBoxManage convertfromraw debian-hurd-*.img debian-hurd.vdi --format vdi
+
+ +

Configuração

+ +

A rede

+ +

+O jeito Debian é suportado, iniciando em sysvinit 2.88dsf-48 e +hurd 1:0.5.git20140320-1: /etc/network/interfaces é usado como no +Linux. A única diferença é que as placas de rede aparecem em /dev e +as interfaces devem, portanto, ser especificadas como /dev/eth0, etc. +

+ +# Nota do tradutor: excerto ignorado na tradução, pelo menos por enquanto +#

+#First, make sure that your network card is recognized by GNU Mach: +#

+# +#
 
+# \# devprobe eth0
+# eth0
+#
+# +#

+#If devprobe eth0 does not return eth0, the kernel +#didn't detect your network board and you need to try another board. For +#instance, qemu's e1000 board is not supported, the rtl8139 one should work: +#-net nic,model=rtl8139 -net user +#

+ +#

+#Starting from version 20120520-1, the hurd package includes DDE drivers which +#are used to support more recent devices (drivers are taken from Linux +#2.6.32). Translators for that are already set up for you, and all you +#need to do is to replace eth0 (the mach driver name) with +#/dev/eth0 (the DDE driver path) in the remainder of this document. +#

+# +#

+#It is possible to try to use the DDE driver even if GNU Mach has a driver: +#passing nonetdev on the gnumach command line will disable the GNU +#Mach driver, and the DDE driver will start working. +#

+ +

+Se a rede não funcionar, use o comando seguinte para obter informações de +depuração do driver DDE: +

+ +
 
+ \# settrans -fga /dev/netdde /hurd/netdde
+
+ +

+e então dê um kill em qualquer processo devnode e pfinet para permitir que +reiniciem com o netdde mais novo. Se ainda não funcionar, por favor poste em um +relatório de bug a saída completa do comando settrans netdde acima, como +também a saída de lspci e lspci -n. +

+ +

+Para configurar a rede sem passar por /etc/network/interfaces, +o tradutor pfinet deve ser configurado. +Isto pode ser feito usando-se dhclient do +pacote isc-dhcp-client. +Isto também pode ser feito manualmente usando-se inetutils-ifconfig +do pacote inetutils-tools, e ping está +disponível no pacote inetutils-ping. +Por último, mas não menos importante, isto pode ser feito (e gravado para +sempre) manualmente usando-se o comando settrans para anexar um +tradutor para um dado node de sistema de arquivo. Quando os programas +acessarem via node, por exemplo enviando um RPC, o sistema operacional +transparentemente iniciará o servidor para lidar com a requisição. +

+ +
 
+ \# settrans -fgap /servers/socket/2 /hurd/pfinet -i /dev/eth0 \
+   -a a.b.c.d -g e.f.g.h -m i.j.k.l
+
+ +

+Aqui, o settrans é passado com diversas opções. As duas primeiras, +fg, força qualquer tradutor existente a remover-se. As duas +seguintes, ap, definem tradutores ativos e passivos. Ao fazer +o tradutor ativo, imediatamente veremos qualquer mensagem de erro em +stderr. A última grava o tradutor e os argumentos no node +para que ele possa ser transparentemente reiniciado mais tarde (isto é, +definindo as configurações como persistentes entre reinicializações). As opções +são seguidas pelo node para o qual o tradutor vai ser anexado, e então o programa +(ou seja, o tradutor) para executar e qualquer argumentos para ele. A opção +-i é a interface que pfinet ficará escutando, +-a é o endereço IP, -g é o +gateway e -m é a máscara de rede. +

+ +

+Certifique-se de adicionar os nomes de servidores em seu arquivo +/etc/resolv.conf: +

+ +
 
+  nameserver 192.168.1.1
+
+ +

+Para testar a configuração, ping -c2 gateway. A opção +-c é importante para limitar o número de pings; lembre-se, +CONTROL-C não funciona no modo de usuário(a) único(a). +

+ +

+Ajuda para settrans pode ser obtida ao passar para ele a opção +--help. Ajuda sobre um tradutor específico pode ser obtida +ao invocá-la na linha de comando com o mesmo argumento, por exemplo: +

+ +
 
+ \# /hurd/pfinet --help
+
+ +

+Como pode haver uma grande quantidade de saídas, considere fazer um +direcionamento para um paginador como o less. +

+ +

+Para também configurar o suporte ao IPv6, a mesma configuração tem que ser +gravada tanto em /servers/socket/2 como em /servers/socket/26, +referenciando um ao outro de modo que somente um seja iniciado, ligando ambos +os nós: +

+ +
 
+ \# settrans -fgap /servers/socket/2 /hurd/pfinet -6 /servers/socket/26 -i /dev/eth0 \
+   -a a.b.c.d -g e.f.g.h -m i.j.k.l
+ \# settrans -p /servers/socket/26 /hurd/pfinet -4 /servers/socket/2 -i /dev/eth0 \
+   -a a.b.c.d -g e.f.g.h -m i.j.k.l
+
+ +

+O servidor pfinet habilita a autoconfiguração IPv6 por padrão. O estado atual +pode ser obtido de fsysopts /servers/socket/26. Endereços também podem +ser definidos manualmente, usando-se, por exemplo, +-A 2001:123:123::42/64 -G 2001:123:123::1. +

+ +

+A configuração do pfinet também pode ser alterada em tempo real +(sem gravação em disco) usando-se fsysopts: +

+ +
 
+ \# fsysopts /servers/socket/2
+ /hurd/pfinet --interface=/dev/eth0 --address=10.3.0.1 --netmask=255.255.0.0 --gateway=10.3.0.128
+ \# fsysopts /server/socket/2 -a 10.3.0.2 -m 255.255.0.0 -g 10.3.0.128
+
+ +

+Um firewall pode ser estabelecido pela interposição do tradutor +eth-filter; por exemplo, isto previne o acesso à porta 22: +

+ +
 
+ \# settrans -c /dev/eth0f /hurd/eth-filter -i /dev/eth0 -r "not port 22"
+
+ +

+O dispositivo filtrado, /dev/eth0f, pode então ser dado para +pfinet ou dhclient em vez de /dev/eth0. +

+ + +

Layout do teclado

+ +

+O layout do teclado pode ser configurado através do pacote +padrão keyboard-configuration. Certifique-se de que esteja +instalado e execute dpkg-reconfigure keyboard-configuration. +Somente o layout é suportado, variantes (ainda) não. O efeito não será +imediato, já que o console precisa ser reiniciado para considerar o +parâmetro. Reiniciar deve ser suficiente. +

+ +

Outros sistemas de arquivo

+ +

+A seguir, edite /etc/fstab para adicionar quaisquer sistemas +de arquivo como também espaço de swap. É muito importante que um +espaço de swap seja usado; o Hurd ficará em uma ordem de magnitude mais +estável. Note que o Hurd pode, transparentemente, compartilhar uma partição +swap com o Linux, mas alegremente paginará para qualquer dispositivo, +incluindo uma partição não processada como sua partição home. Por padrão, +nano e vi são os únicos editores instalados pela +distribuição base. +

+ +

+Aqui está um exemplo do arquivo /etc/fstab: +

+ +
 
+\# <file system> <mount point>   <type>  <options>  <dump>  <pass>
+/dev/hd0s1      /               ext2    rw         0       1
+/dev/hd0s2      /home           ext2    rw         0       2
+/dev/hd0s3      none            swap    sw         0       0
+
+ +

+Se qualquer entrada de dispositivo /dev estiver faltando, +lembre-se de criá-la usando o comando MAKEDEV: +

+ +
 
+ \# cd /dev
+ \# ./MAKEDEV hd0s1 hd0s2 hd0s3
+
+ +

+Você também pode montar um sistema de arquivo manualmente ao chamar +settrans: +

+ +
 
+ \# settrans /mnt /hurd/ext2fs /dev/hd0s5
+
+ +

+A ideia por trás deste comando é que você defina no node /mnt o +tradutor /hurd/ext2fs /dev/hd0s5. O /hurd/ext2fs +será executado e iniciará a leitura/escrita de /dev/hd0s5 e +exibirá seu conteúdo em /mnt. Mais informações podem ser +encontradas na documentação de tradutor. +

+ +

+Para montar um sistema de arquivos nfs, o tradutor /hurd/nfs é +usado. Quando executado como não root, o tradutor conectará ao servidor +usando uma porta acima de 1023. Por padrão, o GNU/Linux rejeitará isso. Para +dizer ao GNU/Linux que aceite conexões originadas de uma porta não reservada, +adicione a opção insecure para linha de exportação. Aqui está +um exemplo do arquivo /etc/exports, assumindo que o endereço +IP do cliente é 192.168.1.2: +

+ +
 
+  /home  192.168.1.2(rw,insecure)
+
+ +

+Para montar de uma máquina GNU e assumindo que o endereço IP do servidor nfs é +192.168.1.1: +

+ +
 
+\# settrans -cga /mount/point /hurd/nfs 192.168.1.1:/home
+
+ + +

Divirta-se com o Debian GNU/Hurd

+ +

+Agora, que coisas legais nós podemos fazer com o Hurd? +

+ +

Montar imagens de disco

+ +

+Acessar o conteúdo de uma imagem de CD é um pouco tedioso com sistemas padrão +Unix se você não é root. No GNU/Hurd, fica assim: +

+ +
 
+settrans ~/mnt /hurd/iso9660fs CD_image.iso
+
+ +

+E é completamente seguro: o tradutor iso9660fs está rodando +sob sua identidade, não root. Você pode até mesmo codificar seu próprio +tradutor para qualquer tipo de sistema de arquivos. Sim, isso é como o FUSE. +Sem toda a gambiarra. +

+ +

FTP transparente

+ +

+A seguir define-se um diretório ftp transparente: +

+ +
 
+settrans -c /ftp: /hurd/hostmux /hurd/ftpfs /
+
+ +

+Agora, faça cd para, por exemplo, /ftp://ftp.gnu.org/ +e execute ls lá. +Sim, você pode, de sua home, simplesmente rodar +tar xf ftp://ftp.gnu.org/pub/gnu/gcc/gcc-4.6.0/gcc-4.6.0.tar.bz2 ! +

+ +

Sub-Hurd

+ +

+Um sub-Hurd +é um subsistema completo. Muito parecido com containers de virtualização +à primeira vista. Exceto que você não precisa ser root para executá-lo. +

+ +

gdb ext2fs, pfinet, ...

+ +

+Sim, você pode rodar gdb, por exemplo, na implementação ext2fs, na pilha TCP/IP +do pfinet, etc. +

+ +

E muito mais coisas!

+ +

+Alguns trabalhos em andamento incluem mboxfs, tarfs, +xmlfs, gopherfs, ... +

+ +# Nota do tradutor: excerto ignorado na tradução, pelo menos por enquanto +#

7.3 Rebooting

+# +#

+#Finally, reboot into multiuser mode, i.e. in the same way single user mode was +#brought up minus the -s option when loading the kernel. For +#details, see section 5. Booting GNU/Hurd. +#

+# +#

+#Happy Hacking! +#

+ +

Palavras finais

+ +

+A seguir estão somente dicas rápidas de instalação, certifique-se de também +ler a documentação para o sistema instalado: a +documentação do Debian GNU/Hurd, mas também o +site web dos(as) autores(as). +

+ + +#

8.1 The Grub Menu

+# +#

+#Having to always load the kernel by hand can be very tedious. Edit the +#/boot/grub/menu.lst for Grub1 or +#/boot/grub/grub.cfg for Grub2 and tailor it appropriately; +#booting will become much quicker and easier. +#

+# +# +#

8.2 Adding Devices

+# +#

+#By default, only a few devices are created in the /dev directory. +##Use the MAKEDEV script to create any needed device nodes. +#

+ +

Instalando mais pacotes

+ +

+Existem vários modos de se adicionar pacotes. Fazer o download e usar +dpkg -i funciona, mas é muito inconveniente. O método +mais fácil é usar apt-get. +

+ +

+Se você tem usado o Debian GNU/Hurd lançado em 2019, o modo mais +seguro é usar o snapshot desta versão ao criar um arquivo +/etc/apt/apt.conf.d/99ignore-valid-until contendo: +

+ +
 
+Acquire::Check-Valid-Until "false";
+
+ +

+E então o snapshot pode ser usado com fonte para o apt: edite +/etc/apt/sources.list, adicione a seguinte entrada não lançada. +

+ +
 
+deb http://snapshot.debian.org/archive/debian-ports/20190626T235959Z/ sid main
+deb-src http://snapshot.debian.org/archive/debian/20190626T235959Z/ sid main
+deb [trusted=yes] https://snapshot.debian.org/archive/debian-ports/20190626T235959Z/ unreleased main
+
+ +

+Atualize, instale os pacotes apt-transport-https +debian-ports-archive-keyring e atualize novamente; agora você tem +uma versão completa do Debian GNU/Hurd 2019 disponível. +

+ + +

+Se você tem usado um snapshot mais antigo que o lançamento de 2019, você pode +adicionar essas fontes para obter os pacotes mais recentes: +

+ +
 
+deb http://deb.debian.org/debian-ports unstable main
+deb-src http://deb.debian.org/debian unstable main
+deb http://deb.debian.org/debian-ports unreleased main
+
+ +

+Atualize, instale o pacote debian-ports-archive-keyring e +atualize novamente. +

+ +

+Se ao fazer o primeiro apt-get, o dpkg reclamar de +programas ausentes, entre como root no login do shell (isto é, +su -, não somente su). +

+ +

+Se o GNU Mach não reconhecer sua placa de rede ou você usa um modem, o único +modo de atualizar será fazer o download dos pacotes e então transferi-los +para o sistema GNU. A maneira mais fácil de fazer isso é usar o apt +off-line. Consulte +/usr/share/doc/apt-doc/offline.text.gz para instruções +detalhadas. +

+ + +

O console Hurd

+ +

+Além do console do Mach que você encontrou durante a instalação, o GNU/Hurd +apresenta um console poderoso de espaço de usuário(a), fornecendo terminais +virtuais. Se você instalou em um modo pseudográfico, ele deve iniciar +automaticamente no boot, se não você pode iniciá-lo manualmente com o +seguinte comando: +

+ +
 
+ \# console -d vga -d pc_mouse --repeat=mouse -d pc_kbd --repeat=kbd -d generic_speaker -c /dev/vcs
+
+ +

+Se confirmar que está funcionando, pode-se habilitá-lo no boot em +/etc/default/hurd-console: mude de ENABLE="false" para +ENABLE="true". +

+ +

+De dentro do console do Hurd, você pode alternar entre terminais virtuais via +ALT+F1, ALT+F2 e assim por diante. +ALT+CTRL+BACKSPACE desprende o console do Hurd e te traz de volta +ao console do Mach, de onde você pode reanexá-lo com o comando acima. +

+ + +

X.Org

+ +

+O X.Org foi portado e todas as placas de vídeo que ele suporta, e que não +requerem um módulo de kernel ou drm, devem funcionar. +

+ +

+Você já deve estar executando o console do Hurd e ter os repetidores +configurados como indicado na seção anterior. Por exemplo, verifique se +echo $TERM mostra hurd, e verifique se +/dev/cons/kbd e /dev/cons/mouse existem. +

+ +

+Você precisa rodar dpkg-reconfigure x11-common xserver-xorg-legacy +para permitir que qualquer usuário(a) inicie o Xorg, porque o wrapper do X +não conhece os consoles do Hurd e do Mach. +

+ +

+Você também precisa criar um /etc/X11/xorg.conf para habilitar o +atalho control-alt-backspace: +

+ +
 
+Section "InputDevice"
+   Identifier "Generic Keyboard"
+   Driver "kbd"
+   Option "XkbOptions" "terminate:ctrl_alt_bksp"
+EndSection
+
+ +

+Pode acontecer que, por alguma razão, o Xorg escolha uma resolução 16/9, mas +o tamanho da área de trabalho é 4/3. Culpe o Xorg, não o Hurd :) Para evitar +esse problema, adicione isto ao /etc/X11/xorg.conf : +

+ +
 
+Section "Screen"
+   Identifier "myScreen"
+   SubSection "Display"
+      Virtual 1024 768
+   EndSubSection
+EndSection
+
+ +

+Você precisará de diversos pacotes do X; xorg, +rxvt e um gerenciador de janelas: twm, +icewm, openbox, ... são um bom começo. +Se quiser que o X inicie no boot, você tem que instalar um +gerenciador de display. O lightdm e o gdm ainda +não funcionam, mas o xdm deve funcionar tranquilamente. +

+ +

+Finalmente, execute startx /usr/bin/yourwm +

+ +

+Se isso não funcionar, como mencionado pela mensagem de erro, olhe em +/var/log/Xorg.0.log (ou poste-a na lista para que as pessoas deem +uma olhada). +

+ +

Últimas palavras

+ +

+Para desligar seu sistema, simplesmente use halt, +poweroff ou reboot. Se algumas vezes acontecer +de travar porque algum daemon não foi terminado apropriadamente, em vez disso +você pode usar halt-hurd, poweroff-hurd, +reboot-hurd, que na verdade não desligam os daemons, mas +sincronizam os dados para o disco de modo apropriado. +

-- cgit v1.2.3