mirror of https://github.com/tLDP/LDP
Editing of new "Linux-Networking" guide. This copy is not to be distributed. Its just a draft to give people an idea as to the format of the new document and a backup just in case my laptop dies. Removed 8021X.xml, IRC.xml, PSTN.xml, Quota.xml, and RAID.xml
Binh.
This commit is contained in:
parent
0387372ba2
commit
28f03af05a
File diff suppressed because it is too large
Load Diff
|
@ -52,6 +52,7 @@
|
|||
University of Wales Swansea (United Kingdom),
|
||||
University of Ulster (Ireland),
|
||||
Universität Duisburg-Essen (Germany),
|
||||
Universidad Rey Juan Carlos (Spain),
|
||||
and Universiti Sains Malaysia (Malaysia)).
|
||||
</para>
|
||||
|
||||
|
|
|
@ -931,4 +931,20 @@ TCP-IP
|
|||
Transmission Control Protocol/Internet Protocol. It is the data
|
||||
communication protocol most often used on Unix machines.
|
||||
|
||||
PSTN (Public Service Telephone Network)
|
||||
is the telephone system that is used thoughout the U.S. and many other
|
||||
countries. Although never intended for networking, telephone lines can
|
||||
be used for communications for computers.
|
||||
|
||||
A modem (modulator/demodulator) is used to interface between a computer and
|
||||
the telephone system. Modems can convert data into audible tones and back.
|
||||
The fastest two-way modems currently available support a speed of 33.6 Kbps
|
||||
(kilobits per second).
|
||||
|
||||
Current modems advertise speeds up to 56 Kbps per second. These modems rely
|
||||
on digital equipment being used in the phone company's central office and in
|
||||
the facility (such as the Internet Service Provider) you are dialling into.
|
||||
The 56 Kbps speed also works in only one direction; the other direction supports
|
||||
33.6 Kbps.
|
||||
|
||||
</glossary>
|
||||
|
|
|
@ -1,579 +0,0 @@
|
|||
<sect1 id="IRC">
|
||||
|
||||
<title>IRC</title>
|
||||
|
||||
<para>
|
||||
This document aims to describe the basics of IRC and respective applications
|
||||
for Linux.
|
||||
|
||||
1. Introduction
|
||||
|
||||
This document is still WIP, and should be treated as such. I'll do my best to
|
||||
keep it updated and accurate.
|
||||
|
||||
The following bibles shouldn't be ignored:
|
||||
|
||||
* RFC1459 by Jarkko Oikarinen and Darren Reed was the first about the
|
||||
Internet Relay Chat Protocol. It can be found at [http://ftp.isi.edu/
|
||||
in-notes/rfc1459.txt] http://ftp.isi.edu/in-notes/rfc1459.txt.
|
||||
|
||||
* RFC2810 by Christophe Kalt updates RFC1459 and describes the Architecture
|
||||
of the Internet Relay Chat. It can be found at [http://ftp.isi.edu/
|
||||
in-notes/rfc2810.txt] http://ftp.isi.edu/in-notes/rfc2810.txt.
|
||||
|
||||
* RFC2811 by Christophe Kalt updates RFC1459 and describes the Channel
|
||||
Management of the Internet Relay Chat. It can be found at [http://
|
||||
ftp.isi.edu/in-notes/rfc2811.txt] http://ftp.isi.edu/in-notes/
|
||||
rfc2811.txt.
|
||||
|
||||
* RFC2812 by Christophe Kalt updates RFC1459 and describes the Client
|
||||
Protocol of the Internet Relay Chat. It can be found at [http://
|
||||
ftp.isi.edu/in-notes/rfc2812.txt] http://ftp.isi.edu/in-notes/
|
||||
rfc2812.txt.
|
||||
|
||||
* RFC2813 by Christophe Kalt updates RFC1459 and describes the Server
|
||||
Protocol of the Internet Relay Chat. It can be found at [http://
|
||||
ftp.isi.edu/in-notes/rfc2813.txt] http://ftp.isi.edu/in-notes/
|
||||
rfc2813.txt.
|
||||
|
||||
|
||||
Also be sure to check the following links:
|
||||
|
||||
[http://www.irchelp.org/] http://www.irchelp.org/.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
1.1. Objectives
|
||||
|
||||
Among others, the objectives of this mini-HOWTO are:
|
||||
|
||||
* Link important resources about IRC;
|
||||
|
||||
* Avoid common misuses of IRC by writing an IRC Etiquette;
|
||||
|
||||
* List popular clients, servers, bots, and bouncers, along with their
|
||||
maintainers, #channel, small description, download location, home page,
|
||||
and hints;
|
||||
|
||||
* List IRC tools available in the latest release of all major
|
||||
distributions.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
2. About IRC
|
||||
|
||||
Excerpt from RFC2810:
|
||||
|
||||
The IRC (Internet Relay Chat) protocol is for use with text based
|
||||
conferencing. It has been developed since 1989 when it was originally
|
||||
implemented as a mean for users on a BBS to chat amongst themselves.
|
||||
|
||||
First formally documented in May 1993 by RFC 1459 [IRC], the protocol has
|
||||
kept evolving.
|
||||
|
||||
The IRC Protocol is based on the client-server model, and is well suited to
|
||||
running on many machines in a distributed fashion. A typical setup involves a
|
||||
single process (the server) forming a central point for clients (or other
|
||||
servers) to connect to, performing the required message delivery/multiplexing
|
||||
and other functions.
|
||||
|
||||
This distributed model, which requires each server to have a copy of the
|
||||
global state information, is still the most flagrant problem of the protocol
|
||||
as it is a serious handicap, which limits the maximum size a network can
|
||||
reach. If the existing networks have been able keep growing at an incredible
|
||||
pace, we must thank hardware manufacturers for giving us ever more powerful
|
||||
systems.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
3. Beginner's guide on using IRC
|
||||
|
||||
The standard IRC client is the original ircII client. It's part of most Linux
|
||||
distributions.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
3.1. Running the ircII program
|
||||
|
||||
It's easy to use ircII. Let's say you want to connect to irc.freenode.net as
|
||||
mini-HOWTO.
|
||||
|
||||
At the command line, type:
|
||||
|
||||
$ irc mini-HOWTO irc.freenode.net
|
||||
|
||||
You can also export variables, so you won't need to use them at the command
|
||||
line:
|
||||
|
||||
$ export IRCNICK=mini-HOWTO IRCSERVER=irc.freenode.net
|
||||
|
||||
Add them to your shell profile (e.g. ~/.bash_profile or ~/.zprofile) when
|
||||
you're done.
|
||||
|
||||
Other common variables are IRCNAME and IRCUSER, to respectively set the
|
||||
ircname part of a /whois and username as seen at the first line 'mini-HOWTO
|
||||
is ~username@hostname (ircname)'. Keep in mind that IRCUSER won't work if you
|
||||
run an ident daemon (default on most distributions). If you still need to
|
||||
change your username (not recommended, and I hope you're not using IRC logged
|
||||
as root !), install oidentd from [http://ojnk.sourceforge.net/] http://
|
||||
ojnk.sourceforge.net/. To configure, read the oidentd.conf man page. Finally
|
||||
run '/usr/local/sbin/oidentd -g nobody -u nobody'. Add this to your startup
|
||||
scripts (e.g. /etc/rc.d/rc.local) when you're done.
|
||||
|
||||
If not set, IRCNICK, IRCUSER, and IRCNAME will be retrieved from /etc/passwd
|
||||
.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
3.2. Commands
|
||||
|
||||
Use /help to get a list on all available commands (/help help is a good
|
||||
start). Replace nick by any IRCNICK.
|
||||
|
||||
* First, /set NOVICE off
|
||||
|
||||
* /nick IRC-mini-HOWTO changes your IRCNICK to IRC-mini-HOWTO
|
||||
|
||||
* /set realname The Linux IRC mini-HOWTO changes your IRCNAME to The Linux
|
||||
IRC mini-HOWTO (doesn't change on the same connection)
|
||||
|
||||
* /j #mini-HOWTO joins channel #mini-HOWTO
|
||||
|
||||
* /j #unmaintained-HOWTO joins channel #unmaintained-HOWTO
|
||||
|
||||
* /j #mini-HOWTO changes the active current channel to #mini-HOWTO
|
||||
|
||||
* /msg nick Hi. sends a private message to nick containing Hi.
|
||||
|
||||
* /notice nick (or #mini-HOWTO) Hi. sends a notice to nick (or #mini-HOWTO)
|
||||
containing Hi.
|
||||
|
||||
* /query nick starts a private conversation with nick. /query ends the
|
||||
private conversation
|
||||
|
||||
* /me loves Linux. sends an action to the current channel or query
|
||||
containing IRC-mini-HOWTO loves Linux.
|
||||
|
||||
* /dcc chat nick starts a chat with nick. Use /msg =nick (notice the =) to
|
||||
send messages over the chat
|
||||
|
||||
* /dcc send nick /etc/HOSTNAME sends the given file to nick
|
||||
|
||||
* /dcc get nick receives the file offered by nick
|
||||
|
||||
* /part leaves the active current channel
|
||||
|
||||
* /part #unmaintained-HOWTO leaves channel #unmaintained-HOWTO
|
||||
|
||||
* /discon disconnects from current IRCSERVER
|
||||
|
||||
* /server irc.us.freenet.net connects to IRCSERVER irc.us.freenet.net
|
||||
|
||||
* /quit Bye. quits your IRC session with a reason Bye.
|
||||
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
3.3. IRC Etiquette
|
||||
|
||||
WARNING WARNING WARNING WARNING WARNING
|
||||
|
||||
* Never use IRC logged as root or any user with excessive privileges. Bad
|
||||
things may happen sooner or later. You were warned. It's safe if you
|
||||
create 2 users, one of them to only use IRC.
|
||||
|
||||
|
||||
$ man adduser
|
||||
|
||||
On Linux channels you shouldn't:
|
||||
|
||||
* Act as an idiot. If you want to be respected, then first respect each
|
||||
other.
|
||||
|
||||
* Use colors (^C). Most Linux users don't tolerate such mIRC crazes, and
|
||||
ircII doesn't really support them. The same should apply for ANSI.
|
||||
|
||||
* Use full CAPS, bold (^B), reverse (^V), underline (^_), blink (^F), and
|
||||
bell (^G). The first 4 are here to emphasize words, not the whole text.
|
||||
The last 2 are just very annoying.
|
||||
|
||||
* Ask if you can ask a question. Just ask, but first read all documentation
|
||||
available on the subject. Start looking at [file:/usr/doc/] /usr/doc/ ,
|
||||
otherwise go to [http://www.tldp.org/] http://www.tldp.org/ or [http://
|
||||
www.ibiblio.org/pub/Linux/docs/] http://www.ibiblio.org/pub/Linux/docs/.
|
||||
And don't repeat your question immediately. Wait at least 10 minutes. If
|
||||
you don't get any answer it's because nobody knows or wants to help.
|
||||
Respect their choice, they're not your personal assistant. Also never
|
||||
send mass private messages. It's like SPAM.
|
||||
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
4. Console IRC Clients
|
||||
|
||||
4.1. ircII
|
||||
|
||||
Maintainer: ircII project (<ircii @ eterna.com.au>)
|
||||
|
||||
IRC Channel: #ircII (official channel ?) on [http://www.efnet.org/
|
||||
servers.html] EFNet
|
||||
|
||||
Originally written by Michael Sandrof, ircII comes with most Linux
|
||||
distributions. It uses termcap and shouldn't be a choice for most users, but
|
||||
is a standard. Mathusalem and other gurus will use it. Less ventured will
|
||||
regret to have it installed.
|
||||
|
||||
You can get the latest version of ircII from [ftp://ircftp.au.eterna.com.au/
|
||||
pub/ircII/] ftp://ircftp.au.eterna.com.au/pub/ircII/. Homepage at [http://
|
||||
www.eterna.com.au/ircii/] http://www.eterna.com.au/ircii/.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
4.2. EPIC
|
||||
|
||||
Maintainer: EPIC Software Labs (<ircii-epic @ concentric.net>)
|
||||
|
||||
IRC Channel: #EPIC on EFNet
|
||||
|
||||
Based on ircII, EPIC (Enhanced Programmable ircII Client) is meant for real
|
||||
scripters and users searching freedom. When you start it for the first time
|
||||
you'll notice that you should really learn the basics of scripting.
|
||||
|
||||
You can get the latest version of EPIC from [ftp://ftp.epicsol.org/pub/epic/]
|
||||
ftp://ftp.epicsol.org/pub/epic/. Homepage at [http://www.epicsol.org/] http:/
|
||||
/www.epicsol.org/.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
4.3. BitchX
|
||||
|
||||
Maintainer: Colten Edwards (<edwards @ bitchx.dimension6.com>)
|
||||
|
||||
IRC Channel: #BitchX on EFNet
|
||||
|
||||
Based on ircII and EPIC, BitchX could be compared to the Pine MUA. Bloatware
|
||||
(doesn't mean you shouldn't use it) and widely used. The choice for users
|
||||
that want a client with built-in facilities. It can be compiled with the
|
||||
GNOME libraries by using the configure option --with-gtk. Don't be surprised
|
||||
if all you get is a XTerm-BitchX instead.
|
||||
|
||||
You can get the latest version of BitchX from [ftp://ftp.bitchx.org/pub/
|
||||
BitchX/source/] ftp://ftp.bitchx.org/pub/BitchX/source/. Homepage at [http://
|
||||
www.bitchx.com/] http://www.bitchx.com/. Homepage of gtkBitchX at [http://
|
||||
www.bitchx.org/gtk/] http://www.bitchx.org/gtk/.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
4.4. irssi
|
||||
|
||||
Maintainer: Timo Sirainen (<tss @ iki.fi>)
|
||||
|
||||
IRC Channel: #irssi on [http://freenode.net/irc_servers.shtml] freenode and
|
||||
[http://www.ircnet.org/] IRCnet
|
||||
|
||||
Timo released yagIRC ~3 years ago. It was a GUI client using the GTK+
|
||||
toolkit. The army called on him, and the new maintainers wouldn't do the job.
|
||||
yagIRC passed away and he started irssi as a replacement. It used GTK+. GNOME
|
||||
and curses versions would appear later. As of 0.7.90 it's only a modular text
|
||||
mode client. Supports Perl scripting.
|
||||
|
||||
You can get the latest version of irssi from [http://irssi.org/?page=
|
||||
download] http://irssi.org/?page=download. Homepage at [http://irssi.org/]
|
||||
http://irssi.org/.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
4.5. Other Console IRC Clients
|
||||
|
||||
There are a few others ircII based clients.
|
||||
|
||||
Blackened [http://www.blackened.com/blackened/] http://www.blackened.com/
|
||||
blackened/.
|
||||
|
||||
Ninja [http://ninja.qoop.org/] http://ninja.qoop.org/.
|
||||
|
||||
ScrollZ [http://www.scrollz.com/] http://www.scrollz.com/.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
5. X Window IRC Clients
|
||||
|
||||
5.1. Zircon
|
||||
|
||||
Maintainer: Lindsay F. Marshall (<Lindsay.Marshall @ ncl.ac.uk>)
|
||||
|
||||
IRC Channel: None ?
|
||||
|
||||
Written in Tcl/Tk, uses the native network communications of Tcl.
|
||||
|
||||
You can get the latest version of Zircon from [ftp://catless.ncl.ac.uk/pub/]
|
||||
ftp://catless.ncl.ac.uk/pub/. Homepage at [http://catless.ncl.ac.uk/Programs/
|
||||
Zircon/] http://catless.ncl.ac.uk/Programs/Zircon/.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
5.2. KVIrc
|
||||
|
||||
Maintainer: Szymon Stefanek (<stefanek @ tin.it>)
|
||||
|
||||
IRC Channel: #KVIrc on freenode
|
||||
|
||||
Also written with the Qt toolkit, KVIrc is a beast. Supports DCC Voice,
|
||||
built-in scripting language, and plugins.
|
||||
|
||||
You can get the latest version of KVIrc from [http://www.kvirc.net/?id=
|
||||
download] http://www.kvirc.net/?id=download. Homepage at [http://
|
||||
www.kvirc.net/] http://www.kvirc.net/.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
5.3. X-Chat
|
||||
|
||||
Maintainer: Peter Zelezny (<zed @ linux.com>)
|
||||
|
||||
IRC Channel: #Linux on [http://www.chatjunkies.org/servers.html] ChatJunkies
|
||||
|
||||
Using GTK+ and optionally GNOME, supports Perl and Python scripting.
|
||||
|
||||
You can get the latest version of X-Chat from [http://xchat.org/
|
||||
download.html] http://xchat.org/download.html. Homepage at [http://xchat.org
|
||||
/] http://xchat.org/.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
5.4. QuIRC
|
||||
|
||||
Maintainer: Patrick Earl (<quirc @ patearl.net>)
|
||||
|
||||
IRC Channel: #QuIRC on [http://www.dal.net/servers/] DALnet
|
||||
|
||||
Using Tk, supports Tcl for scripting.
|
||||
|
||||
You can get the latest version of QuIRC from his Homepage at [http://
|
||||
quirc.org/] http://quirc.org/.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
6. IRC Servers
|
||||
|
||||
6.1. IRCD
|
||||
|
||||
Maintainer: ircd developers(<ircd-dev @ irc.org>)
|
||||
|
||||
IRC Channel: #ircd on IRCnet
|
||||
|
||||
The original IRC daemon, mainly used by IRCnet.
|
||||
|
||||
You can get the latest version of IRCD from [ftp://ftp.irc.org/irc/server/]
|
||||
ftp://ftp.irc.org/irc/server/. Homepage at [http://www.irc.org/] http://
|
||||
www.irc.org/.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
6.2. IRCD-Hybrid
|
||||
|
||||
Maintainer: (<ircd-hybrid @ the-project.org>)
|
||||
|
||||
IRC Channel: None ?
|
||||
|
||||
Mainly used by EFNet.
|
||||
|
||||
You can get the latest version of IRCD-Hybrid from [ftp://ftp.blackened.com/
|
||||
pub/irc/hybrid/] ftp://ftp.blackened.com/pub/irc/hybrid/. Homepage at [http:/
|
||||
/www.ircd-hybrid.org/] http://www.ircd-hybrid.org/.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
6.3. ircu
|
||||
|
||||
Maintainer: Undernet Coder Committee (<coder-com @ undernet.org>)
|
||||
|
||||
IRC Channel: #ircu on [http://www.undernet.org/servers.php] Undernet
|
||||
|
||||
Mainly used by Undernet.
|
||||
|
||||
You can get the latest version of ircu from [http://ftp1.sourceforge.net/
|
||||
undernet-ircu/] http://ftp1.sourceforge.net/undernet-ircu/. Homepage at
|
||||
[http://coder-com.undernet.org/] http://coder-com.undernet.org/.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
6.4. Bahamut
|
||||
|
||||
Maintainer: DALnet Coding Team (<bahamut @ bahamut.net>)
|
||||
|
||||
IRC Channel: #Bahamut on DALnet
|
||||
|
||||
Based on DreamForge and Hybrid, Bahamut is the DALnet server.
|
||||
|
||||
You can get the latest version of Bahamut from [http://bahamut.dal.net/
|
||||
download/] http://bahamut.dal.net/download/. Homepage at [http://
|
||||
bahamut.dal.net/] http://bahamut.dal.net/.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
7. IRC Bots
|
||||
|
||||
7.1. eggdrop
|
||||
|
||||
Maintainer: (<eggdev @ eggheads.org>)
|
||||
|
||||
IRC Channel: #eggdrop on Undernet
|
||||
|
||||
eggdrop is the most known Tcl enabled application on the Net. It's a channel
|
||||
robot for IRC that can be tailored to any situation.
|
||||
|
||||
You can get the latest version of eggdrop from [ftp://ftp.eggheads.org/pub/
|
||||
eggdrop/source/] ftp://ftp.eggheads.org/pub/eggdrop/source/. Homepage at
|
||||
[http://www.eggheads.org/] http://www.eggheads.org/.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
8. IRC Bouncers (IRC Proxy)
|
||||
|
||||
8.1. bnc
|
||||
|
||||
Maintainer: None ?
|
||||
|
||||
IRC Channel: None ?
|
||||
|
||||
bnc is the original bouncer.
|
||||
|
||||
You can get the latest version of bnc from [http://gotbnc.com/cgi-bin/
|
||||
download.cgi] http://gotbnc.com/cgi-bin/download.cgi. Homepage at [http://
|
||||
gotbnc.com/] http://gotbnc.com/.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
8.2. muh
|
||||
|
||||
Maintainer: Sebastian Kienzl (<zap @ riot.org>)
|
||||
|
||||
IRC Channel: None ?
|
||||
|
||||
muh is a smart and versatile irc-bouncing tool that will also go on IRC as
|
||||
soon as it's launched, guarding or attempting to get your nick.
|
||||
|
||||
You can get the latest version of muh from [http://ftp1.sourceforge.net/muh/]
|
||||
http://ftp1.sourceforge.net/muh/. Homepage at [http://mind.riot.org/muh/]
|
||||
http://mind.riot.org/muh/.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
8.3. ezbounce
|
||||
|
||||
Maintainer: Murat Deligönül (<druglord @ freelsd.org>)
|
||||
|
||||
IRC Channel: None ?
|
||||
|
||||
ezbounce's basic features include password protection, remote administration,
|
||||
logging and listening on multiple ports.
|
||||
|
||||
You can get the latest version of ezbounce from his Homepage at [http://
|
||||
druglord.freelsd.org/ezbounce/] http://druglord.freelsd.org/ezbounce/.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
9. Installation
|
||||
|
||||
9.1. Clients
|
||||
|
||||
All popular clients use GNU autoconf and GNU automake, thus come with a
|
||||
configure script. Read the installation instructions after you unpack the
|
||||
sources. Be sure you have the required libraries in order to compile. Doing
|
||||
cd sources; mkdir objdir; cd objdir; ../configure --help; ../configure
|
||||
your_options_here; make; make install (or make install_strip) > ~/
|
||||
sources_install.log is the right procedure. Also note that for ircII, EPIC,
|
||||
and BitchX you should really edit include/config.h to suit your needs.
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
9.2. Servers
|
||||
|
||||
Do you really need help to set up a server ?
|
||||
|
||||
~$ vim ircd.conf
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
10. But what's already included in my distribution ? (Linux on x86)
|
||||
|
||||
10.1. Debian
|
||||
|
||||
IRC Channel: #Debian on freenode (irc.debian.org -> irc.freenode.net)
|
||||
|
||||
[http://www.debian.org/] Debian includes too many IRC tools to list. You can
|
||||
find them at the following places:
|
||||
|
||||
* Debian [http://ftp.debian.org/debian/dists/stable/main/binary-i386/]
|
||||
stable.
|
||||
|
||||
* Debian [http://ftp.debian.org/debian/dists/unstable/main/binary-i386/]
|
||||
unstable (didn't receive enough testing).
|
||||
|
||||
* Also be sure to check the [http://ftp.debian.org/debian/dists/
|
||||
proposed-updates/] proposed updates. It may contain IRC clients as well.
|
||||
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
10.2. Red Hat
|
||||
|
||||
IRC Channel: #RedHat on freenode (irc.redhat.com -> irc.freenode.net)
|
||||
|
||||
[http://www.redhat.com/] Red Hat 8.0 includes the following clients:
|
||||
|
||||
* [ftp://ftp.redhat.com/pub/redhat/linux/8.0/en/os/i386/RedHat/RPMS/
|
||||
epic-1.0.1-8.i386.rpm] EPIC 1.0.1.
|
||||
|
||||
* [ftp://ftp.redhat.com/pub/redhat/linux/8.0/en/os/i386/RedHat/RPMS/
|
||||
ksirc-3.0.3-3.i386.rpm] KSirc from KDE Network 3.0.3.
|
||||
|
||||
* [ftp://ftp.redhat.com/pub/redhat/linux/8.0/en/os/i386/RedHat/RPMS/
|
||||
xchat-1.8.10-8.i386.rpm] X-Chat 1.8.10.
|
||||
|
||||
|
||||
* Red Hat Raw Hide (current development)
|
||||
|
||||
* [ftp://rawhide.redhat.com/pub/redhat/linux/rawhide/] ftp://
|
||||
rawhide.redhat.com/pub/redhat/linux/rawhide/. Use at your own risk.
|
||||
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
10.3. Slackware
|
||||
|
||||
IRC Channel: #Slackware on freenode
|
||||
|
||||
[http://www.slackware.com/] Slackware 8.1 includes the following clients:
|
||||
|
||||
* [ftp://ftp.slackware.com/pub/slackware/slackware-8.1/slackware/n/
|
||||
bitchx-1.0c19-i386-1.tgz] BitchX 1.0c19
|
||||
|
||||
* [ftp://ftp.slackware.com/pub/slackware/slackware-8.1/slackware/n/
|
||||
epic4-1.0.1-i386-2.tgz] EPIC4 1.0.1
|
||||
|
||||
* KSirc from [ftp://ftp.slackware.com/pub/slackware/slackware-8.1/slackware
|
||||
/kde/kdenetwork-3.0.1-i386-2.tgz] KDE Network 3.0.1.
|
||||
|
||||
* [ftp://ftp.slackware.com/pub/slackware/slackware-8.1/slackware/gnome/
|
||||
xchat-1.8.9-i386-1.tgz] X-Chat 1.8.9.
|
||||
|
||||
|
||||
* Slackware -current (current development)
|
||||
|
||||
* [ftp://ftp.slackware.com/pub/slackware/slackware-current/] ftp://
|
||||
ftp.slackware.com/pub/slackware/slackware-current/. Use at your own risk.
|
||||
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
11. Hell and Paradise
|
||||
|
||||
11.1. Gods (developers)
|
||||
|
||||
* Thanks to all authors. Without their hard and volunteer work I'd never
|
||||
write it, and we'd never get our hands on Linux nor IRC.
|
||||
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
11.2. Saints (contributors)
|
||||
|
||||
* See [http://www.pervalidus.net/documentation/IRC-mini-HOWTO/] http://
|
||||
www.pervalidus.net/documentation/IRC-mini-HOWTO/.
|
||||
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
11.3. Angels (feedback)
|
||||
|
||||
* See above.
|
||||
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
11.4. Devils
|
||||
|
||||
* Khaled Mardam-Bey must be stopped :-)
|
||||
|
||||
* 'If idiots could fly, IRC would be an airport'. I don't know who wrote
|
||||
that, but it makes sense. For those of you using IRC to annoy people I
|
||||
ordered a /kill.
|
||||
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
12. Revision History
|
||||
|
||||
* 20021121 - v0.3, fourth draft
|
||||
|
||||
</sect1>
|
|
@ -1,26 +0,0 @@
|
|||
<sect1 id="PSTN">
|
||||
|
||||
<title>PSTN</title>
|
||||
|
||||
<para>
|
||||
PSTN (Public Service Telephone Network) is the telephone system that is used
|
||||
thoughout the U.S. and many other countries. Although never intended for
|
||||
networking, telephone lines can be used for communications for computers.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
A modem (modulator/demodulator) is used to interface between a computer and
|
||||
the telephone system. Modems can convert data into audible tones and back.
|
||||
The fastest two-way modems currently available support a speed of 33.6 Kbps
|
||||
(kilobits per second).
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Current modems advertise speeds up to 56 Kbps per second. These modems rely
|
||||
on digital equipment being used in the phone company's central office and in
|
||||
the facility (such as the Internet Service Provider) you are dialling into.
|
||||
The 56 Kbps speed also works in only one direction; the other direction supports
|
||||
33.6 Kbps.
|
||||
</para>
|
||||
|
||||
</sect1>
|
|
@ -1,451 +0,0 @@
|
|||
<sect1 id="Quota">
|
||||
|
||||
<title>Quota</title>
|
||||
|
||||
<para>
|
||||
This section describes how to enable file system quota on a Linux
|
||||
host, assigning quota for users and groups, as well as the usage of
|
||||
miscellaneous quota commands. It is intended for users running kernel
|
||||
2.x (recently tested on kernel 2.4.21).
|
||||
</para>
|
||||
|
||||
1. What is quota?
|
||||
|
||||
1.1. What is quota for?
|
||||
|
||||
<para>
|
||||
Quota allows you to specify limits on two aspects of disk storage: the
|
||||
number of inodes a user or a group of users may possess; and the
|
||||
number of disk blocks that may be allocated to a user or a group of
|
||||
users.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The idea behind quota is that users are forced to stay under their
|
||||
disk consumption limit, taking away their ability to consume unlimited
|
||||
disk space on a system. Quota is handled on a per user, per file
|
||||
system basis. If there is more than one file system which a user is
|
||||
expected to create files, then quota must be set for each file system
|
||||
separately. Various tools are available for you to administer and
|
||||
automate quota policies on your system.
|
||||
</para>
|
||||
|
||||
1.2. Current Status of Quota on Linux
|
||||
|
||||
<para>
|
||||
Currently, there are some major changes in the way quota works. There
|
||||
are two different setups. The tools works the same, but there's a
|
||||
difference in used files. This document describes the setup and
|
||||
operation of the _new_ quota setup. As the new setup of quota is not
|
||||
in the regular kernel source, this setup needs some patching. We will
|
||||
describe this patching and installation of the linuxquota package. If
|
||||
you already have the quota software installed on your system, you may
|
||||
or may not have to install this patch and package. You can email me if
|
||||
you have any questions about this. I'll try to include a overview of
|
||||
Linux distro's and it's implications in a later version of this
|
||||
document.
|
||||
</para>
|
||||
|
||||
2. Requirements for quota
|
||||
|
||||
2.1. Kernel
|
||||
|
||||
<para>
|
||||
The 2.x kernel source is available from http://www.kernel.org
|
||||
<http://www.kernel.org/> Please use an available mirror close to your
|
||||
location to save bandwidth. If you have a recent version of tar, you
|
||||
can download the .bz2 compressed file.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Untar the kernel:
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<screen>
|
||||
______________________________________________________________________
|
||||
cd /usr/src
|
||||
tar jxvf /path/to/linux-2.4.21-tar.bz2 - for bzip2 kernel -
|
||||
tar zxvf /path/to/linux-2.4.21-tar.gz - for gzip kernel -
|
||||
ln -s /usr/src/linux-2.4.21 /usr/src/linux
|
||||
______________________________________________________________________
|
||||
</screen>
|
||||
</para>
|
||||
|
||||
2.2. Quota software
|
||||
|
||||
<para>
|
||||
Depending on the Linux distribution you have, you may, or may not have
|
||||
the quota softwares installed on your system. The most recent version
|
||||
of quota is available through SourceForge and is in active
|
||||
development. You can reach the homepage of the quota-development at
|
||||
http://www.sourceforge.net/projects/linuxquota
|
||||
<http://www.sourceforge.net/project/linuxquota>.
|
||||
</para>
|
||||
|
||||
3. Quota setup: installation and configuration
|
||||
|
||||
3.1. Patch the kernel
|
||||
|
||||
<para>
|
||||
Download the patch for your kernel at:
|
||||
</para>
|
||||
|
||||
<para>
|
||||
ftp::/atrey.karlin.mff.cuni.cz/pub/local/jack/quota/
|
||||
<ftp://atrey.karlin.mff.cuni.cz/pub/local/jack/quota/>.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Choose your kernel version and download the patch(es). Patch your
|
||||
kernel with the 'patch' command. If there is more than 1 patch for
|
||||
your kernel version, be sure to apply the patches in the correct
|
||||
order.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
You can use this script ( I assume the downloaded patches are in
|
||||
/tmp/quota/ and the kernel has been untarred to /usr/src/linux) :
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<screen>
|
||||
______________________________________________________________________
|
||||
#!/bin/sh
|
||||
|
||||
gunzip /tmp/quota/*.gz
|
||||
cd /usr/src/linux
|
||||
COUNT=`ls -1 /tmp/quota/*.diff | wc -l`
|
||||
for I in `seq 1 $COUNT`
|
||||
do
|
||||
patch -p1 < /tmp/quota/quota-2.4.21-$I-*.diff
|
||||
done
|
||||
______________________________________________________________________
|
||||
</screen>
|
||||
</para>
|
||||
|
||||
3.2. Reconfigure your kernel
|
||||
|
||||
<para>
|
||||
Reconfigure your kernel and add quota support.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Via `make menuconfig` or `make xconfig` you can find the option to
|
||||
support quota under the Filesystems-menu. You can specify extra
|
||||
options if you need them, like 32-bit UID support.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Save the configuration and compile the kernel. Make sure the new
|
||||
kernel will be used when rebooting the system.
|
||||
</para>
|
||||
|
||||
3.3. Compile and install the quota softwares
|
||||
|
||||
<para>
|
||||
To be able to use all the features of the new quota system, you'll
|
||||
probably need to download the new quota-package. Download the new
|
||||
quota software via the URL provided above.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
When downloaded do:
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<screen>
|
||||
______________________________________________________________________
|
||||
$ gzip -dc <downloaded file> | tar xvf
|
||||
$ cd quota-tools (or whatever directory the software is put in)
|
||||
$ ./configure
|
||||
$ make
|
||||
$ su
|
||||
# make install
|
||||
______________________________________________________________________
|
||||
</screen>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
3.4. time Modify your system init script to check quota and turn
|
||||
quota on at boot
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Here's an example:
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<screen>
|
||||
______________________________________________________________________
|
||||
# Check quota and then turn quota on.
|
||||
if [ -x /usr/sbin/quotacheck ]
|
||||
then
|
||||
echo "Checking quotas. This may take some time."
|
||||
/usr/sbin/quotacheck -avug
|
||||
echo " Done."
|
||||
fi
|
||||
if [ -x /usr/sbin/quotaon ]
|
||||
then
|
||||
echo "Turning on quota."
|
||||
/usr/sbin/quotaon -avug
|
||||
fi
|
||||
______________________________________________________________________
|
||||
</screen>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The golden rule is that always turn quota on after your file systems
|
||||
in /etc/fstab have been mounted, otherwise quota will fail to work. I
|
||||
recommend turning quota on right after the part where file systems are
|
||||
mounted in your system init script.
|
||||
</para>
|
||||
|
||||
3.5. Modify /etc/fstab
|
||||
|
||||
<para>
|
||||
Partitions that you have not yet enabled quota normally look something
|
||||
like:
|
||||
</para>
|
||||
|
||||
|
||||
<para>
|
||||
<screen>
|
||||
______________________________________________________________________
|
||||
/dev/hda1 / ext2 defaults 1 1
|
||||
/dev/hda2 /usr ext2 defaults 1 1
|
||||
______________________________________________________________________
|
||||
</screen>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
To enable user quota support on a file system, add "usrquota" to the
|
||||
fourth field containing the word "defaults" (man fstab for details).
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<screen>
|
||||
______________________________________________________________________
|
||||
/dev/hda1 / ext2 defaults 1 1
|
||||
/dev/hda2 /usr ext2 defaults,usrquota 1 1
|
||||
______________________________________________________________________
|
||||
</screen>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Replace "usrquota" with "grpquota", should you need group quota
|
||||
support on a file system.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<screen>
|
||||
______________________________________________________________________
|
||||
/dev/hda1 / ext2 defaults 1 1
|
||||
/dev/hda2 /usr ext2 defaults,grpquota 1 1
|
||||
______________________________________________________________________
|
||||
</screen>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Need both user quota and group quota support on a file system?
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<screen>
|
||||
______________________________________________________________________
|
||||
/dev/hda1 / ext2 defaults 1 1
|
||||
/dev/hda2 /usr ext2 defaults,usrquota,grpquota 1 1
|
||||
______________________________________________________________________
|
||||
</screen>
|
||||
</para>
|
||||
|
||||
3.6. Activate the quota system
|
||||
|
||||
<para>
|
||||
To activate the quota software you have to reboot the system for the
|
||||
changes you have made to take effect. The new kernel with quota
|
||||
support will be loaded and the startup scripts you've just created
|
||||
will be executed. At first run, quotacheck will generate the
|
||||
appropiate files to maintain the quota databases.
|
||||
</para>
|
||||
|
||||
3.7. Add quotacheck to crontab
|
||||
|
||||
<para>
|
||||
Although quota should work with periodical checks, it sometimes helps
|
||||
to run quotacheck periodically, e.g. weekly. Add the following line to
|
||||
your root's crontab:
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<screen>
|
||||
______________________________________________________________________
|
||||
0 3 * * 0 /sbin/quotacheck -avug
|
||||
______________________________________________________________________
|
||||
</screen>
|
||||
</para>
|
||||
|
||||
4. Quota setup: tools
|
||||
|
||||
<para>
|
||||
This operation is performed with the edquota command (`man edquota`
|
||||
for details).
|
||||
</para>
|
||||
|
||||
4.1. Assigning quota for a particular user
|
||||
|
||||
<para>
|
||||
Here's an example. I have a user with the login id bob on my system.
|
||||
The command "edquota -u bob" takes me into vi (or editor specified in
|
||||
my $EDITOR environment variable) to edit quota for user bob on each
|
||||
partition that has quota enabled:
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<screen>
|
||||
______________________________________________________________________
|
||||
Quotas for user bob:
|
||||
/dev/hda3: blocks in use: 2594, limits (soft = 5000, hard = 6500)
|
||||
inodes in use: 356, limits (soft = 1000, hard = 1500)
|
||||
______________________________________________________________________
|
||||
</screen>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
"blocks in use" is the total number of blocks (in kilobytes) a user
|
||||
has consumed on a partition.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
"inodes in use" is the total number of inodes a user has consumed on a
|
||||
partition.
|
||||
</para>
|
||||
|
||||
4.2. Assigning quota for a particular group
|
||||
|
||||
<para>
|
||||
Now I have a group games on my system. "edquota -g games" takes me
|
||||
into the vi editor again to edit quota for the group games:
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<screen>
|
||||
______________________________________________________________________
|
||||
Quotas for group games:
|
||||
/dev/hda4: blocks in use: 5799, limits (soft = 8000, hard = 10000)
|
||||
inodes in use: 1454, limits (soft = 3000, hard = 4000)
|
||||
______________________________________________________________________
|
||||
</screen>
|
||||
</para>
|
||||
|
||||
4.3. Assigning quota for a bunch of users with the same value
|
||||
|
||||
<para>
|
||||
To rapidly set quotas for, say 100 users, on my system to the same
|
||||
value as my user bob, I would first edit bob's quota information by
|
||||
hand, then execute:
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<screen>
|
||||
______________________________________________________________________
|
||||
edquota -p bob `awk -F: '$3 > 499 {print $1}' /etc/passwd`
|
||||
______________________________________________________________________
|
||||
</screen>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
assuming that you are using csh, and that you assign your user UID's
|
||||
starting with 500.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
In addition to edquota, there are 3 terms which you should familiarize
|
||||
yourself with: Soft Limit, Hard Limit, and Grace Period.
|
||||
</para>
|
||||
|
||||
4.4. Soft Limit
|
||||
|
||||
<para>
|
||||
_Soft limit_ indicates the maximum amount of disk usage a quota user
|
||||
has on a partition. When combined with grace period, it acts as the
|
||||
border line, which a quota user is issued warnings about his impending
|
||||
quota violation when passed.
|
||||
</para>
|
||||
|
||||
4.5. Hard Limit
|
||||
|
||||
<para>
|
||||
Hard limit works only when grace period is set. It specifies the
|
||||
absolute limit on the disk usage, which a quota user can't go beyond
|
||||
his hard limit.
|
||||
</para>
|
||||
|
||||
4.6. Grace Period
|
||||
|
||||
<para>
|
||||
Executed with the command "edquota -t", grace period is a time limit
|
||||
before the soft limit is enforced for a file system with quota
|
||||
enabled. Time units of sec(onds), min(utes), hour(s), day(s), week(s),
|
||||
and month(s) can be used. This is what you'll see with the command
|
||||
"edquota -t":
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<screen>
|
||||
______________________________________________________________________
|
||||
Time units may be: days, hours, minutes, or seconds
|
||||
Grace period before enforcing soft limits for users:
|
||||
/dev/hda2: block grace period: 0 days, file grace period: 0 days
|
||||
______________________________________________________________________
|
||||
</screen>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Change the 0 days part to any length of time you feel reasonable. I
|
||||
personally would choose 7 days (or 1 week).
|
||||
</para>
|
||||
|
||||
5. Miscellaneous Quota Commands
|
||||
|
||||
5.1. Quotacheck
|
||||
|
||||
<para>
|
||||
Quotacheck is used to scan a file system for disk usages, and updates
|
||||
the quota record file "aquota.user" to the most recent state. I
|
||||
recommend running quotacheck at system bootup, and via cronjob
|
||||
periodically (say, every week?).
|
||||
</para>
|
||||
|
||||
5.2. Repquota
|
||||
|
||||
<para>
|
||||
Repquota produces a summarized quota information for a file system.
|
||||
Here is a sample output repquota gives:
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<screen>
|
||||
______________________________________________________________________
|
||||
# repquota -a
|
||||
Block limits File limits
|
||||
User used soft hard grace used soft hard grace
|
||||
root -- 175419 0 0 14679 0 0
|
||||
bin -- 18000 0 0 735 0 0
|
||||
uucp -- 729 0 0 23 0 0
|
||||
man -- 57 0 0 10 0 0
|
||||
user1 -- 13046 15360 19200 806 1500 2250
|
||||
user2 -- 2838 5120 6400 377 1000 1500
|
||||
______________________________________________________________________
|
||||
</screen>
|
||||
</para>
|
||||
|
||||
5.3. Quotaon and Quotaoff
|
||||
|
||||
<para>
|
||||
Quotaon is used to turn on quota accounting; quotaoff to turn it off.
|
||||
Actually both files are similar. They are executed at system startup
|
||||
and shutdown.
|
||||
</para>
|
||||
|
||||
</sect1>
|
File diff suppressed because it is too large
Load Diff
|
@ -50,8 +50,9 @@ http://www.sangoma.com/fguide.htm
|
|||
www.citap.com/documents/tcp-ip/tcpip012.htm
|
||||
and of course in the TCP/IP Request For Comments (RFC) publication
|
||||
|
||||
<para>
|
||||
Layer 1 and 2 - Network Access
|
||||
|
||||
<para>
|
||||
These two layers (Physical/Datalink) deal with pure hardware (ie. wires,
|
||||
satellite links, NICs, hubs.....) and is roughly synonymous with that of
|
||||
the Physical layer of the OSI Network Layer Model. The protocols in this
|
||||
|
@ -70,8 +71,9 @@ delivering data between two devices on the same network. Node physical
|
|||
addresses are used to accomplish delivery on the local network.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Layer 3 - Internet
|
||||
|
||||
<para>
|
||||
The Internetwork Layer it is the heart of TCP/IP and the most important protocol.
|
||||
IP provides the basic packet delivery service on which TCP/IP networks are built.
|
||||
All protocols, in the layers above and below IP, use the Internet Protocol to
|
||||
|
@ -91,8 +93,9 @@ internetwork routing. The Address Resolution Protocol (ARP) enable IP to identif
|
|||
physical address that matches a given IP address.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Layer 4 - Transport
|
||||
|
||||
<para>
|
||||
The transport layer is similar to the OSI transport model, but with elements
|
||||
of the OSI session layer functionality. This layer provides an application
|
||||
layer delivery service. The two protocols found at the transport layer are
|
||||
|
@ -158,8 +161,9 @@ The delivering of information from an application on one computer to an
|
|||
application on another computer.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Layer 5 - Process/Application
|
||||
|
||||
<para>
|
||||
This layer is broadly equivalent to the application, presentation,
|
||||
session layers of the OSI model. It includes all processes that use the
|
||||
transport layer protocols to deliver data. There are many applications
|
||||
|
|
Loading…
Reference in New Issue