This commit is contained in:
gferg 2002-04-29 14:31:39 +00:00
parent b595da7303
commit a055ac5647
4 changed files with 127 additions and 29 deletions

View File

@ -26,7 +26,7 @@
</affiliation>
</author>
<pubdate>2002-02-22 v.0.9.10</pubdate>
<pubdate>v0.9.11, 2002-04-28</pubdate>
<copyright>
<year>2001</year>
@ -1755,13 +1755,14 @@ you. </para>
bucks), support bleeding edge sound cards and take a lot of guesswork out
of the configuring process.</para>
<para> There are 4 things that can go wrong with your sound system: </para>
<para> There are 5 things that can go wrong with your sound system: </para>
<orderedlist numeration="arabic">
<listitem><para>Shared interrupt</para></listitem>
<listitem><para>Misconfigured driver</para></listitem>
<listitem><para>Something's already accessing the sound card</para></listitem>
<listitem><para>You're using the wrong driver </para></listitem>
<listitem><para>A permissions problems </para></listitem>
</orderedlist>
@ -1894,6 +1895,22 @@ you. </para>
</sect3>
<sect3><title>Permissions Problem</title>
<para>If the sound card works when you're root but not any other user, you prolly have a
permissions problem. If this is the case, as root, look at the group owner of the sound card
using <literal>ls -l /dev/dsp</literal>; it'll prolly be <literal>audio</literal>. Then, as
root, add your non-root user to the audio group in <filename>/etc/group</filename>. For
example, I added the users p and wellspring to group audio on my system:</para>
<screen>
audio:x:29:p,wellspring
</screen>
<para>Then log out and log back in as the non-root user. Your sound card should work. Thanks
to James Barton for reminding me to add this to the howto.</para> </sect3>
</sect2>
</sect1>
@ -2077,19 +2094,20 @@ you. </para>
<sect3><title>Win4Lin</title>
<para> <application>Win4Lin</application> is a commercial product by Netraverse.
<para> Win4Lin is a commercial product by Netraverse.
(<systemitem role="url">www.netraverse.com/products/win4lin30/</systemitem>. It uses
the virtual machine approach, so you'll get a big window from which you can boot
Windows and run all kinds of Windows applications. I've never used
<application>Win4Lin</application>, but since it's a virtual machine, I imagine it
does Direct X and games just fine. There are a few problems with using Win4Lin:
</para>
Windows and run all kinds of Windows applications. From the documentation of Win4Lin
3.0, this is a poor choice for Linux folk who want to run games: </para>
<itemizedlist>
<listitem><para> It does not support Direct X or DirectDraw. This in of itself is a
show stopper for gamers since almost all Windows games use Direct X. </para>
<listitem><para> It only supports serial and parallel devices. </para>
<listitem><para> It's not cheap. As of January 2002, expect to pay $80 without
printed docs and $90 with printed docs. In addition, there isn't an evaluation
copy available, although you get a 30 day money back guarantee. However, since
it's commercial you do get tech support.</para>
it's commercial you do get tech support. </para>
<listitem><para> You are required to have a licensed copy of Win95 or Win98. Win4Lin
cannot use an existing Windows installation the way wine can. </para>
<listitem><para> It can only run on x86 architectures. </para>
@ -2181,14 +2199,44 @@ you. </para>
<sect2><title>Infocom Adventures (Infocom, Activision)</title>
<para></para>
<para> The Z-machine is a well documented &lt;<systemitem
role="url">http://www.gnelson.demon.co.uk/zspec/index.html</systemitem>&gt; virtual machine
designed by Infocom to run their interactive fiction games. This allowed them to write game
data files in a cross platform manner, since only the engine itself, the Z-machine, would be
platform dependent. Z-machine went through a number of revisions during the lifetime of
Infocom, and two further revisions (V7 and V8 created by Graham Nelson) after the Infocom's
demise. The later versions even supported limited sound and graphics! </para>
<para>One of the most popular Z-machine interpreters is Frotz &lt;<systemitem
role="url">http://www.cs.csubak.edu/~dgriffi/proj/frotz/</systemitem>&gt;. This excellently
done page has many nice links for interactive fiction fans. Frotz is GPL, runs all versions
of Z-machine and will compile on most versions of Unix. Frotz has spawned many forks,
like a version for PalmOS and Linux based PDA's.</para>
<para> jzip &lt;<systemitem role="url">http://jzip.sourceforge.net/</systemitem>&gt; is
another very popular Z-machine interpreter that will run V1-V5 and V8 Z-machine data files.
jzip is very portable; it compiles on all Unices, OS/2, Atari ST and DOS.
<para> There are actually many other Z-machine interpreters like nitfol and rezrov (written in
Perl!). Each interpreter has its own set of strengths, and you can find links to them on the
home pages for Frotz and jzip. </para>
</sect2>
<sect2><title>Scott Adams Adventures (Adventure International)</title>
<para></para>
<para> Scott Adams is, arguably, the father of interactive fiction. Although he himself was
inspired by the first piece of interactive fiction, Adventure, Scott brought adventuring to
the masses. His games were available for Atari, Apple 2, Commodore, Sorcerer, TI, and CPM.
His company, Adventure International, released a number of much loved games between 1978 and
1984 before folding. He recently released a new game (a Linux version is not available) but
since the decline of adventuring, he has pretty much kept out of the gaming industry. </para>
<para> Alan Cox wrote scottfree, a Scott Adams adventure game file interpreter for Unix.
Using scottfree and any of the Scott Adams data files which can be downloaded from Scott's
website &lt;<systemitem role="url">http://www.msadams.com/</systemitem>&gt; you can enjoy these
classics. </para>
</sect2>
@ -2412,5 +2460,6 @@ you. </para>
<!--
vim:textwidth=96:
vim:textwidth=100:
-->

View File

@ -13,18 +13,38 @@
<surname>Alkalay</surname>
<affiliation>
<address>
<email>avi at br.ibm.com</email>
<email>avi at unix.sh</email>
<email>avi at br.ibm.com</email>
</address>
<orgdiv>Senior IT and Software Architect :: OpenSource/Linux Solutions</orgdiv>
<orgname>IBM Linux Impact Team :: <ulink url="http://ibm.com/linux">ibm.com/linux</ulink></orgname>
</affiliation>
</author>
<othercredit>
<firstname>Kent</firstname><surname>Borg</surname>
<contrib>Suggestion to use ntpq instead of ntpdc</contrib>
</othercredit>
<othercredit>
<firstname>Yura</firstname><surname>Moron</surname>
<contrib>Good explanations on ntpq and ntpdc info</contrib>
</othercredit>
</authorgroup>
<pubdate>0.8.1 :: 2002/04/20</pubdate>
<pubdate>1.0 :: 2002/04/28</pubdate>
<revhistory>
<revision>
<revnumber>1.0</revnumber>
<date>28 Apr 2002</date>
<authorinitials>avi</authorinitials>
<revremark>Finalized image.</revremark>
</revision>
<revision>
<revnumber>0.8</revnumber>
<date>27 Apr 2002</date>
<authorinitials>avi</authorinitials>
<revremark>Switched from ntpdc example to ntpq, based on contributions.</revremark>
</revision>
<revision>
<revnumber>0.8.1</revnumber>
<date>20 Apr 2002</date>
@ -89,7 +109,7 @@
<section id="tz"><title>What are Time Zones?</title>
<para>Time Zones are a geophysical world globe division of 15<superscript>o</superscript> each, starting at Greenwich, in England, created to help people know what time is it now in another part of the world.</para>
<para>Nowadays it is much more a political division then geophysical, because sometimes people needs to have the same time as other people in not-so-far locations. And for energy savings reasons, we have today the <link linkend="tz.dst">Daylight Savings Time</link>, that are also a Time Zone variation.</para>
<para>Nowadays it is much more a political division than geophysical, because sometimes people needs to have the same time as other people in not-so-far locations. And for energy savings reasons, we have today the <link linkend="tz.dst">Daylight Savings Time</link>, that are also a Time Zone variation.</para>
<para>Time Zones are usually defined by your country government or some astronomical institute, and is represented by 3 or 4 letters. See <xref linkend="tz.examples"/> for examples.</para>
<para>If you want to know what time is it now in a different world region, you can use the <ulink url="http://www.timezoneconverter.com/">timezoneconverter.com</ulink> website.</para>
<section id="tz.dst"><title>Daylight Savings Time</title>
@ -272,7 +292,7 @@ Zone Brazil/Acre -5:00 Brazil BRA%sT
<para>The <command>Rule</command> block defines the date and time we change the Time Zone, while in the <command>Zone</command> block we reference the <command>Rule</command> will manage it. Note that the <command>Zone</command> name is actually the file name under <filename class="directory">/usr/share/zoneinfo</filename> directory, and here we defined several different names for the same Time Zone, just to be easyer for people to find their zone.</para>
<para>This file's comments explains how to install these time zones, using the <command>zic</command> zoneinfo compiler (which already installs them also). To make it effective, you only have to link (or copy) the zoneinfo file to <filename>/etc/localtime</filename>. In some distributions, there is a higher level (and preferred) way to set the Time Zone, described in <xref linkend="set.tz"/>.</para>
<para>After making <filename>/etc/localtime</filename> pointing to the correct zoneinfo file, you are already under that zone rules and <acronym>DST</acronym> changes are automatic -- you don't have to change time manually.</para>
<para>The following commands sequence shows Linux Time Zone mechanics dynamism. Note they were all issued in less then one minute:</para>
<para>The following commands sequence shows Linux Time Zone mechanics dynamism. Note they were all issued in less than one minute:</para>
<screen><prompt>bash$ </prompt><command>ls -al /etc/localtime</command>
lrwxrwxrwx 1 root root 35 May 22 2001 /etc/localtime -> <emphasis>/usr/share/zoneinfo/Brazil/Brasilia</emphasis>
<prompt>bash$ </prompt><command>date</command>
@ -335,7 +355,7 @@ ARC=false</programlisting>
</section>
<section id="ntp"><title>Accurate Global Time Synchronization</title>
<para>To have accurate time in all your systems is as important as having a solid network security strategy (achieved by much more then simple firewall boxes). It is one of the primary components of a system administration based on good practices, which leads to organization and security. Specially when administering distributed applications, web-services, or even a distributed security monitoring tool, accurate time is a must.</para>
<para>To have accurate time in all your systems is as important as having a solid network security strategy (achieved by much more than simple firewall boxes). It is one of the primary components of a system administration based on good practices, which leads to organization and security. Specially when administering distributed applications, web-services, or even a distributed security monitoring tool, accurate time is a must.</para>
<section id="ntp.ntp"><title><acronym>NTP</acronym>: The Network Time Protocol</title>
<para>We'll not discuss here the protocol, but how this wonderfull invention, added to the pervasiveness of the Internet, can be usefull for us. You can find more about it at <ulink url="http://www.ntp.org/">www.ntp.org</ulink>.</para>
<para>Once your system is setup, <acronym>NTP</acronym> will manage to keep its time accurate, making very small adjustments to not impact the running applications.</para>
@ -387,7 +407,7 @@ server ntp2.my.com # My second local relay
</listitem>
</varlistentry>
</variablelist>
<para>If your machine has a UTC time difference bigger then some minutes comparing to the <acronym>NTP</acronym> servers, <acronym>NTP</acronym> will not work. So you must do a first full sync, and I recommend you to do it in a non-production hour. You need to do it only when you are making the initial <acronym>NTP</acronym> setup. Never more:</para>
<para>If your machine has a UTC time difference bigger than some minutes comparing to the <acronym>NTP</acronym> servers, <acronym>NTP</acronym> will not work. So you must do a first full sync, and I recommend you to do it in a non-production hour. You need to do it only when you are making the initial <acronym>NTP</acronym> setup. Never more:</para>
<example><title>First sync</title>
<screen><prompt>bash# </prompt><command>ntpdate otherntp.research.gov</command> <co id="sync1"/>
24 Mar 18:16:36 ntpdate[10254]: step time server 200.100.20.10 offset -15.266188 sec
@ -406,15 +426,22 @@ server ntp2.my.com # My second local relay
<screen><prompt>bash# </prompt><command>service ntpd restart</command></screen>
</section>
<section id="ntp.watch"><title>Watching Your Box Synchronizing</title>
<para>Now you have everything setup. <acronym>NTP</acronym> will softly keep your machine time synchronized. You can watch this process using the <command>ntpdc</command> command:</para>
<para>Now you have everything setup. <acronym>NTP</acronym> will softly keep your machine time synchronized. You can watch this process using the NTP Query (<command>ntpq</command> command:</para>
<example><title>A time synchronization status</title>
<screen>
<prompt>bash# </prompt><command>ntpdc -c peers</command>
remote local st poll reach delay offset disp
=======================================================================
=LOCAL(0) 127.0.0.1 7 64 377 0.00000 0.000000 0.43828
=ntp.server.org 200.218.38.134 2 64 377 0.44949 -0.023418 0.44000
=otherntp.resear 200.218.38.134 2 64 377 0.22252 -0.024405 0.93861</screen>
<prompt>bash# </prompt><command>ntpq -p</command>
remote refid st t when poll reach delay offset jitter
==============================================================================
-jj.cs.umb.edu gandalf.sigmaso 3 u 95 1024 377 31.681 -18.549 1.572
milo.mcs.anl.go ntp0.mcs.anl.go 2 u 818 1024 125 41.993 -15.264 1.392
-mailer1.psc.edu ntp1.usno.navy. 2 u 972 1024 377 38.206 19.589 28.028
-dr-zaius.cs.wis ben.cs.wisc.edu 2 u 502 1024 357 55.098 3.979 0.333
+taylor.cs.wisc. ben.cs.wisc.edu 2 u 454 1024 347 54.127 3.379 0.047
-ntp0.cis.strath harris.cc.strat 3 u 507 1024 377 115.274 -5.025 1.642
*clock.via.net .GPS. 1 u 426 1024 377 107.424 -3.018 2.534
ntp1.conectiv.c 0.0.0.0 16 u - 1024 0 0.000 0.000 4000.00
+bonehed.lcs.mit .GPS. 1 u 984 1024 377 25.126 0.131 30.939
-world.std.com 204.34.198.40 2 u 119 1024 377 24.229 -6.884 0.421</screen>
</example>
<variablelist><title>The meaning of each column</title>
<varlistentry><term><emphasis>remote</emphasis></term>
@ -422,9 +449,9 @@ server ntp2.my.com # My second local relay
<para>Is the name of the remote <acronym>NTP</acronym> server. If you use the <option>-n</option> switch, you will see the IP addresses of these servers instead of their hostnames.</para>
</listitem>
</varlistentry>
<varlistentry><term><emphasis>local</emphasis></term>
<varlistentry><term><emphasis>refid</emphasis></term>
<listitem>
<para>Your local IP address used to communicate with remote servers.</para>
<para>Indicates where each server is getting its time right now. It can be a server hostname or something like <acronym>.GPS.</acronym>, indicating a Global Positioning System source.</para>
</listitem>
</varlistentry>
<varlistentry><term><emphasis>st</emphasis></term>
@ -434,7 +461,7 @@ server ntp2.my.com # My second local relay
</varlistentry>
<varlistentry><term><emphasis>poll</emphasis></term>
<listitem>
<para>??????????????????????????? Contribute !</para>
<para>The polling interval (in seconds) between time requests. The value will range between the minimum and maximum allowed polling values. Initially the value will be smaller to allow synchronization to occur quickly. After the clocks are 'in sync' the polling value will increase to reduce network traffic and load on popular time servers.</para>
</listitem>
</varlistentry>
<varlistentry><term><emphasis>reach</emphasis></term>
@ -452,9 +479,31 @@ server ntp2.my.com # My second local relay
<para>The most important value. The difference of time between the local and remote server. In the course of synchronization, the offset time lowers down, indicating that the local machine time is getting more accurate.</para>
</listitem>
</varlistentry>
<varlistentry><term><emphasis>disp</emphasis></term>
<varlistentry><term><emphasis>jitter</emphasis></term>
<listitem>
<para>??????????????????????????? Contribute !</para>
<para>Dispersion, also called Jitter, is a measure of the statistical variance of the offset across several successive request/response pairs. Lower dispersion values are preferred over higher dispersion values. Lower dispersions allow more accurate time synchronization.</para>
</listitem>
</varlistentry>
</variablelist>
<variablelist><title>The meaning of the signs before server hostname</title>
<varlistentry><term><emphasis>-</emphasis></term>
<listitem>
<para>Means the local NTP service doesn't like this server very much</para>
</listitem>
</varlistentry>
<varlistentry><term><emphasis>+</emphasis></term>
<listitem>
<para>Means the local NTP service likes this server</para>
</listitem>
</varlistentry>
<varlistentry><term><emphasis>x</emphasis></term>
<listitem>
<para>Marks a bad host</para>
</listitem>
</varlistentry>
<varlistentry><term><emphasis>*</emphasis></term>
<listitem>
<para>Indicates the current favorite</para>
</listitem>
</varlistentry>
</variablelist>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 55 KiB

After

Width:  |  Height:  |  Size: 35 KiB