From c7e26e0cbe66c52090c1f20ac4ec7fe042644cd9 Mon Sep 17 00:00:00 2001 From: Marcus Brinkmann Date: Wed, 26 Sep 2001 22:42:44 +0000 Subject: Add the FAQ by Neal Walfield and its translations. Add a Makefile to generate the HTML and text versions from the source files. Add the generated files. Modify docs.html to point to the local version. --- faq.en.in | 651 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 651 insertions(+) create mode 100644 faq.en.in (limited to 'faq.en.in') diff --git a/faq.en.in b/faq.en.in new file mode 100644 index 00000000..5215fbf1 --- /dev/null +++ b/faq.en.in @@ -0,0 +1,651 @@ + Frequently Asked Questions about the GNU Hurd + +This document attempts to answer the questions that most often plague +users when they are talking about, installing, using, compiling and +developing the GNU Hurd as well as its binary distribution Debian +GNU/Hurd. Be sure to read this before asking for help. + +The GNU Hurd is under active development and a stable version has not +yet been released. Be aware that: there is a lot of work yet to be +completed; you will find bugs; your system will crash. That said, there +is a lot of room for contributions at all levels: development of the +Hurd and Mach proper, porting applications, writing documentation and, +most importantly, user feedback. + +Should you have a question that is not answered by this document and you +feel that it should be, submit it and, if possible, with an answer. + +Each section is copyright its respective author(s). Permission is +granted to copy, distribute and/or modify this document under the terms +of the GNU Free Documentation License, Version 1.1 or any later version +published by the Free Software Foundation; with no Invariant Sections, +with no Front-Cover Texts and with no Back-Cover Texts. A copy of the +license is included in the file COPYRIGHT. + + Neal H Walfield + neal@cs.uml.edu + +? Generally Speaking + +?? What is a Multiserver Microkernel? + +{NHW} A Microkernel has nothing to do with the size of the kernel. +Rather, it refers to the functionality that the kernel provides. It is +generally agreed that this is; a set of interfaces to allow processes to +communicate and a way to talk to the hardware. ``Software drivers,'' as +I like to call them, are then implemented in user space as servers. The +most obvious examples of these are the TCP/IP stack, the ext2 filesystem +and NFS. In the case of the Hurd, users now have access to +functionality that, in a monolithic kernel, they could never use, but +now, because the server runs in user space as the user that started it, +they may, for instance, mount an ftp filesystem in their home directory. + +For more information about the design of the Hurd, read Thomas Bushnell, +BSG's paper ``Towards a new strategy on OS design'' available at: + + http://www.gnu.org/software/hurd/hurd-paper.html + +?? Grammatically speaking, what is the Hurd? + +{NHW} Hurd stands for ``Hird of Unix Replacing Daemons.'' And Hird, in +turn, stands for ``Hurd of Interfaces Representing Depth.'' + +When we are referring to the kernel, we say ``Mach'' and use it as a +proper noun. For example: ``The GNU Mach kernel uses the device drivers +found in version 2.0.x of the Linux kernel.'' + +When we talking about the servers, we say ``The Hurd.'' For instance: +The ext2 filesystem is provided by the Hurd, not by Mach. Note, it is +wrong to say any of the following: ``HURD,'' ``The HURD'' or ``the +hurd.'' + +``GNU/Hurd'' is used when we wish to express the idea of the operating +system, e.g. ``Currently, Debian is the only distribution of GNU/Hurd.'' + +Finally, there is ``Debian GNU/Hurd.'' This refers to the distribution +as created by the Debian developers. For example: ``What do you run on +your laptop? Debian GNU/Hurd, of course.'' + +The French have a tendency to say: ``le Hurd.'' That is: masculine +singular with a leading capital. + +?? What mailing lists are there? + +{NHW} There are four principle mailing lists: + +- bug-hurd@gnu.org: Hurd and Mach development. +- help-hurd@gnu.org: General Hurd questions. +- web-hurd@gnu.org: Maintenance of the hurd webpages at + http://hurd.gnu.org +- debian-hurd@lists.debian.org: All things related to Debian GNU/Hurd + (especially porting issues). + +Subscribe in the usual manner. + +?? Where do I submit bug reports? + +{NHW} Use the Debian bug tracking system. You can find out more about +the BTS at http://www.debian.org/Bugs. + +?? Is there a TODO list? + +{NHW} Yes, in fact, several. + +- /tasks +- /TODO +- http://www.debian.org/ports/hurd/hurd-devel-tasks + +?? When is the next release? + +{NHW} No one seems to know. However, the Hurd is definitely runnable, +try it and help us get there. + +?? Why is `/usr' a symbolic link to `.'? + +{MB} The distinction between `/' and `/usr' has historical reasons. +Back when Unix systems were booted from two tapes, a small root tape +and a big user tape. Today, we like to use different partitions for +these two spaces. The Hurd throws this historical garbage away. We +think that we have found a more flexible solution called shadow +filesystems. Unfortunately, support for shadowed filesystems is not yet +implemented. + +? Installation + +?? Where do I get Debian GNU/Hurd? + +{NHW} As GNU/Hurd is an official unstable Debian port, you can find the +binaries at your local Debian mirror. There are, however, several core +packages that do not compile cleanly from source and have several, +unfortunate, hacks. These can be found at: + + ftp://alpha.gnu.org/pub/hurd/debian. + +Once you have a working installation, you can point apt at the archives +by adding the following lines to your /etc/apt/sources.list file. For +example: + + deb ftp://alpha.gnu.org/pub/gnu/hurd/debian unstable main + deb http://http.us.debian.org/debian unstable main + +As downloading all of the packages can be quite long (there is over a +gigabyte of files), Philip Charles has created Debian GNU/Hurd CDs. +Vendors can be found at the following site: + + http://www.debian.org/ports/hurd/hurd-cd + +?? How do I install Debian GNU/Hurd? + +{NHW} Consult one of the installation guides. The most up to date guide +can be found at: + + http://web.walfield.org/papers/hurd-installation-guide/ + +?? What kind of hardware is supported? + +{NHW} Currently, GNU/Hurd only runs on IA32 machines, however, porting +to other architectures should not be difficult: the code has always +been written with portability in mind. + +With respect to drivers, GNU Mach uses a subset of the drivers from the +Linux 2.0.x kernel. A relatively complete hardware compatibility guide +can be found at: + + http://www.urbanophile.com/arenn/hacking/hurd/hurd-hardware.html + +If you run into trouble, it is most likely that: + +- You are using IRQ sharing; GNU Mach does not support this in the + least. +- A device driver is frobbing the hardware and accidentally activating + the wrong device. + +In the former case, you should start removing devices or play with the +BIOS. As for the latter, GNU Mach does not support loadable kernel +modules. Therefore, you will have to compile a new kernel and only +activate those device drivers that you actually need. + +?? What partition type should I use for my GNU/Hurd partitions? + +{MB} You should use an ext2 filesystem. Alternatively, you may use BSD +style ufs. The partition type number for ext2fs is 0x83 (this is the +same as in Linux), not 0x63 (GNU HURD). Thomas explains why 0x63 is the +wrong choice: + + One day we may have a new filesystem format, which would + probably be called the GNU Hurd filesystem format, and might + well use that partition code. + +Regardless, as Roland points out, it is always an error to use that code +for an ext2fs partition, + +?? How do I name partitions? + +{MB,NHW} I knew you would ask this. If I had to reduce this FAQ to only +one question, I'd choose this one. It is pretty easy, but you have to +know that there are actually several incompatibly naming convention. + +First, the Hurd: if the disk is question is a SCSI disk, you must know +the SCSI device number; if it is an IDE disk, you must know what +controller the disk is on and whether it is a master or a slave. The +Hurd uses the BSD naming convention which, is to say, disks are ordered +according to their physical location, numerically, starting from zero. +This naming scheme is quite similar to that found in Linux. There, the +master disk on the primary controller is designated as `hda' and the +slave as `hdb'. On the secondary controller, the master and the slave +are designated by `hdc' and `hdd' respectively. Under the Hurd, `hda' +would become `hd0', `hdb' would be referred to as `hd1', etc. + +In the Hurd, like in BSD, partitions are called `slices' and are +numbered starting from one. Thus, to name a particular partition, we +take the disk name, append a `s' and the partition number. Again, this +is similar to Linux except, there is no `s'. For instance, `hda1' would +become `hd0s1'. + +GRUB, the boot loader, uses a completely different nomenclature: it +probes the BIOS and appends each disk in turn to an array. Both disks +and partitions are enumerated using zero based arrays. The format is: +`hd (, )'. Thus, `hd (0, 1)' refers to the second +partition on the first drive detected by the BIOS. As Grub now has tab +completion, there is not a lot of guess work. + +?? Can I use partitions larger than 1GB? + +{MB} No, not currently. The filesystem servers need to be changed to +not map the whole store into memory, which is not too difficult. For +large files, some interfaces need to be changed, which is a bit harder +but still doable. + +?? How much swap do I need? + +{NHW} Generally, a lot; once you run out, Mach panics. I have at least +128MB of ram and 256MB of swap on all of my Hurd machines. + +?? Can I share swap space between Linux and the Hurd? + +{NHW} Yes. The default pager recognizes and respects Linux swap +partitions. It will also swap to a raw partition, i.e. anything that it +does not recognize as Linux swap. Therefore: BE CAREFUL. + +?? Why do I get ``Operation not permitted error''? + +{MB} You forgot to set the file system owner of the Hurd partition to +Hurd. The Hurd uses additional information in the inodes to set +translators. To make this work, the partition must be marked as ``owned +by the Hurd''. This is normally done by passing the `-o hurd' option to +`mke2fs' when creating ext2 system from other operating systems +(filesystems created under the Hurd automatically enable this option). +If you failed to do this, you can still use the `e2os' script. + +?? After `native-install' is finished, I had to write tthhiiss + wwaayy. In particular, I had to type `rreebboooott' to reboot. + +{MB} Funny, isn't it? In addition to the rescue `term' server in +`/tmp/console', another `term' server got started and is clobbing the +keyboard input. After a reboot this problem vanishes as only one `term' +server will remain. If `tar' would support translator, we would not +have this problem... Even if you don't experience this problem right +after the installation, reboot immediately so you don't hit this bug by +accident. + +? Setup + +?? How do I add a swap partition? + +{MB} A swap partition is also called a paging file. Usually, it is +sufficient to add the swap partition to `/etc/fstab', just as you would +under Linux. You can swap to a Linux swap partition and the Hurd will +honour the Linux swap signature (both versions). The Hurd will just as +happily swap to any other raw disk space and overwrite anything it +finds. So, be careful! + +If you want to swap to a file or make sure that it checks the Linux swap +signature before, you need to edit `/boot/servers.boot'. The syntax is +the partition device file name plus, optionally, the swap file inside an +ext2fs partition, followed by a space and then one of: +`$(add-raw-paging-file)', `$(add-linux-paging-file)', +`$(add-paging-file)'. The first works with any partition or file and +does not honour any swap signature or other data. The second has a +safety check and only uses the file if a Linux swap signature is found. +The third looks for a swap signature first and falls back to raw paging +if it failed to find one. This is also the default for entries in +`/etc/fstab'. + +?? How do I set up a network? + How do I set up a loopback device? + +{MB} In the former case, be sure that GNU Mach detected your network +card. Either way, you need to setup `pfinet'. Documentation can be +found at: + + http://www.debian.org/ports/hurd/hurd-doc-server#pfinet + +Don't forget to fill in `/etc/resolv.conf', `/etc/hosts', etc. + +Of course, you only need to do this if the installation routine didn't +do it for you. + +?? How can I pass options to `serverboot'? + +{MB} Give them to the kernel (i.e. on the GRUB command line) and it will +pass them down to `serverboot' automatically. + +?? Can I use the GNU/Linux version of `e2fsck' on a Hurd partition? + +{MB} Yes, at least since `e2fsprogs-1.05'. Check this with `e2fsck -V' +first. + +{NHW} Do not try to defrag your partition as this utility does not know +about translators. + +?? Why are pipes not working? + +{MB} `settrans -fgc /servers/socket/1 /hurd/pflocal' should help. + +? Usage + +?? Where is the documentation? + +{NHW} There are neither man pages nor info nodes for Hurd translators +and commands. Documentation lives inside of the binaries and can be +found by passing the `--help' option to a given command. For instance: + + # /hurd/ext2fs --help + +will tell you what types of options the ext2fs translator accepts. + +?? What is a translator? + +{MB} There is a text about translators available at: + + http://www.debian.org/ports/hurd/hurd-doc-translator + +Read this and ask further questions on the mailing lists. + +?? What is the login shell? + +{MB} The Hurd has the concept of a not-logged in user. This user has +neither user ids nor groups ids. This stems from the fact that the Hurd +supports uid and gid sets and one possibility is, of course, the empty +set. Rather than deny access in this case, Hurd filesystems offer a +forth permission triplet (i.e. rwx) which is used to determine the +privileges for users with no credentials. This, however, needs to be +enabled on a file by file basis. By default, the `other' permission +triplet is used. + +The Hurd login shell is a shell running with neither uids nor gids. To +restrict access to your files, either enable and change the fourth +permission triplet or change the login shell of the `login' user in the +password file to `/bin/loginpr' which implements the standard login +prompt. + +?? How do I use non-US keyboard bindings? + +{NHW} Take a look at: + + ftp://alpha.gnu.org/gnu/hurd/contrib/marcus/keymap.tar.gz + +?? How do I enable color on the console? + +{NHW} If you are using the GNU Mach microkernel, you can set your +terminal to `mach-color'. For instance: + + # export TERM=mach-color + +?? How can I enable virtual consoles? + +{NHW} There is currently no support for virtual consoles. You can, +however, use `screen'. It is much more flexible anyway. + +Kalle Olavi Niemitalo began working on colortext. +His aim was to provide a featureful program that multiplexes the console +in userspace by reading from the /dev/kdb device. Check: + + http://stekt.oulu.fi/~tosi/ + +{MB} Here are some useful options to add to your ~/.screenrc file to get +it to emulate Linux virtual terminals a bit more closely: + + bindkey ^[O0 select 0 + bindkey ^[O1 select 1 + bindkey ^[O2 select 2 + bindkey ^[O3 select 3 + bindkey ^[O4 select 4 + bindkey ^[O5 select 5 + bindkey ^[O6 select 6 + bindkey ^[O7 select 7 + bindkey ^[O8 select 8 + bindkey ^[O9 select 9 + + # Unfortunately, Mach ignores modifiers on Cursor keys. This can be + # fixed, however, for now, we shall just use other keys to move back, + # and forth. + # ^[, is ALT and "," + # ^[. is ALT and "." + bindkey ^[, prev + bindkey ^[. next + +?? What is the status of X? + +{MB} It works! The packages are available at any Debian ftp mirror. +XFree86 4.0.2 is available, as are some of the v3 servers. Instructions +on how to use the packages are in the mailing list archive (link follow +later). + +?? Why does X not work? + +{MB} Try `export LD_LIBRARY_PATH=/usr/X11R6/lib'. This is a linker +issue. The Hurd system wants to use `RPATH', however, Debian takes +certain measures to avoid this. Note that this does not cut it for suid +binaries because of security implications. + +?? What are these strange pids `2' and `3'? + +{MB} Two is the kernel, three is the default pager and four is the root +filesystem. + +?? Why does `ps aux' give me strange output? + +{MB} Try `ps Aux'. + +?? I have a hung process that I want to kill, however, `ps' is now + hanging too. + +{MB} Interrupt it and pass it the `-M' option. + +{NHW} By default, `ps' gathers information from both the proc server and +the processes themselves (via their message port). If a process it +hung, it will not be able respond to its message port and thus, ps will +wait forever. The `-M' option instructs ps to not gather information +that would require use of the message port. + +?? Where are ... + +{MB} `fdisk' and `dmesg' are not yet ported. + +Instead of `free', use `vmstat' and `vminfo'. + +For kernel messages, read `/dev/klog' directly. Note, once you read +this, it is gone forever. + +{NHW} `ifconfig' does not exist. Try: + + # /hurd/pfinet --help + +As for dhcp, take a look at hurd/trans/pump.c; this is the start of a +dhcp client for the Hurd. + +?? Is there a `/proc' filesystem? + +{MB} No. Maybe there will be an emulation filesystem someday for +programs that rely it. If you are wondering about the empty `/proc' +directory, this is a relict from a Debian GNU/Linux package +(specifically, `base-files'). + +You can probe for existing hardware devices with the devprobe utility. + +?? Why does the command `df' not work? + +{NHW} It does, you just have to tell it what filesystem to query. E.g. + + # df / + +?? Why are my translators dying? + +{NHW} Try passing the `-ap' flag to settrans. By default, settrans only +sets a passive translator, therefore, no output will show up on your +terminal. Using `-ap', however, sets both the active and the passive +translator which, means that the translator starts immediately and its +stderr is connected to you terminal. + +Additionally, the biggest problem is passing relative paths to passive +translators. You cannot predict what the current working directory of a +translator will be when it is setup as a passive translator. + +? Trouble shooting + +?? When the APM support in the BIOS spins down my disk drives, the + Hurd is unable to wake up. What's wrong? + +{MB} APM is not supported in the current version of GNU Mach, sorry. +Please disable APM in your BIOS setup. + +?? What are these messages referring to `default pager', `paging', + and `pager request'? + +{MB} The default pager handles virtual memory allocation. If it can't +allocate a new memory page because you are out of memory, some terrible +things may happen. Whenever you get errors referring to any of these, +you either need more memory (make sure you have swap) or you have found +a memory leak. + +?? What is a gratuitous error? + +{MB} This comes from `strerror(EGRATUITOUS)'. If you check glibc's +documentation, it will say that this error code has no purpose. This, +however, is not quite true. You only get this when something terrible +happens. Thomas explains: + + More precisely `EGRATUITOUS' officially means that some server + has responded in an impossible or protocol-violating fashion. + There are some cases in the Hurd where `EGRATUITOUS' is returned + and probably something else should be chosen instead. + +If you can reproduce this error message, please report it. + +?? What does ``/dev/hd0s1: MOUNTED READ-ONLY; MUST USE `fsysopts + --writable''' mean? + +{NHW} In this case, /dev/hd0s1 was not unmounted cleanly. The Hurd +will, on boot up, run ``fsck -p'' on any partitions that it finds in +/etc/fstab, so, you may want to consider adding this partition to that +file. If you are sure that the partition is fine, you can run: + + # fsysopts /home --writable + +to ask the translator sitting on /home to change from read-only to +read/write mode. Note that the command is being sent to the filesystem +and not the store (e.g. /dev/hd0s1). + +?? When the Hurd crashes, GNU Mach automatically reboots. Is + there anyway I can make it pause so I can write down the error? + +{MB} Pass the `-H' option to init (add it to the boot command line), and +`init' will tell Mach to enter the kernel debugger instead to rebooting +it. At the debugger prompt (`db>'), you can type `reboot' any time to +reboot the system. + +? Porting + +?? What programs have been ported? + +{NHW} A lot, take a look at the Debian archive. Many programs, however, +do not necessarily need to be ported; they have just never been +compiled. + +?? Is porting easy? + +{NHW} Porting applications to the Hurd is relatively easy assuming the +application is POSIX compliant as the Hurd does its best to be a +conforming operating system. + +The most common error made by programmers is assuming the MAXPATHLEN and +PATH_MAX are defined. On most operating systems this is set to a few +thousand, however, on the Hurd, there is no maximum and thus, this is +not set. The correct thing to do is to submit a patch to the upstream +author that allocates memory dynamically. + +?? How can I help? + +{NHW} A effort to compile all of the Debian packages is underway by Jeff +Bailey. Take a look at: + + http://people.debian.org/~jbailey/oasis/group/Debian/index.html + +to see what has been done and how you can help. + +? Compiling + +?? Where can I get the source? + +{NHW} The source is stored in CVS at: + + :pserver:anoncvs@subversions.gnu.org:/cvs + +You do not need a password to login. The modules that you are interested +in are: `hurd', `mach' and `mig'. + +A web interface is also available at: http://subversions.gnu.org. + +To get the source to the latest debian package, look on any debian +mirror. + +?? Can I cross compile? + +{NHW} Yes. If you are running Debian GNU/Linux on IA32, this is quite +easy as there is a cheap cross compiler available; all that is required +is installing the gcc-i386-gnu and mig-i386-gnu Debian packages. When +running configure, you will have to specify tools directly: + + # MIG=/usr/bin/i386-gnu-mig CC=/usr/bin/i386-gnu-gcc \ + ../src/hurd/configure ... + +If you are running another distribution, you will have to do this the +long way. You can find instructions at the Cross Compiling HOW-TO +available at: + + http://hurddocs.sourceforge.net/howto/cross.html + +Farid Hajji also talks about his experiences +at: + + http://lists.debian.org/debian-hurd-0012/msg00062.html + +?? Any general tips? + +{NHW} Yeah, building in the source tree is untested. Try: + + # ../src/hurd/configure ... + +? Development + +?? Why can I `read()' a directory? + +{MB} It is important to understand that there is nothing special about a +directory under the Hurd, it is just another file. This fits in with +the translator concept where a translator can appear as a directory but +provide also as a file. + +?? What is OSKit-Mach? + +{NHW} There are two versions of Mach: GNU Mach and OSKit-Mach. The +former uses the drivers from Linux 2.0.x while the latter uses the +University of Utah's OSKit. If all goes well, OSKit-Mach will be +stabilized and become the official kernel. You can find out more about +the OSKit at: + + http://www.cs.utah.edu/flux/oskit + +?? Where is the documentation? + +{NHW} There were several books written on the Mach kernel. The +information that they contain is still mostly pertinent and should be +considered required reading for potential hackers. They can be found +at: + + http://www.cs.cmu.edu/afs/cs/project/mach/public/www/doc/publications.html + +The documentation for the Hurd is quite inadequate. The starting of a +book, ``The GNU Hurd'' is in the doc directory in the Hurd source. You +can read this using: + + # info hurd + +The authoritative place is, of course, the source code; that does not, +however, mean that we would not welcome more documentation. To get +started, take a look at /doc/navigating. + +?? How do I make sure that my code is POSIX compliant? + +{NHW} Unfortunately, you have to buy the POSIX standard from IEEE. The +Single Unix Specification version 2, a superset of POSIX, is available +for free on the Internet. Try: + + http://www.unix-systems.org/online.html + +?? Who do I submit patches to? + +{NHW} If they are against the Hurd, Mach or MiG, send a patch in unidiff +format to the bug-hurd mailing list. For instance: + + # diff -urN hurd-orig hurd + +If they are against other packages, the Debian BTS is a good place. In +this case, be sure to advise the debian-hurd mailing list of the bug. + + +Answers were given by: +* {NHW} Neal H Walfield +* {MB} Marcus Brinkmann + + vim:ts=8:sw=8:tw=72 -- cgit v1.2.3 From 0ebfc64659851551749746f7f876f59efee2e8bd Mon Sep 17 00:00:00 2001 From: Marcus Brinkmann Date: Wed, 26 Sep 2001 23:23:27 +0000 Subject: faq.en.in: Change the nomenclature a bit. --- faq.en.in | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) (limited to 'faq.en.in') diff --git a/faq.en.in b/faq.en.in index 5215fbf1..fbecac43 100644 --- a/faq.en.in +++ b/faq.en.in @@ -47,20 +47,21 @@ BSG's paper ``Towards a new strategy on OS design'' available at: ?? Grammatically speaking, what is the Hurd? -{NHW} Hurd stands for ``Hird of Unix Replacing Daemons.'' And Hird, in -turn, stands for ``Hurd of Interfaces Representing Depth.'' +{NHW} ``Hurd'', as an acronym, stands for ``Hird of Unix Replacing +Daemons.'' And Hird, in turn, stands for ``Hurd of Interfaces +Representing Depth.'' When we are referring to the kernel, we say ``Mach'' and use it as a proper noun. For example: ``The GNU Mach kernel uses the device drivers found in version 2.0.x of the Linux kernel.'' -When we talking about the servers, we say ``The Hurd.'' For instance: +When we talking about the servers, we say ``the Hurd.'' For instance: The ext2 filesystem is provided by the Hurd, not by Mach. Note, it is -wrong to say any of the following: ``HURD,'' ``The HURD'' or ``the -hurd.'' +wrong to say any of the following: ``Hurd'', ``HURD,'' ``The HURD'' or +``the hurd.'' -``GNU/Hurd'' is used when we wish to express the idea of the operating -system, e.g. ``Currently, Debian is the only distribution of GNU/Hurd.'' +``The GNU Hurd'' is used when we wish to express the idea of the operating +system, e.g. ``Currently, Debian is the only distribution of the GNU Hurd.'' Finally, there is ``Debian GNU/Hurd.'' This refers to the distribution as created by the Debian developers. For example: ``What do you run on @@ -114,10 +115,10 @@ implemented. ?? Where do I get Debian GNU/Hurd? -{NHW} As GNU/Hurd is an official unstable Debian port, you can find the -binaries at your local Debian mirror. There are, however, several core -packages that do not compile cleanly from source and have several, -unfortunate, hacks. These can be found at: +{NHW} As the GNU Hurd is an official unstable Debian port, you can +find the binaries at your local Debian mirror. There are, however, +several core packages that do not compile cleanly from source and have +several, unfortunate, hacks. These can be found at: ftp://alpha.gnu.org/pub/hurd/debian. @@ -143,9 +144,9 @@ can be found at: ?? What kind of hardware is supported? -{NHW} Currently, GNU/Hurd only runs on IA32 machines, however, porting -to other architectures should not be difficult: the code has always -been written with portability in mind. +{NHW} Currently, the GNU Hurd only runs on IA32 machines, however, +porting to other architectures should not be difficult: the code has +always been written with portability in mind. With respect to drivers, GNU Mach uses a subset of the drivers from the Linux 2.0.x kernel. A relatively complete hardware compatibility guide @@ -165,7 +166,7 @@ BIOS. As for the latter, GNU Mach does not support loadable kernel modules. Therefore, you will have to compile a new kernel and only activate those device drivers that you actually need. -?? What partition type should I use for my GNU/Hurd partitions? +?? What partition type should I use for my GNU Hurd partitions? {MB} You should use an ext2 filesystem. Alternatively, you may use BSD style ufs. The partition type number for ext2fs is 0x83 (this is the -- cgit v1.2.3 From 5cc572186072fa541a538359df50bc781706248b Mon Sep 17 00:00:00 2001 From: Marcus Brinkmann Date: Sun, 30 Sep 2001 17:44:40 +0000 Subject: Fix up nomeclature: "the Hurd" vs "GNU/Hurd" etc --- faq.en.in | 73 ++++++++++++++++++++++++++++++++++----------------------------- 1 file changed, 39 insertions(+), 34 deletions(-) (limited to 'faq.en.in') diff --git a/faq.en.in b/faq.en.in index fbecac43..fe91c80a 100644 --- a/faq.en.in +++ b/faq.en.in @@ -48,36 +48,40 @@ BSG's paper ``Towards a new strategy on OS design'' available at: ?? Grammatically speaking, what is the Hurd? {NHW} ``Hurd'', as an acronym, stands for ``Hird of Unix Replacing -Daemons.'' And Hird, in turn, stands for ``Hurd of Interfaces -Representing Depth.'' +Daemons''. And Hird, in turn, stands for ``Hurd of Interfaces +Representing Depth''. When we are referring to the kernel, we say ``Mach'' and use it as a proper noun. For example: ``The GNU Mach kernel uses the device drivers found in version 2.0.x of the Linux kernel.'' -When we talking about the servers, we say ``the Hurd.'' For instance: -The ext2 filesystem is provided by the Hurd, not by Mach. Note, it is -wrong to say any of the following: ``Hurd'', ``HURD,'' ``The HURD'' or -``the hurd.'' +When we talking about the servers, we say ``the Hurd''. For instance: +The ext2 filesystem is provided by the Hurd, not by Mach. The name of +the project is ``the GNU Hurd''. Note, it is wrong to say any of the +following: ``Hurd'', ``HURD,'' ``The HURD'' or ``the hurd''. -``The GNU Hurd'' is used when we wish to express the idea of the operating -system, e.g. ``Currently, Debian is the only distribution of the GNU Hurd.'' +The whole operating system includes not only the kernel and the system +servers, but also many more programs. This system is called ``GNU'', +or ``the GNU operating system''. The GNU programs can also run on +other operating system kernels. We say ``GNU/Hurd'' when we want to +put emphasis on the fact that this is the GNU system running on top of +the Hurd. -Finally, there is ``Debian GNU/Hurd.'' This refers to the distribution -as created by the Debian developers. For example: ``What do you run on -your laptop? Debian GNU/Hurd, of course.'' +Finally, there is ``Debian GNU/Hurd''. This refers to the distribution +of the GNU system as created by the Debian developers. For example: +``What do you run on your laptop? Debian GNU/Hurd, of course.'' -The French have a tendency to say: ``le Hurd.'' That is: masculine +The French have a tendency to say: ``le Hurd''. That is: masculine singular with a leading capital. ?? What mailing lists are there? {NHW} There are four principle mailing lists: -- bug-hurd@gnu.org: Hurd and Mach development. -- help-hurd@gnu.org: General Hurd questions. -- web-hurd@gnu.org: Maintenance of the hurd webpages at - http://hurd.gnu.org +- bug-hurd@gnu.org: Development of the Hurd and Mach. +- help-hurd@gnu.org: General questions about the Hurd. +- web-hurd@gnu.org: Maintenance of the Hurd webpages at + http://www.gnu.org/software/hurd/hurd.html - debian-hurd@lists.debian.org: All things related to Debian GNU/Hurd (especially porting issues). @@ -115,9 +119,9 @@ implemented. ?? Where do I get Debian GNU/Hurd? -{NHW} As the GNU Hurd is an official unstable Debian port, you can -find the binaries at your local Debian mirror. There are, however, -several core packages that do not compile cleanly from source and have +{NHW} As GNU/Hurd is an official unstable Debian port, you can find +the binaries at your local Debian mirror. There are, however, several +core packages that do not compile cleanly from source and have several, unfortunate, hacks. These can be found at: ftp://alpha.gnu.org/pub/hurd/debian. @@ -166,7 +170,7 @@ BIOS. As for the latter, GNU Mach does not support loadable kernel modules. Therefore, you will have to compile a new kernel and only activate those device drivers that you actually need. -?? What partition type should I use for my GNU Hurd partitions? +?? What partition type should I use for my GNU/Hurd partitions? {MB} You should use an ext2 filesystem. Alternatively, you may use BSD style ufs. The partition type number for ext2fs is 0x83 (this is the @@ -220,9 +224,9 @@ but still doable. ?? How much swap do I need? {NHW} Generally, a lot; once you run out, Mach panics. I have at least -128MB of ram and 256MB of swap on all of my Hurd machines. +128MB of ram and 256MB of swap on all of machines running GNU/Hurd. -?? Can I share swap space between Linux and the Hurd? +?? Can I share swap space between GNU/Linux and GNU/Hurd? {NHW} Yes. The default pager recognizes and respects Linux swap partitions. It will also swap to a raw partition, i.e. anything that it @@ -230,12 +234,12 @@ does not recognize as Linux swap. Therefore: BE CAREFUL. ?? Why do I get ``Operation not permitted error''? -{MB} You forgot to set the file system owner of the Hurd partition to -Hurd. The Hurd uses additional information in the inodes to set +{MB} You forgot to set the file system owner of the GNU/Hurd partition to +``hurd''. The Hurd uses additional information in the inodes to set translators. To make this work, the partition must be marked as ``owned by the Hurd''. This is normally done by passing the `-o hurd' option to `mke2fs' when creating ext2 system from other operating systems -(filesystems created under the Hurd automatically enable this option). +(filesystems created in GNU/Hurd automatically enable this option). If you failed to do this, you can still use the `e2os' script. ?? After `native-install' is finished, I had to write tthhiiss @@ -291,7 +295,7 @@ do it for you. {MB} Give them to the kernel (i.e. on the GRUB command line) and it will pass them down to `serverboot' automatically. -?? Can I use the GNU/Linux version of `e2fsck' on a Hurd partition? +?? Can I use the GNU/Linux version of `e2fsck' on a GNU/Hurd partition? {MB} Yes, at least since `e2fsprogs-1.05'. Check this with `e2fsck -V' first. @@ -307,7 +311,7 @@ about translators. ?? Where is the documentation? -{NHW} There are neither man pages nor info nodes for Hurd translators +{NHW} There are neither man pages nor info nodes for the Hurd translators and commands. Documentation lives inside of the binaries and can be found by passing the `--help' option to a given command. For instance: @@ -328,7 +332,7 @@ Read this and ask further questions on the mailing lists. {MB} The Hurd has the concept of a not-logged in user. This user has neither user ids nor groups ids. This stems from the fact that the Hurd supports uid and gid sets and one possibility is, of course, the empty -set. Rather than deny access in this case, Hurd filesystems offer a +set. Rather than deny access in this case, filesystems in the Hurd offer a forth permission triplet (i.e. rwx) which is used to determine the privileges for users with no credentials. This, however, needs to be enabled on a file by file basis. By default, the `other' permission @@ -396,9 +400,10 @@ later). ?? Why does X not work? {MB} Try `export LD_LIBRARY_PATH=/usr/X11R6/lib'. This is a linker -issue. The Hurd system wants to use `RPATH', however, Debian takes +issue. GNU/Hurd expects that `RPATH' is used, however, Debian takes certain measures to avoid this. Note that this does not cut it for suid -binaries because of security implications. +binaries because of security implications. We expect to rectify this +by using `RUNPATH', which is specified in the new ELF standard. ?? What are these strange pids `2' and `3'? @@ -508,7 +513,7 @@ to ask the translator sitting on /home to change from read-only to read/write mode. Note that the command is being sent to the filesystem and not the store (e.g. /dev/hd0s1). -?? When the Hurd crashes, GNU Mach automatically reboots. Is +?? When GNU/Hurd crashes, GNU Mach automatically reboots. Is there anyway I can make it pause so I can write down the error? {MB} Pass the `-H' option to init (add it to the boot command line), and @@ -526,13 +531,13 @@ compiled. ?? Is porting easy? -{NHW} Porting applications to the Hurd is relatively easy assuming the -application is POSIX compliant as the Hurd does its best to be a +{NHW} Porting applications to GNU/Hurd is relatively easy assuming the +application is POSIX compliant as GNU/Hurd does its best to be a conforming operating system. The most common error made by programmers is assuming the MAXPATHLEN and PATH_MAX are defined. On most operating systems this is set to a few -thousand, however, on the Hurd, there is no maximum and thus, this is +thousand, however, on GNU/Hurd, there is no maximum and thus, this is not set. The correct thing to do is to submit a patch to the upstream author that allocates memory dynamically. -- cgit v1.2.3 From d994d24a7aacb4154d417844c9bbf5b0c14ff859 Mon Sep 17 00:00:00 2001 From: Marcus Brinkmann Date: Mon, 1 Oct 2001 13:46:36 +0000 Subject: Add a question about patch format to the FAQ. --- faq.en.in | 65 ++++++++++++++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 54 insertions(+), 11 deletions(-) (limited to 'faq.en.in') diff --git a/faq.en.in b/faq.en.in index fe91c80a..6f83b029 100644 --- a/faq.en.in +++ b/faq.en.in @@ -468,6 +468,13 @@ Additionally, the biggest problem is passing relative paths to passive translators. You cannot predict what the current working directory of a translator will be when it is setup as a passive translator. +?? Why can I `read()' a directory? + +{MB} It is important to understand that there is nothing special about a +directory under the Hurd, it is just another file. This fits in with +the translator concept where a translator can appear as a directory but +provide also as a file. + ? Trouble shooting ?? When the APM support in the BIOS spins down my disk drives, the @@ -595,13 +602,6 @@ at: ? Development -?? Why can I `read()' a directory? - -{MB} It is important to understand that there is nothing special about a -directory under the Hurd, it is just another file. This fits in with -the translator concept where a translator can appear as a directory but -provide also as a file. - ?? What is OSKit-Mach? {NHW} There are two versions of Mach: GNU Mach and OSKit-Mach. The @@ -641,14 +641,57 @@ for free on the Internet. Try: ?? Who do I submit patches to? -{NHW} If they are against the Hurd, Mach or MiG, send a patch in unidiff -format to the bug-hurd mailing list. For instance: - - # diff -urN hurd-orig hurd +{NHW} If they are against the Hurd, Mach or MiG, send a patch to the +bug-hurd mailing list. If they are against other packages, the Debian BTS is a good place. In this case, be sure to advise the debian-hurd mailing list of the bug. +?? In what format should patches for the Hurd and GNU Mach be? + +{MB} All patches should be sent in unified context diff format (option +`-u' to GNU diff). It is helpful for us if you also use the `-p' +option which includes information about the function changed by a +patch. Changes that are similar can be grouped together in one file, +but unrelated changes should be sent in seperate files. The patches +can be included in the message or as a MIME attachement. They should +not be compressed and/or archived unless they are very large, and if +they are very large it is probably better to store them on-line at +some place and only sent an URL. + +Write a ChangeLog entry for each change, following the format of the +existing files. Here is an example: + + 2000-12-02 Marcus Brinkmann + + * ops.c (op_readlink): Before returning, check if the buffer + pointed to by transp is ours. If not, munmap it. + (op_read): Likewise for bp. + (op_readdir): Don't alloca a buffer here. Instead initialize + BUF and BUFSIZE to 0 and let the server (eh, MiG) do it. + munmap BUF before returning. + +The file name and the name of the function changed should always be +spelled out completely, and not abbreviated or otherwise mangled (like +foo.{c,h}), because that would make searching for all changes to a +file or function impossible. Local variable names are all +capitalized. There are two spaces between sentences. You can use +``C-x 4 a'' in Emacs to add a new ChangeLog entry. If you do that +with the mark being in a function, Emacs will automatically fill in +the file and function name for you. + +Do not send in a patch for the ChangeLog file. Rather include the +ChangeLog entries in the message that contains the patch. Patches for +ChangeLog files often conflict. + +If you have the original source tree in the directory `hurd-orig', and +the modified source tree in the directory `hurd', the following +command will produce a good patch (please make sure there are no extra +files like backups in the modified tree, or leave away the option +`-N'). You will need to collect the ChangeLog entries seperately. + + # diff -x ChangeLog -Nurp hurd-orig hurd + Answers were given by: * {NHW} Neal H Walfield -- cgit v1.2.3 From e123435731bfb528a6a086d2d4f9cbe1766360ac Mon Sep 17 00:00:00 2001 From: Marcus Brinkmann Date: Thu, 4 Oct 2001 02:51:11 +0000 Subject: Incorporate changes by RMS into the faq.en.in version and regenerate the other files. --- faq.en.in | 38 +++++++++++++++++++++++--------------- 1 file changed, 23 insertions(+), 15 deletions(-) (limited to 'faq.en.in') diff --git a/faq.en.in b/faq.en.in index 6f83b029..340e3196 100644 --- a/faq.en.in +++ b/faq.en.in @@ -40,39 +40,47 @@ functionality that, in a monolithic kernel, they could never use, but now, because the server runs in user space as the user that started it, they may, for instance, mount an ftp filesystem in their home directory. -For more information about the design of the Hurd, read Thomas Bushnell, -BSG's paper ``Towards a new strategy on OS design'' available at: +For more information about the design of the Hurd, read the paper by +Thomas Bushnell, BSG: ``Towards a new strategy on OS design'', +available at: http://www.gnu.org/software/hurd/hurd-paper.html ?? Grammatically speaking, what is the Hurd? -{NHW} ``Hurd'', as an acronym, stands for ``Hird of Unix Replacing -Daemons''. And Hird, in turn, stands for ``Hurd of Interfaces +{NHW} ``Hurd'', as an acronym, stands for ``Hird of Unix-Replacing +Daemons''. Hird, in turn, stands for ``Hurd of Interfaces Representing Depth''. -When we are referring to the kernel, we say ``Mach'' and use it as a -proper noun. For example: ``The GNU Mach kernel uses the device drivers -found in version 2.0.x of the Linux kernel.'' +We treat ``Hurd'' as a title rather than as a proper name: it requires +an article, as in ``the Hurd''. For instance: ``The ext2 filesystem +is provided by the Hurd, not by Mach.'' Note that all of the +following are incorrect: ``Hurd'', ``HURD'', ``The HURD'', and ``the +hurd''. -When we talking about the servers, we say ``the Hurd''. For instance: -The ext2 filesystem is provided by the Hurd, not by Mach. The name of -the project is ``the GNU Hurd''. Note, it is wrong to say any of the -following: ``Hurd'', ``HURD,'' ``The HURD'' or ``the hurd''. +We write ``the GNU Hurd'' instead of ``the Hurd'' when we want to +emphasize that the Hurd is a GNU package. Once this has been made +clear, we usually use the shorter form, without ``GNU''. The whole operating system includes not only the kernel and the system servers, but also many more programs. This system is called ``GNU'', or ``the GNU operating system''. The GNU programs can also run on other operating system kernels. We say ``GNU/Hurd'' when we want to put emphasis on the fact that this is the GNU system running on top of -the Hurd. +the Hurd, and to contrast it with the GNU/Linux system which is GNU +using Linux as the kernel. Finally, there is ``Debian GNU/Hurd''. This refers to the distribution of the GNU system as created by the Debian developers. For example: ``What do you run on your laptop? Debian GNU/Hurd, of course.'' -The French have a tendency to say: ``le Hurd''. That is: masculine -singular with a leading capital. +The French generally write ``le Hurd''--that is, they treat the +name as masculine singular, capitalized as in English. + +When we are referring to the microkernel, we say ``Mach'' and use it +as a proper noun. For example: ``Mach uses the device drivers found +in version 2.0.x of Linux.'' We sometimes say ``The Mach +microkernel'' instead of just ``Mach''. ?? What mailing lists are there? @@ -468,7 +476,7 @@ Additionally, the biggest problem is passing relative paths to passive translators. You cannot predict what the current working directory of a translator will be when it is setup as a passive translator. -?? Why can I `read()' a directory? +?? Why can I `read' a directory? {MB} It is important to understand that there is nothing special about a directory under the Hurd, it is just another file. This fits in with -- cgit v1.2.3 From 168021c479e6f6697a111e77e9a9a86b4c1847e5 Mon Sep 17 00:00:00 2001 From: Marcus Brinkmann Date: Thu, 3 Jan 2002 19:57:55 +0000 Subject: Fix link to hardware compatibility guide. --- faq.en.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'faq.en.in') diff --git a/faq.en.in b/faq.en.in index 340e3196..525b5ec3 100644 --- a/faq.en.in +++ b/faq.en.in @@ -164,7 +164,7 @@ With respect to drivers, GNU Mach uses a subset of the drivers from the Linux 2.0.x kernel. A relatively complete hardware compatibility guide can be found at: - http://www.urbanophile.com/arenn/hacking/hurd/hurd-hardware.html + http://www.freesoftware.fsf.org/thug/gnumach_hardware.html If you run into trouble, it is most likely that: -- cgit v1.2.3 From 2eb2da8a0321db963ea10ba5c2de6020b4c8da7a Mon Sep 17 00:00:00 2001 From: Marcus Brinkmann Date: Sun, 20 Jan 2002 00:24:06 +0000 Subject: Fix CVS entry. Reported by William Rivet. --- faq.en.in | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'faq.en.in') diff --git a/faq.en.in b/faq.en.in index 525b5ec3..1ea001f8 100644 --- a/faq.en.in +++ b/faq.en.in @@ -571,12 +571,13 @@ to see what has been done and how you can help. {NHW} The source is stored in CVS at: - :pserver:anoncvs@subversions.gnu.org:/cvs + :pserver:anoncvs@subversions.gnu.org:/cvsroot/hurd You do not need a password to login. The modules that you are interested -in are: `hurd', `mach' and `mig'. +in are: `hurd', `gnumach' and `mig'. -A web interface is also available at: http://subversions.gnu.org. +A web interface is also available at: +http://savannah.gnu.org/cgi-bin/viewcvs/hurd/ To get the source to the latest debian package, look on any debian mirror. -- cgit v1.2.3 From 12209639bf996c1c65b52916aceaa3da31489c49 Mon Sep 17 00:00:00 2001 From: Marcus Brinkmann Date: Sun, 10 Mar 2002 18:37:47 +0000 Subject: Fix link as reported by Laurent Giroud . --- faq.en.in | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'faq.en.in') diff --git a/faq.en.in b/faq.en.in index 1ea001f8..8cb51986 100644 --- a/faq.en.in +++ b/faq.en.in @@ -132,13 +132,13 @@ the binaries at your local Debian mirror. There are, however, several core packages that do not compile cleanly from source and have several, unfortunate, hacks. These can be found at: - ftp://alpha.gnu.org/pub/hurd/debian. + ftp://alpha.gnu.org/gnu/hurd/debian. Once you have a working installation, you can point apt at the archives by adding the following lines to your /etc/apt/sources.list file. For example: - deb ftp://alpha.gnu.org/pub/gnu/hurd/debian unstable main + deb ftp://alpha.gnu.org/gnu/hurd/debian unstable main deb http://http.us.debian.org/debian unstable main As downloading all of the packages can be quite long (there is over a -- cgit v1.2.3 From e68054ec54d38e8833088e43aed385af396117f5 Mon Sep 17 00:00:00 2001 From: Marcus Brinkmann Date: Tue, 14 May 2002 12:38:02 +0000 Subject: Remove dead link to hurd-devel-tasks at debian.org. Reported by Grant Bowman. And many greetings to Alfred, who submitted the patch for the last changelog entry ;) --- faq.en.in | 1 - 1 file changed, 1 deletion(-) (limited to 'faq.en.in') diff --git a/faq.en.in b/faq.en.in index 8cb51986..e9e564e6 100644 --- a/faq.en.in +++ b/faq.en.in @@ -106,7 +106,6 @@ the BTS at http://www.debian.org/Bugs. - /tasks - /TODO -- http://www.debian.org/ports/hurd/hurd-devel-tasks ?? When is the next release? -- cgit v1.2.3 From 8f3109a50410cb431793beab9722d853fefc2fcc Mon Sep 17 00:00:00 2001 From: Marcus Brinkmann Date: Fri, 22 Nov 2002 11:21:52 +0000 Subject: Bump up the partition limit to 2gb. --- faq.en.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'faq.en.in') diff --git a/faq.en.in b/faq.en.in index e9e564e6..c32bc4a8 100644 --- a/faq.en.in +++ b/faq.en.in @@ -221,7 +221,7 @@ and partitions are enumerated using zero based arrays. The format is: partition on the first drive detected by the BIOS. As Grub now has tab completion, there is not a lot of guess work. -?? Can I use partitions larger than 1GB? +?? Can I use partitions larger than 2GB? {MB} No, not currently. The filesystem servers need to be changed to not map the whole store into memory, which is not too difficult. For -- cgit v1.2.3 From 1ec01255980d2b38de1fe5df27600388e481dad5 Mon Sep 17 00:00:00 2001 From: "Alfred M. Szmidt" Date: Wed, 14 May 2003 07:18:02 +0000 Subject: URL updated. Reported by Grant Bowman . --- faq.en.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'faq.en.in') diff --git a/faq.en.in b/faq.en.in index c32bc4a8..181694e0 100644 --- a/faq.en.in +++ b/faq.en.in @@ -163,7 +163,7 @@ With respect to drivers, GNU Mach uses a subset of the drivers from the Linux 2.0.x kernel. A relatively complete hardware compatibility guide can be found at: - http://www.freesoftware.fsf.org/thug/gnumach_hardware.html + http://www.nongnu.org/thug/gnumach_hardware.html If you run into trouble, it is most likely that: -- cgit v1.2.3 From 053e9b6f956f0087fbdb5184a28a591ce5fadcce Mon Sep 17 00:00:00 2001 From: "Alfred M. Szmidt" Date: Sat, 9 Oct 2004 17:26:01 +0000 Subject: Updated "Where do I submit bug reports?" to point to the Savannah Bug Tracker. And added Alfred M. Szmidt to the list of people who have given a answer to a question. --- faq.en.in | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'faq.en.in') diff --git a/faq.en.in b/faq.en.in index 181694e0..2dfdbcac 100644 --- a/faq.en.in +++ b/faq.en.in @@ -97,8 +97,9 @@ Subscribe in the usual manner. ?? Where do I submit bug reports? -{NHW} Use the Debian bug tracking system. You can find out more about -the BTS at http://www.debian.org/Bugs. +{AMS} Either send the bug report as an email to bug-hurd@gnu.org, or +use the Savannah Bug Tracker at +http://savannah.gnu.org/bugs/?group=hurd. ?? Is there a TODO list? @@ -704,5 +705,6 @@ files like backups in the modified tree, or leave away the option Answers were given by: * {NHW} Neal H Walfield * {MB} Marcus Brinkmann +* {AMS} Alfred M. Szmidt vim:ts=8:sw=8:tw=72 -- cgit v1.2.3 From b301d7953f9fc67eccc718a94e2ffdf444021d43 Mon Sep 17 00:00:00 2001 From: "Alfred M. Szmidt" Date: Sat, 9 Oct 2004 18:18:31 +0000 Subject: Fixed typo where a literal question mark was used instead of the HTML code for it. Literal question marks are used for chapter headings. --- faq.en.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'faq.en.in') diff --git a/faq.en.in b/faq.en.in index 2dfdbcac..c5488163 100644 --- a/faq.en.in +++ b/faq.en.in @@ -99,7 +99,7 @@ Subscribe in the usual manner. {AMS} Either send the bug report as an email to bug-hurd@gnu.org, or use the Savannah Bug Tracker at -http://savannah.gnu.org/bugs/?group=hurd. +http://savannah.gnu.org/bugs/?group=hurd. ?? Is there a TODO list? -- cgit v1.2.3 From b9776e7e094e33b4f2982d9b5ab7e61fd752aff7 Mon Sep 17 00:00:00 2001 From: "Alfred M. Szmidt" Date: Mon, 11 Oct 2004 08:14:53 +0000 Subject: Last change reverted. --- faq.en.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'faq.en.in') diff --git a/faq.en.in b/faq.en.in index c5488163..2dfdbcac 100644 --- a/faq.en.in +++ b/faq.en.in @@ -99,7 +99,7 @@ Subscribe in the usual manner. {AMS} Either send the bug report as an email to bug-hurd@gnu.org, or use the Savannah Bug Tracker at -http://savannah.gnu.org/bugs/?group=hurd. +http://savannah.gnu.org/bugs/?group=hurd. ?? Is there a TODO list? -- cgit v1.2.3 From ee5476f0cdf8180e9aba8d1228fbdfb9171c8ab9 Mon Sep 17 00:00:00 2001 From: "Alfred M. Szmidt" Date: Thu, 6 Jan 2005 23:31:30 +0000 Subject: Updated. --- faq.en.in | 89 ++++++++++++--------------------------------------------------- 1 file changed, 17 insertions(+), 72 deletions(-) (limited to 'faq.en.in') diff --git a/faq.en.in b/faq.en.in index 2dfdbcac..f694d328 100644 --- a/faq.en.in +++ b/faq.en.in @@ -127,32 +127,19 @@ implemented. ?? Where do I get Debian GNU/Hurd? -{NHW} As GNU/Hurd is an official unstable Debian port, you can find -the binaries at your local Debian mirror. There are, however, several -core packages that do not compile cleanly from source and have -several, unfortunate, hacks. These can be found at: +{AMS} Instructions on how to download and install Debian GNU/Hurd are +available at http://www.debian.org/ports/hurd/ - ftp://alpha.gnu.org/gnu/hurd/debian. - -Once you have a working installation, you can point apt at the archives -by adding the following lines to your /etc/apt/sources.list file. For -example: - - deb ftp://alpha.gnu.org/gnu/hurd/debian unstable main - deb http://http.us.debian.org/debian unstable main - -As downloading all of the packages can be quite long (there is over a -gigabyte of files), Philip Charles has created Debian GNU/Hurd CDs. -Vendors can be found at the following site: - - http://www.debian.org/ports/hurd/hurd-cd +Debian GNU/Hurd can also be installed using a CD, information about it +can be found at the following site: +http://www.debian.org/ports/hurd/hurd-cd ?? How do I install Debian GNU/Hurd? {NHW} Consult one of the installation guides. The most up to date guide can be found at: - http://web.walfield.org/papers/hurd-installation-guide/ + http://www.debian.org/ports/hurd/hurd-install ?? What kind of hardware is supported? @@ -298,11 +285,6 @@ Don't forget to fill in `/etc/resolv.conf', `/etc/hosts', etc. Of course, you only need to do this if the installation routine didn't do it for you. -?? How can I pass options to `serverboot'? - -{MB} Give them to the kernel (i.e. on the GRUB command line) and it will -pass them down to `serverboot' automatically. - ?? Can I use the GNU/Linux version of `e2fsck' on a GNU/Hurd partition? {MB} Yes, at least since `e2fsprogs-1.05'. Check this with `e2fsck -V' @@ -356,7 +338,7 @@ prompt. {NHW} Take a look at: - ftp://alpha.gnu.org/gnu/hurd/contrib/marcus/keymap.tar.gz + http://www.xs4all.nl/~mgerards/xkb8.tar.gz ?? How do I enable color on the console? @@ -367,36 +349,12 @@ terminal to `mach-color'. For instance: ?? How can I enable virtual consoles? -{NHW} There is currently no support for virtual consoles. You can, -however, use `screen'. It is much more flexible anyway. - -Kalle Olavi Niemitalo began working on colortext. -His aim was to provide a featureful program that multiplexes the console -in userspace by reading from the /dev/kdb device. Check: - - http://stekt.oulu.fi/~tosi/ - -{MB} Here are some useful options to add to your ~/.screenrc file to get -it to emulate Linux virtual terminals a bit more closely: - - bindkey ^[O0 select 0 - bindkey ^[O1 select 1 - bindkey ^[O2 select 2 - bindkey ^[O3 select 3 - bindkey ^[O4 select 4 - bindkey ^[O5 select 5 - bindkey ^[O6 select 6 - bindkey ^[O7 select 7 - bindkey ^[O8 select 8 - bindkey ^[O9 select 9 - - # Unfortunately, Mach ignores modifiers on Cursor keys. This can be - # fixed, however, for now, we shall just use other keys to move back, - # and forth. - # ^[, is ALT and "," - # ^[. is ALT and "." - bindkey ^[, prev - bindkey ^[. next +{AMS} This can be done by running the following command: + + console -d vga -d pc_kbd -d generic_speaker /dev/vcs + +If something went wrong, or if you just wish to exit the Hurd console +then hitting C-A- will exit it. ?? What is the status of X? @@ -442,12 +400,6 @@ Instead of `free', use `vmstat' and `vminfo'. For kernel messages, read `/dev/klog' directly. Note, once you read this, it is gone forever. -{NHW} `ifconfig' does not exist. Try: - - # /hurd/pfinet --help - -As for dhcp, take a look at hurd/trans/pump.c; this is the start of a -dhcp client for the Hurd. ?? Is there a `/proc' filesystem? @@ -569,18 +521,11 @@ to see what has been done and how you can help. ?? Where can I get the source? -{NHW} The source is stored in CVS at: - - :pserver:anoncvs@subversions.gnu.org:/cvsroot/hurd - -You do not need a password to login. The modules that you are interested -in are: `hurd', `gnumach' and `mig'. - -A web interface is also available at: -http://savannah.gnu.org/cgi-bin/viewcvs/hurd/ +{AMS} Instructions on how to download the CVS tree from Savanah are +avaiable at https://savannah.gnu.org/cvs/?group=hurd -To get the source to the latest debian package, look on any debian -mirror. +{NHW} To get the source to the latest debian package, look on any +debian mirror. ?? Can I cross compile? -- cgit v1.2.3 From 5230bba4699289b1edd058bc46f59b6dac21f97e Mon Sep 17 00:00:00 2001 From: "Alfred M. Szmidt" Date: Fri, 21 Jan 2005 15:42:32 +0000 Subject: Added `Why is there no information on the official website about the Hurd port to L4 (Hurd/L4)?' from Ognyan Kulev. --- faq.en.in | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'faq.en.in') diff --git a/faq.en.in b/faq.en.in index f694d328..1d2e2747 100644 --- a/faq.en.in +++ b/faq.en.in @@ -123,6 +123,22 @@ think that we have found a more flexible solution called shadow filesystems. Unfortunately, support for shadowed filesystems is not yet implemented. +?? Why is there no information on the official website + about the Hurd port to L4 (Hurd/L4)? + +{OK} There is an ongoing effort to port the Hurd to the L4 microkernel +family. This will take time and the port is not in a releasable state +-- this is why there is no information about the L4 port on the +website for the Hurd project other +than this FAQ entry. + +The development of Hurd/L4 is being done in the `hurd-l4' module of +the Hurd CVS repository. The `doc' directory contains a design +document that is worth reading for anyone who wishes to learn more +about Hurd/L4. If you wish to follow the development or contribute +patches to Hurd/L4, please subscribe to the l4-hurd@gnu.org mailing +list . + ? Installation ?? Where do I get Debian GNU/Hurd? @@ -647,9 +663,10 @@ files like backups in the modified tree, or leave away the option # diff -x ChangeLog -Nurp hurd-orig hurd -Answers were given by: +Answers were given by (in chronological order): * {NHW} Neal H Walfield * {MB} Marcus Brinkmann * {AMS} Alfred M. Szmidt +* {OK} Ognyan Kulev vim:ts=8:sw=8:tw=72 -- cgit v1.2.3 From 7bb23a08b65fd27450bc5c9c56af6dd0361f4870 Mon Sep 17 00:00:00 2001 From: "Alfred M. Szmidt" Date: Fri, 21 Jan 2005 15:50:31 +0000 Subject: Updated several entries based on patch from Frédéric Henry and Manuel Menal. Fix Alfred's mailing address to point to `ams@gnu.org'. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- faq.en.in | 72 +++++++++++++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 54 insertions(+), 18 deletions(-) (limited to 'faq.en.in') diff --git a/faq.en.in b/faq.en.in index 1d2e2747..0d4b0779 100644 --- a/faq.en.in +++ b/faq.en.in @@ -38,7 +38,7 @@ most obvious examples of these are the TCP/IP stack, the ext2 filesystem and NFS. In the case of the Hurd, users now have access to functionality that, in a monolithic kernel, they could never use, but now, because the server runs in user space as the user that started it, -they may, for instance, mount an ftp filesystem in their home directory. +they may, for instance, mount an FTP filesystem in their home directory. For more information about the design of the Hurd, read the paper by Thomas Bushnell, BSG: ``Towards a new strategy on OS design'', @@ -115,13 +115,14 @@ try it and help us get there. ?? Why is `/usr' a symbolic link to `.'? -{MB} The distinction between `/' and `/usr' has historical reasons. +{MB,FH} The distinction between `/' and `/usr' has historical reasons. Back when Unix systems were booted from two tapes, a small root tape and a big user tape. Today, we like to use different partitions for these two spaces. The Hurd throws this historical garbage away. We -think that we have found a more flexible solution called shadow -filesystems. Unfortunately, support for shadowed filesystems is not yet -implemented. +think that we have found a more flexible solution called union +filesystems, which allow to create virtual filesystems which are the +union of several other filesystems. However, support for union +filesystems is still in early development. ?? Why is there no information on the official website about the Hurd port to L4 (Hurd/L4)? @@ -239,7 +240,7 @@ but still doable. ?? Can I share swap space between GNU/Linux and GNU/Hurd? -{NHW} Yes. The default pager recognizes and respects Linux swap +{NHW} Yes. The default pager recognises and respects Linux swap partitions. It will also swap to a raw partition, i.e. anything that it does not recognize as Linux swap. Therefore: BE CAREFUL. @@ -317,14 +318,21 @@ about translators. ?? Where is the documentation? -{NHW} There are neither man pages nor info nodes for the Hurd translators -and commands. Documentation lives inside of the binaries and can be -found by passing the `--help' option to a given command. For instance: +{NHW,MM} There are neither man pages nor info nodes for the Hurd +translators and commands. Documentation lives inside of the binaries +and can be found by passing the `--help' option to a given command. +For instance: # /hurd/ext2fs --help will tell you what types of options the ext2fs translator accepts. +The GNU/Hurd User's Guide and the GNU Hurd Reference Manual both +provide some help about the usage of and concepts behind the GNU Hurd. +You can find them, among others, at: + + http://www.gnu.org/software/hurd/docs.html + ?? What is a translator? {MB} There is a text about translators available at: @@ -352,10 +360,19 @@ prompt. ?? How do I use non-US keyboard bindings? -{NHW} Take a look at: +{NHW,FH} Take a look at: http://www.xs4all.nl/~mgerards/xkb8.tar.gz +If you want a Debian package, you can add to your +'etc/apt/sources.list' + + deb http://debian.duckcorp.org/unstable/binary-hurd-i386/ ./ + +and then run + + apt-get install console-driver-xkb. + ?? How do I enable color on the console? {NHW} If you are using the GNU Mach microkernel, you can set your @@ -394,7 +411,9 @@ filesystem. ?? Why does `ps aux' give me strange output? -{MB} Try `ps Aux'. +{MB,MM} Try `ps Aux'. Indeed, under GNU/Hurd, `ps aux' doesn't list +all processes: it omits the session and group leaders, and the +processes without parent. ?? I have a hung process that I want to kill, however, `ps' is now hanging too. @@ -482,6 +501,17 @@ happens. Thomas explains: If you can reproduce this error message, please report it. +?? What does ``computer bought the farm'' mean ? + +{FH} This message is the text that corresponds to the errno code +`EIEIO'. Roland McGrath explains: + + That message is not output by any particular servers at + particular times; rather it is the perror text for the errno + code EIEIO, which is returned by various RPCs and functions + for a variety of "hopeless" error conditions. + + ?? What does ``/dev/hd0s1: MOUNTED READ-ONLY; MUST USE `fsysopts --writable''' mean? @@ -574,13 +604,17 @@ at: ?? What is OSKit-Mach? -{NHW} There are two versions of Mach: GNU Mach and OSKit-Mach. The -former uses the drivers from Linux 2.0.x while the latter uses the -University of Utah's OSKit. If all goes well, OSKit-Mach will be -stabilized and become the official kernel. You can find out more about -the OSKit at: +{NHW,FH} There are two versions of GNU Mac that are in use: GNU Mach +1.x and GNU Mach 2.x, formerly known as OSKit-Mach. The former uses +the drivers from Linux 2.0.x while the latter uses the University of +Utah's OSKit library for drivers. You can find out more about the +OSKit library at: + + http://www.cs.utah.edu/flux/oskit - http://www.cs.utah.edu/flux/oskit +GNU Mach 2.x is usable, but some things are still missing or not +working, like the serial port and scsi drivers. This is why GNU Mach +2.0 hasn't released yet and the two versions coexist. ?? Where is the documentation? @@ -666,7 +700,9 @@ files like backups in the modified tree, or leave away the option Answers were given by (in chronological order): * {NHW} Neal H Walfield * {MB} Marcus Brinkmann -* {AMS} Alfred M. Szmidt +* {AMS} Alfred M. Szmidt * {OK} Ognyan Kulev +* {FH} Frédéric Henry +* {MM} Manuel Menal vim:ts=8:sw=8:tw=72 -- cgit v1.2.3 From 65441c1b3a830eabd50f5697bcc51347b8a26fa4 Mon Sep 17 00:00:00 2001 From: "Alfred M. Szmidt" Date: Sun, 1 May 2005 06:30:07 +0000 Subject: Added the FAQ, "There is so much spam in GNU mailing lists! Why?". Patch by Ognyan Kulev. --- faq.en.in | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'faq.en.in') diff --git a/faq.en.in b/faq.en.in index 0d4b0779..e94859e1 100644 --- a/faq.en.in +++ b/faq.en.in @@ -140,6 +140,16 @@ about Hurd/L4. If you wish to follow the development or contribute patches to Hurd/L4, please subscribe to the l4-hurd@gnu.org mailing list . +?? There is so much spam in GNU mailing lists! Why? + +{OK} GNU mailing lists don't have spam filters so that anyone can post +to mailing lists and mail won't get lost. It's expected that +subscribers have their own spam filtering. + +Please don't raise this topic in Hurd mailing lists -- it's off-topic +issue. Search mailing lists archives for threads about spam in Hurd +mailing lists. + ? Installation ?? Where do I get Debian GNU/Hurd? -- cgit v1.2.3 From eb7226ecefac95de4c51d20265a17f7ece190ae1 Mon Sep 17 00:00:00 2001 From: Marcus Brinkmann Date: Tue, 12 Jul 2005 09:54:54 +0000 Subject: Fix typo. --- faq.en.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'faq.en.in') diff --git a/faq.en.in b/faq.en.in index e94859e1..16b22529 100644 --- a/faq.en.in +++ b/faq.en.in @@ -357,7 +357,7 @@ Read this and ask further questions on the mailing lists. neither user ids nor groups ids. This stems from the fact that the Hurd supports uid and gid sets and one possibility is, of course, the empty set. Rather than deny access in this case, filesystems in the Hurd offer a -forth permission triplet (i.e. rwx) which is used to determine the +fourth permission triplet (i.e. rwx) which is used to determine the privileges for users with no credentials. This, however, needs to be enabled on a file by file basis. By default, the `other' permission triplet is used. -- cgit v1.2.3