<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.saruman.biz/saruwiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=82.161.0.0%2F16</id>
	<title>SaruWiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://www.saruman.biz/saruwiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=82.161.0.0%2F16"/>
	<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Special:Contributions/82.161.0.0/16"/>
	<updated>2026-08-17T06:50:29Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.46.0</generator>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Apache2_and_PHP5&amp;diff=2643</id>
		<title>Apache2 and PHP5</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Apache2_and_PHP5&amp;diff=2643"/>
		<updated>2010-10-15T13:25:06Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: /* Configuring WebDAV and LDAP for your SSL-enabled Virtual Host */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Apache2==&lt;br /&gt;
&lt;br /&gt;
===Installation of Apache2===&lt;br /&gt;
Installation of Apache2 is quite simple:&lt;br /&gt;
 apt-get install apache2&lt;br /&gt;
This brings a slew of packages, a.o. &#039;&#039;apache2-mpm-worker&#039;&#039;, &#039;&#039;apache2-utils&#039;&#039;, &#039;&#039;libapr1&#039;&#039; et cetera. When you want a different worker (e.g. , you should use &#039;&#039;aptitude&#039;&#039; to select that different worker (prefork etc.).&lt;br /&gt;
&lt;br /&gt;
===Configuration of Apache2===&lt;br /&gt;
Once Apache2 is in place, you might want to [[Enabling SSL for Apache2 | enable SSL]] for it. And if you want to keep track of any visitor to your website(s), you might want to install [[Apache2 and Visitor|Visitor]].&lt;br /&gt;
&lt;br /&gt;
Furthermore, you have to realise that mail sent by your webserver, or any PHP program running under it (e.g. MediaWiki) will have the envelope sender address of www-data@&amp;lt;your.maildomain&amp;gt;. To make sure that your maildomain is actually a real mail domain (necessary for reverse lookup, which is something that real mail servers do), you have to take care to put the right mail domain in &#039;&#039;/etc/mailname&#039;&#039; (e.g. &amp;quot;saruman.biz&amp;quot;). Furthermore, at the top of your Postfix &#039;&#039;main.cf&#039;&#039; you might like to add&lt;br /&gt;
 myorigin = /etc/mailname&lt;br /&gt;
If you now restart Postfix, outgoing mail from user &#039;&#039;www-data&#039;&#039; will have an envelope sender address of &#039;&#039;www-data@saruman.biz&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Installation of PHP5==&lt;br /&gt;
Installing PHP5 is as easy as&lt;br /&gt;
 sudo apt-get install php5 php5-cli&lt;br /&gt;
Note that if you had installed Apache2 module &#039;&#039;apache2-mpm-worker&#039;&#039;, it will get replaced with &#039;&#039;apache2-mpm-prefork&#039;&#039;. Furthermore, note that &#039;&#039;php5-cli&#039;&#039; is only needed if you want to run PHP commands at the prompt - but our guess is that you want it (e.g. to perform maintenance tasks for your [[Mediawiki_Installation|MediaWiki wikiserver]].&lt;br /&gt;
&lt;br /&gt;
==Adding WebDAV to your Apache2==&lt;br /&gt;
&lt;br /&gt;
===Thoughts about WebDAV and your configuration===&lt;br /&gt;
Out of the box, your Debian Apache2 is prepared to start using WebDAV. All you need is to enable two modules: one for WebDAV itself, one for the authentication that you want to use. Since our server mainly uses LDAP, we&#039;ll describe WebDAV+LDAP here.&lt;br /&gt;
&lt;br /&gt;
Furthermore, because WebDAV allows editing files on your server, security is paramount (well, it always is, of course. What we mean is that it&#039;s even &#039;&#039;&#039;more&#039;&#039;&#039; important now). The Apache project recommends:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;The use of HTTP Basic Authentication is not recommended. You should use at least HTTP Digest Authentication, which is provided by the mod_auth_digest module. Nearly all WebDAV clients support this authentication method. An alternative is Basic Authentication over an SSL enabled connection.&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Thus you should not using Basic Authentication (which is pretty simple to set up) unless you run it over SSL - so we do that as well. We choose the Virtual Host that defines our SSL-site, and extend it with WebDAV functionality. If this is not what you want, consider stepping your authentication up to Digest Authentication.&lt;br /&gt;
&lt;br /&gt;
===Configuring WebDAV and LDAP for your SSL-enabled Virtual Host===&lt;br /&gt;
First, enable the WebDAV and authnz_ldap modules:&lt;br /&gt;
 a2enmod dav&lt;br /&gt;
 a2enmod dav_fs&lt;br /&gt;
 a2enmod authnz_ldap&lt;br /&gt;
Do not restart Apache2 just yet, because we haven&#039;t configured either the WebDAV site or its authentication!&lt;br /&gt;
&lt;br /&gt;
Furthermore, a location for the DAV lock database must be specified in the global section of your Apache2 configuration file using the [http://httpd.apache.org/docs/2.2/mod/mod_dav_fs.html#davlockdb DavLockDB directive]. To this end, create a file under &#039;&#039;/etc/apache2/conf.d&#039;&#039; named &#039;&#039;webdav&#039;&#039; containing this single line:&lt;br /&gt;
 DavLockDB /var/run/apache2/DavLock&lt;br /&gt;
This will act as the (global) lock database for WebDAV; we don&#039;t need to specify it in any other configuration file (like the Virtual Host configuration files). Of course, your server should have a directory &#039;&#039;/var/run/apache2&#039;&#039;, and it must be writable for the user &#039;&#039;www-data&#039;&#039; under which Apache2 runs.&lt;br /&gt;
&lt;br /&gt;
Next, adapt the virtual host that may employ WebDAV and LDAP authentication. The virtual host file needs a section that enables WebDAV (using the directive &#039;&#039;Dav On&#039;&#039;), and some directives on how to authorize users within this section. Suppose we want to enable WebDAV only for subdirectory &#039;&#039;webdav&#039;&#039; within virtual host &#039;&#039;&amp;lt;nowiki&amp;gt;http://www.saruman.biz/&amp;lt;/nowiki&amp;gt;&#039;&#039;. Then in the correspondig Virtual Host file (something like &#039;&#039;/etc/apache2/sites-available/000-saruman.biz&#039;&#039;) we need to include the following section:&lt;br /&gt;
 &amp;lt;Location /webdav&amp;gt;&lt;br /&gt;
    Order Allow,Deny&lt;br /&gt;
    Allow from all&lt;br /&gt;
    Dav On&lt;br /&gt;
These lines turn on WebDAV for the location &#039;&#039;/webdav&#039;&#039;. This of course means that there should &#039;&#039;be&#039;&#039; a directory in your server&#039;s filesystem named &#039;&#039;webdav&#039;&#039; and located under the root of this virtual host, e.g. &#039;&#039;/var/www/saruman.biz/webdav&#039;&#039;&lt;br /&gt;
    AuthType Basic&lt;br /&gt;
    AuthBasicProvider ldap&lt;br /&gt;
    AuthzLDAPAuthoritative On&lt;br /&gt;
This section sets up the authentication as HTTP Basic, with LDAP as the provider, and NOT allowing the authorization phase to fall back to other providers if LDAP cannot provide the required answer. If you want to use &amp;quot;require&amp;quot; statements from some other authorization provider, then you must set &#039;&#039;AuthzLDAPAuthoritative&#039;&#039; to &amp;quot;off&amp;quot;.&lt;br /&gt;
    AuthName &amp;quot;Enter your Saruman.biz login&amp;quot;&lt;br /&gt;
    AuthLDAPURL &amp;quot;ldap://myserver.saruman.biz/ou=people,dc=saruman,dc=biz?mail&amp;quot; NONE&lt;br /&gt;
    AuthLDAPBindDN &amp;quot;cn=admin,dc=saruman,dc=biz&amp;quot;&lt;br /&gt;
    AuthLDAPBindPassword &amp;quot;mypassword&amp;quot;&lt;br /&gt;
The &#039;&#039;AuthName&#039;&#039; directive &amp;quot;sets the name of the authorization realm&amp;quot;. The string provided for the AuthName is what will appear in the password dialog provided by most browsers.&amp;lt;br&amp;gt;&lt;br /&gt;
The &#039;&#039;AuthLDAPURL&#039;&#039; should point to your server, and the word behind the question mark should be the LDAP field that you want to use as login. We use &#039;&#039;mail&#039;&#039; so that we can log in with our mail address.&amp;lt;br&amp;gt;&lt;br /&gt;
The &#039;&#039;AuthLDAPBindDN&#039;&#039; should be of a user with the right to view the passwords of the users that will be using the WebDAV server, and the &#039;&#039;AuthLDAPBindPassword&#039;&#039; should be that user&#039;s password.&amp;lt;br&amp;gt;&lt;br /&gt;
    require valid-user&lt;br /&gt;
 &amp;lt;/Location&amp;gt;&lt;br /&gt;
This last directive means that any user who has authenticated is granted access. Since only LDAP users can authenticate, this is just fine.&lt;br /&gt;
If you want to autenticate against a ldap group &amp;quot;webdav&amp;quot; use the folowing&lt;br /&gt;
 Order deny,allow&lt;br /&gt;
 Deny from All&lt;br /&gt;
 AuthName &amp;quot;Enter your Saruman.biz login&amp;quot;&lt;br /&gt;
 AuthType Basic&lt;br /&gt;
 AuthBasicProvider ldap&lt;br /&gt;
 AuthzLDAPAuthoritative on&lt;br /&gt;
 AuthLDAPUrl ldap://myserver.saruman.biz/ou=people,dc=saruman,dc=biz?uid&lt;br /&gt;
 AuthLDAPBindDN &amp;quot;cn=admin,dc=saruman,dc=biz&amp;quot;&lt;br /&gt;
 AuthLDAPBindPassword &amp;quot;mypassword&amp;quot;&lt;br /&gt;
 AuthLDAPGroupAttribute memberUid&lt;br /&gt;
 AuthLDAPGroupAttributeIsDN off&lt;br /&gt;
 Require ldap-group cn=webdav,ou=groups,dc=saruman,dc=biz&lt;br /&gt;
 Require ldap-attribute gidNumber=420&lt;br /&gt;
 &lt;br /&gt;
Require ldap-attribute gidNumber=420 handles the primary users of group 420, the &amp;quot;webdav&amp;quot; group. Without this condition, primary users would be denied access. For multiple groups, add an additional directive for each.&lt;br /&gt;
&lt;br /&gt;
Next up, you need to create folder &#039;&#039;webdav&#039;&#039; under the root of your Virtual Host. Do not forget to make that folder owned by &#039;&#039;www-data:www-data&#039;&#039; and readable/writable only by that user:&lt;br /&gt;
 cd /data/wwwroot/yoursite&lt;br /&gt;
 mkdir webdav&lt;br /&gt;
 chown www-data:www-data webdav&lt;br /&gt;
 chmod 660 webdav&lt;br /&gt;
&lt;br /&gt;
Now you can restart Apache2, see if it restarts ok, and then test your new WebDAV folder.&lt;br /&gt;
&lt;br /&gt;
===Testing WebDAV===&lt;br /&gt;
To test WebDAV, you can most easily install the &#039;&#039;cadaver&#039;&#039; WebDAV client:&lt;br /&gt;
 apt-get install cadaver&lt;br /&gt;
After that, you can start cadaver, and have it write a file in your WebDAV environment:&lt;br /&gt;
 localhost:/data/wwwroot/yoursite/webdav# &#039;&#039;&#039;cadaver https://www.saruman.biz/webdav&#039;&#039;&#039;&lt;br /&gt;
 WARNING: Untrusted server certificate presented for `*.saruman.biz&#039;:&lt;br /&gt;
 Issued to: Internet Dept., Saruman.biz, Utrecht, NL&lt;br /&gt;
 Issued by: Saruman.biz, Utrecht, NL&lt;br /&gt;
 Certificate is valid from Tue, 28 Oct 2008 07:34:41 GMT to Mon, 02 Nov 2009 07:34:41 GMT&lt;br /&gt;
 Do you wish to accept the certificate? (y/n) y&lt;br /&gt;
 Authentication required for Enter your Saruman.biz login on server `www.saruman.biz&#039;:&lt;br /&gt;
 Username: sixpacjo&lt;br /&gt;
 Password:&lt;br /&gt;
 dav:/webdav/&amp;gt; _&lt;br /&gt;
When presented with the cadaver prompt, you can use the following commands:&lt;br /&gt;
* &#039;&#039;edit &amp;lt;filename&amp;gt;&#039;&#039;: this causes cadaver to open an existing file named &#039;&#039;&amp;lt;filename&amp;gt;&#039;&#039;; or, failing that, to create a new file. Your default text editor is used.&lt;br /&gt;
* &#039;&#039;lock &amp;lt;filename&amp;gt;&#039;&#039; or &#039;&#039;unlock &amp;lt;filename&amp;gt;&#039;&#039;: set or remove a lock on a WebDAV published file. He who owns the lock can edit the file, others can only read it.&lt;br /&gt;
* &#039;&#039;discover &amp;lt;filename&amp;gt;&#039;&#039;: see the lock status of the file&lt;br /&gt;
* &#039;&#039;quit&#039;&#039;: well that one&#039;s easy...&lt;br /&gt;
Use &#039;&#039;man cadaver&#039;&#039; for the full description.&lt;br /&gt;
&lt;br /&gt;
Errors that might occur if you have a problem in your WebDAV setup include:&lt;br /&gt;
* Lock problems: if you fail to provide a webserver-writable place for the lock file, you will encounter HTTP 500 errors. In &#039;&#039;cadaver&#039;&#039;:&lt;br /&gt;
 dav:/webdav/&amp;gt; edit test.html&lt;br /&gt;
 Locking `test.html&#039;: failed:&lt;br /&gt;
 500 Internal Server Error&lt;br /&gt;
 dav:/webdav/&amp;gt; discover test.html&lt;br /&gt;
 Discovering locks on `test.html&#039;: no locks found.&lt;br /&gt;
 dav:/webdav/&amp;gt;&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Nfs&amp;diff=2569</id>
		<title>Nfs</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Nfs&amp;diff=2569"/>
		<updated>2010-05-30T16:50:24Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: Created page with &amp;#039;There are two implimentations of NFS one runs in kernel space (nfs-kernel-server) the other in user space (nfs-user-server). The kernel space implimentation is faster and more st…&amp;#039;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;There are two implimentations of NFS one runs in kernel space (nfs-kernel-server) the other in user space (nfs-user-server). The kernel space implimentation is faster and more stable but if something goes wrong it could bring your box down. In reality the kernel space NFS implimentation very rarely fails&lt;br /&gt;
&lt;br /&gt;
Make sure you have the kernel modules selected in you&#039;re kernel&lt;br /&gt;
 file systems -&amp;gt; Network File Systems -&amp;gt; NFS server support&lt;br /&gt;
&lt;br /&gt;
On the server:&lt;br /&gt;
 apt-get install nfs-kernel-server nfs-common portmap&lt;br /&gt;
&lt;br /&gt;
On the client:&lt;br /&gt;
 #pt-get install nfs-common portmap&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Export Directories ==&lt;br /&gt;
&lt;br /&gt;
 #vi /etc/exports &lt;br /&gt;
&lt;br /&gt;
/data 192.168.0.0/24(rw,sync)&lt;br /&gt;
/home 192.168.0.0/24(rw,sync)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Mount ==&lt;br /&gt;
&lt;br /&gt;
To mount the directories on the client nd make it persistent edit /etc/fstab&lt;br /&gt;
 # vi /etc/fstab&lt;br /&gt;
&lt;br /&gt;
192.168.0.1:/data /data nfs rw,sync,hard,intr 0 0&lt;br /&gt;
192.168.0.1:/home /home nfs rw,sync,hard,intr 0 0&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Mythtv&amp;diff=2509</id>
		<title>Mythtv</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Mythtv&amp;diff=2509"/>
		<updated>2010-03-28T18:13:24Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: /* Metadata */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== lirc ==&lt;br /&gt;
LIRC CVS is hosted at SourceForge. You can get a copy of the current CVS tree using anonymous CVS login. First log in to the cvs server (press &amp;lt;enter&amp;gt; for password):&lt;br /&gt;
 cvs -d:pserver:anonymous@lirc.cvs.sourceforge.net:/cvsroot/lirc login&lt;br /&gt;
Get the sources:&lt;br /&gt;
 cvs -z8 -d:pserver:anonymous@lirc.cvs.sourceforge.net:/cvsroot/lirc co lirc&lt;br /&gt;
After initial checkout, you can change into this directory and execute cvs commands without the -d option. For example:&lt;br /&gt;
 cvs update&lt;br /&gt;
Compile:&lt;br /&gt;
 cd lirc&lt;br /&gt;
  ./autogen.sh&lt;br /&gt;
  ./setup.sh&lt;br /&gt;
  make&lt;br /&gt;
&lt;br /&gt;
/etc/lirc/hardware.conf&lt;br /&gt;
&lt;br /&gt;
 # /etc/lirc/hardware.conf&lt;br /&gt;
 #&lt;br /&gt;
 # Arguments which will be used when launching lircd&lt;br /&gt;
 LIRCD_ARGS=&amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 #Don&#039;t start lircmd even if there seems to be a good config file&lt;br /&gt;
 START_LIRCMD=false&lt;br /&gt;
&lt;br /&gt;
 #Try to load appropriate kernel modules&lt;br /&gt;
 LOAD_MODULES=true&lt;br /&gt;
 &lt;br /&gt;
 # Run &amp;quot;lircd --driver=help&amp;quot; for a list of supported drivers.&lt;br /&gt;
 #DRIVER=&amp;quot;pinsys&amp;quot;&lt;br /&gt;
 # If DEVICE is set to /dev/lirc and devfs is in use /dev/lirc/0 will be&lt;br /&gt;
 # automatically used instead&lt;br /&gt;
 DEVICE=&amp;quot;/dev/lirc0&amp;quot;&lt;br /&gt;
 MODULES=&amp;quot;lirc_mceusb&amp;quot; &lt;br /&gt;
 TRANSMITTER_DEVICE=&amp;quot;/dev/lirc0&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 # Default configuration files for your hardware if any&lt;br /&gt;
 LIRCD_CONF=&amp;quot;&amp;quot;&lt;br /&gt;
 LIRCMD_CONF=&amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
/etc/lirc/lircd.conf&lt;br /&gt;
&lt;br /&gt;
 ################################################################################&lt;br /&gt;
 # lircd.conf file for the new Microsoft Media Center remote using a new&lt;br /&gt;
 # Microsoft Media Center receiver.&lt;br /&gt;
 ################################################################################&lt;br /&gt;
 begin remote&lt;br /&gt;
&lt;br /&gt;
  name  mceusb&lt;br /&gt;
  bits           16&lt;br /&gt;
  flags RC6|CONST_LENGTH&lt;br /&gt;
  eps            30&lt;br /&gt;
  aeps          100&lt;br /&gt;
&lt;br /&gt;
  header       2667   889&lt;br /&gt;
  one           444   444&lt;br /&gt;
  zero          444   444&lt;br /&gt;
  pre_data_bits 21&lt;br /&gt;
  pre_data      0x37FF0&lt;br /&gt;
  gap          105000&lt;br /&gt;
  toggle_bit     22&lt;br /&gt;
  rc6_mask     0x100000000&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
      begin codes&lt;br /&gt;
&lt;br /&gt;
 # starts at A1&lt;br /&gt;
        BLUE         0x00007BA1&lt;br /&gt;
        YELLOW       0x00007BA2&lt;br /&gt;
        GREEN        0x00007BA3&lt;br /&gt;
        RED          0x00007BA4&lt;br /&gt;
        TELETEXT     0x00007BA5&lt;br /&gt;
        RADIO        0x00007BAF&lt;br /&gt;
        PRINT        0x00007BB1&lt;br /&gt;
        VIDEO        0x00007BB5 # VIDEOS button&lt;br /&gt;
        IMAGE        0x00007BB6 # PICTURES button&lt;br /&gt;
        PVR          0x00007BB7 # RECORDED TV button&lt;br /&gt;
        AUDIO        0x00007BB8 # MUSIC button&lt;br /&gt;
        TV           0x00007BB9&lt;br /&gt;
 # no BA - D8&lt;br /&gt;
        Guide        0x00007BD9&lt;br /&gt;
        TV           0x00007BDA # LIVE TV button&lt;br /&gt;
        Dvd          0x00007BDB&lt;br /&gt;
        Back         0x00007BDC&lt;br /&gt;
        OK           0x00007BDD&lt;br /&gt;
        Right        0x00007BDE&lt;br /&gt;
        Left         0x00007BDF&lt;br /&gt;
        Down         0x00007BE0&lt;br /&gt;
        Up           0x00007BE1&lt;br /&gt;
        STAR         0x00007BE2&lt;br /&gt;
        Hash          0x00007BE3&lt;br /&gt;
        PREVIOUS     0x00007BE4 # REPLAY button&lt;br /&gt;
        Next         0x00007BE5 # SKIP button&lt;br /&gt;
        Stop         0x00007BE6&lt;br /&gt;
        Pause        0x00007BE7&lt;br /&gt;
        Record       0x00007BE8&lt;br /&gt;
        Play         0x00007BE9&lt;br /&gt;
        Rewind       0x00007BEA&lt;br /&gt;
        Forward      0x00007BEB&lt;br /&gt;
        CHANNELDOWN  0x00007BEC&lt;br /&gt;
        CHANNELUP    0x00007BED&lt;br /&gt;
        Volumedown   0x00007BEE&lt;br /&gt;
        Volumeup     0x00007BEF&lt;br /&gt;
        INFO         0x00007BF0 # MORE (i) button&lt;br /&gt;
        Mute         0x00007BF1&lt;br /&gt;
        MENU         0x00007BF2 # START (Windows) button&lt;br /&gt;
        POWER        0x00007BF3&lt;br /&gt;
        ENTER        0x00007BF4&lt;br /&gt;
        CLEAR        0x00007BF5&lt;br /&gt;
        9            0x00007BF6&lt;br /&gt;
        8            0x00007BF7&lt;br /&gt;
        7            0x00007BF8&lt;br /&gt;
        6            0x00007BF9&lt;br /&gt;
        5            0x00007BFA&lt;br /&gt;
        4            0x00007BFB&lt;br /&gt;
        3            0x00007BFC&lt;br /&gt;
        2            0x00007BFD&lt;br /&gt;
        1            0x00007BFE&lt;br /&gt;
        0            0x00007BFF&lt;br /&gt;
      end codes&lt;br /&gt;
&lt;br /&gt;
 end remote&lt;br /&gt;
&lt;br /&gt;
~/.lircrc&lt;br /&gt;
begin&lt;br /&gt;
    prog   = mythtv&lt;br /&gt;
    button = Two&lt;br /&gt;
    config = 2&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
    prog   = mythtv&lt;br /&gt;
    button = Three&lt;br /&gt;
    config = 3&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
    prog   = mythtv&lt;br /&gt;
    button = Four&lt;br /&gt;
    config = 4&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
    prog   = mythtv&lt;br /&gt;
    button = Five&lt;br /&gt;
    config = 5&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
    prog   = mythtv&lt;br /&gt;
    button = Six&lt;br /&gt;
    config = 6&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
    prog   = mythtv&lt;br /&gt;
    button = Seven&lt;br /&gt;
    config = 7&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
    prog   = mythtv&lt;br /&gt;
    button = Eight&lt;br /&gt;
    config = 8&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
    prog   = mythtv&lt;br /&gt;
    button = Nine&lt;br /&gt;
    config = 9&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
== IRblaster ==&lt;br /&gt;
&lt;br /&gt;
To get the right codes from youre remote you can record it with irrecord. This will provide a configuration file which you can use in lirc&lt;br /&gt;
 #irrecord /tmp/remote.conf&lt;br /&gt;
Now follow the instructions&lt;br /&gt;
To get the raw codes&lt;br /&gt;
 #irrecord -f /tmp/remoteraw.conf&lt;br /&gt;
&lt;br /&gt;
You wil get this file for a topfield tf6000cok remote&lt;br /&gt;
 # Please make this file available to others&lt;br /&gt;
 # by sending it to &amp;lt;lirc@bartelmus.de&amp;gt;&lt;br /&gt;
 #&lt;br /&gt;
 # this config file was automatically generated&lt;br /&gt;
 # using lirc-0.8.6(default) on Wed Mar 24 20:58:54 2010&lt;br /&gt;
 # &lt;br /&gt;
 # contributed by &lt;br /&gt;
 #&lt;br /&gt;
 # brand:Topfield&lt;br /&gt;
 # model no. of remote control: TP-014&lt;br /&gt;
 # devices being controlled by this remote: Topfield TF6000COK&lt;br /&gt;
 #&lt;br /&gt;
&lt;br /&gt;
 begin remote&lt;br /&gt;
&lt;br /&gt;
  name  topfield&lt;br /&gt;
  flags RAW_CODES|CONST_LENGTH&lt;br /&gt;
  eps            30&lt;br /&gt;
  aeps          100&lt;br /&gt;
&lt;br /&gt;
  gap          107620&lt;br /&gt;
&lt;br /&gt;
      begin raw_codes&lt;br /&gt;
&lt;br /&gt;
          name KEY_1&lt;br /&gt;
             9000    4450     600     500     650     450&lt;br /&gt;
              650    1650     600     500     600     500&lt;br /&gt;
              650     500     600     500     600     500&lt;br /&gt;
              650    1600     650    1600     600    1650&lt;br /&gt;
              600    1650     600    1650     600    1650&lt;br /&gt;
              600    1600     650    1600     600    1650&lt;br /&gt;
              600     550     600     500     600     500&lt;br /&gt;
              600    1650     600     550     550     550&lt;br /&gt;
              600     500     650     500     600    1650&lt;br /&gt;
              600    1650     600    1600     600     550&lt;br /&gt;
              600    1650     550    1650     650    1650&lt;br /&gt;
              550&lt;br /&gt;
&lt;br /&gt;
          name KEY_2&lt;br /&gt;
             9050    4400     600     500     650     500&lt;br /&gt;
              600    1650     600     500     600     500&lt;br /&gt;
              650     500     600     500     600     500&lt;br /&gt;
              650    1650     600    1600     600    1650&lt;br /&gt;
              600    1650     600    1650     600    1650&lt;br /&gt;
              600    1650     600    1600     600     550&lt;br /&gt;
              600    1650     600     500     600     500&lt;br /&gt;
              650    1600     600     550     600     500&lt;br /&gt;
              600     550     600    1600     600     550&lt;br /&gt;
              600    1650     550    1650     650     500&lt;br /&gt;
              600    1650     600    1650     600    1600&lt;br /&gt;
              600&lt;br /&gt;
&lt;br /&gt;
          name KEY_3&lt;br /&gt;
             9000    4450     600     500     650     500&lt;br /&gt;
              600    1600     650     500     600     500&lt;br /&gt;
              600     550     600     500     600     550&lt;br /&gt;
              600    1600     600    1650     650    1600&lt;br /&gt;
              600    1650     600    1650     600    1650&lt;br /&gt;
              600    1600     600    1650     600    1650&lt;br /&gt;
              600    1650     600     500     600     550&lt;br /&gt;
              600    1650     600     500     600     500&lt;br /&gt;
              600     550     600     500     600     550&lt;br /&gt;
              600    1600     650    1650     550     550&lt;br /&gt;
              600    1650     600    1600     600    1650&lt;br /&gt;
              600&lt;br /&gt;
&lt;br /&gt;
          name KEY_4&lt;br /&gt;
             9050    4450     600     500     600     500&lt;br /&gt;
              650    1600     600     500     650     500&lt;br /&gt;
              600     500     650     500     600     500&lt;br /&gt;
              600    1650     600    1650     600    1650&lt;br /&gt;
              600    1600     650    1600     650    1600&lt;br /&gt;
              600    1650     600    1650     600     500&lt;br /&gt;
              600     550     600    1650     550     550&lt;br /&gt;
              600    1650     600     500     600     500&lt;br /&gt;
              650     500     600    1650     600    1650&lt;br /&gt;
              600     500     600    1650     600     500&lt;br /&gt;
              650    1600     600    1650     600    1650&lt;br /&gt;
              600&lt;br /&gt;
&lt;br /&gt;
          name KEY_5&lt;br /&gt;
             9050    4400     650     450     650     500&lt;br /&gt;
              600    1650     600     500     650     500&lt;br /&gt;
              600     500     600     500     650     500&lt;br /&gt;
              600    1650     600    1600     650    1650&lt;br /&gt;
              600    1600     600    1650     600    1650&lt;br /&gt;
              600    1650     600    1650     600    1650&lt;br /&gt;
              600     500     600    1650     600     500&lt;br /&gt;
              600    1650     600     500     650     500&lt;br /&gt;
              600     500     600     550     600    1650&lt;br /&gt;
              600     500     600    1650     600     500&lt;br /&gt;
              600    1650     600    1650     600    1650&lt;br /&gt;
              600&lt;br /&gt;
&lt;br /&gt;
          name KEY_6&lt;br /&gt;
             9050    4400     650     500     600     500&lt;br /&gt;
              600    1650     600     500     650     500&lt;br /&gt;
              600     500     600     500     650     500&lt;br /&gt;
              600    1650     600    1650     600    1600&lt;br /&gt;
              600    1650     600    1650     600    1650&lt;br /&gt;
              600    1650     600    1650     600     500&lt;br /&gt;
              600    1650     600    1650     600     500&lt;br /&gt;
              600    1650     600     550     550     550&lt;br /&gt;
              600     500     600    1650     600     500&lt;br /&gt;
              600     550     600    1650     600     500&lt;br /&gt;
              600    1650     600    1650     600    1650&lt;br /&gt;
              600&lt;br /&gt;
&lt;br /&gt;
          name KEY_7&lt;br /&gt;
             9000    4450     600     500     600     500&lt;br /&gt;
              650    1600     650     450     650     500&lt;br /&gt;
              600     500     650     500     600     500&lt;br /&gt;
              600    1650     600    1650     600    1650&lt;br /&gt;
              600    1650     600    1600     650    1600&lt;br /&gt;
              600    1650     600    1650     600    1650&lt;br /&gt;
              600    1650     550    1650     650     500&lt;br /&gt;
              600    1650     600     500     600     550&lt;br /&gt;
              600     500     600     500     600     550&lt;br /&gt;
              600     500     600    1650     600     500&lt;br /&gt;
              650    1600     600    1650     600    1650&lt;br /&gt;
              600&lt;br /&gt;
&lt;br /&gt;
          name KEY_8&lt;br /&gt;
             9050    4400     650     450     650     500&lt;br /&gt;
              600    1650     600     500     650     500&lt;br /&gt;
              600     500     600     500     650     500&lt;br /&gt;
              600    1650     600    1600     650    1650&lt;br /&gt;
              550    1650     600    1650     600    1650&lt;br /&gt;
              600    1650     600    1600     650     500&lt;br /&gt;
              600     550     550     550     600    1650&lt;br /&gt;
              600    1650     550     550     600     500&lt;br /&gt;
              650     500     600    1600     650    1650&lt;br /&gt;
              550    1650     600     550     600     500&lt;br /&gt;
              600    1650     600    1650     600    1650&lt;br /&gt;
              600&lt;br /&gt;
&lt;br /&gt;
          name KEY_9&lt;br /&gt;
             9050    4400     650     500     600     500&lt;br /&gt;
              600    1650     600     500     650     500&lt;br /&gt;
              600     500     600     500     650     500&lt;br /&gt;
              600    1650     600    1650     600    1600&lt;br /&gt;
              600    1650     650    1600     600    1650&lt;br /&gt;
              600    1650     600    1650     600    1600&lt;br /&gt;
              600     550     600     500     600    1650&lt;br /&gt;
              600    1650     600     550     550     550&lt;br /&gt;
              600     500     600     550     600    1600&lt;br /&gt;
              600    1650     600     550     600     500&lt;br /&gt;
              600    1650     600    1650     600    1650&lt;br /&gt;
              600&lt;br /&gt;
&lt;br /&gt;
          name KEY_0&lt;br /&gt;
             9000    4450     600     500     650     450&lt;br /&gt;
              650    1600     650     500     600     500&lt;br /&gt;
              600     500     650     500     600     550&lt;br /&gt;
              600    1600     600    1650     600    1650&lt;br /&gt;
              600    1650     600    1650     600    1650&lt;br /&gt;
              600    1600     600    1650     600     550&lt;br /&gt;
              600     500     600     500     650     500&lt;br /&gt;
              600    1650     600     500     600     550&lt;br /&gt;
              600     500     600    1650     600    1650&lt;br /&gt;
              600    1600     650    1650     550     550&lt;br /&gt;
              600    1650     600    1600     600    1650&lt;br /&gt;
              600&lt;br /&gt;
&lt;br /&gt;
          name KEY_CHANNELUP&lt;br /&gt;
             9050    4400     650     500     600     500&lt;br /&gt;
              650    1600     650     500     600     500&lt;br /&gt;
              600     500     650     500     600     500&lt;br /&gt;
              650    1600     600    1650     600    1650&lt;br /&gt;
              600    1650     600    1600     600    1650&lt;br /&gt;
              650    1600     600    1650     600    1650&lt;br /&gt;
              600     500     600    1650     600     500&lt;br /&gt;
              600    1650     650     500     600    1600&lt;br /&gt;
              650     500     600     550     550    1650&lt;br /&gt;
              600     550     600    1650     550     550&lt;br /&gt;
              600    1650     600     500     600    1650&lt;br /&gt;
              600&lt;br /&gt;
&lt;br /&gt;
          name KEY_CHANNELDOWN&lt;br /&gt;
             9050    4400     650     500     600     500&lt;br /&gt;
              650    1600     600     500     650     500&lt;br /&gt;
              600     550     600     500     600     500&lt;br /&gt;
              600    1650     600    1650     600    1650&lt;br /&gt;
              600    1600     650    1650     600    1600&lt;br /&gt;
              600    1650     600    1650     600     500&lt;br /&gt;
              650    1600     600    1650     600     550&lt;br /&gt;
              600    1600     600     550     600    1650&lt;br /&gt;
              550     550     600    1650     600     500&lt;br /&gt;
              600     550     600    1650     550     550&lt;br /&gt;
              600    1650     600     500     600    1650&lt;br /&gt;
              600&lt;br /&gt;
&lt;br /&gt;
          name KEY_VOLUMEUP&lt;br /&gt;
             9050    4400     650     500     600     500&lt;br /&gt;
              600    1650     600     500     650     500&lt;br /&gt;
              600     500     600     500     650     500&lt;br /&gt;
              600    1650     600    1650     600    1600&lt;br /&gt;
              600    1650     650    1600     600    1650&lt;br /&gt;
              600    1650     600    1650     600    1600&lt;br /&gt;
              600    1650     650    1600     600     500&lt;br /&gt;
              650    1650     550     550     600    1650&lt;br /&gt;
              600     500     600     500     600     550&lt;br /&gt;
              600     500     650    1600     600     500&lt;br /&gt;
              650    1650     550     550     600    1650&lt;br /&gt;
              600&lt;br /&gt;
&lt;br /&gt;
          name KEY_VOLUMEDOWN&lt;br /&gt;
             9050    4400     650     500     600     550&lt;br /&gt;
              600    1600     650     500     600     500&lt;br /&gt;
              600     500     650     500     600     500&lt;br /&gt;
              650    1600     600    1650     600    1650&lt;br /&gt;
              600    1650     600    1650     600    1600&lt;br /&gt;
              650    1600     600    1650     600     550&lt;br /&gt;
              600     500     600     500     600    1650&lt;br /&gt;
              600    1650     600     500     650    1600&lt;br /&gt;
              600     550     600    1650     600    1600&lt;br /&gt;
              600    1650     600     550     550     550&lt;br /&gt;
              600    1650     600     500     600    1650&lt;br /&gt;
              600&lt;br /&gt;
&lt;br /&gt;
      end raw_codes&lt;br /&gt;
&lt;br /&gt;
 end remote&lt;br /&gt;
&lt;br /&gt;
Now save this file in /etc/lirc and edit /etc/lirc/lircd.conf&lt;br /&gt;
 include &amp;quot;/etc/lirc/remote.conf&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Now we can test irblaster&lt;br /&gt;
 #irsend SEND_ONCE remote KEY_1&lt;br /&gt;
The channel on the topfield DVB must jump to channel 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== EPG ==&lt;br /&gt;
&lt;br /&gt;
To use the epg we want to grad the data from a source. In this case we use tv_grab_nl_py. This script will grab all data from www.tvgids.nl&lt;br /&gt;
&lt;br /&gt;
XMLTV-configuratiebestand aanmaken&lt;br /&gt;
&lt;br /&gt;
* Start MythTV Setup&lt;br /&gt;
* Choose for Video Sources.&lt;br /&gt;
* Choose for existing or a new video source&lt;br /&gt;
* Listings grabber: The Netherlands (tv_grab_nl_py...)&lt;br /&gt;
* Klick Finish&lt;br /&gt;
&lt;br /&gt;
On the prompt&lt;br /&gt;
 # tv_grab_nl_py --configure&lt;br /&gt;
This will create a config file in /homedir/.xmltv/tv_grab_nl_py.conf&lt;br /&gt;
Edit this config file and clear out all channels you don want (or edit them out)&lt;br /&gt;
To see is something is happening&lt;br /&gt;
 #mythfilldatabase -v all --refresh-today&lt;br /&gt;
To see what&#039;s in the database&lt;br /&gt;
*mysql -u mythtv -p mythconverg -e &amp;quot;select chanid, callsign, name, xmltvid from channel;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
== Metadata ==&lt;br /&gt;
&lt;br /&gt;
Make sure you have set the filepaths right. Go to Mythtv setup - 6. Storage Directories&lt;br /&gt;
Choose (create Fanart group) and choose the right directory&lt;br /&gt;
&lt;br /&gt;
Now go to the mythfrontend and choose to watch a video. Select the video and press W. Based on the filename [http://www.mythtv.org/wiki/MythVideo_File_Parsing] the right data will be searched.&lt;br /&gt;
&lt;br /&gt;
To configure the metadata yourself you can select the video and press I. Now configure the metadata.&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Ubuntu&amp;diff=2483</id>
		<title>Ubuntu</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Ubuntu&amp;diff=2483"/>
		<updated>2010-02-07T23:35:01Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: /* Make DVD */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== NDISwrapper ==&lt;br /&gt;
&lt;br /&gt;
NDISwrapper is a free software driver wrapper that enables the use of Microsoft Windows drivers for wireless network devices.&lt;br /&gt;
&lt;br /&gt;
Download the windows driver wich contains the .inf file&amp;lt;br&amp;gt;&lt;br /&gt;
Install with ndiswrapper -i drivername.inf&amp;lt;br&amp;gt;&lt;br /&gt;
check the device id with lsusb or lspci -n&amp;lt;br&amp;gt;&lt;br /&gt;
Now execute with ndiswrapper -a deviceid driver&lt;br /&gt;
 ndiswrapper -a 0bda:8197 net8187b&lt;br /&gt;
check the installed drivers&lt;br /&gt;
 ndiswrapper -l&lt;br /&gt;
Write the configuration for modprobe&lt;br /&gt;
 ndiswrapper -m&lt;br /&gt;
And use the module&lt;br /&gt;
 modprobe ndiswrapper&lt;br /&gt;
&lt;br /&gt;
== Compiz ==&lt;br /&gt;
&lt;br /&gt;
To enable compiz install the Nvidia drivers and install CompizConfig Settings Manager&lt;br /&gt;
 sudo apt-get install simple-ccsm&lt;br /&gt;
Now navigate to system &amp;gt; preferences &amp;gt; Appereance And go to the Visual effects tab. Choose custum there&lt;br /&gt;
&lt;br /&gt;
On Kubuntu change the default windows manager&lt;br /&gt;
&lt;br /&gt;
 System Settings -&amp;gt; Default Applications -&amp;gt; Windows manager&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center&amp;quot; border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot;&lt;br /&gt;
!style=&amp;quot;background:#ffdead;&amp;quot;|Desktop Effects&lt;br /&gt;
!style=&amp;quot;background:#ffdead;&amp;quot;|Keyboard Shortcuts&lt;br /&gt;
|-&lt;br /&gt;
|Rotate Cube Manually&lt;br /&gt;
|Ctrl + Alt + Left Mouse Button&lt;br /&gt;
|-&lt;br /&gt;
|Expo&lt;br /&gt;
|Super + E (toggle)&lt;br /&gt;
|-&lt;br /&gt;
|Rotate Cube&lt;br /&gt;
|Mousewheel on Desktop&lt;br /&gt;
|-&lt;br /&gt;
|Film Effect&lt;br /&gt;
|Ctrl + Alt + Down Arrow&lt;br /&gt;
|-&lt;br /&gt;
|Scale Windows&lt;br /&gt;
|Alt + Shift + Up Arrow&lt;br /&gt;
|-&lt;br /&gt;
|Ring Switcher&lt;br /&gt;
|Super + Tab - overrides Shift Switcher&lt;br /&gt;
|}&lt;br /&gt;
Super key is the windows key :-)&lt;br /&gt;
&lt;br /&gt;
== Mount Network Share ==&lt;br /&gt;
&lt;br /&gt;
First install smbfs&lt;br /&gt;
 apt-get install smbfs&lt;br /&gt;
Then create a folder inside of the /media directory to mount the share on or choose you&#039;re own directory&lt;br /&gt;
 sudo mkdir /media/Storage&lt;br /&gt;
Create a credentials file in /root so that you can save your password and have it protected by the root account:&lt;br /&gt;
 sudo gedit /root/.cifscredentials&lt;br /&gt;
Add this to the file&lt;br /&gt;
 username=Guest&lt;br /&gt;
 password=&lt;br /&gt;
&lt;br /&gt;
sudo vi /etc/fstab&lt;br /&gt;
Add the following line&lt;br /&gt;
 //192.168.0.10/SHARENAME /media/Storage cifs auto,iocharset=utf8,uid=USER,gid=users,credentials=/root/.cifscredentials,file_mode=0775,dir_mode=0775 0 0&lt;br /&gt;
&lt;br /&gt;
To check if the file works&lt;br /&gt;
 sudo mount -a&lt;br /&gt;
And you should see you&#039;re drives on the desktop&lt;br /&gt;
&lt;br /&gt;
Ik you get  error when you shut down the pc &#039;&#039;CIFS VFS: server not responding&#039;&#039; then you have to unmount first. Do this with the following&lt;br /&gt;
&lt;br /&gt;
 ln -s /etc/init.d/umountnfs.sh /etc/rc0.d/K15umountnfs.sh&lt;br /&gt;
 ln -s /etc/init.d/umountnfs.sh /etc/rc6.d/K15umountnfs.sh&lt;br /&gt;
&lt;br /&gt;
== Citrix Ica client ==&lt;br /&gt;
&lt;br /&gt;
Download the Linux citrix ica client from Citrix&lt;br /&gt;
 http://citrix.com/English/SS/downloads/details.asp?downloadID=3323&amp;amp;productID=-1 &lt;br /&gt;
&lt;br /&gt;
Install the 32bits libraries if youŕe working on a 64bits platform&lt;br /&gt;
&lt;br /&gt;
 apt-get install ia32-libs&lt;br /&gt;
&lt;br /&gt;
Install the Open-motif libraries&lt;br /&gt;
&lt;br /&gt;
 apt-get install libmotif3&lt;br /&gt;
&lt;br /&gt;
citrix 11 requires openmotif 2.3.1 Download the rpm package for openmotif 2.3.1, I used:&lt;br /&gt;
&lt;br /&gt;
 ftp://ftp.ics.com/openmotif/2.3/2.3.1/openmotif-2.3.1-1.RHEL3.0.i386.rpm&lt;br /&gt;
&lt;br /&gt;
To convert a rpm package to a debian package. Use alien to convert the rpm to a deb package&lt;br /&gt;
&lt;br /&gt;
 alien -d openmotif-2.3.1-1.RHEL3.0.i386.rpm&lt;br /&gt;
&lt;br /&gt;
Then install the package in the usual way. Note, before installing the alien&#039;ed package it is best to uninstall the previous version of motif, as this will not update the existing motif package.&lt;br /&gt;
&lt;br /&gt;
 dpkg -i openmotif_2.3.1-2_i386.deb&lt;br /&gt;
&lt;br /&gt;
Unpack the package and execute the installation script&lt;br /&gt;
 ./setupwfc&lt;br /&gt;
Find the plugin directory of firefox. Probably is /usr/lib/firefox/plugins/ otherwise use&lt;br /&gt;
 find / -name plugins | grep -i &amp;quot;netscape\|firefox\|mozilla&amp;quot;&lt;br /&gt;
Create a symlink to the citrix ica library&lt;br /&gt;
 ln –s /usr/lib/ICAClient/npica.so npica.so&lt;br /&gt;
&lt;br /&gt;
If you open a connection to your citrix server. The browser will ask you if you want to open or save the session. Browse to the ica client&lt;br /&gt;
 /usr/lib/ICAClient/wfica&lt;br /&gt;
and tell it to use it for all applications.&lt;br /&gt;
&lt;br /&gt;
When you get a ssl error &amp;quot;you have not chosen to thrust.....&amp;quot; Then copy the certificate in this location.&lt;br /&gt;
 /usr/lib/ICAClient/keystore/cacerts/&lt;br /&gt;
&lt;br /&gt;
For 64Bits OS&lt;br /&gt;
&lt;br /&gt;
Install Needed 32-bit Open Motif libraries to /usr/lib32&lt;br /&gt;
&lt;br /&gt;
Setup a temporary environment&lt;br /&gt;
&lt;br /&gt;
 mkdir -p ~/tmp/Citrix&lt;br /&gt;
 cd ~/tmp/Citrix&lt;br /&gt;
&lt;br /&gt;
Download a recent i386 libmotif3 .deb package to the above folder&lt;br /&gt;
&lt;br /&gt;
 wget http://mirrors.kernel.org/ubuntu/pool/multiverse/o/openmotif/libmotif3_2.2.3-1.4_i386.deb&lt;br /&gt;
&lt;br /&gt;
Use dpkg to extract the package&lt;br /&gt;
&lt;br /&gt;
 dpkg -x libmotif3*i386.deb libmotif&lt;br /&gt;
&lt;br /&gt;
Copy the libraries to /usr/lib32&lt;br /&gt;
&lt;br /&gt;
 sudo cp libmotif/usr/lib/*.so.* /usr/lib32/&lt;br /&gt;
 sudo cp -r libmotif/usr/lib/X11/bindings /usr/lib32/X11/&lt;br /&gt;
&lt;br /&gt;
== Make DVD ==&lt;br /&gt;
&lt;br /&gt;
To make a video DVD you can burn you&#039;re image on the dvd. If you just have the VIDEO_TS files then the easiest way is to convert these into a iso.&lt;br /&gt;
&lt;br /&gt;
 mkisofs -dvd-video -o ~/moviename.iso /path/to/the/VIDEO_TS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/path/to/the/VIDEO_TS path is for example /moviename not /moviename/VIDEO_TS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== FFMPEG ==&lt;br /&gt;
&lt;br /&gt;
Is a video converter tool&lt;br /&gt;
&lt;br /&gt;
 #&amp;gt;/usr/bin/ffmpeg -i &amp;quot;00059.MTS&amp;quot; -vcodec flv -f flv -r 25 -s 356x200 -aspect 16:9 -b 2000k -g 160 -cmp 2 -subcmp 2 -mbd 2 -flags +aic+cbp+mv0+mv4 -trellis 2 -acodec libmp3lame -ac 2 -ar 44100 -ab 256k &amp;quot;stacaravan1.flv&amp;quot;&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Mythtv&amp;diff=2482</id>
		<title>Mythtv</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Mythtv&amp;diff=2482"/>
		<updated>2010-01-06T22:07:32Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: /* lirc */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== lirc ==&lt;br /&gt;
LIRC CVS is hosted at SourceForge. You can get a copy of the current CVS tree using anonymous CVS login. First log in to the cvs server (press &amp;lt;enter&amp;gt; for password):&lt;br /&gt;
 cvs -d:pserver:anonymous@lirc.cvs.sourceforge.net:/cvsroot/lirc login&lt;br /&gt;
Get the sources:&lt;br /&gt;
 cvs -z8 -d:pserver:anonymous@lirc.cvs.sourceforge.net:/cvsroot/lirc co lirc&lt;br /&gt;
After initial checkout, you can change into this directory and execute cvs commands without the -d option. For example:&lt;br /&gt;
 cvs update&lt;br /&gt;
Compile:&lt;br /&gt;
 cd lirc&lt;br /&gt;
  ./autogen.sh&lt;br /&gt;
  ./setup.sh&lt;br /&gt;
  make&lt;br /&gt;
&lt;br /&gt;
/etc/lirc/hardware.conf&lt;br /&gt;
&lt;br /&gt;
 # /etc/lirc/hardware.conf&lt;br /&gt;
 #&lt;br /&gt;
 # Arguments which will be used when launching lircd&lt;br /&gt;
 LIRCD_ARGS=&amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 #Don&#039;t start lircmd even if there seems to be a good config file&lt;br /&gt;
 START_LIRCMD=false&lt;br /&gt;
&lt;br /&gt;
 #Try to load appropriate kernel modules&lt;br /&gt;
 LOAD_MODULES=true&lt;br /&gt;
 &lt;br /&gt;
 # Run &amp;quot;lircd --driver=help&amp;quot; for a list of supported drivers.&lt;br /&gt;
 #DRIVER=&amp;quot;pinsys&amp;quot;&lt;br /&gt;
 # If DEVICE is set to /dev/lirc and devfs is in use /dev/lirc/0 will be&lt;br /&gt;
 # automatically used instead&lt;br /&gt;
 DEVICE=&amp;quot;/dev/lirc0&amp;quot;&lt;br /&gt;
 MODULES=&amp;quot;lirc_mceusb&amp;quot; &lt;br /&gt;
 TRANSMITTER_DEVICE=&amp;quot;/dev/lirc0&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 # Default configuration files for your hardware if any&lt;br /&gt;
 LIRCD_CONF=&amp;quot;&amp;quot;&lt;br /&gt;
 LIRCMD_CONF=&amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
/etc/lirc/lircd.conf&lt;br /&gt;
&lt;br /&gt;
 ################################################################################&lt;br /&gt;
 # lircd.conf file for the new Microsoft Media Center remote using a new&lt;br /&gt;
 # Microsoft Media Center receiver.&lt;br /&gt;
 ################################################################################&lt;br /&gt;
 begin remote&lt;br /&gt;
&lt;br /&gt;
  name  mceusb&lt;br /&gt;
  bits           16&lt;br /&gt;
  flags RC6|CONST_LENGTH&lt;br /&gt;
  eps            30&lt;br /&gt;
  aeps          100&lt;br /&gt;
&lt;br /&gt;
  header       2667   889&lt;br /&gt;
  one           444   444&lt;br /&gt;
  zero          444   444&lt;br /&gt;
  pre_data_bits 21&lt;br /&gt;
  pre_data      0x37FF0&lt;br /&gt;
  gap          105000&lt;br /&gt;
  toggle_bit     22&lt;br /&gt;
  rc6_mask     0x100000000&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
      begin codes&lt;br /&gt;
&lt;br /&gt;
 # starts at A1&lt;br /&gt;
        BLUE         0x00007BA1&lt;br /&gt;
        YELLOW       0x00007BA2&lt;br /&gt;
        GREEN        0x00007BA3&lt;br /&gt;
        RED          0x00007BA4&lt;br /&gt;
        TELETEXT     0x00007BA5&lt;br /&gt;
        RADIO        0x00007BAF&lt;br /&gt;
        PRINT        0x00007BB1&lt;br /&gt;
        VIDEO        0x00007BB5 # VIDEOS button&lt;br /&gt;
        IMAGE        0x00007BB6 # PICTURES button&lt;br /&gt;
        PVR          0x00007BB7 # RECORDED TV button&lt;br /&gt;
        AUDIO        0x00007BB8 # MUSIC button&lt;br /&gt;
        TV           0x00007BB9&lt;br /&gt;
 # no BA - D8&lt;br /&gt;
        Guide        0x00007BD9&lt;br /&gt;
        TV           0x00007BDA # LIVE TV button&lt;br /&gt;
        Dvd          0x00007BDB&lt;br /&gt;
        Back         0x00007BDC&lt;br /&gt;
        OK           0x00007BDD&lt;br /&gt;
        Right        0x00007BDE&lt;br /&gt;
        Left         0x00007BDF&lt;br /&gt;
        Down         0x00007BE0&lt;br /&gt;
        Up           0x00007BE1&lt;br /&gt;
        STAR         0x00007BE2&lt;br /&gt;
        Hash          0x00007BE3&lt;br /&gt;
        PREVIOUS     0x00007BE4 # REPLAY button&lt;br /&gt;
        Next         0x00007BE5 # SKIP button&lt;br /&gt;
        Stop         0x00007BE6&lt;br /&gt;
        Pause        0x00007BE7&lt;br /&gt;
        Record       0x00007BE8&lt;br /&gt;
        Play         0x00007BE9&lt;br /&gt;
        Rewind       0x00007BEA&lt;br /&gt;
        Forward      0x00007BEB&lt;br /&gt;
        CHANNELDOWN  0x00007BEC&lt;br /&gt;
        CHANNELUP    0x00007BED&lt;br /&gt;
        Volumedown   0x00007BEE&lt;br /&gt;
        Volumeup     0x00007BEF&lt;br /&gt;
        INFO         0x00007BF0 # MORE (i) button&lt;br /&gt;
        Mute         0x00007BF1&lt;br /&gt;
        MENU         0x00007BF2 # START (Windows) button&lt;br /&gt;
        POWER        0x00007BF3&lt;br /&gt;
        ENTER        0x00007BF4&lt;br /&gt;
        CLEAR        0x00007BF5&lt;br /&gt;
        9            0x00007BF6&lt;br /&gt;
        8            0x00007BF7&lt;br /&gt;
        7            0x00007BF8&lt;br /&gt;
        6            0x00007BF9&lt;br /&gt;
        5            0x00007BFA&lt;br /&gt;
        4            0x00007BFB&lt;br /&gt;
        3            0x00007BFC&lt;br /&gt;
        2            0x00007BFD&lt;br /&gt;
        1            0x00007BFE&lt;br /&gt;
        0            0x00007BFF&lt;br /&gt;
      end codes&lt;br /&gt;
&lt;br /&gt;
 end remote&lt;br /&gt;
&lt;br /&gt;
~/.lircrc&lt;br /&gt;
begin&lt;br /&gt;
    prog   = mythtv&lt;br /&gt;
    button = Two&lt;br /&gt;
    config = 2&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
    prog   = mythtv&lt;br /&gt;
    button = Three&lt;br /&gt;
    config = 3&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
    prog   = mythtv&lt;br /&gt;
    button = Four&lt;br /&gt;
    config = 4&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
    prog   = mythtv&lt;br /&gt;
    button = Five&lt;br /&gt;
    config = 5&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
    prog   = mythtv&lt;br /&gt;
    button = Six&lt;br /&gt;
    config = 6&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
    prog   = mythtv&lt;br /&gt;
    button = Seven&lt;br /&gt;
    config = 7&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
    prog   = mythtv&lt;br /&gt;
    button = Eight&lt;br /&gt;
    config = 8&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
    prog   = mythtv&lt;br /&gt;
    button = Nine&lt;br /&gt;
    config = 9&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
== Metadata ==&lt;br /&gt;
&lt;br /&gt;
Make sure you have set the filepaths right. Go to Mythtv setup - 6. Storage Directories&lt;br /&gt;
Choose (create Fanart group) and choose the right directory&lt;br /&gt;
&lt;br /&gt;
Now go to the mythfrontend and choose to watch a video. Select the video and press W. Based on the filename [http://www.mythtv.org/wiki/MythVideo_File_Parsing] the right data will be searched.&lt;br /&gt;
&lt;br /&gt;
To configure the metadata yourself you can select the video and press I. Now configure the metadata.&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Mythtv&amp;diff=2480</id>
		<title>Mythtv</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Mythtv&amp;diff=2480"/>
		<updated>2010-01-06T20:12:07Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: /* lirc */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== lirc ==&lt;br /&gt;
LIRC CVS is hosted at SourceForge. You can get a copy of the current CVS tree using anonymous CVS login. First log in to the cvs server (press &amp;lt;enter&amp;gt; for password):&lt;br /&gt;
 cvs -d:pserver:anonymous@lirc.cvs.sourceforge.net:/cvsroot/lirc login&lt;br /&gt;
Get the sources:&lt;br /&gt;
 cvs -z8 -d:pserver:anonymous@lirc.cvs.sourceforge.net:/cvsroot/lirc co lirc&lt;br /&gt;
After initial checkout, you can change into this directory and execute cvs commands without the -d option. For example:&lt;br /&gt;
 cvs update&lt;br /&gt;
Compile:&lt;br /&gt;
 cd lirc&lt;br /&gt;
  ./autogen.sh&lt;br /&gt;
  ./setup.sh&lt;br /&gt;
  make&lt;br /&gt;
&lt;br /&gt;
/etc/lirc/hardware.conf&lt;br /&gt;
&lt;br /&gt;
 # /etc/lirc/hardware.conf&lt;br /&gt;
 #&lt;br /&gt;
 # Arguments which will be used when launching lircd&lt;br /&gt;
 LIRCD_ARGS=&amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 #Don&#039;t start lircmd even if there seems to be a good config file&lt;br /&gt;
 START_LIRCMD=false&lt;br /&gt;
&lt;br /&gt;
 #Try to load appropriate kernel modules&lt;br /&gt;
 LOAD_MODULES=true&lt;br /&gt;
 &lt;br /&gt;
 # Run &amp;quot;lircd --driver=help&amp;quot; for a list of supported drivers.&lt;br /&gt;
 #DRIVER=&amp;quot;pinsys&amp;quot;&lt;br /&gt;
 # If DEVICE is set to /dev/lirc and devfs is in use /dev/lirc/0 will be&lt;br /&gt;
 # automatically used instead&lt;br /&gt;
 DEVICE=&amp;quot;/dev/lirc0&amp;quot;&lt;br /&gt;
 MODULES=&amp;quot;lirc_mceusb&amp;quot; &lt;br /&gt;
&lt;br /&gt;
 # Default configuration files for your hardware if any&lt;br /&gt;
 LIRCD_CONF=&amp;quot;&amp;quot;&lt;br /&gt;
 LIRCMD_CONF=&amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
/etc/lirc/lircd.conf&lt;br /&gt;
&lt;br /&gt;
 ################################################################################&lt;br /&gt;
 # lircd.conf file for the new Microsoft Media Center remote using a new&lt;br /&gt;
 # Microsoft Media Center receiver.&lt;br /&gt;
 ################################################################################&lt;br /&gt;
 begin remote&lt;br /&gt;
&lt;br /&gt;
  name  mceusb&lt;br /&gt;
  bits           16&lt;br /&gt;
  flags RC6|CONST_LENGTH&lt;br /&gt;
  eps            30&lt;br /&gt;
  aeps          100&lt;br /&gt;
&lt;br /&gt;
  header       2667   889&lt;br /&gt;
  one           444   444&lt;br /&gt;
  zero          444   444&lt;br /&gt;
  pre_data_bits 21&lt;br /&gt;
  pre_data      0x37FF0&lt;br /&gt;
  gap          105000&lt;br /&gt;
  toggle_bit     22&lt;br /&gt;
  rc6_mask     0x100000000&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
      begin codes&lt;br /&gt;
&lt;br /&gt;
 # starts at A1&lt;br /&gt;
        BLUE         0x00007BA1&lt;br /&gt;
        YELLOW       0x00007BA2&lt;br /&gt;
        GREEN        0x00007BA3&lt;br /&gt;
        RED          0x00007BA4&lt;br /&gt;
        TELETEXT     0x00007BA5&lt;br /&gt;
        RADIO        0x00007BAF&lt;br /&gt;
        PRINT        0x00007BB1&lt;br /&gt;
        VIDEO        0x00007BB5 # VIDEOS button&lt;br /&gt;
        IMAGE        0x00007BB6 # PICTURES button&lt;br /&gt;
        PVR          0x00007BB7 # RECORDED TV button&lt;br /&gt;
        AUDIO        0x00007BB8 # MUSIC button&lt;br /&gt;
        TV           0x00007BB9&lt;br /&gt;
&lt;br /&gt;
== Metadata ==&lt;br /&gt;
&lt;br /&gt;
Make sure you have set the filepaths right. Go to Mythtv setup - 6. Storage Directories&lt;br /&gt;
Choose (create Fanart group) and choose the right directory&lt;br /&gt;
&lt;br /&gt;
Now go to the mythfrontend and choose to watch a video. Select the video and press W. Based on the filename [http://www.mythtv.org/wiki/MythVideo_File_Parsing] the right data will be searched.&lt;br /&gt;
&lt;br /&gt;
To configure the metadata yourself you can select the video and press I. Now configure the metadata.&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Horde3&amp;diff=2450</id>
		<title>Horde3</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Horde3&amp;diff=2450"/>
		<updated>2009-08-29T20:23:02Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: /* Database */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; apt-get install horde3&lt;br /&gt;
&lt;br /&gt;
Now make the site available&lt;br /&gt;
In etc/apache2-sites-available there is already a file horde3&lt;br /&gt;
 Alias /horde3 /usr/share/horde3&lt;br /&gt;
        &amp;lt;Directory /usr/share/horde3&amp;gt;&lt;br /&gt;
            Options FollowSymLinks&lt;br /&gt;
            AllowOverride Limit&lt;br /&gt;
            deny from all&lt;br /&gt;
            allow from all 192.168 127.0.0&lt;br /&gt;
        &amp;lt;/Directory&amp;gt;&lt;br /&gt;
 &amp;lt;Location /horde3&amp;gt;&lt;br /&gt;
        SSLCipherSuite HIGH:MEDIUM&lt;br /&gt;
 &amp;lt;/Location&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And make the site enabled&lt;br /&gt;
 ln -s /etc/apache2/sites-available/horde3 00X-horde3&lt;br /&gt;
&lt;br /&gt;
== Database ==&lt;br /&gt;
&lt;br /&gt;
To make the database there are several scripts in /usr/share/doc/horde3/examples/scripts/. We use MYsql:&lt;br /&gt;
 gunzip /usr/share/doc/horde3/examples/scripts/sql/create.mysql.sql.gz&lt;br /&gt;
&lt;br /&gt;
and change the password in the script for the user horde&lt;br /&gt;
Run the script&lt;br /&gt;
 mysql -u root -p&lt;br /&gt;
 source  /usr/share/doc/horde3/examples/scripts/sql/create.mysql.sql&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Configure ==&lt;br /&gt;
&lt;br /&gt;
To use the web configuration wizard we need to change the following&lt;br /&gt;
 chgrp -R www-data /etc/horde/horde3/&lt;br /&gt;
 chmod -R 750 /etc/horde/horde3&lt;br /&gt;
 chmod 777 /etc/horde/horde3/conf.php&lt;br /&gt;
 cp /etc/horde/horde3/conf.php /etc/horde/horde3/conf.php.bak&lt;br /&gt;
 chmod 777 /etc/horde/horde3/conf.php.bak&lt;br /&gt;
 &lt;br /&gt;
 Prepare log file:&lt;br /&gt;
 touch /var/log/horde/horde3.log&lt;br /&gt;
 chown root.www-data /var/log/horde/horde3.log&lt;br /&gt;
 chmod 770 /var/log/horde/horde3.log&lt;br /&gt;
&lt;br /&gt;
Now we can browse to the site&lt;br /&gt;
 http://192.168.70.9/horde3/&lt;br /&gt;
&lt;br /&gt;
This will give us the following&lt;br /&gt;
 Horde3 configuration disabled by default because the administration/install wizard gives the whole world too much access to the system. Read /usr/share /doc/horde3/README.Debian.gz on how to allow access.&lt;br /&gt;
&lt;br /&gt;
Change /var/log/horde/horde3/conf.php and comment line 2 and 3 leave the first line as is.&lt;br /&gt;
&lt;br /&gt;
Klik op setup en klik &#039;horde setup&#039;&lt;br /&gt;
- edit database			-&amp;gt; username en WW - connect to database = tcp/ip - localhost - naam database&lt;br /&gt;
- edit preference system	-&amp;gt; SQL database&lt;br /&gt;
- edit authentication           -&amp;gt; Administrator,user@sample.com - SQL authentication&lt;br /&gt;
&lt;br /&gt;
klik generate Horde Configurtion&lt;br /&gt;
 Could not save the backup configuration file /usr/share/horde3/config/conf.bak.php &lt;br /&gt;
Not solved yet&lt;br /&gt;
&lt;br /&gt;
- edit users			-&amp;gt; root&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Installing_SaMBa_with_OpenLDAP_support&amp;diff=2440</id>
		<title>Installing SaMBa with OpenLDAP support</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Installing_SaMBa_with_OpenLDAP_support&amp;diff=2440"/>
		<updated>2009-08-23T16:55:15Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: /* OpenLDAP adaptation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== The Samba Section==&lt;br /&gt;
&lt;br /&gt;
== Preparations ==&lt;br /&gt;
First off, get yourself [http://oreilly.com/catalog/9780596007690/index.html this wonderful book] - and READ IT. Next, make sure our user backend of choice, OpenLDAP, is properly installed and can be used to authenticate users. If you haven&#039;t yet installed OpenLDAP, go to [[OpenLDAP | the relevant section]] of this wiki, and get going. Make sure your OpenLDAP is running well.&lt;br /&gt;
&lt;br /&gt;
=== Software installation ===&lt;br /&gt;
This is easy: using &#039;&#039;aptitude&#039;&#039;, install the following packages:&lt;br /&gt;
* &#039;&#039;samba&#039;&#039;, the actual server.&lt;br /&gt;
* &#039;&#039;samba-tools&#039;&#039;, a set of utilities.&lt;br /&gt;
* &#039;&#039;samba-doc&#039;&#039; - note that we NEED &#039;&#039;samba-doc&#039;&#039;, as this package contains a configuration file that we need (the LDAP schema file).&lt;br /&gt;
* &#039;&#039;smbclient&#039;&#039;, that can make your Linux server work with a Windows or SaMBa server; we need this to test our own server.&lt;br /&gt;
&lt;br /&gt;
As usual, Debian is asking us for the configuration details. For SaMBa 3.2, there are only two simple questions:&lt;br /&gt;
* What do you want to be your Windows workgroup name? (we provide the name &amp;quot;AMBER&amp;quot;)&lt;br /&gt;
* Do you want to modify &#039;&#039;smb.conf&#039;&#039; to use WINS setting from DHCP? (we provide &amp;quot;no&amp;quot;)&lt;br /&gt;
Now we have our SaMBa configuration file as &#039;&#039;/etc/samba/smb.conf&#039;&#039;, but we&#039;re going to follow two time-honoured tradions: we&#039;re going to save the original configuration file for future reference, and we&#039;re going to rename our configuration file to &#039;&#039;smb.conf.master&#039;&#039;, while providing SaMBa with a comment-stripped version of it:&lt;br /&gt;
 cd /etc/samba&lt;br /&gt;
 cp smb.conf smb.conf.sample&lt;br /&gt;
 mv smb.conf smb.conf.master&lt;br /&gt;
 testparm smb.conf.master&lt;br /&gt;
 testparm -s smb.conf.master &amp;gt; smb.conf&lt;br /&gt;
Now remember: when we want to change our SaMBa configuration, we edit &#039;&#039;smb.conf.master&#039;&#039;. Once we&#039;re ready with that, we ALWAYS need to run those last two lines; the first of those will check our updated configuration, to see if we haven&#039;t made some silly typo that renders the configuration wholly or partially crippled, and the second one creates a comment-stripped version of it that SaMBa will actually be using.&lt;br /&gt;
&lt;br /&gt;
=== WINS configuration ===&lt;br /&gt;
To enable WINS, we add the following lines to &#039;&#039;smb.conf.master&#039;&#039;:&lt;br /&gt;
 ## Browsing/Identification ###&lt;br /&gt;
    workgroup = AMBER&lt;br /&gt;
    netbios name = DWORKIN&lt;br /&gt;
&lt;br /&gt;
 # Windows Internet Name Serving Support Section:&lt;br /&gt;
 # WINS Support - Tells the NMBD component of Samba to enable its WINS Server&lt;br /&gt;
    wins support = yes&lt;br /&gt;
    os level = 33&lt;br /&gt;
    domain master = yes&lt;br /&gt;
    local master = yes&lt;br /&gt;
    preferred master = yes&lt;br /&gt;
    name resolve order = wins lmhosts hosts bcast&lt;br /&gt;
    dns proxy = yes&lt;br /&gt;
Now this does a whole lot of things with the SaMBa &#039;&#039;nmbd&#039;&#039; daemon - at least when you remember to save the master config file, test it with &#039;&#039;testparm&#039;&#039; and write the actual &#039;&#039;smb.conf&#039;&#039; as desribed previously, AND then restart your &#039;&#039;nmbd&#039;&#039; daemon:&lt;br /&gt;
 /etc/init.d/samba restart&lt;br /&gt;
OK so what do the configuration lines mean?&lt;br /&gt;
* &#039;&#039;workgroup = AMBER&#039;&#039; - this line makes the SaMBa server a member of workgroup AMBER.&lt;br /&gt;
* &#039;&#039;netbios name = DWORKIN&#039;&#039; - here we define the server NetBIOS name to be &amp;quot;dworkin&amp;quot;.&lt;br /&gt;
* &#039;&#039;wins support = yes&#039;&#039; - this line actually turns on the WINS support, so it instructs the &#039;&#039;nmbd&#039;&#039; daemon to start acting as a WINS server.&lt;br /&gt;
* &#039;&#039;os level = 33&#039;&#039; - this gives our WINS server a &amp;quot;rank&amp;quot; of 33, meaning that it will be sure to become the WINS master browser, even if there are Windows servers on the network tat act as domain controllers.&lt;br /&gt;
* &#039;&#039;domain master = yes&#039;&#039; - this will tell our server that it will not be just any master browser, but a &#039;&#039;&#039;domain&#039;&#039;&#039; master browser, so that our server will be the master browser on each and every subnet that it is connected to.&lt;br /&gt;
* &#039;&#039;local master = yes&#039;&#039; - this setting is vital to being a domain master browser, as it ensures that our WINS server is also the local master browser.&lt;br /&gt;
* &#039;&#039;preferred master = yes&#039;&#039; - adding this line makes the &#039;&#039;nmbd&#039;&#039; daemon initiate a browser election as soon as it starts up, so that it essentially gets the master browser role as fast as possible.&lt;br /&gt;
* &#039;&#039;name resolve order = wins lmhosts hosts bcast&#039;&#039; - this ensures that for a WINS request, the &#039;&#039;nmbd&#039;&#039; daemon not only checks its WINS database, but also the local &#039;&#039;lmhosts&#039;&#039; file (if it exists), the Linux &#039;&#039;/etc/hosts&#039;&#039; file, and finally, to revert to a broadcast to see if it can locate the requested name by shouting out for it.&lt;br /&gt;
* &#039;&#039;dns proxy = yes&#039;&#039; - this makes &#039;&#039;nmbd&#039;&#039; to check a requested name with the DNS server, if it cannot be found in the WINS database itself.&lt;br /&gt;
After restarting, we can see if our Linux server is now a WINS master browser by inspecting the SaMBa log file, by default &#039;&#039;/var/log/samba/nmbd.log&#039;&#039;. It should show something like&lt;br /&gt;
 [2008/11/21 16:18:03,  0] nmbd/nmbd.c:main(849)&lt;br /&gt;
   nmbd version 3.2.4 started.&lt;br /&gt;
   Copyright Andrew Tridgell and the Samba Team 1992-2008&lt;br /&gt;
 [2008/11/21 16:18:03,  0] nmbd/asyncdns.c:start_async_dns(155)&lt;br /&gt;
   started asyncdns process 25707&lt;br /&gt;
 [2008/11/21 16:18:03,  0] nmbd/nmbd_become_dmb.c:become_domain_master_browser_wins(336)&lt;br /&gt;
   become_domain_master_browser_wins:&lt;br /&gt;
   Attempting to become domain master browser on workgroup AMBER, subnet UNICAST_SUBNET.&lt;br /&gt;
 [2008/11/21 16:18:03,  0] nmbd/nmbd_become_dmb.c:become_domain_master_browser_wins(350)&lt;br /&gt;
   become_domain_master_browser_wins: querying WINS server from IP 192.168.67.10 for domain master browser name AMBER&amp;lt;1b&amp;gt; on workgroup AMBER&lt;br /&gt;
 [2008/11/21 16:18:03,  0] nmbd/nmbd_become_dmb.c:become_domain_master_stage2(110)&lt;br /&gt;
   *****  &lt;br /&gt;
 &lt;br /&gt;
   Samba server DWORKIN is now a domain master browser for workgroup AMBER on subnet UNICAST_SUBNET&lt;br /&gt;
 &lt;br /&gt;
   *****&lt;br /&gt;
 [2008/11/21 16:18:03,  0] nmbd/nmbd_become_dmb.c:become_domain_master_browser_bcast(291)&lt;br /&gt;
   become_domain_master_browser_bcast:&lt;br /&gt;
   Attempting to become domain master browser on workgroup AMBER on subnet 192.168.67.10&lt;br /&gt;
 [2008/11/21 16:18:03,  0] nmbd/nmbd_become_dmb.c:become_domain_master_browser_bcast(304)&lt;br /&gt;
   become_domain_master_browser_bcast: querying subnet 192.168.67.9 for domain master browser on workgroup AMBER&lt;br /&gt;
 [2008/11/21 16:18:11,  0] nmbd/nmbd_become_dmb.c:become_domain_master_stage2(110)&lt;br /&gt;
   *****&lt;br /&gt;
 &lt;br /&gt;
   Samba server DWORKIN is now a domain master browser for workgroup AMBER on subnet 192.168.67.10&lt;br /&gt;
 &lt;br /&gt;
   *****&lt;br /&gt;
 [2008/11/21 16:18:26,  0] nmbd/nmbd_become_lmb.c:become_local_master_stage2(395)&lt;br /&gt;
   *****&lt;br /&gt;
 &lt;br /&gt;
   Samba name server DWORKIN is now a local master browser for workgroup AMBER on subnet 192.168.67.10&lt;br /&gt;
 &lt;br /&gt;
   *****&lt;br /&gt;
&lt;br /&gt;
Furthermore, we can test on the server itself if a WINS lookup succeeds:&lt;br /&gt;
 dworkin:# nmblookup -M amber&lt;br /&gt;
 querying amber on 127.255.255.255&lt;br /&gt;
 192.168.67.10 amber&amp;lt;1d&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Finally, we tell our DHCP server to provide clients with the IP address of our WINS server. We do this by adding the following line to &#039;&#039;/etc/dhcp3-server/dhcpd.conf&#039;&#039;:&lt;br /&gt;
 option netbios-name-servers 192.168.67.10;&lt;br /&gt;
This line can either be added to the global section, or within the &#039;&#039;subnet&#039;&#039; declaration for each individual subnet that you want to inform of this WINS server.&lt;br /&gt;
&lt;br /&gt;
=== OpenLDAP adaptation ===&lt;br /&gt;
In order for our OpenLDAP server to recognise the SaMBa-specific attributes that we&#039;re going to use, we need to add the &amp;quot;samba&amp;quot; schema to the OpenLDAP server. After installation of &#039;&#039;samba-doc&#039;&#039;, we can find this schema in &#039;&#039;/usr/share/doc/samba-doc/examples/LDAP&#039;&#039;, where it sits gzipped between some other schema files; as the README explains, what we need is &#039;&#039;samba.schema.gz&#039;&#039;, so we unzip it and copy it to our OpenLDAP schema directory&lt;br /&gt;
 cd /usr/share/doc/samba-doc/examples/LDAP&lt;br /&gt;
 gunzip samba.schema.gz&lt;br /&gt;
 cp samba.schema /etc/ldap/schema&lt;br /&gt;
Next up, we include this schema into our LDAP configuration, by adding the following line to &#039;&#039;/etc/ldap/slapd.conf&#039;&#039; under # Schema and objectClass definitions:&lt;br /&gt;
 include         /etc/ldap/schema/samba.schema&lt;br /&gt;
Not only do we need schema updates, we could also do with some more indices. Thus, we change the relevant section of &#039;&#039;/etc/ldap/slapd.conf&#039;&#039; to read:&lt;br /&gt;
 # Indexing options for database #1&lt;br /&gt;
 index     objectClass,uidNumber,gidNumber                eq&lt;br /&gt;
 index     cn,sn,uid,displayName                          pres,sub,eq&lt;br /&gt;
 index     memberUid,mail,givenname                       eq,subinitial&lt;br /&gt;
 index     sambaSID,sambaPrimaryGroupSID,sambaDomainName  eq&lt;br /&gt;
Ofcourse, it&#039;s not just enough to add these parameters, we also need to generate the indices, and restart our LDAP server:&lt;br /&gt;
 sudo invoke-rc.d slapd stop&lt;br /&gt;
 sudo -u openldap slapindex&lt;br /&gt;
 sudo invoke-rc.d slapd start&lt;br /&gt;
Check to see if the Samba objects are now usable in your LDAP server, e.g. by opening your LDAP Account Manager, and go to tools &amp;gt; schema browser; you should have objects like &amp;quot;sambaConfig&amp;quot; and &amp;quot;sambaDomain&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Feed OpenLDAP with Samba information===&lt;br /&gt;
Now we can add the Samba3 account information to our LDAP server. There are two ways of doing that: create an LDAP ldif file with the necessary information, or use the graphic LDAP manager to add it. For small amounts of users, the last way is quickest. What you need is to take two steps:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Add the SaMBa domain to the LDAP tree&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
For this step, as root you perform the following command&lt;br /&gt;
 net getlocalsid&lt;br /&gt;
This will a string like &amp;quot;SID for domain DWORKIN is: S-1-5-21-2406862431-3150385097-213705319&amp;quot;. With this SID, we can create the LDAP object that represents the SaMBa domain. To that end we log into our LDAP account manager, go to &amp;quot;Samba domains&amp;quot;, and create our domain. There are only three pieces of information that are mandatory:&lt;br /&gt;
* the domain name, in our example &amp;quot;amber&amp;quot;&lt;br /&gt;
* the forementioned SID, in our example &amp;quot;S-1-5-21-2406862431-3150385097-213705319&amp;quot;.&lt;br /&gt;
* the RID base; this has a default of 1000, which you should not change unless you know exactly what you&#039;re doing.&lt;br /&gt;
However, there are other options that you might find it worth setting, like the minimal password length, password history length, if users should be disconnected &amp;quot;outside logon hours&amp;quot; etcetera. We would advise you to not set too many options until you&#039;ve finished testing all basic functionality of your SaMBa server.&lt;br /&gt;
&lt;br /&gt;
In case you&#039;re curious, the LDAP ldif file for such an account could look like this:&lt;br /&gt;
 dn: sambaDomainName=amber,ou=domains,dc=saruman,dc=biz&lt;br /&gt;
 objectClass: sambaDomain&lt;br /&gt;
 sambaDomainName: amber&lt;br /&gt;
 sambaSID: S-1-5-21-2476862421-3150885297-210706319&lt;br /&gt;
 sambaAlgorithmicRidBase: 1000&lt;br /&gt;
 sambaMinPwdLength: 7&lt;br /&gt;
 sambaPwdHistoryLength: 5&lt;br /&gt;
 sambaLogonToChgPwd: 0&lt;br /&gt;
 sambaForceLogoff: -1&lt;br /&gt;
 sambaRefuseMachinePwdChange: 1&lt;br /&gt;
 &lt;br /&gt;
 dn: sambaDomainName=DWORKIN,dc=saruman,dc=biz&lt;br /&gt;
 objectClass: sambaDomain&lt;br /&gt;
 sambaDomainName: DWORKIN&lt;br /&gt;
 sambaSID: S-1-5-21-2476862421-3150885297-210706319&lt;br /&gt;
 sambaAlgorithmicRidBase: 1000&lt;br /&gt;
 sambaNextUserRid: 1000&lt;br /&gt;
 sambaMinPwdLength: 5&lt;br /&gt;
 sambaPwdHistoryLength: 0&lt;br /&gt;
 sambaLogonToChgPwd: 0&lt;br /&gt;
 sambaMaxPwdAge: -1&lt;br /&gt;
 sambaMinPwdAge: 0&lt;br /&gt;
 sambaLockoutDuration: 30&lt;br /&gt;
 sambaLockoutObservationWindow: 30&lt;br /&gt;
 sambaLockoutThreshold: 0&lt;br /&gt;
 sambaForceLogoff: -1&lt;br /&gt;
 sambaRefuseMachinePwdChange: 0&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Add the SaMBa account information to LDAP user accounts&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Again we use our LDAP account manager, and we now go to a user that we want to provide access to SaMBa. When you choose to edit the user, there should be a tab &amp;quot;Samba 3&amp;quot;. In this tab, you can click the button &amp;quot;Add Samba 3 account&amp;quot;; until you&#039;ve done that, this user has no access at all to the Samba server.&amp;lt;br&amp;gt;&lt;br /&gt;
When adding (or changing) a users Samba account information, there is actually only one mandatory field:&lt;br /&gt;
* &amp;quot;Domain&amp;quot;: from this pulldown list you can choose the SaMBa/Windows domain that the user will belong to. When you have only your one SaMBa domain entered in your LDAP, this field will show the name of that domain.&lt;br /&gt;
Furthermore, there are a few more fields that you might want to fill. They are:&lt;br /&gt;
* &amp;quot;Display name&amp;quot;: the name that Windows shows for a user&lt;br /&gt;
* &amp;quot;Samba password&amp;quot;: this may be a different password from a Unix account that the user may have&lt;br /&gt;
* Windows group: this is the primary group that the user belongs to, from a SaMBa perspective instead of a Unix perspective.&lt;br /&gt;
Having added the necessary information, the user should be able from a Windows machine to browse the SaMBa server, and see all non-hidden shares that are available to him. Furthermore, from a Linux prompt, you could use &#039;&#039;smbclient&#039;&#039; to verify that SaMBa honours the users name and password:&lt;br /&gt;
 smbclient //192.168.67.10/Data -U jan&lt;br /&gt;
If the Data share has been made (for that: see further down), and if user &amp;quot;jan&amp;quot; has a Samba account in LDAP, and if you type the correct password, then you&#039;re greeted with an SMB client prompt:&lt;br /&gt;
 smb: \&amp;gt;&lt;br /&gt;
Here you can type commands like &amp;quot;dir&amp;quot;, &amp;quot;del&amp;quot; and &amp;quot;mkdir&amp;quot;; type &amp;quot;help&amp;quot; to see all available commands.&lt;br /&gt;
&lt;br /&gt;
== Samba configuration for LDAP authentication==&lt;br /&gt;
To get SaMBA to use OpenLDAP as a backend is actually quite straightforward.  The main work is done in &#039;&#039;smb.conf.master&#039;&#039;, where we add the following section:&lt;br /&gt;
 passdb backend = ldapsam:ldap://127.0.0.1&lt;br /&gt;
 ldap suffix = dc=saruman,dc=biz&lt;br /&gt;
 ldap machine suffix = ou=hosts&lt;br /&gt;
 ldap user suffix = ou=people&lt;br /&gt;
 ldap group suffix = ou=groups&lt;br /&gt;
 ldap admin dn = cn=admin,dc=saruman,dc=biz&lt;br /&gt;
 ldap delete dn = no&lt;br /&gt;
 # allow user privileges&lt;br /&gt;
 enable privileges = yes&lt;br /&gt;
One note: if you use &#039;&#039;testparm -s&#039;&#039; to test and convert &#039;&#039;smb.conf.master&#039;&#039;, then it&#039;s possible that your &#039;&#039;ldap suffix&#039;&#039; statement gets lower than one or more than the other &#039;&#039;ldap&#039;&#039; statements; you should rectify that before starting SaMBa, because otherwise SaMBa gets mighty confused, and cannot find the right LDAP OU&#039;s.&lt;br /&gt;
 &lt;br /&gt;
Now the above declares the LDAP account &#039;&#039;admin,saruman,biz&#039;&#039; to be the LDAP admin account - but SaMBa hasn&#039;t got the admin password yet, so it can&#039;t do much. To this end, we let SaMBa store the password for this admin account in its own little secret file &#039;&#039;/etc/samba/secrets.tdb&#039;&#039;. We do this by running&lt;br /&gt;
 smbpasswd -W&lt;br /&gt;
 Setting stored password for &amp;quot;cn=admin,dc=saruman,dc=biz&amp;quot; in secrets.tdb&lt;br /&gt;
 New SMB password:&lt;br /&gt;
 Retype new SMB password:&lt;br /&gt;
If we used a lowercase &#039;&#039;-w&#039;&#039;, then we could have specified the password on the command line (&#039;&#039;smbpasswd -w SuperSecret&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
= Samba share configuration =&lt;br /&gt;
With the above configuration, we should now be able to create a share, and make it available to our LDAP accounts. To this end, we create a directory that we&#039;re going to share, and give it a workable set of permissions. Suppose we have an LDAP user &amp;quot;jan&amp;quot; and an LDAP group &amp;quot;networkusers&amp;quot;. We could then, as root, do this:&lt;br /&gt;
 cd /data/samba&lt;br /&gt;
 mkdir Data&lt;br /&gt;
 chown jan:networkusers Data&lt;br /&gt;
 chmod g+rwxs,o-rwx Data&lt;br /&gt;
This ensures that user &amp;quot;jan&amp;quot;, as well as every user that&#039;s a member of &amp;quot;networkusers&amp;quot;, is allowed to read and write in this share. However, thanks to the &amp;quot;sticky bit&amp;quot; set for the group with the &#039;&#039;chmod&#039;&#039; command, files that are written to this directory are automatically owned by the group &amp;quot;networkusers&amp;quot;, who have read &amp;amp; write rights.&lt;br /&gt;
&lt;br /&gt;
Next step would be to share this directory, by adding the following section to &#039;&#039;smb.conf.master&#039;&#039;:&lt;br /&gt;
 [Data]&lt;br /&gt;
    comment = Data directory for us all&lt;br /&gt;
    browseable = yes&lt;br /&gt;
    path = /data/samba/Data&lt;br /&gt;
    guest ok = no&lt;br /&gt;
    read only = no&lt;br /&gt;
    create mask = 0770&lt;br /&gt;
    create directory mask = 0770&lt;br /&gt;
This makes the directory usable via the share &amp;quot;Data&amp;quot;. Notice that we do not allow unauthenticated users (&amp;quot;guest ok = no&amp;quot;), that we allow writing in this share (&amp;quot;read only = no&amp;quot;, although we could also have used &amp;quot;writeable = yes&amp;quot;, which is the same), and that we mask every create operation (for both files and directories) so that they can set any right under &amp;quot;user&amp;quot; and &amp;quot;group&amp;quot;, but cannot set any rights under &amp;quot;other&amp;quot;. This prevents anyone other than the &amp;quot;networkusers&amp;quot; to read (let alone write) the files in this share.&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Asterisk_basic_configuration&amp;diff=2421</id>
		<title>Asterisk basic configuration</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Asterisk_basic_configuration&amp;diff=2421"/>
		<updated>2009-07-13T17:07:40Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: /* DAHDI */ Problem solving&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Asterisk basic configuration principles =&lt;br /&gt;
In this section we&#039;ll have a look at the basic configuration of an Asterisk PBX. Contrary to the TFOT-book, we&#039;ll be looking at it from the theory side, and from there go to an example configuration. For this example configuration, we&#039;ll start from a server with on the &amp;quot;outside&amp;quot; a POTS line and a SIP account with an Internet provider, and on the &amp;quot;inside&amp;quot; two analogue telephones and a SIP softphone. Our goal is to let the PBX behave as if we don&#039;t even have a PBX, but a standard home situation: for an incoming call, all phones ring; and every internal phone can make calls to the outside.&lt;br /&gt;
&lt;br /&gt;
= Asterisk channel configuration basics =&lt;br /&gt;
The first thing to realise is that Asterisk sees each connected telephony device as a &amp;quot;channel&amp;quot;. But what is a Channel? To Asterisk, a channel is a connection which brings in a call to the Asterisk PBX. A channel could be a connection to an ordinary telephone handset or an ordinary telephone line, or to a logical call (like an Internet phone call). Asterisk makes no distinction between &amp;quot;FXO&amp;quot; and &amp;quot;FXS&amp;quot; style channels (that is, it doesn&#039;t distinguish between telephone lines and telephones). Every call is placed or received on a distinct channel.&lt;br /&gt;
&lt;br /&gt;
The second thing to realise, is that every type of device attached to the Asterisk PBX have their own specific configuration files. Correctly setting up each (set of) telephony devices makes them available in our Asterisk PBX as channels. Thus, the device configuration files serve as a kind of abstraction layer, and simplify our final Asterisk configuration by putting &amp;quot;channel-specific&amp;quot; information in separate files.&lt;br /&gt;
&lt;br /&gt;
If you&#039;ve followed the previous Asterisk sections in this Wiki, or followed the first four chapters of the TFOT-book, then you&#039;ve encountered the following configuration files:&lt;br /&gt;
* &#039;&#039;zaptel.conf&#039;&#039; - in this file, you can set up the most basic parameters for your Zap-type hardware channels, most notably Digium telephony cards. You&#039;re configuring the hardware itself, via its driver. You could think of this file as belonging to the hardware, not Asterisk. If you&#039;d have other software on your machine besides Asterisk that could make use of your telephony hardware, then that&#039;d be influenced as well when you change &#039;&#039;zaptel.conf&#039;&#039;.&lt;br /&gt;
* &#039;&#039;zapata.conf&#039;&#039; (and possibly &#039;&#039;zapata-channels.conf&#039;&#039; if you&#039;re on Debian) - this file handles the Asterisk-specific configuration of the hardware telephony channels. It thus &amp;quot;sets up the Zap channels&amp;quot; that Asterisk sees - for incoming and outgoing calls. All parameters that set up the channel are specified here.&lt;br /&gt;
* &#039;&#039;vpb.conf&#039;&#039; - this file is used to configure [http://www.voicetronix.com/ Voicetronix] cards with Asterisk. If you&#039;ve a Voicetronix card in use, then you&#039;ve also installed the Voicetronix drivers. This makes the card(s) useable under Linux. But to have Asterisk use the card(s), you need this &#039;&#039;vpb.conf&#039;&#039; file. It thus serves the same purpose as &#039;&#039;zapata.conf&#039;&#039;.&lt;br /&gt;
* &#039;&#039;sip.conf&#039;&#039; - this file contains all information on all SIP devices that we want to connect to our Asterisk server; be it one or more SIP accounts with Internet providers, or SIP capable telephones (hardware or software). When &#039;&#039;sip.conf&#039;&#039; has been set up correctly, we can refer to a SIP device by a friendly name like [1000] or [Jane].&lt;br /&gt;
* &#039;&#039;iax.conf&#039;&#039; - this file is just the same as the &#039;&#039;sip.conf&#039;&#039; file, only it handles devices that talk IAX2 protocol instead of the SIP protocol.&lt;br /&gt;
These five files define all channels that our basic Asterisk PBX might handle (well, it won&#039;t even handle the last one, since we&#039;re not connecting any other Asterisk boxes or IAX-(soft)phones to our PBX, and it won&#039;t handle the third one if you don&#039;t have a Voicetronix card).&lt;br /&gt;
&lt;br /&gt;
As a reference, we&#039;re going to list the contents of four example files, and explain what they do in the way of preparing channels for our simple Asterisk server.:&lt;br /&gt;
==zaptel.conf==&lt;br /&gt;
 # Autogenerated by ./genzaptelconf -- do not hand edit&lt;br /&gt;
 # Zaptel Configuration File&lt;br /&gt;
 #&lt;br /&gt;
 # This file is parsed by the Zaptel Configurator, ztcfg&lt;br /&gt;
 #&lt;br /&gt;
 &lt;br /&gt;
 # It must be in the module loading order&lt;br /&gt;
 &lt;br /&gt;
 # Span 1: WCTDM/0 &amp;quot;Wildcard TDM410P Board 1&amp;quot; (MASTER)&lt;br /&gt;
 fxoks=1&lt;br /&gt;
 fxoks=2&lt;br /&gt;
 fxsks=3&lt;br /&gt;
 # channel 4, WCTDM, no module.&lt;br /&gt;
 &lt;br /&gt;
 # Global data&lt;br /&gt;
 &lt;br /&gt;
 loadzone        = nl&lt;br /&gt;
 defaultzone     = nl&lt;br /&gt;
This is a relatively simple file, configuring three Digium modules. As you can see, the &#039;&#039;genzaptelconf&#039;&#039; command has generated it for us. It belongs with a Digium TDM410P card, which has two FXS modules in positions 1 and 2, and one FXO module in position 3. The first two non-commented lines define the protocol that the FXS modules must &amp;quot;talk&amp;quot; with the attached devices, which &amp;quot;naturally&amp;quot; is the FXO protocol (yes, FXS talks FXO, and FXO talks FXS... a bit like electric current flowing from negative to positive. It&#039;s just a matter of definitions).&amp;lt;br&amp;gt;&lt;br /&gt;
The third line defines that the FXO module talks FXS protocol.&amp;lt;br&amp;gt;&lt;br /&gt;
The fourth line configures a set of indications to use for the defined channels. Since we&#039;re loading &amp;quot;nl&amp;quot;, we&#039;re configuring Dutch dialtones etcetera for the channels.&amp;lt;br&amp;gt;&lt;br /&gt;
Finally, the last line tell the server that any channel that does not have a zone assigned to it, should have the specified default zone configured - Dutch as well in this example.&amp;lt;br&amp;gt;&lt;br /&gt;
With this simple file, the driver for our example card (&#039;&#039;wctdm24xxp&#039;&#039;, by the way) can set up the hardware just as we want it. Now to tell Asterisk how to use it...&lt;br /&gt;
==zapata-channels.conf==&lt;br /&gt;
 ; Autogenerated by ./genzaptelconf -- do not hand edit&lt;br /&gt;
 ; Zaptel Channels Configurations (zapata.conf)&lt;br /&gt;
 ;&lt;br /&gt;
 ; This is not intended to be a complete zapata.conf. Rather, it is intended&lt;br /&gt;
 ; to be #include-d by /etc/zapata.conf that will include the global settings&lt;br /&gt;
 ;&lt;br /&gt;
 &lt;br /&gt;
 ; Span 1: WCTDM/0 &amp;quot;Wildcard TDM410P Board 1&amp;quot; (MASTER)&lt;br /&gt;
 ;;; line=&amp;quot;1 WCTDM/0/0&amp;quot;&lt;br /&gt;
 signalling=fxo_ks&lt;br /&gt;
 callerid=&amp;quot;Channel 1&amp;quot; &amp;lt;6001&amp;gt;&lt;br /&gt;
 mailbox=6001&lt;br /&gt;
 group=5&lt;br /&gt;
 context=from-internal&lt;br /&gt;
 channel =&amp;gt; 1&lt;br /&gt;
 callerid=&lt;br /&gt;
 mailbox=&lt;br /&gt;
 group=&lt;br /&gt;
 context=default&lt;br /&gt;
 &lt;br /&gt;
 ;;; line=&amp;quot;2 WCTDM/0/1&amp;quot;&lt;br /&gt;
 signalling=fxo_ks&lt;br /&gt;
 callerid=&amp;quot;Channel 2&amp;quot; &amp;lt;6002&amp;gt;&lt;br /&gt;
 mailbox=6002&lt;br /&gt;
 group=5&lt;br /&gt;
 context=from-internal&lt;br /&gt;
 channel =&amp;gt; 2&lt;br /&gt;
 callerid=&lt;br /&gt;
 mailbox=&lt;br /&gt;
 group=&lt;br /&gt;
 context=default&lt;br /&gt;
 &lt;br /&gt;
 ;;; line=&amp;quot;3 WCTDM/0/2&amp;quot;&lt;br /&gt;
 signalling=fxs_ks&lt;br /&gt;
 callerid=asreceived&lt;br /&gt;
 group=0&lt;br /&gt;
 context=from-pstn&lt;br /&gt;
 channel =&amp;gt; 3&lt;br /&gt;
 context=default&lt;br /&gt;
This second file is also auto-generated. It sets up three channels, associated with the three Digium hardware modules that we&#039;ve configured with &#039;&#039;zaptel.conf&#039;&#039;. Here, we also see how the channel numbers get assigned to the physical ports. The first module gets to be Zap channel 1 (&#039;&#039;&#039;Zap/1&#039;&#039;&#039;), the second &#039;&#039;&#039;Zap/2&#039;&#039;&#039; and so on. So if we would like our FXO module to be channel 1, and our FXS modules 2 and three, we could rotate the three channel numbers in this file. Probably we&#039;d then also want to rotate the &#039;&#039;callerid&#039;&#039;`s though... Furthermore, we don&#039;t think it&#039;s a good idea to assign channels to Zap devices in a different order than the devices are found in the system - meaning &amp;quot;stick with the default numbering as much as possible&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Note that the way &#039;&#039;zapata-channels.conf&#039;&#039; is interpreted, means that any statement like &#039;&#039;signalling=fxs_ks&#039;&#039; actually &#039;&#039;sets&#039;&#039; the &#039;&#039;signalling&#039;&#039; parameter; when the &#039;&#039;channel =&amp;gt; 1&#039;&#039; line is reached, then all preceding parameter assignments are applied to that particular channel. This also means that if you somewhere have set a channel to belong to context &amp;quot;foo&amp;quot;, and then never set a context again, then every next channel also gets assigned to &amp;quot;foo&amp;quot;. So remember: if you don&#039;t see a parameter being set with a specific channel, you CANNOT assume that it then has it&#039;s default value; if a preceding channel has set that parameter to value &amp;quot;bar&amp;quot;, then for your specific channel, it is &amp;quot;bar&amp;quot; also.&lt;br /&gt;
&lt;br /&gt;
An interesting thing to see here is how &#039;&#039;genzaptelconf&#039;&#039; deals with the above concept. After defining each channel, it resets the most important parameters (a.o. the ones that should be unique with a channel) to empty or &amp;quot;default&amp;quot;. This means that if you yourself are very meticulous, you could do without that safety net, and rewrite the above configuration file as:&lt;br /&gt;
 signalling=fxo_ks&lt;br /&gt;
 callerid=&amp;quot;Channel 1&amp;quot; &amp;lt;6001&amp;gt;&lt;br /&gt;
 mailbox=6001&lt;br /&gt;
 group=5&lt;br /&gt;
 context=from-internal&lt;br /&gt;
 channel =&amp;gt; 1&lt;br /&gt;
 &lt;br /&gt;
 signalling=fxo_ks&lt;br /&gt;
 callerid=&amp;quot;Channel 2&amp;quot; &amp;lt;6002&amp;gt;&lt;br /&gt;
 mailbox=6002&lt;br /&gt;
 group=5&lt;br /&gt;
 context=from-internal&lt;br /&gt;
 channel =&amp;gt; 2&lt;br /&gt;
 &lt;br /&gt;
 signalling=fxs_ks&lt;br /&gt;
 callerid=asreceived&lt;br /&gt;
 group=0&lt;br /&gt;
 context=from-pstn&lt;br /&gt;
 channel =&amp;gt; 3&lt;br /&gt;
Note: we like the thoroughnes of the &#039;&#039;genzaptelconf&#039;&#039; configuration, but we like the readability of the second file more.&lt;br /&gt;
&lt;br /&gt;
==zapata.conf==&lt;br /&gt;
 [trunkgroups]&lt;br /&gt;
 &lt;br /&gt;
 [channels]&lt;br /&gt;
 switchtype=national&lt;br /&gt;
 rxwink=300              ; Atlas seems to use long (250ms) winks&lt;br /&gt;
 usecallerid=yes&lt;br /&gt;
 hidecallerid=no&lt;br /&gt;
 callwaiting=yes&lt;br /&gt;
 usecallingpres=yes&lt;br /&gt;
 callwaitingcallerid=yes&lt;br /&gt;
 threewaycalling=yes&lt;br /&gt;
 transfer=yes&lt;br /&gt;
 canpark=yes&lt;br /&gt;
 cancallforward=yes&lt;br /&gt;
 callreturn=yes&lt;br /&gt;
 echocancel=yes&lt;br /&gt;
 echocancelwhenbridged=yes&lt;br /&gt;
 rxgain=0.0&lt;br /&gt;
 txgain=0.0&lt;br /&gt;
 callgroup=1&lt;br /&gt;
 pickupgroup=1&lt;br /&gt;
 immediate=no&lt;br /&gt;
 #include zapata-channels.conf&lt;br /&gt;
Under Debian, &lt;br /&gt;
&lt;br /&gt;
==sip.conf==&lt;br /&gt;
&lt;br /&gt;
This is a sample configuration for VOIP with XS4ALL&lt;br /&gt;
&lt;br /&gt;
 ;;/etc/asterisk/sip.conf;;&lt;br /&gt;
 [general]&lt;br /&gt;
 context=default&lt;br /&gt;
 externip=setyoureiphere&lt;br /&gt;
 dtfmmode=inband&lt;br /&gt;
 localnet=192.168.70.0/24&lt;br /&gt;
 port=5060&lt;br /&gt;
 bindaddr=0.0.0.0&lt;br /&gt;
 disallow=all&lt;br /&gt;
 allow=alaw&lt;br /&gt;
 allow=ulaw&lt;br /&gt;
 registerattempts=0&lt;br /&gt;
 defaultexpiry=7200&lt;br /&gt;
 register =&amp;gt; 08787XXXXX:PASSWORD@sip.xs4all.nl/08787XXXXX&lt;br /&gt;
&lt;br /&gt;
 [xs4all]&lt;br /&gt;
 type=friend&lt;br /&gt;
 username=08787XXXXX&lt;br /&gt;
 fromuser=08787XXXXX&lt;br /&gt;
 fromdomain=sip.xs4all.nl&lt;br /&gt;
 secret=PASSWORD&lt;br /&gt;
 host=sip.xs4all.nl&lt;br /&gt;
 insecure=invite&lt;br /&gt;
 context=fromxs4all&lt;br /&gt;
 canreinvite=no&lt;br /&gt;
 dtmfmode=inband&lt;br /&gt;
 disallow=all&lt;br /&gt;
 allow=alaw&lt;br /&gt;
 allow=ulaw&lt;br /&gt;
&lt;br /&gt;
== DAHDI ==&lt;br /&gt;
&lt;br /&gt;
From asterisk version 1.4 zaptel is renamed in DAHDI witch stands for Digium Asterisk Hardware Device Interface. &lt;br /&gt;
If you installed the dahdi-tools (highly recommended) then you can configure you&#039;re hardware&lt;br /&gt;
&lt;br /&gt;
Conversion from zaptel&lt;br /&gt;
/etc/zaptel.conf Becomes /etc/dahdi/system.conf&lt;br /&gt;
/etc/asterisk/zapata.conf Becomes /etc/asterisk/chan_dahdi.conf &lt;br /&gt;
&lt;br /&gt;
Lets look at what we have&lt;br /&gt;
 #dahdi_tool&lt;br /&gt;
This will give a overview of the hardware and if it is configured or not. It will all so show alarms on the hardware.&lt;br /&gt;
&lt;br /&gt;
Now lets configure the card. First edit /etc/dadi/genconf_parameters. This file is used with dahdi_genconf and will produce /etc/dahdi-system.conf&lt;br /&gt;
*lc_country              nl&lt;br /&gt;
You can also set the echo cancelation here MG2 is default&lt;br /&gt;
 #dahdi_genconf&lt;br /&gt;
&lt;br /&gt;
 #dahdi_cfg -vv&lt;br /&gt;
 &lt;br /&gt;
 DAHDI Tools Version - 2.2.0&lt;br /&gt;
 DAHDI Version: 2.2.0.1&lt;br /&gt;
 Echo Canceller(s): MG2&lt;br /&gt;
 Configuration&lt;br /&gt;
 ======================&lt;br /&gt;
 Channel map:&lt;br /&gt;
  &lt;br /&gt;
 Channel 01: FXO Kewlstart (Default) (Echo Canceler: mg2) (Slaves: 01)&lt;br /&gt;
 Channel 02: FXO Kewlstart (Default) (Echo Canceler: mg2) (Slaves: 02)&lt;br /&gt;
 &lt;br /&gt;
 2 channels to configure.&lt;br /&gt;
 &lt;br /&gt;
 Setting echocan for channel 1 to mg2&lt;br /&gt;
 Setting echocan for channel 2 to mg2&lt;br /&gt;
&lt;br /&gt;
Check if the right module is loaded. &lt;br /&gt;
 #cat /etc/dahdi/modules&lt;br /&gt;
&lt;br /&gt;
You can configure the options of dahdi in /etc/asterisk/chan_dahdi.conf&lt;br /&gt;
for example turn off the echo cancelation&lt;br /&gt;
&lt;br /&gt;
You can also check teh channels in asterisk&lt;br /&gt;
 #asterisk -r&lt;br /&gt;
 #server*CLI&amp;gt; dahdi show channels&lt;br /&gt;
Or set the verbose level on asterisk to see more output&lt;br /&gt;
 #server*CLI&amp;gt; core set verbose 10&lt;br /&gt;
&lt;br /&gt;
I had some trouble with the sounds. When asterisk plays hello-world.gsm it sounded stutterd.&lt;br /&gt;
I did a &lt;br /&gt;
 #dahdi_test&lt;br /&gt;
This gives a readout from the timinsettings in asterisk. Mine was -133% and it should give a reading close to 100%.I did a&lt;br /&gt;
 #dahdi destroy channel 1&lt;br /&gt;
 #dahdi destroy channel 2&lt;br /&gt;
 #dahdi restart&lt;br /&gt;
Now i have 2 channels and no Pseudo channel (not shure were it&#039;s for)&lt;br /&gt;
Dahdi_test gives me 99,6% and the spound is good&lt;br /&gt;
&lt;br /&gt;
= Asterisk dialplans - contexts =&lt;br /&gt;
&lt;br /&gt;
A dial plan consists of a number of extensions. Each extensions consists of a number of priorities. Extensions are grouped in contexts. For each priority, an application is called. &lt;br /&gt;
 [context]&lt;br /&gt;
 exten =&amp;gt; id, priority, command&lt;br /&gt;
&lt;br /&gt;
When Asterisk receives an incoming connection on a channel, Asterisk looks at the context defined for that channel for commands telling Asterisk what it should do. The context defines different sets of commands depending on what extension the user has dialed. For example, a context might provide one set of commands for what to do if the user dials &amp;quot;123&amp;quot;, and another set of commands for what to do if the user dials &amp;quot;9&amp;quot;, and another set of commands for what to do if the user dials any number beginning with &amp;quot;555&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
For some kinds of connections — such incoming calls from an outside telephone line — the user has not dialed an extension. In that case, Asterisk behaves as if the user had dialed a special extension named &amp;quot;s&amp;quot; (for Start). Asterisk will look for an extension &amp;quot;number&amp;quot; s in the definition of the context for that channel for instructions about what it should do to handle the call.&lt;br /&gt;
&lt;br /&gt;
Let&#039;s say, for example, that you have a channel &amp;quot;Zap/1&amp;quot; which is a connection to a telephone handset in your building. And let&#039;s say that in the configuration file for Zap channels (zapata.conf), you have defined context=john for Zap channel 1. So when you use that handset to dial a number, Asterisk looks for a context with the name &amp;quot;john&amp;quot; in extensions.conf to find out what it should do. You begin the definition of a context in extensions.conf by putting the name of the context in square brackets on a line by itself, like this:&lt;br /&gt;
 [john]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== extensions.conf ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 [globals]&lt;br /&gt;
&lt;br /&gt;
 [general]&lt;br /&gt;
 autofallthrough=yes&lt;br /&gt;
&lt;br /&gt;
 [default]&lt;br /&gt;
 include =&amp;gt; fromxs4all&lt;br /&gt;
&lt;br /&gt;
 [fromxs4all]&lt;br /&gt;
 exten =&amp;gt; 08787XXXXX,1,Dial(DAHDI/2)&lt;br /&gt;
 exten =&amp;gt; 08787XXXXX,n,Hangup()&lt;br /&gt;
&lt;br /&gt;
 [outgoing]&lt;br /&gt;
 exten =&amp;gt; _X.,1,Dial(sip/xs4all/${EXTEN},60,r)&lt;br /&gt;
&lt;br /&gt;
 [internal]&lt;br /&gt;
 exten =&amp;gt; 6004,1,Dial(sip/6004)&lt;br /&gt;
 exten =&amp;gt; 6003,1,Dial(sip/6003)&lt;br /&gt;
 exten =&amp;gt; 6005,1,Dial(DAHDI/2)&lt;br /&gt;
 exten =&amp;gt; 6006,1,Answer()&lt;br /&gt;
 exten =&amp;gt; 6006,n,Playback(hello-world)&lt;br /&gt;
 exten =&amp;gt; 6006,n,Hangup()&lt;br /&gt;
&lt;br /&gt;
 [phones]&lt;br /&gt;
 include =&amp;gt; internal&lt;br /&gt;
 include =&amp;gt; fromxs4all&lt;br /&gt;
 include =&amp;gt; outgoing&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Install_Asterisk_under_Debian&amp;diff=2092</id>
		<title>Install Asterisk under Debian</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Install_Asterisk_under_Debian&amp;diff=2092"/>
		<updated>2009-01-10T15:26:53Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: /* Installing Asterisk */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Installing Asterisk=&lt;br /&gt;
Once the hardware configuration part is completed, we can start the installation of Asterisk itself. Using &#039;&#039;aptitude&#039;&#039; or &#039;&#039;apt-get&#039;&#039;, install package &#039;&#039;asterisk&#039;&#039;. On Debian 5.0 &amp;quot;Lenny&amp;quot;, it should be Asterisk 1.4.21.2. With &#039;&#039;apt-get&#039;&#039;, the command is simply&lt;br /&gt;
 apt-get install asterisk&lt;br /&gt;
Note: many, many dependencies bring a lot of extra packages to your server when you install Asterisk. On a test machine, I counted 24 extra packages (for a total of 11.4MB to be downloaded).&lt;br /&gt;
&lt;br /&gt;
If you have telephony hardware, you&#039;ve likely already configured it in the preceding sections. However, when Asterisk itself is installed, you can run the &#039;&#039;genzaptelconf&#039;&#039; command again, and it will not only re-configure your &#039;&#039;zaptel.conf&#039;&#039;, but also it will generate &#039;&#039;/etc/asterisk/zapata-channels.conf&#039;&#039;&lt;br /&gt;
 genzaptelconf -svdM -c nl&lt;br /&gt;
Now, as the command suggests, include the &#039;&#039;zapata-channels.conf&#039;&#039; file in &#039;&#039;/etc/asterisk/zapata.conf&#039;&#039;, either by running&lt;br /&gt;
 echo &#039;#include zapata-channels.conf&#039; &amp;gt;&amp;gt;/etc/asterisk/zapata.conf&lt;br /&gt;
or by opening zapata.conf in your favourite [[vim | text editor]] and pasting the line &amp;quot;#include zapata-channels.conf&amp;quot; (including the hash sign) somewhere near the end of the file.&lt;br /&gt;
&lt;br /&gt;
Another measure that you might wish to implement in advance is the addition of two lines for [http://www.voip-info.org/wiki/view/Asterisk+echo+cancellation echo cancellation]:&lt;br /&gt;
 echocancel=yes&lt;br /&gt;
 echocancelwhenbridged=no&lt;br /&gt;
 echotraining=800&lt;br /&gt;
When echo cancellation has been turned on, you can also tune two other parameters: the [http://wiki.ljackson.us/Asterisk_Echo rx gain and tx gain].&lt;br /&gt;
&lt;br /&gt;
When you&#039;ve rerun &#039;&#039;genzaptelconf&#039;&#039;, Asterisk will have started at the end of the command. Your adaptation of &#039;&#039;zapata.conf&#039;&#039; is not yet noticed by Asterisk. Please reload or restart asterisk, e.g. by running&lt;br /&gt;
 /etc/init.d/asterisk restart&lt;br /&gt;
&lt;br /&gt;
=Installing Asterisk-GUI=&lt;br /&gt;
Asterisk-GUI is not an essential part of an Asterisk installation, but in some respects it can make life much easier for you. On the other hand, installing it is NOT as easy as with other Debian packages - because it&#039;s not available as a Debian package. Thus, we&#039;ll have to compile the Asterisk-GUI from source.&lt;br /&gt;
&lt;br /&gt;
First obtain the latest version of the &#039;&#039;asterisk-gui&#039;&#039; package; it can be downloaded from the download section of [http://www.asterisk.org/ the Asterisk site]; most likely at [http://downloads.digium.com/pub/telephony/asterisk-gui/releases/ this place]. Then extract it in some logical place, like &#039;&#039;/usr/src/&#039;&#039;:&lt;br /&gt;
 tar xzvf asterisk-gui-2.0.2.tar.gz /usr/src&lt;br /&gt;
This creates the directory &#039;&#039;/usr/src/asterisk-gui-2.0.2&#039;&#039;, in which the source for Asterisk-GUI can be found. &#039;&#039;cd&#039;&#039; to this directory, confiure, and compile the software:&lt;br /&gt;
 cd /usr/src/asterisk-gui-2.0.2&lt;br /&gt;
 ./configure&lt;br /&gt;
 make&lt;br /&gt;
 make install&lt;br /&gt;
These three commands should complete successfully. They all give pretty clear output when everything runs fine (we haven&#039;t seen them fail, so we can&#039;t tell what that would look like, or what to do then).&amp;lt;br&amp;gt;&lt;br /&gt;
OK, so we now need to do some configuration on Asterisk-GUI. It&#039;s main configuration files are &#039;&#039;/etc/asterisk/http.conf&#039;&#039;, where the Asterisk-GUI itself is configured, and &#039;&#039;/etc/asterisk/manager.conf&#039;&#039;, which is part of the Asterisk Manager Interface (AMI), over which Asterisk-GUI makes its moves. So first we put the necessary extra info in &#039;&#039;manager.conf&#039;&#039;. The Debian setup for AMI has a line that includes all *.conf files in &#039;&#039;/etc/asterisk/manager.d&#039;&#039;, so we only need to include manager-specific information in &#039;&#039;manager.conf&#039;&#039;. This means only the following line in the section &#039;&#039;[general]&#039;&#039;:&lt;br /&gt;
 webenabled = yes&lt;br /&gt;
Now we go to &#039;&#039;/etc/asterisk/manager.d&#039;&#039;, and create &#039;&#039;asterisk-gui.conf&#039;&#039;. In this, we can put the Asterisk-GUI specific lines - which really only define Asterisk-GUI users, with their passwords and their rights:&lt;br /&gt;
 [asterisk-admin]&lt;br /&gt;
 secret = nOguess1ng&lt;br /&gt;
 read = system,call,log,verbose,command,agent,user,config&lt;br /&gt;
 write = system,call,log,verbose,command,agent,user,config&lt;br /&gt;
Note that this file contains user information (well, it contains Asterisk-GUI user info) with a password, so you might want to secure this file &#039;&#039;/etc/asterisk/manager.d/asterisk-gui.conf&#039;&#039; by changing the owner to asterisk:asterisk, and remove the world-readable attribute&lt;br /&gt;
 chown asterisk:asterisk /etc/asterisk/manager.d/asterisk-gui.conf&lt;br /&gt;
 chmod o= /etc/asterisk/manager.d/asterisk-gui.conf&lt;br /&gt;
&lt;br /&gt;
Furthermore, we need to edit the &#039;&#039;/etc/asterisk/http.conf&#039;&#039; file that our Asterisk-GUI installation has created, so that it contains at least the following information (comments stripped):&lt;br /&gt;
 [general]&lt;br /&gt;
 enabled=yes&lt;br /&gt;
 enablestatic=yes&lt;br /&gt;
 bindaddr=127.0.0.1&lt;br /&gt;
 bindport=8088&lt;br /&gt;
 prefix=asterisk&lt;br /&gt;
This enables Asterisk-GUI, so that &#039;&#039;asterisk-admin&#039;&#039; can both issue AMI commands and view HTML pages, as long as a browser on the server itself is used. You could also change the bind address to that of an internal NIC on your server, which is convenient for admins, but less secure. Keep in mind though, that you can also use the [[Firewall section | iceditch firewall]] to limit access to port 8088 to certain subnets and/or IP numbers.&lt;br /&gt;
&lt;br /&gt;
Finally, we must work around a little Asterisk-GUI bug, by removing the (empty) directory &#039;&#039;static-http&#039;&#039; from &#039;&#039;/usr/share/asterisk&#039;&#039;, and create a link there to the (non-empty) directory &#039;&#039;/var/lib/asterisk/static-http&#039;&#039;:&lt;br /&gt;
 cd /usr/share/asterisk&lt;br /&gt;
 rmdir static-http&lt;br /&gt;
 ln -s /var/lib/asterisk/static-http static-http&lt;br /&gt;
When all is said and done (well, &#039;&#039;&#039;done&#039;&#039;&#039;, specifically), restart Asterisk. Asterisk-GUI should now be reachable on http://127.0.0.1:8088/asterisk/config/cfgbasic.html. Logging in there will make Asterisk-GUI configure itself &#039;&#039;and&#039;&#039; Asterisk.&lt;br /&gt;
&lt;br /&gt;
=Configuring and testing Asterisk=&lt;br /&gt;
If you&#039;ve done nothing more than the [[Installing and configuring Zaptel | previously described]] hardware installation and configuration, and the default Asterisk installation given above, then you can already do one very simple test: plug a standard analogue telephone in one of your FXS-ports, and see if you get a dialtone. (Ofcourse, if you&#039;ve only got FXO-ports or no hardware at all, then this won&#039;t help you.)&amp;lt;br&amp;gt;&lt;br /&gt;
Furthermore, you could just look at the back of your Linux machine; the small LEDs next to all ports should be lit green (not including those ports for which you haven&#039;t installed a module, ofcourse). A port with a module installed, but without a burning LED, signifies no driver loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
Other tests and status reports can be obtained from the following commands:&lt;br /&gt;
* &#039;&#039;lszaptel&#039;&#039; should show your hardware, with all installed ports (all denoted &amp;quot;in use&amp;quot;); non-installed ports may be shown as FXO-ports. Note: be aware of the neverending confusion surrounding the port name (e.g. FXS) and what signalling it runs (e.g. FXO); remember that those two are always opposed: FXO-ports run FXS signaling, FXS-ports run FXO-signaling. Thus, a non-installed port is shown as running FXS-signaling.&lt;br /&gt;
* &#039;&#039;ztcfg -vv&#039;&#039; should show a channel map, with for each hardware channel the channel number and the signaling protocol.&lt;br /&gt;
* &#039;&#039;asterisk -r&#039;&#039; should give you an Asterisk console (if Asterisk is in fact running).&lt;br /&gt;
If the above tests succeed, then it&#039;s time for our initial Asterisk configuration.&lt;br /&gt;
&lt;br /&gt;
In the first configuration test, we&#039;ll configure both an FXS and an FXO channel - since that&#039;s what&#039;s in [http://downloads.oreilly.com/books/9780596510480.pdf asterisk, TFOTF]. This configuration comes in three parts:&amp;lt;Br&amp;gt;&lt;br /&gt;
First, we make sure our FXS and FXO channels are defined in &#039;&#039;/etc/zaptel.conf&#039;&#039; - as we&#039;ve already ensured previously. For this configuration test, we confirm that &#039;&#039;zaptel.conf&#039;&#039; contains something like&lt;br /&gt;
 # Span 1: WCTDM/0 &amp;quot;Wildcard TDM410P Board 1&amp;quot; (MASTER)&lt;br /&gt;
 fxoks=1&lt;br /&gt;
 fxsks=3&lt;br /&gt;
 # Global data&lt;br /&gt;
 loadzone        = nl&lt;br /&gt;
 defaultzone     = nl&lt;br /&gt;
Next up, we check &#039;&#039;/etc/asterisk/zapata.conf&#039;&#039;. When we filter that file through &#039;&#039;grep -v ^\; | grep -v ^$&#039;&#039; (thus removing lines beginning with &amp;quot;;&amp;quot; and empty lines), &#039;&#039;&#039;AND&#039;&#039;&#039; we insert the contents of &#039;&#039;zapata-channels.conf&#039;&#039; at the place of the insert statement, then we get something like&lt;br /&gt;
 [trunkgroups]&lt;br /&gt;
 [channels]&lt;br /&gt;
 context=default&lt;br /&gt;
 switchtype=national&lt;br /&gt;
 signalling=fxo_ls&lt;br /&gt;
 rxwink=300&lt;br /&gt;
 usecallerid=yes&lt;br /&gt;
 hidecallerid=no&lt;br /&gt;
 callwaiting=yes&lt;br /&gt;
 usecallingpres=yes&lt;br /&gt;
 callwaitingcallerid=yes&lt;br /&gt;
 threewaycalling=yes&lt;br /&gt;
 transfer=yes&lt;br /&gt;
 canpark=yes&lt;br /&gt;
 cancallforward=yes&lt;br /&gt;
 callreturn=yes&lt;br /&gt;
 echocancel=yes&lt;br /&gt;
 echocancelwhenbridged=yes&lt;br /&gt;
 rxgain=0.0&lt;br /&gt;
 txgain=0.0&lt;br /&gt;
 group=1&lt;br /&gt;
 callgroup=1&lt;br /&gt;
 pickupgroup=1&lt;br /&gt;
 immediate=no&lt;br /&gt;
 ; from here it&#039;s all zapata_channel.conf:&lt;br /&gt;
 signalling=fxo_ks&lt;br /&gt;
 callerid=&amp;quot;Channel 1&amp;quot; &amp;lt;6001&amp;gt;&lt;br /&gt;
 mailbox=6001&lt;br /&gt;
 group=5&lt;br /&gt;
 context=from-internal&lt;br /&gt;
 channel =&amp;gt; 1&lt;br /&gt;
 callerid=&lt;br /&gt;
 mailbox=&lt;br /&gt;
 group=&lt;br /&gt;
 context=default&lt;br /&gt;
 signalling=fxo_ks&lt;br /&gt;
 callerid=&amp;quot;Channel 2&amp;quot; &amp;lt;6002&amp;gt;&lt;br /&gt;
 mailbox=6002&lt;br /&gt;
 group=5&lt;br /&gt;
 context=from-internal&lt;br /&gt;
 channel =&amp;gt; 2&lt;br /&gt;
 callerid=&lt;br /&gt;
 mailbox=&lt;br /&gt;
 group=&lt;br /&gt;
 context=default&lt;br /&gt;
 signalling=fxs_ks&lt;br /&gt;
 callerid=asreceived&lt;br /&gt;
 group=0&lt;br /&gt;
 context=from-pstn&lt;br /&gt;
 channel =&amp;gt; 3&lt;br /&gt;
 context=default&lt;br /&gt;
Well that&#039;s all nice and dandy, but for testing we&#039;ll temporarily replace this &#039;&#039;zapata.conf&#039;&#039; with a much more dressed down one:&lt;br /&gt;
 [trunkgroups]&lt;br /&gt;
 [channels]&lt;br /&gt;
 usecallerid=yes&lt;br /&gt;
 hidecallerid=no&lt;br /&gt;
 callwaiting=no&lt;br /&gt;
 threewaycalling=yes&lt;br /&gt;
 transfer=yes&lt;br /&gt;
 echocancel=yes&lt;br /&gt;
 echotraining=yes&lt;br /&gt;
 switchtype=national&lt;br /&gt;
 ; from here it&#039;s all zapata_channel.conf:&lt;br /&gt;
 ; the internal phone on module 1/port 1&lt;br /&gt;
 context=phones&lt;br /&gt;
 signalling=fxo_ks&lt;br /&gt;
 channel =&amp;gt; 1&lt;br /&gt;
 ; the incoming line on module 3/port 3&lt;br /&gt;
 context=incoming&lt;br /&gt;
 signalling=fxs_ks&lt;br /&gt;
 channel =&amp;gt; 3&lt;br /&gt;
The third configuration file we&#039;re going to change, is the file containing the &amp;quot;dialplan&amp;quot;, which is &#039;&#039;/etc/asterisk/extensions.conf&#039;&#039;. We&#039;ll use the example from the TFOTF book:&lt;br /&gt;
 [globals]&lt;br /&gt;
 &lt;br /&gt;
 [general]&lt;br /&gt;
 &lt;br /&gt;
 [default]&lt;br /&gt;
 exten =&amp;gt; s,1,Verbose(1|Unrouted call handler)&lt;br /&gt;
 exten =&amp;gt; s,n,Answer()&lt;br /&gt;
 exten =&amp;gt; s,n,Wait(1)&lt;br /&gt;
 exten =&amp;gt; s,n,Playback(tt-weasels)&lt;br /&gt;
 exten =&amp;gt; s,n,Hangup()&lt;br /&gt;
 &lt;br /&gt;
 [incoming_calls]&lt;br /&gt;
 &lt;br /&gt;
 [internal]&lt;br /&gt;
 exten =&amp;gt; 500,1,Verbose(1|Echo test application)&lt;br /&gt;
 exten =&amp;gt; 500,n,Echo()&lt;br /&gt;
 exten =&amp;gt; 500,n,Hangup()&lt;br /&gt;
 &lt;br /&gt;
 [phones]&lt;br /&gt;
 include =&amp;gt; internal&lt;br /&gt;
 &lt;br /&gt;
 [incoming]&lt;br /&gt;
 exten =&amp;gt; s,1,Answer()&lt;br /&gt;
 exten =&amp;gt; s,n,Echo()&lt;br /&gt;
With all config files changed (and their owner still &#039;&#039;asterisk:asterisk&#039;&#039;), we can reload the necessary files. First we connect an outside line to the FXO port. Now we stop asterisk, then unload the Zaptel drivers, then reload them all (so they&#039;ll definately read their config files) (note: our example is for a Digium TDM410P, with driver wctdm24xxp; adapt to your own driver):&lt;br /&gt;
 /etc/init.d/asterisk stop&lt;br /&gt;
 rmmod wctdm24xxp&lt;br /&gt;
 rmmod zaptel&lt;br /&gt;
 modprobe zaptel&lt;br /&gt;
 modprobe wctdm24xxp&lt;br /&gt;
 /etc/init.d/asterisk start&lt;br /&gt;
For demonstration purposes, start up an Asterisk console (&#039;&#039;asterisk -f&#039;&#039;). Now we can call the outside line attached to the FXO port (e.g. with a cell phone), and we should see in our Asterisk console something like&lt;br /&gt;
 [Oct  8 09:06:12] NOTICE[5640]: chan_zap.c:6562 ss_thread: Got event 18 (Ring Begin)...&lt;br /&gt;
 [Oct  8 09:06:14] NOTICE[5640]: chan_zap.c:6562 ss_thread: Got event 2 (Ring/Answered)...&lt;br /&gt;
Furthermore, if you speak into your phone, you should hear an echo. The other test is grabbing the phone that&#039;s connected to the FXS port, and dial 500. This also should deliver an echo, albeit much quicker.&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Ubuntu&amp;diff=2009</id>
		<title>Ubuntu</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Ubuntu&amp;diff=2009"/>
		<updated>2008-11-11T17:05:49Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: Convert video_ts to iso&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== NDISwrapper ==&lt;br /&gt;
&lt;br /&gt;
NDISwrapper is a free software driver wrapper that enables the use of Microsoft Windows drivers for wireless network devices.&lt;br /&gt;
&lt;br /&gt;
Download the windows driver wich contains the .inf file&amp;lt;br&amp;gt;&lt;br /&gt;
Install with ndiswrapper -i drivername.inf&amp;lt;br&amp;gt;&lt;br /&gt;
check the device id with lsusb or lspci -n&amp;lt;br&amp;gt;&lt;br /&gt;
Now execute with ndiswrapper -a deviceid driver&lt;br /&gt;
 ndiswrapper -a 0bda:8197 net8187b&lt;br /&gt;
check the installed drivers&lt;br /&gt;
 ndiswrapper -l&lt;br /&gt;
Write the configuration for modprobe&lt;br /&gt;
 ndiswrapper -m&lt;br /&gt;
And use the module&lt;br /&gt;
 modprobe ndiswrapper&lt;br /&gt;
&lt;br /&gt;
== Compiz ==&lt;br /&gt;
&lt;br /&gt;
To enable compiz install the Nvidia drivers and install CompizConfig Settings Manager&lt;br /&gt;
 sudo apt-get install simple-ccsm&lt;br /&gt;
Now navigate to system &amp;gt; preferences &amp;gt; Appereance And go to the Visual effects tab. Choose custum there&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center&amp;quot; border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot;&lt;br /&gt;
!style=&amp;quot;background:#ffdead;&amp;quot;|Desktop Effects&lt;br /&gt;
!style=&amp;quot;background:#ffdead;&amp;quot;|Keyboard Shortcuts&lt;br /&gt;
|-&lt;br /&gt;
|Rotate Cube Manually&lt;br /&gt;
|Ctrl + Alt + Left Mouse Button&lt;br /&gt;
|-&lt;br /&gt;
|Expo&lt;br /&gt;
|Super + E (toggle)&lt;br /&gt;
|-&lt;br /&gt;
|Rotate Cube&lt;br /&gt;
|Mousewheel on Desktop&lt;br /&gt;
|-&lt;br /&gt;
|Film Effect&lt;br /&gt;
|Ctrl + Alt + Down Arrow&lt;br /&gt;
|-&lt;br /&gt;
|Scale Windows&lt;br /&gt;
|Alt + Shift + Up Arrow&lt;br /&gt;
|-&lt;br /&gt;
|Ring Switcher&lt;br /&gt;
|Super + Tab - overrides Shift Switcher&lt;br /&gt;
|}&lt;br /&gt;
Super key is the windows key :-)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Mount Network Share ==&lt;br /&gt;
&lt;br /&gt;
First install smbfs&lt;br /&gt;
 apt-get install smbfs&lt;br /&gt;
Then create a folder inside of the /media directory to mount the share on or choose you&#039;re own directory&lt;br /&gt;
 sudo mkdir /media/Storage&lt;br /&gt;
Create a credentials file in /root so that you can save your password and have it protected by the root account:&lt;br /&gt;
 sudo gedit /root/.cifscredentials&lt;br /&gt;
Add this to the file&lt;br /&gt;
 username=Guest&lt;br /&gt;
 password=&lt;br /&gt;
&lt;br /&gt;
sudo vi /etc/fstab&lt;br /&gt;
Add the following line&lt;br /&gt;
 //192.168.0.10/SHARENAME /media/Storage cifs auto,iocharset=utf8,uid=USER,gid=users,credentials=/root/.cifscredentials,file_mode=0775,dir_mode=0775 0 0&lt;br /&gt;
&lt;br /&gt;
To check if the file works&lt;br /&gt;
 sudo mount -a&lt;br /&gt;
And you should see you&#039;re drives on the desktop&lt;br /&gt;
&lt;br /&gt;
Ik you get  error when you shut down the pc &#039;&#039;CIFS VFS: server not responding&#039;&#039; then you have to unmount first. Do this with the following&lt;br /&gt;
&lt;br /&gt;
 ln -s /etc/init.d/umountnfs.sh /etc/rc0.d/K15umountnfs.sh&lt;br /&gt;
 ln -s /etc/init.d/umountnfs.sh /etc/rc6.d/K15umountnfs.sh&lt;br /&gt;
&lt;br /&gt;
== Citrix Ica client ==&lt;br /&gt;
&lt;br /&gt;
Download the Linux citrix ica client from Citrix&lt;br /&gt;
 http://citrix.com/English/SS/downloads/details.asp?downloadID=3323&amp;amp;productID=-1 &lt;br /&gt;
&lt;br /&gt;
Unpack the package and execute the installation script&lt;br /&gt;
 ./setupwfc&lt;br /&gt;
Find the plugin directory of firefox. Probably is /usr/lib/firefox/plugins/ otherwise use&lt;br /&gt;
 find / -name plugins | grep -i &amp;quot;netscape\|firefox\|mozilla&amp;quot;&lt;br /&gt;
Create a symlink to the citrix ica library&lt;br /&gt;
 ln –s /usr/lib/ICAClient/npica.so npica.so&lt;br /&gt;
&lt;br /&gt;
If you open a connection to your citrix server. The browser will ask you if you want to open or save the session. Browse to the ica client&lt;br /&gt;
 /usr/lib/ICAClient/wfica&lt;br /&gt;
and tell it to use it for all applications.&lt;br /&gt;
&lt;br /&gt;
When you get a ssl error &amp;quot;you have not chosen to thrust.....&amp;quot; Then copy the certificate in this location.&lt;br /&gt;
 /usr/lib/ICAClient/keystore/cacerts/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Make DVD ==&lt;br /&gt;
&lt;br /&gt;
To make a video DVD you can burn you&#039;re image on the dvd. If you just have the VIDEO_TS files then the easiest way is to convert these into a iso.&lt;br /&gt;
&lt;br /&gt;
 mkisofs -dvd-video -o ~/moviename.iso /path/to/the/VIDEO_TS&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Ubuntu&amp;diff=1991</id>
		<title>Ubuntu</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Ubuntu&amp;diff=1991"/>
		<updated>2008-11-05T20:43:49Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: /* Compiz */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== NDISwrapper ==&lt;br /&gt;
&lt;br /&gt;
NDISwrapper is a free software driver wrapper that enables the use of Microsoft Windows drivers for wireless network devices.&lt;br /&gt;
&lt;br /&gt;
Download the windows driver wich contains the .inf file&amp;lt;br&amp;gt;&lt;br /&gt;
Install with ndiswrapper -i drivername.inf&amp;lt;br&amp;gt;&lt;br /&gt;
check the device id with lsusb or lspci -n&amp;lt;br&amp;gt;&lt;br /&gt;
Now execute with ndiswrapper -a deviceid driver&lt;br /&gt;
 ndiswrapper -a 0bda:8197 net8187b&lt;br /&gt;
check the installed drivers&lt;br /&gt;
 ndiswrapper -l&lt;br /&gt;
Write the configuration for modprobe&lt;br /&gt;
 ndiswrapper -m&lt;br /&gt;
And use the module&lt;br /&gt;
 modprobe ndiswrapper&lt;br /&gt;
&lt;br /&gt;
== Compiz ==&lt;br /&gt;
&lt;br /&gt;
To enable compiz install the Nvidia drivers and install CompizConfig Settings Manager&lt;br /&gt;
 sudo apt-get install simple-ccsm&lt;br /&gt;
Now navigate to system &amp;gt; preferences &amp;gt; Appereance And go to the Visual effects tab. Choose custum there&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center&amp;quot; border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot;&lt;br /&gt;
!style=&amp;quot;background:#ffdead;&amp;quot;|Desktop Effects&lt;br /&gt;
!style=&amp;quot;background:#ffdead;&amp;quot;|Keyboard Shortcuts&lt;br /&gt;
|-&lt;br /&gt;
|Rotate Cube Manually&lt;br /&gt;
|Ctrl + Alt + Left Mouse Button&lt;br /&gt;
|-&lt;br /&gt;
|Expo&lt;br /&gt;
|Super + E (toggle)&lt;br /&gt;
|-&lt;br /&gt;
|Rotate Cube&lt;br /&gt;
|Mousewheel on Desktop&lt;br /&gt;
|-&lt;br /&gt;
|Film Effect&lt;br /&gt;
|Ctrl + Alt + Down Arrow&lt;br /&gt;
|-&lt;br /&gt;
|Scale Windows&lt;br /&gt;
|Alt + Shift + Up Arrow&lt;br /&gt;
|-&lt;br /&gt;
|Ring Switcher&lt;br /&gt;
|Super + Tab - overrides Shift Switcher&lt;br /&gt;
|}&lt;br /&gt;
Super key is the windows key :-)&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Ubuntu&amp;diff=1990</id>
		<title>Ubuntu</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Ubuntu&amp;diff=1990"/>
		<updated>2008-11-05T20:42:59Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: /* Compiz */ added table&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== NDISwrapper ==&lt;br /&gt;
&lt;br /&gt;
NDISwrapper is a free software driver wrapper that enables the use of Microsoft Windows drivers for wireless network devices.&lt;br /&gt;
&lt;br /&gt;
Download the windows driver wich contains the .inf file&amp;lt;br&amp;gt;&lt;br /&gt;
Install with ndiswrapper -i drivername.inf&amp;lt;br&amp;gt;&lt;br /&gt;
check the device id with lsusb or lspci -n&amp;lt;br&amp;gt;&lt;br /&gt;
Now execute with ndiswrapper -a deviceid driver&lt;br /&gt;
 ndiswrapper -a 0bda:8197 net8187b&lt;br /&gt;
check the installed drivers&lt;br /&gt;
 ndiswrapper -l&lt;br /&gt;
Write the configuration for modprobe&lt;br /&gt;
 ndiswrapper -m&lt;br /&gt;
And use the module&lt;br /&gt;
 modprobe ndiswrapper&lt;br /&gt;
&lt;br /&gt;
== Compiz ==&lt;br /&gt;
&lt;br /&gt;
To enable compiz install the Nvidia drivers and install CompizConfig Settings Manager&lt;br /&gt;
 sudo apt-get install simple-ccsm&lt;br /&gt;
Now navigate to system &amp;gt; preferences &amp;gt; Appereance And go to the Visual effects tab. Choose custum there&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center&amp;quot; border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot;&lt;br /&gt;
!style=&amp;quot;background:#ffdead;&amp;quot;|Desktop Effects&lt;br /&gt;
!style=&amp;quot;background:#ffdead;&amp;quot;|Keyboard Shortcuts&lt;br /&gt;
|-&lt;br /&gt;
|Rotate Cube Manually&lt;br /&gt;
|Ctrl + Alt + Left Mouse Button&lt;br /&gt;
|-&lt;br /&gt;
|Expo&lt;br /&gt;
|Super + E (toggle)&lt;br /&gt;
|-&lt;br /&gt;
|Rotate Cube&lt;br /&gt;
|Mousewheel on Desktop&lt;br /&gt;
|-&lt;br /&gt;
|Film Effect&lt;br /&gt;
|Ctrl + Alt + Down Arrow&lt;br /&gt;
|-&lt;br /&gt;
|Scale Windows&lt;br /&gt;
|Alt + Shift + Up Arrow&lt;br /&gt;
|-&lt;br /&gt;
|Ring Switcher&lt;br /&gt;
|Super + Tab - overrides Shift Switcher&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Documentation_project&amp;diff=1947</id>
		<title>Documentation project</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Documentation_project&amp;diff=1947"/>
		<updated>2008-10-27T21:06:31Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: Undo revision 1946 by 82.161.20.132 (Talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== The Documentation Project==&lt;br /&gt;
spamerdespam [[www.linuz.nl]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Documentation in ICT projects is a tough cookie (maybe outside of ICT as well, but that&#039;s no concern of ours at this moment). What the ICT profession seems to lack is&lt;br /&gt;
* a thorough understanding of the fundamental problems that surround ICT documentation&lt;br /&gt;
* taxonomies of the different documentation purposes, target audiences (with their experience levels), and document types&lt;br /&gt;
* a methodology to create, review and maintain ICT documentation of sufficient quality, against reasonable cost&lt;br /&gt;
* templates, guidelines and best practices to assist such a methodology&lt;br /&gt;
* some sort of overview of the different documentation management solutions that exist, ranging from the venerable binders with photocopies and printouts, through fileshares full of text documents, through the anarchistic wiki system, all the way to Enterprise Content Management (ECM) systems with integrated document scanners, archivers, ILM-components and what have you not&lt;br /&gt;
* an appreciation for the specific skills that are needed in the so-called &amp;quot;technical writers&amp;quot;&lt;br /&gt;
* an embedded process for documentation in the business processes; if not in projects, then most surely in day-to-day system administration.&lt;br /&gt;
&lt;br /&gt;
What we&#039;ll attempt to do here is to systematically address all issues surrounding ICT documentation, and develop the lacking taxonomies, methodologies etcetera.&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Documentation_project&amp;diff=1946</id>
		<title>Documentation project</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Documentation_project&amp;diff=1946"/>
		<updated>2008-10-27T21:04:21Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== The Documentation Project==&lt;br /&gt;
spamerdespam [http://www.linuz.nl]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Documentation in ICT projects is a tough cookie (maybe outside of ICT as well, but that&#039;s no concern of ours at this moment). What the ICT profession seems to lack is&lt;br /&gt;
* a thorough understanding of the fundamental problems that surround ICT documentation&lt;br /&gt;
* taxonomies of the different documentation purposes, target audiences (with their experience levels), and document types&lt;br /&gt;
* a methodology to create, review and maintain ICT documentation of sufficient quality, against reasonable cost&lt;br /&gt;
* templates, guidelines and best practices to assist such a methodology&lt;br /&gt;
* some sort of overview of the different documentation management solutions that exist, ranging from the venerable binders with photocopies and printouts, through fileshares full of text documents, through the anarchistic wiki system, all the way to Enterprise Content Management (ECM) systems with integrated document scanners, archivers, ILM-components and what have you not&lt;br /&gt;
* an appreciation for the specific skills that are needed in the so-called &amp;quot;technical writers&amp;quot;&lt;br /&gt;
* an embedded process for documentation in the business processes; if not in projects, then most surely in day-to-day system administration.&lt;br /&gt;
&lt;br /&gt;
What we&#039;ll attempt to do here is to systematically address all issues surrounding ICT documentation, and develop the lacking taxonomies, methodologies etcetera.&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Documentation_project&amp;diff=1945</id>
		<title>Documentation project</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Documentation_project&amp;diff=1945"/>
		<updated>2008-10-27T21:02:19Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== The Documentation Project==&lt;br /&gt;
spamerdespam [[www.linuz.nl]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Documentation in ICT projects is a tough cookie (maybe outside of ICT as well, but that&#039;s no concern of ours at this moment). What the ICT profession seems to lack is&lt;br /&gt;
* a thorough understanding of the fundamental problems that surround ICT documentation&lt;br /&gt;
* taxonomies of the different documentation purposes, target audiences (with their experience levels), and document types&lt;br /&gt;
* a methodology to create, review and maintain ICT documentation of sufficient quality, against reasonable cost&lt;br /&gt;
* templates, guidelines and best practices to assist such a methodology&lt;br /&gt;
* some sort of overview of the different documentation management solutions that exist, ranging from the venerable binders with photocopies and printouts, through fileshares full of text documents, through the anarchistic wiki system, all the way to Enterprise Content Management (ECM) systems with integrated document scanners, archivers, ILM-components and what have you not&lt;br /&gt;
* an appreciation for the specific skills that are needed in the so-called &amp;quot;technical writers&amp;quot;&lt;br /&gt;
* an embedded process for documentation in the business processes; if not in projects, then most surely in day-to-day system administration.&lt;br /&gt;
&lt;br /&gt;
What we&#039;ll attempt to do here is to systematically address all issues surrounding ICT documentation, and develop the lacking taxonomies, methodologies etcetera.&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Documentation_project&amp;diff=1944</id>
		<title>Documentation project</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Documentation_project&amp;diff=1944"/>
		<updated>2008-10-27T21:01:46Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== The Documentation Project==&lt;br /&gt;
spamerdespam [www.linuz.nl]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Documentation in ICT projects is a tough cookie (maybe outside of ICT as well, but that&#039;s no concern of ours at this moment). What the ICT profession seems to lack is&lt;br /&gt;
* a thorough understanding of the fundamental problems that surround ICT documentation&lt;br /&gt;
* taxonomies of the different documentation purposes, target audiences (with their experience levels), and document types&lt;br /&gt;
* a methodology to create, review and maintain ICT documentation of sufficient quality, against reasonable cost&lt;br /&gt;
* templates, guidelines and best practices to assist such a methodology&lt;br /&gt;
* some sort of overview of the different documentation management solutions that exist, ranging from the venerable binders with photocopies and printouts, through fileshares full of text documents, through the anarchistic wiki system, all the way to Enterprise Content Management (ECM) systems with integrated document scanners, archivers, ILM-components and what have you not&lt;br /&gt;
* an appreciation for the specific skills that are needed in the so-called &amp;quot;technical writers&amp;quot;&lt;br /&gt;
* an embedded process for documentation in the business processes; if not in projects, then most surely in day-to-day system administration.&lt;br /&gt;
&lt;br /&gt;
What we&#039;ll attempt to do here is to systematically address all issues surrounding ICT documentation, and develop the lacking taxonomies, methodologies etcetera.&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=VSFTPD&amp;diff=1903</id>
		<title>VSFTPD</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=VSFTPD&amp;diff=1903"/>
		<updated>2008-10-26T15:38:14Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: VSFTPD&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Very secure ftp server.&lt;br /&gt;
&lt;br /&gt;
To install&lt;br /&gt;
 apt-get install vsftpd&lt;br /&gt;
&lt;br /&gt;
To configure got to &lt;br /&gt;
 /etc/vsftpd.conf&lt;br /&gt;
vi /etc/vsftpd.conf&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[Optional] Disable Anonymous account by finding the line that says anonymous_enable=YES and make it &lt;br /&gt;
&lt;br /&gt;
 anonymous_enable=NO&lt;br /&gt;
&lt;br /&gt;
[Optional] Turn off or on write access (upload access). Find and uncomment the following line: &lt;br /&gt;
&lt;br /&gt;
 write_enable=YES&lt;br /&gt;
&lt;br /&gt;
[Optional] Add you banner when people log in. Find and uncomment this #ftpd_banner=Welcome to blah FTP service. line and make it: &lt;br /&gt;
&lt;br /&gt;
 ftpd_banner=Welcome to Insomnia FTP service. Enjoy.&lt;br /&gt;
&lt;br /&gt;
[Optional] Allow local users to log in. Uncomment the following line: &lt;br /&gt;
&lt;br /&gt;
 local_enable=YES&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Smart_Daemon&amp;diff=1817</id>
		<title>Smart Daemon</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Smart_Daemon&amp;diff=1817"/>
		<updated>2008-10-16T19:06:15Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: /* Format */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== &#039;&#039;&#039;SMART&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
If you want to read out the smart status of your hard disk you can use smartmontools.&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;apt-get install smartmontools&lt;br /&gt;
&lt;br /&gt;
Now you have 2 utility program&#039;s (smartctl and smartd). With smartctl you can read out your hard disks&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;smartctl -a /dev/hda&lt;br /&gt;
&lt;br /&gt;
This will give you all info of your hard disk. For sata disk you will have to give the -d option&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;smartctl -d ata -a /dev/hda&lt;br /&gt;
&lt;br /&gt;
Fore more options on smartctl use -h&lt;br /&gt;
&lt;br /&gt;
Now we can configure the smart daemon in /etc/smartd.conf. This daemon will monitor your hard disks.&lt;br /&gt;
This config file gives you a good explination of the different options you can use&lt;br /&gt;
&lt;br /&gt;
I use the following options&lt;br /&gt;
&lt;br /&gt;
 /dev/sda -d ata -a -o on -S on -s (S/../.././02|L/../../6/03)&lt;br /&gt;
 /dev/sda -d ata -H -m admin@linuz.nl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Format ==&lt;br /&gt;
&lt;br /&gt;
To see you&#039;re current disk partitioning&lt;br /&gt;
 darktower:~# fdisk -l&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/hda: 120.0 GB, 120060444672 bytes&lt;br /&gt;
 255 heads, 63 sectors/track, 14596 cylinders&lt;br /&gt;
 Units = cylinders of 16065 * 512 = 8225280 bytes&lt;br /&gt;
 Device Boot      Start         End      Blocks   Id  System&lt;br /&gt;
 /dev/hda1               1       14596   117242338+  83  Linux&lt;br /&gt;
&lt;br /&gt;
To see more info on you&#039;re drive you can use &#039;&#039;smartctl&#039;&#039; This is a command provided by the smartmontools package.&lt;br /&gt;
 smartctl -i /dev/hda&lt;br /&gt;
&lt;br /&gt;
Also &#039;&#039;hdparm&#039;&#039; can be used to get or set the drive parameters.&lt;br /&gt;
 hdparm -d /dev/hda&lt;br /&gt;
&lt;br /&gt;
Now to partition the disk&lt;br /&gt;
 cfdisk /dev/hda&lt;br /&gt;
. &lt;br /&gt;
Now that we have 1 or more partitions, we have to format it with a filesystem. The most commonly used filesystem is ext3 (in unix that is)&lt;br /&gt;
 mkfs.ext3 /dev/hda1&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Smart_Daemon&amp;diff=1816</id>
		<title>Smart Daemon</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Smart_Daemon&amp;diff=1816"/>
		<updated>2008-10-16T18:54:21Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: /* &amp;#039;&amp;#039;&amp;#039;SMART&amp;#039;&amp;#039;&amp;#039; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== &#039;&#039;&#039;SMART&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
If you want to read out the smart status of your hard disk you can use smartmontools.&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;apt-get install smartmontools&lt;br /&gt;
&lt;br /&gt;
Now you have 2 utility program&#039;s (smartctl and smartd). With smartctl you can read out your hard disks&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;smartctl -a /dev/hda&lt;br /&gt;
&lt;br /&gt;
This will give you all info of your hard disk. For sata disk you will have to give the -d option&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;smartctl -d ata -a /dev/hda&lt;br /&gt;
&lt;br /&gt;
Fore more options on smartctl use -h&lt;br /&gt;
&lt;br /&gt;
Now we can configure the smart daemon in /etc/smartd.conf. This daemon will monitor your hard disks.&lt;br /&gt;
This config file gives you a good explination of the different options you can use&lt;br /&gt;
&lt;br /&gt;
I use the following options&lt;br /&gt;
&lt;br /&gt;
 /dev/sda -d ata -a -o on -S on -s (S/../.././02|L/../../6/03)&lt;br /&gt;
 /dev/sda -d ata -H -m admin@linuz.nl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Format ==&lt;br /&gt;
&lt;br /&gt;
To see you&#039;re current disk partitioning&lt;br /&gt;
 darktower:~# fdisk -l&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/hda: 120.0 GB, 120060444672 bytes&lt;br /&gt;
 255 heads, 63 sectors/track, 14596 cylinders&lt;br /&gt;
 Units = cylinders of 16065 * 512 = 8225280 bytes&lt;br /&gt;
 Device Boot      Start         End      Blocks   Id  System&lt;br /&gt;
 /dev/hda1               1       14596   117242338+  83  Linux&lt;br /&gt;
&lt;br /&gt;
To see more info on you&#039;re drive you can use &#039;&#039;smartctl&#039;&#039; This is a command provided by the smartmontools package.&lt;br /&gt;
 smartctl -i /dev/hda&lt;br /&gt;
&lt;br /&gt;
Also &#039;&#039;hdparm&#039;&#039; can be used to get or set the drive parameters.&lt;br /&gt;
 hdparm -d /dev/hda&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Asterisk_basic_configuration&amp;diff=1791</id>
		<title>Asterisk basic configuration</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Asterisk_basic_configuration&amp;diff=1791"/>
		<updated>2008-10-14T19:30:16Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: /* Asterisk dialplans - handling incoming calls */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Asterisk basic configuration principles =&lt;br /&gt;
In this section we&#039;ll have a look at the basic configuration of an Asterisk PBX. Contrary to the TFOT-book, we&#039;ll be looking at it from the theory side, and from there go to an example configuration. For this example configuration, we&#039;ll start from a server with on the &amp;quot;outside&amp;quot; a POTS line and a SIP account with an Internet provider, and on the &amp;quot;inside&amp;quot; two analogue telephones and a SIP softphone. Our goal is to let the PBX behave as if we don&#039;t even have a PBX, but a standard home situation: for an incoming call, all phones ring; and every internal phone can make calls to the outside.&lt;br /&gt;
&lt;br /&gt;
= Asterisk channel configuration basics =&lt;br /&gt;
The first thing to realise, is that all devices attached to the Asterisk PBX have their specific configuration files. Correctly setting up each (set of) telephony devices &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Asterisk dialplans - contexts =&lt;br /&gt;
&lt;br /&gt;
= Asterisk dialplans - handling incoming calls =&lt;br /&gt;
What is a Channel?&lt;br /&gt;
A channel is a connection which brings in a call to the Asterisk PBX. A channel could be a connection to an ordinary telephone handset or an ordinary telephone line, or to a logical call (like an Internet phone call). Asterisk makes no distinction between &amp;quot;FXO&amp;quot; and &amp;quot;FXS&amp;quot; style channels (that is, it doesn&#039;t distinguish between telephone lines and telephones). Every call is placed or received on a distinct channel.&lt;br /&gt;
&lt;br /&gt;
= Asterisk dialplans - handling outgoing calls =&lt;br /&gt;
&lt;br /&gt;
= Where to go from here=&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Vim&amp;diff=1488</id>
		<title>Vim</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Vim&amp;diff=1488"/>
		<updated>2008-05-25T15:49:33Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: add tabel&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
The screen-oriented text editor &#039;&#039;vim&#039;&#039; stems from &#039;&#039;vi&#039;&#039;, written in &#039;76 for an early BSD Unix release by [http://www.engin.umich.edu/alumni/engineer/04SS/achievements/advances.html#joy Bill Joy]. &#039;&#039;vi&#039;&#039; is old, nonintuitive, and complex. &#039;&#039;[http://en.wikipedia.org/wiki/Vim_%28text_editor%29 vim]&#039;&#039; stems from 1991, and stands for &#039;&#039;&#039;&#039;&#039;V&#039;&#039;&#039;i &#039;&#039;&#039;IM&#039;&#039;&#039;proved&#039;&#039;, but its improvements do not lessen it&#039;s nonintuitivity or complexity.&lt;br /&gt;
&lt;br /&gt;
So why do we feel that &#039;&#039;vim&#039;&#039; is an essential system tool? Well, it&#039;s because&lt;br /&gt;
* vi can be found on just about any Linux and Unix system&lt;br /&gt;
* vi is very powerful&lt;br /&gt;
* with some practice, it&#039;s even usable.&lt;br /&gt;
&lt;br /&gt;
==Installation and configuration==&lt;br /&gt;
When you install &#039;&#039;vim&#039;&#039;, you also get &#039;&#039;xxd&#039;&#039;, a tool to make a hexdump, or convert a hex dump back to it&#039;s original binary form.&lt;br /&gt;
&lt;br /&gt;
==Using VIM==&lt;br /&gt;
&lt;br /&gt;
Vim operates in 2 modus. A command mode and a insert mode. You start in command mode so almost every key is a command. You can switch to insert mode with &#039;&#039;i&#039;&#039; to return in command mode press &#039;&#039;esc&#039;&#039; or ( &#039;&#039;ctrl [&#039;&#039; )&lt;br /&gt;
Start in insert mode and typ some text. To save your progress return in command mode with &#039;&#039;esc&#039;&#039; Now we can use the &#039;&#039;ex-commands&#039;&#039; typ &#039;&#039;:w&#039;&#039; to save the document. or use these commands.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center&amp;quot; border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot;&lt;br /&gt;
!style=&amp;quot;background:#ffdead;&amp;quot;|Command&lt;br /&gt;
!style=&amp;quot;background:#ffdead;&amp;quot;|Output&lt;br /&gt;
|-&lt;br /&gt;
|:w&lt;br /&gt;
|Save&lt;br /&gt;
|-&lt;br /&gt;
|:w&lt;br /&gt;
|&#039;filename&#039; Save with this filename&lt;br /&gt;
|-&lt;br /&gt;
|:q&lt;br /&gt;
|quit vim&lt;br /&gt;
|-&lt;br /&gt;
|:q!&lt;br /&gt;
|quit without save&lt;br /&gt;
|-&lt;br /&gt;
|:wq&lt;br /&gt;
|save and quit&lt;br /&gt;
|}&lt;br /&gt;
==About modal editors==&lt;br /&gt;
&lt;br /&gt;
==Cursor positioning==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center&amp;quot; border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot;&lt;br /&gt;
!style=&amp;quot;background:#ffdead;&amp;quot;|Key(s)&lt;br /&gt;
!style=&amp;quot;background:#ffdead;&amp;quot;|Movement&lt;br /&gt;
|-&lt;br /&gt;
|j&lt;br /&gt;
|down one line, same column&lt;br /&gt;
|-&lt;br /&gt;
|k&lt;br /&gt;
|up one line, same column&lt;br /&gt;
|-&lt;br /&gt;
|h&lt;br /&gt;
|one character back&lt;br /&gt;
|-&lt;br /&gt;
|l,&amp;amp;lt;space&amp;amp;gt;&lt;br /&gt;
|one character forward&lt;br /&gt;
|-&lt;br /&gt;
|b&lt;br /&gt;
|one word back (to beginning of previous word)&lt;br /&gt;
|-&lt;br /&gt;
|e&lt;br /&gt;
|one word back (to end of previous word)&lt;br /&gt;
|-&lt;br /&gt;
|w&lt;br /&gt;
|one word forward&lt;br /&gt;
|-&lt;br /&gt;
|&amp;amp;lt;enter&amp;amp;gt;&lt;br /&gt;
|beginning of next line&lt;br /&gt;
|-&lt;br /&gt;
|0 (zero)&lt;br /&gt;
|beginning of line&lt;br /&gt;
|-&lt;br /&gt;
|$&lt;br /&gt;
|end of line&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;n&#039;&#039;G&lt;br /&gt;
|to beginning of line &#039;&#039;n&#039;&#039;; if no number given, the last line of the file&lt;br /&gt;
|-&lt;br /&gt;
|:&#039;&#039;n&#039;&#039;&lt;br /&gt;
|also to beginning of line &#039;&#039;n&#039;&#039; (but this is visible as command)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Searching==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center&amp;quot; border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot;&lt;br /&gt;
!style=&amp;quot;background:#ffdead;&amp;quot;|Key(s)&lt;br /&gt;
!style=&amp;quot;background:#ffdead;&amp;quot;|Movement&lt;br /&gt;
|-&lt;br /&gt;
|/&#039;&#039;pattern&#039;&#039;&lt;br /&gt;
|Moves the cursor to the next occurrence of &#039;&#039;pattern&#039;&#039;; will wrap around to the beginning of the file from the last occurence&lt;br /&gt;
|-&lt;br /&gt;
|?&#039;&#039;pattern&#039;&#039;&lt;br /&gt;
|Moves the cursor backward to the previous occurrence of &#039;&#039;pattern&#039;&#039;; will wrap around to the end of the file from the first occurence&lt;br /&gt;
|-&lt;br /&gt;
|n&lt;br /&gt;
|repeats last pattern search (either / or ?)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Text insertion==&lt;br /&gt;
 a   Appends text after cursor. Terminated by escape key. &lt;br /&gt;
 A   Appends text at the end of the line. Terminated the escape key. &lt;br /&gt;
 i   Inserts text before cursor. Terminated by the escape key. &lt;br /&gt;
 I   Inserts text at the beginning of the line. Terminated by the escape key. &lt;br /&gt;
 o   Opens new line below the current line for text insertion. Terminated by the escape key. &lt;br /&gt;
 O   Opens new line above the current line for text insertion. Terminated by the escape key. &lt;br /&gt;
 DEL Overwrites last character during text insertion. &lt;br /&gt;
 ESC Stops text insertion. The escape key on the DECstations is the F11 key&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
In Debian Etch, the default editor is nano instead of vim. This can be changed in the following way: &lt;br /&gt;
 sudo update-alternatives --set editor /usr/bin/vim.tiny&lt;br /&gt;
Now &#039;&#039;&#039;all&#039;&#039;&#039; commands that invoke an editor will use &#039;&#039;vi&#039;&#039; instead of &#039;&#039;vim&#039;&#039;. Is that a good thing? We&#039;re not sure, but we do want to keep our &#039;&#039;vi&#039;&#039; skills up to par, so we do this.&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Smart_Daemon&amp;diff=1454</id>
		<title>Smart Daemon</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Smart_Daemon&amp;diff=1454"/>
		<updated>2008-05-17T23:16:19Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== &#039;&#039;&#039;SMART&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Install smartmontools&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;apt-get install smartmontools&lt;br /&gt;
&lt;br /&gt;
Now you have 2 utility program&#039;s (smartctl and smartd). With smartctl you can read out your hard disks&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;smartctl -a /dev/hda&lt;br /&gt;
&lt;br /&gt;
This will give you all info of your hard disk. For sata disk you will have to give the -d option&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;smartctl -d ata -a /dev/hda&lt;br /&gt;
&lt;br /&gt;
Fore more options on smartctl use -h&lt;br /&gt;
&lt;br /&gt;
Now we can configure the smart daemon in /etc/smartd.conf&lt;br /&gt;
This config file gives you a good explination of the different options you can use&lt;br /&gt;
&lt;br /&gt;
I use the following options&lt;br /&gt;
&lt;br /&gt;
 /dev/sda -d ata -a -o on -S on -s (S/../.././02|L/../../6/03)&lt;br /&gt;
 /dev/sda -d ata -H -m admin@linuz.nl&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
	<entry>
		<id>https://www.saruman.biz/saruwiki/index.php?title=Crontab&amp;diff=1447</id>
		<title>Crontab</title>
		<link rel="alternate" type="text/html" href="https://www.saruman.biz/saruwiki/index.php?title=Crontab&amp;diff=1447"/>
		<updated>2008-05-17T18:40:32Z</updated>

		<summary type="html">&lt;p&gt;82.161.20.132: /* Crontab */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Crontab==&lt;br /&gt;
&lt;br /&gt;
To schedule a task you can use cron. Every user has it&#039;s own crontab.&lt;br /&gt;
Also system has a crontab witch has 3 default entry&#039;s in /etc/crontab&lt;br /&gt;
&lt;br /&gt;
 # /etc/crontab: system-wide crontab&lt;br /&gt;
 # Unlike any other crontab you don&#039;t have to run the `crontab&#039;&lt;br /&gt;
 # command to install the new version when you edit this file&lt;br /&gt;
 # and files in /etc/cron.d. These files also have username fields,&lt;br /&gt;
 # that none of the other crontabs do.&lt;br /&gt;
 SHELL=/bin/sh&lt;br /&gt;
 PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin&lt;br /&gt;
 # m h dom mon dow user  command&lt;br /&gt;
 17 *    * * *   root    cd / &amp;amp;&amp;amp; run-parts --report /etc/cron.hourly&lt;br /&gt;
 25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / &amp;amp;&amp;amp; run-parts --report /etc/cron.daily )&lt;br /&gt;
 47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / &amp;amp;&amp;amp; run-parts --report /etc/cron.weekly )&lt;br /&gt;
 52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / &amp;amp;&amp;amp; run-parts --report /etc/cron.monthly )&lt;br /&gt;
 #&lt;br /&gt;
&lt;br /&gt;
you can schedule tasks directly in the 3 folders. &lt;br /&gt;
&lt;br /&gt;
To see the current users crontab&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;crontab -l&lt;br /&gt;
&lt;br /&gt;
To see a users crontab&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;crontab -u &#039;username&#039; -l&lt;br /&gt;
&lt;br /&gt;
To edit the current users crontab&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;crontab -e&lt;br /&gt;
&lt;br /&gt;
Now you can schedule your task &lt;br /&gt;
 # +---------------- minute (0 - 59)&lt;br /&gt;
 # |  +------------- hour (0 - 23)&lt;br /&gt;
 # |  |  +---------- day of month (1 - 31)&lt;br /&gt;
 # |  |  |  +------- month (1 - 12)&lt;br /&gt;
 # |  |  |  |  +---- day of week (0 - 6) (Sunday=0 or 7)&lt;br /&gt;
 # |  |  |  |  |&lt;br /&gt;
   *  *  *  *  *  command to be executed (full path to command/script)&lt;/div&gt;</summary>
		<author><name>82.161.20.132</name></author>
	</entry>
</feed>