<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-9195951</id><updated>2012-02-04T15:05:46.573+01:00</updated><category term='linux'/><category term='postgres'/><category term='Internet'/><category term='sysadmin'/><category term='javascript'/><category term='en'/><category term='registry'/><category term='perl'/><category term='partitions'/><category term='rants'/><category term='conversion'/><category term='music'/><category term='word'/><category term='computers'/><category term='pdf'/><category term='oneliners'/><category term='browsers'/><category term='doc'/><category term='GUI'/><category term='batch'/><category term='ch'/><category term='databases'/><category term='firefox'/><category term='fr'/><category term='fcp'/><category term='ldap'/><category term='win7'/><category term='text'/><category term='shell'/><category term='mac'/><category term='debian'/><category term='video'/><category term='email'/><category term='windows'/><category term='code'/><category term='ubuntu'/><category term='plugins'/><category term='thunderbird'/><category term='ms-access'/><category term='web-design'/><category term='viewers'/><title type='text'>Bahut</title><subtitle type='html'>Trucs à garder, que je ne sais où mettre...
Stuff I want to keep, but don't know where to put</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://bahut.alma.ch/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default?start-index=26&amp;max-results=25'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>77</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-9195951.post-5482159576872499124</id><published>2011-07-26T19:11:00.006+02:00</published><updated>2011-07-27T10:22:26.048+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='debian'/><category scheme='http://www.blogger.com/atom/ns#' term='thunderbird'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='win7'/><category scheme='http://www.blogger.com/atom/ns#' term='en'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='code'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='oneliners'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='ch'/><title type='text'>Importing root certificates into Firefox and Thunderbird</title><content type='html'>&lt;p&gt;This is ridiculously complicated and makes me wonder whether I should just drop Firefox in Windows and go back to IE.
&lt;/p&gt;
&lt;h3&gt;The problem:
&lt;/h3&gt;
&lt;p&gt;How to automatically pre-import your self-signed certification authority into all user profiles for Firefox and Thunderbird.
&lt;/p&gt;
&lt;h3&gt; The solution:
&lt;/h3&gt;
&lt;p&gt;You need the Mozilla &lt;code&gt;certutil&lt;/code&gt; utility (not the Microsoft certutil.exe).
&lt;/p&gt;
&lt;p&gt; In Windows, you would need to compile nss tools or use some ancient hard to find Windows binary to get it. But all my user profiles are on a Samba server, so it was much easier to do it on the server, with the added benefit of having Bash and not needing to struggle with the horrible cmd.exe.
&lt;/p&gt;
&lt;p&gt;First install the tools. In Debian, it would be:
  &lt;br /&gt;
&lt;/p&gt;
&lt;pre&gt;apt-get install libnss3-tools&lt;/pre&gt;
&lt;p&gt;Then adapt this long command to your paths:
&lt;/p&gt;
&lt;pre&gt;find /path/to/users-profiles -name cert8.db -printf "%h\n" | \
while read dir; do \
  certutil -A -n "My Own CA" -t "C,C,C" -d "$dir" -i "/path/to/my_own_cacert.cer"; \
done
&lt;/pre&gt;
&lt;p&gt;(&lt;code&gt;-printf "%h\n"&lt;/code&gt; prints just the directory, without the file name, one per line. That is fed to the &lt;code&gt;$dir&lt;/code&gt; variable needed in the &lt;code&gt;certutil&lt;/code&gt; command. The &lt;code&gt;-n&lt;/code&gt; option is a required nickname for the certificate. &lt;code&gt;-t "C,C,C"&lt;/code&gt; is what will make you accept any certificate signed by this CA you are importing).
&lt;/p&gt;
&lt;p&gt; See also: the &lt;a target="_blank" href="http://www.mozilla.org/projects/security/pki/nss/tools/certutil.html"&gt;certutil documentation&lt;/a&gt;, and a &lt;a target="_blank" href="http://blogs.oracle.com/meena/entry/notes_about_trust_flags"&gt;better explanation of the trust arguments&lt;/a&gt; (-t option).
  &lt;br /&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-5482159576872499124?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/5482159576872499124/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=5482159576872499124' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/5482159576872499124'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/5482159576872499124'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2011/07/importing-root-certificates-into.html' title='Importing root certificates into Firefox and Thunderbird'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-2623528172100228601</id><published>2011-07-19T14:31:00.003+02:00</published><updated>2011-07-19T14:54:18.933+02:00</updated><title type='text'>Postgresql 8.4 LDAP unknown authentication</title><content type='html'>&lt;p&gt;The syntax to specify LDAP authentication in pg_hba.conf seems to have changed between version 8.3 and 8.4. At least in Debian Squeeze, where I have both installed.
&lt;/p&gt;
&lt;p&gt; For 8.3, I had a line like this in pg_hba.conf:
&lt;/p&gt;
&lt;pre&gt;host  all  all  192.168.44.0/24  ldap "ldap://localhost/dc=mydomain,dc=lan;uid=;,ou=People,dc=mydomain,dc=lan"&lt;/pre&gt;
&lt;p&gt;When trying to start 8.4 with the same line, I was getting
&lt;/p&gt;
&lt;pre&gt;# /etc/init.d/postgresql restart 8.4
Restarting PostgreSQL 8.4 database server: main
The PostgreSQL server failed to start. Please check the log output: [...]
&lt;strong&gt;invalid authentication method ":ldap"&lt;/strong&gt; [...]
FATAL: could not load pg_hba.conf ... failed!&lt;/pre&gt;
&lt;p&gt; The new syntax which works in 8.4 is
&lt;/p&gt;
&lt;pre&gt;host  all  all  192.168.44.0/24  ldap ldapserver=localhost ldapprefix="uid=" ldapsuffix=", ou=People, dc=mydomain, dc=lan"&lt;/pre&gt;
&lt;p&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-2623528172100228601?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/2623528172100228601/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=2623528172100228601' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/2623528172100228601'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/2623528172100228601'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2011/07/postgresql-84-ldap-unknown.html' title='Postgresql 8.4 LDAP unknown authentication'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-6674540614642542877</id><published>2011-07-03T12:21:00.003+02:00</published><updated>2011-07-03T12:42:08.140+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='en'/><category scheme='http://www.blogger.com/atom/ns#' term='debian'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Etch to Lenny trouble with libxml2</title><content type='html'>While upgrading a few Debian Etch systems to Lenny, I had a lot of trouble which showed up like this:
&lt;blockquote&gt;&lt;strong&gt;&lt;code&gt;symbol lookup error: /usr/lib/libxml2.so.2: undefined symbol: gzopen64&lt;/code&gt;&lt;/strong&gt;
&lt;/blockquote&gt;
&lt;p&gt; The real cause seems to have been that I had 2 libz libraries installed:
&lt;/p&gt;
&lt;pre&gt;&amp;nbsp;# /sbin/ldconfig -pNX | grep libz
 libz.so.1 (libc6) =&amp;gt; /lib/libz.so.1
 libz.so.1 (libc6) =&amp;gt; /usr/lib/libz.so.1
&lt;/pre&gt;
&lt;p&gt;So the solution was quite simple:
&lt;/p&gt;
&lt;pre&gt;&amp;nbsp;# rm /lib/libz.so.1*
&lt;/pre&gt;
&lt;p&gt;That's all that was needed to get rid of the mountain of dpkg errors, and continue the upgrades following the &lt;a target="_blank" href="http://www.debian.org/releases/lenny/i386/release-notes/ch-upgrading.en.html"&gt;Debian guide&lt;/a&gt;. The next &lt;a target="_blank" href="http://www.debian.org/releases/squeeze/i386/release-notes/ch-upgrading.en.html"&gt;upgrade to Squeeze&lt;/a&gt; went smoothly.
&lt;/p&gt;
&lt;p&gt;For the benefit of Google searchers, here is a full error listing:
&lt;/p&gt;
&lt;pre&gt;&amp;nbsp;Unpacking replacement shared-mime-info ...
update-mime-database: symbol lookup error: /usr/lib/libxml2.so.2: undefined symbol: gzopen64
dpkg: warning - old post-removal script returned error exit status 127
dpkg - trying script from the new package instead ...
update-mime-database: symbol lookup error: /usr/lib/libxml2.so.2: undefined symbol: gzopen64
dpkg: error processing /var/cache/apt/archives/shared-mime-info_0.30-2_i386.deb (--unpack):
 subprocess new post-removal script returned error exit status 127
update-mime-database: symbol lookup error: /usr/lib/libxml2.so.2: undefined symbol: gzopen64
dpkg: error while cleaning up:
 subprocess post-removal script returned error exit status 127
Preparing to replace libgnomevfs2-common 1:2.14.2-7 (using .../libgnomevfs2-common_1%3a2.22.0-5_all.deb) ...
Unpacking replacement libgnomevfs2-common ...
gconftool-2: symbol lookup error: /usr/lib/libxml2.so.2: undefined symbol: gzopen64
dpkg: warning - old post-removal script returned error exit status 127
dpkg - trying script from the new package instead ...
gconftool-2: symbol lookup error: /usr/lib/libxml2.so.2: undefined symbol: gzopen64
dpkg: error processing /var/cache/apt/archives/libgnomevfs2-common_1%3a2.22.0-5_all.deb (--unpack):
 subprocess new post-removal script returned error exit status 127
gconftool-2: symbol lookup error: /usr/lib/libxml2.so.2: undefined symbol: gzopen64
dpkg: error while cleaning up:
 subprocess post-removal script returned error exit status 127
Preparing to replace libgnome2-common 2.16.0-2 (using .../libgnome2-common_2.20.1.1-1_all.deb) ...
Unpacking replacement libgnome2-common ...
gconftool-2: symbol lookup error: /usr/lib/libxml2.so.2: undefined symbol: gzopen64
dpkg: warning - old post-removal script returned error exit status 127
dpkg - trying script from the new package instead ...
gconftool-2: symbol lookup error: /usr/lib/libxml2.so.2: undefined symbol: gzopen64
dpkg: error processing /var/cache/apt/archives/libgnome2-common_2.20.1.1-1_all.deb (--unpack):
 subprocess new post-removal script returned error exit status 127
gconftool-2: symbol lookup error: /usr/lib/libxml2.so.2: undefined symbol: gzopen64
dpkg: error while cleaning up:
 subprocess post-removal script returned error exit status 127
Errors were encountered while processing:
 /var/cache/apt/archives/shared-mime-info_0.30-2_i386.deb
 /var/cache/apt/archives/libgnomevfs2-common_1%3a2.22.0-5_all.deb
 /var/cache/apt/archives/libgnome2-common_2.20.1.1-1_all.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
A package failed to install.  Trying to recover:
dpkg: dependency problems prevent configuration of libbonoboui2-0:
 libbonoboui2-0 depends on libglade2-0 (&amp;gt;= 1:2.6.1); however:
  Version of libglade2-0 on system is 1:2.6.0-4.
 libbonoboui2-0 depends on libgtk2.0-0 (&amp;gt;= 2.12.0); however:
  Version of libgtk2.0-0 on system is 2.8.20-7.
dpkg: error processing libbonoboui2-0 (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of libgnomecanvas2-0:
 libgnomecanvas2-0 depends on libglade2-0 (&amp;gt;= 1:2.6.1); however:
  Version of libglade2-0 on system is 1:2.6.0-4.
 libgnomecanvas2-0 depends on libgtk2.0-0 (&amp;gt;= 2.12.0); however:
  Version of libgtk2.0-0 on system is 2.8.20-7.
dpkg: error processing libgnomecanvas2-0 (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of libgail18:
 libgail18 depends on libgtk2.0-0 (&amp;gt;= 2.12.0); however:
  Version of libgtk2.0-0 on system is 2.8.20-7.
dpkg: error processing libgail18 (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of libgail-common:
 libgail-common depends on libgail18 (&amp;gt;= 1.9.1); however:
  Package libgail18 is not configured yet.
 libgail-common depends on libgtk2.0-0 (&amp;gt;= 2.12.0); however:
  Version of libgtk2.0-0 on system is 2.8.20-7.
dpkg: error processing libgail-common (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of libgnomevfs2-extra:
 libgnomevfs2-extra depends on libgnomevfs2-common (&amp;gt;= 1:2.22); however:
  Package libgnomevfs2-common is not installed.
 libgnomevfs2-extra depends on libgnomevfs2-common (&amp;lt;&amp;lt; 1:2.23); however:
  Package libgnomevfs2-common is not installed.
dpkg: error processing libgnomevfs2-extra (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of libgnomevfs2-0:
 libgnomevfs2-0 depends on libgnomevfs2-common (&amp;gt;= 1:2.22); however:
  Package libgnomevfs2-common is not installed.
 libgnomevfs2-0 depends on libgnomevfs2-common (&amp;lt;&amp;lt; 1:2.23); however:
  Package libgnomevfs2-common is not installed.
dpkg: error processing libgnomevfs2-0 (--configure):
 dependency problems - leaving unconfigured
Setting up libgnome-keyring0 (2.22.3-2) ...
dpkg: dependency problems prevent configuration of libgnome2-0:
 libgnome2-0 depends on libgnomevfs2-0 (&amp;gt;= 1:2.17.90); however:
  Package libgnomevfs2-0 is not configured yet.
 libgnome2-0 depends on libgnome2-common (&amp;gt;= 2.20); however:
  Package libgnome2-common is not installed.
 libgnome2-0 depends on libgnome2-common (&amp;lt;&amp;lt; 2.21); however:
  Package libgnome2-common is not installed.
dpkg: error processing libgnome2-0 (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of xserver-xorg-input-mouse:
 xserver-xorg-input-mouse depends on xserver-xorg-core (&amp;gt;= 2:1.4); however:
  Version of xserver-xorg-core on system is 2:1.1.1-21etch5.
dpkg: error processing xserver-xorg-input-mouse (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of xserver-xorg-input-kbd:
 xserver-xorg-input-kbd depends on xserver-xorg-core (&amp;gt;= 2:1.4); however:
  Version of xserver-xorg-core on system is 2:1.1.1-21etch5.
dpkg: error processing xserver-xorg-input-kbd (--configure):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 libbonoboui2-0
 libgnomecanvas2-0
 libgail18
 libgail-common
 libgnomevfs2-extra
 libgnomevfs2-0
 libgnome2-0
 xserver-xorg-input-mouse
 xserver-xorg-input-kbd

&lt;/pre&gt;
&lt;p&gt;
  &lt;br /&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-6674540614642542877?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/6674540614642542877/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=6674540614642542877' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/6674540614642542877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/6674540614642542877'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2011/07/etch-to-lenny-trouble-with-libxml2.html' title='Etch to Lenny trouble with libxml2'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-2224301664129981042</id><published>2011-06-21T13:45:00.006+02:00</published><updated>2011-06-21T18:48:33.698+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='en'/><category scheme='http://www.blogger.com/atom/ns#' term='batch'/><category scheme='http://www.blogger.com/atom/ns#' term='partitions'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='code'/><category scheme='http://www.blogger.com/atom/ns#' term='shell'/><title type='text'>Command-line partitioning and formatting</title><content type='html'>&lt;p&gt;Automatic non-interactive formatting in Linux is possible with parted.
&lt;/p&gt;
&lt;p&gt; The following creates 1 single ext3 partition on an entire disk. Of course, if you assign the wrong disk to the $disk variable, it will be a bad day...
&lt;/p&gt;
&lt;pre&gt;# Select the disk device and chose a label for the partition
disk=/dev/sdx; label=my_part_label
&lt;/pre&gt;
&lt;p&gt;I have added sleep commands, so I can just copy/paste the whole thing and still have a chance to Ctrl-C if I change my mind at the last second.
  &lt;br /&gt;
&lt;/p&gt;
&lt;pre&gt;# print the current partition(s) state
parted $disk print ; sleep 10

# create a standard ("msdos") partition table
parted -a optimal $disk mklabel msdos ; sleep 5

# create the partition, starting at 2048 sectors which may be better
# with newer disks
parted -a optimal -- $disk unit s mkpart primary ext3 "2048" "-1" ; sleep 5

# format it
mke2fs -j -v -L "$label" ${disk}1 &amp;amp;&amp;amp; echo "OK. That's it"

&lt;/pre&gt;
&lt;p&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-2224301664129981042?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/2224301664129981042/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=2224301664129981042' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/2224301664129981042'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/2224301664129981042'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2011/06/command-line-partitioning-and.html' title='Command-line partitioning and formatting'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-2143821989831598724</id><published>2011-06-07T13:53:00.007+02:00</published><updated>2011-09-16T14:59:39.759+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='win7'/><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='en'/><category scheme='http://www.blogger.com/atom/ns#' term='batch'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='code'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>Windows installers options for silent installs</title><content type='html'>Different installers use different command-line options for silent or unattended installs. Since I had started these notes, I have found a good &lt;a href="http://unattended.sourceforge.net/installers.php" target="_blank"&gt;overview on unattended.sourceforge.net&lt;/a&gt;.

&lt;h4&gt;Inno Setup&lt;/h4&gt;
can be identified with the "Inno Setup" string appearing in various places in the installer's .exe. The options are described &lt;a href="http://www.jrsoftware.org/ishelp/index.php?topic=setupcmdline"&gt;here&lt;/a&gt;. The most useful ones are:
&lt;ul&gt;
&lt;li&gt;/SAVEINF="filename"&lt;br&gt;
    Save installation settings to the specified file.&lt;/li&gt;
&lt;li&gt;/LOADINF="filename"&lt;br&gt;
    Load the settings from the specified file after having checked the command line.&lt;/li&gt;
&lt;li&gt;/SP-&lt;br&gt;
    Disables the This will install... Do you wish to continue? prompt at the beginning of Setup.&lt;/li&gt;
&lt;li&gt;/SILENT, /VERYSILENT&lt;br&gt;
When Setup is silent the wizard and the background window are not displayed but the installation progress window is. When a setup is very silent this installation progress window is not displayed. Everything else is normal so for example error messages during installation are displayed.&lt;/li&gt;
&lt;li&gt;/DIR="x:\dirname"&lt;/li&gt;
&lt;li&gt;/LANG=language&lt;br&gt;
    Specifies the language to use. language specifies the internal name of the language as specified in a [Languages] section entry.&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;Nullsoft's NSIS&lt;/h4&gt;
can be identified with the "NSIS" string appearing in various places in the installer's .exe. The options are described &lt;a href=""&gt;here&lt;/a&gt;, but there seem to be only 2 useful ones:
&lt;ul&gt;
&lt;li&gt;/S&lt;br /&gt;
  Silent installation&lt;/li&gt;
&lt;li&gt;/D=C:\Bla&lt;br /&gt;
  Set output folder&lt;/li&gt;
&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-2143821989831598724?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/2143821989831598724/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=2143821989831598724' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/2143821989831598724'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/2143821989831598724'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2011/06/windows-installers-options-for-silent.html' title='Windows installers options for silent installs'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-5116543947310394234</id><published>2011-05-29T11:30:00.003+02:00</published><updated>2011-05-29T13:28:41.851+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='en'/><category scheme='http://www.blogger.com/atom/ns#' term='debian'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><category scheme='http://www.blogger.com/atom/ns#' term='ldap'/><title type='text'>Mac and OpenLDAP: Local homes for network users</title><content type='html'>&lt;p&gt;I wanted a Mac to authenticate users against our Debian OpenLDAP server, but to create a local home directory on the Mac (see &lt;a target="_blank" href="https://discussions.apple.com/message/15290823"&gt;here&lt;/a&gt; for more details). The usual configuration for network users on the Mac is to mount their homes from the server over NFS. There are many excellent instructions on the net on how to do that. But finding help on how to have them use a local home instead was much more difficult.
&lt;/p&gt;
&lt;p&gt;It turns out it can be done very simply, by disabling one line in &lt;span class="filename"&gt;/etc/auto_master&lt;/span&gt; on the Mac. By default, it contains &lt;code&gt;+auto_master&lt;/code&gt;, which tells the Mac's automounter to look for an automount map in LDAP. If this line is disabled, the Mac will create a local home for network users the first time they log in. Since our userHomes in LDAP are defined as &lt;span class="filename"&gt;/home/username&lt;/span&gt;, the Mac home is created under &lt;span class="filename"&gt;/home&lt;/span&gt; instead of &lt;span class="filename"&gt;/Users&lt;/span&gt;, which is fine.
&lt;/p&gt;
&lt;p&gt;So for such a setup, you do NOT need to import an Apple schema into your LDAP directory. (That was quite a hassle because you need to tweak the original schema which is not quite kosher; but it was unnecessary).
&lt;/p&gt;
&lt;p&gt;All you need to do is comment out this single line in &lt;span class="filename"&gt;/etc/auto_master&lt;/span&gt; to make it
&lt;/p&gt;
&lt;pre&gt;#+auto_master  # Use directory service&lt;/pre&gt;
&lt;p&gt;Or copy/paste this:
&lt;/p&gt;
&lt;pre&gt;sudo perl -i.orig -pe 's/^(\+auto_master.*)/## $1/' /etc/auto_master&lt;/pre&gt;
&lt;p&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-5116543947310394234?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/5116543947310394234/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=5116543947310394234' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/5116543947310394234'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/5116543947310394234'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2011/05/mac-and-openldap-local-homes-for.html' title='Mac and OpenLDAP: Local homes for network users'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-2665810461946885102</id><published>2011-05-28T23:01:00.003+02:00</published><updated>2011-05-28T23:10:49.566+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='fcp'/><category scheme='http://www.blogger.com/atom/ns#' term='en'/><category scheme='http://www.blogger.com/atom/ns#' term='code'/><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><title type='text'>Kill the Final Cut registration screen</title><content type='html'>&lt;p&gt;I came across &lt;a href="http://www.digitalrebellion.com/blog/posts/how_to_banish_the_final_cut_pro_registration_screen_forever.html"&gt;this nicely detailed post&lt;/a&gt; explaining how to get rid of the forced registration screen of Final Cut Pro/Studio, which always pops up when you really don't want to be bothered with this idiocy.
&lt;/p&gt;
&lt;p&gt; But I felt the solution was worse than the problem. It involved far too much clicking around for my taste. And  you need the Property List Editor. You only have that once you have installed over 1 GB (!!) of developer tools. If you can remember where you put your OS X disk, that is.
&lt;/p&gt;&lt;p&gt;Surely, there must be a better way to do it, by just copying a command from some web page and pasting it into Terminal?
&lt;/p&gt;
&lt;p&gt; It turned out to be 3 commands. And getting them right was much worse than the solution I din't like. You need your machine ID, which is in an XML file that &lt;code&gt;defaults read&lt;/code&gt; doesn't want to read. And in that file it is encoded in Base64. You need to put this ID into a property list file as data. That can be done with &lt;code&gt;defaults write&lt;/code&gt;, but the data needs to be in hex. I should just have registered, I guess...
&lt;/p&gt;
&lt;p&gt;Anyway, the detailed explanations are in the link of the first sentence, and the 3 ridiculous commands to paste into Terminal are here:
&lt;/p&gt;
&lt;pre&gt;id=$(perl -MMIME::Base64 -ne '/^\s+(\S{64})\s*$/ &amp;amp;&amp;amp; print unpack("H*",decode_base64($1));' "/Library/Application Support/ProApps/Final Cut Studio System ID"|tail -1)
sudo defaults write /Library/Preferences/com.apple.RegFinalCutStudio "{ AECoreTechRegister=1; AECoreTechRegSent=1; }"
sudo defaults write /Library/Preferences/com.apple.RegFinalCutStudio AECoreTechRegInfo -data "$id"
&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-2665810461946885102?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/2665810461946885102/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=2665810461946885102' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/2665810461946885102'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/2665810461946885102'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2011/05/kill-final-cut-registration-screen.html' title='Kill the Final Cut registration screen'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-765988799779963654</id><published>2010-11-20T18:56:00.001+01:00</published><updated>2010-11-20T19:03:32.709+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='en'/><category scheme='http://www.blogger.com/atom/ns#' term='debian'/><category scheme='http://www.blogger.com/atom/ns#' term='email'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='code'/><category scheme='http://www.blogger.com/atom/ns#' term='shell'/><title type='text'>Moving IMAP Maildir to another user</title><content type='html'>&lt;p&gt;A little recipe to move a user's IMAP mails to another user. (Tested on the Courier IMAP server on Debian).
&lt;/p&gt;
&lt;p&gt;Useful in situations like John leaving the company and Bob needing to have access to John's old emails.
&lt;/p&gt;
&lt;pre&gt;olduser=john; newuser=bob
maildirmake -f $olduser /home/$newuser/Maildir/
cd /home/$olduser/Maildir/
for d in * ; do \
    cp -pr "$d" "/home/$newuser/Maildir/.$olduser/"; \
done
echo "INBOX.$olduser"  &amp;gt;&amp;gt;/home/$newuser/Maildir/courierimapsubscribed
for d in .??*; do \
    cp -pr "$d" "/home/$newuser/Maildir/.$olduser$d"; \
    echo "INBOX.$olduser$d" &amp;gt;&amp;gt;/home/$newuser/Maildir/courierimapsubscribed; \
done
chown -R $newuser /home/$newuser/Maildir
&lt;/pre&gt;
&lt;p&gt;(Beware that if John had a folder with a one-letter name, that one will not be copied. It's because "for d in .*" would do a mess trying to copy "." and "..". So line 6 uses "for d in .??*" instead.)
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-765988799779963654?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/765988799779963654/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=765988799779963654' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/765988799779963654'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/765988799779963654'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2010/11/moving-imap-maildir-to-another-user.html' title='Moving IMAP Maildir to another user'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-8462235267836361627</id><published>2010-02-27T16:53:00.000+01:00</published><updated>2010-02-27T17:24:11.575+01:00</updated><title type='text'>Quicktime Error 2041 an invalid sample description was found in the movie</title><content type='html'>&lt;p&gt;After converting an MPEG-TS file to mp4, I had trouble with some players. Particularly, the latest Quicktime (7.6.5) wouldn't play it, saying "Error -2041: an invalid sample description was found in the movie".
  &lt;br /&gt;
  &lt;br /&gt;Searching Google on this error turned up thousands of results, but nothing I read was directly useful. The main "solution" proposed was "rename the .mp4 file to .3gp". That seems to work in some cases for .3gp phone files which the phone happens to name .mp4.
  &lt;br /&gt;
  &lt;br /&gt;&lt;strong&gt;The only solution which worked for me was to use mp4creator with the " -aac-profile=4" option.&lt;/strong&gt;
  &lt;br /&gt;
  &lt;br /&gt;In case anybody wants to know all the details, they are below. If you happen to know the real source of the problem and/or a version of MP4Box or ffmpeg which fixes the problem, please leave a comment.
  &lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;The source file was an MPEG-TS containing h264 video and aac audio. ffmpeg reported this:
  &lt;br /&gt;
&lt;/p&gt;
&lt;pre&gt;$ ffmpeg -i INPUT_FILE.mpg
&lt;span style="font-size: smaller; color: silver;"&gt;FFmpeg version 0.5-svn17737+3:0.svn20090303-1ubuntu6, Copyright (c) 2000-2009 Fabrice Bellard, et al.
&amp;nbsp; configuration: --enable-gpl --enable-postproc --enable-swscale --enable-x11grab
 --extra-version=svn17737+3:0.svn20090303-1ubuntu6 --prefix=/usr --enable-avfilter
 --enable-avfilter-lavf --enable-libgsm --enable-libschroedinger --enable-libspeex
 --enable-libtheora --enable-libvorbis --enable-pthreads --disable-stripping --disable-vhook
 --enable-libdc1394 --disable-armv5te --disable-armv6 --disable-armv6t2 --disable-armvfp
 --disable-neon --disable-altivec --disable-vis --enable-shared --disable-static
&amp;nbsp; libavutil&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 49.15. 0 / 49.15. 0
&amp;nbsp; libavcodec&amp;nbsp;&amp;nbsp;&amp;nbsp; 52.20. 0 / 52.20. 0
&amp;nbsp; libavformat&amp;nbsp;&amp;nbsp; 52.31. 0 / 52.31. 0
&amp;nbsp; libavdevice&amp;nbsp;&amp;nbsp; 52. 1. 0 / 52. 1. 0
&amp;nbsp; libavfilter&amp;nbsp;&amp;nbsp;&amp;nbsp; 0. 4. 0 /&amp;nbsp; 0. 4. 0
&amp;nbsp; libswscale&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0. 7. 1 /&amp;nbsp; 0. 7. 1
&amp;nbsp; libpostproc&amp;nbsp;&amp;nbsp; 51. 2. 0 / 51. 2. 0
&amp;nbsp; built on Apr 10 2009 23:18:41, gcc: 4.3.3
&lt;/span&gt;
Seems stream 0 codec frame rate differs from container frame rate: 50.00 (50/1) -&amp;gt; 25.00 (25/1)
Input #0, &lt;strong&gt;mpegts&lt;/strong&gt;, from 'INPUT_FILE.mpg':
&amp;nbsp; Duration: 00:00:36.05, start: 2.050022, bitrate: 9188 kb/s
&amp;nbsp; Program 1
&amp;nbsp;&amp;nbsp;&amp;nbsp; Stream #0.0[0x810]: &lt;strong&gt;Video: h264&lt;/strong&gt;, yuv420p, 1280x688 [PAR 1:1 DAR 80:43], 25 tbr, 90k tbn, 50 tbc
&amp;nbsp;&amp;nbsp;&amp;nbsp; Stream #0.1[0x814](eng): &lt;strong&gt;Audio: aac&lt;/strong&gt;, 48000 Hz, stereo, s16, 184 kb/s
&lt;/pre&gt;
&lt;p&gt; The simple thing I did first and which gave a bad file was
  &lt;br /&gt;
&lt;/p&gt;
&lt;pre&gt;$ ffmpeg -i INPUT_FILE.mpg -vcodec copy -acodec copy -f mp4 ffmpeg.mp4&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;Looking at that file with various tools gives this:
  &lt;br /&gt;
&lt;/p&gt;
&lt;pre&gt;$ mp4info ffmpeg.mp4
mp4info version 1.6
ffmpeg.mp4:
Track&amp;nbsp;&amp;nbsp; Type&amp;nbsp;&amp;nbsp;&amp;nbsp; Info
1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; video&amp;nbsp;&amp;nbsp; H264 High@4.1, 36.000 secs, 7889 kbps, 1280x688 @ 25.000000 fps
2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; audio&amp;nbsp;&amp;nbsp; MPEG-4 &lt;strong&gt;Unknown Profile(0)&lt;/strong&gt;, 36.032 secs, &lt;strong&gt;0 kbps&lt;/strong&gt;, 48000 Hz
&amp;nbsp;Tool: Lavf52.31.0
&lt;/pre&gt;
&lt;br /&gt;
&lt;pre&gt;$ MP4Box -info ffmpeg.mp4
* Movie Info *
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Timescale 1000 - Duration 00:00:36.032
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Fragmented File no - 2 track(s)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; File Brand isom - version 512
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Created: GMT Fri Jan&amp;nbsp; 2 00:00:00 1970

File has no MPEG4 IOD/OD

iTunes Info:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Encoder Software: Lavf52.31.0

Track # 1 Info - TrackID 1 - TimeScale 50 - Duration 00:00:36.000
Media Info: Language "Undetermined" - Type "vide:avc1" - 900 samples
MPEG-4 Config: Visual Stream - ObjectTypeIndication 0x21
AVC/H264 Video - Visual Size 1280 x 688 - Profile High @ Level 4.1
NAL Unit length bits: 32
Pixel Aspect Ratio 1:1 - Indicated track size 1280 x 688
Self-synchronized

Track # 2 Info - TrackID 2 - TimeScale 48000 - Duration 00:00:36.032
Media Info: Language "English" - Type "soun:mp4a" - 1689 samples
MPEG-4 Config: Audio Stream - ObjectTypeIndication 0x40
&lt;strong&gt;Segmentation fault&lt;/strong&gt;&lt;/pre&gt;
&lt;p&gt;Next, I tried to extract them separately:
  &lt;br /&gt;
&lt;/p&gt;
&lt;pre&gt;ffmpeg -i INPUT_FILE.mpg -an -vcodec copy -f h264 video.h264
ffmpeg -i INPUT_FILE.mpg -vn -acodec copy -f aac audio.aac&lt;/pre&gt;
&lt;p&gt;and re-mux them using MP4Box (version 0.4.4):
&lt;/p&gt;
&lt;pre&gt;$ MP4Box -add video.h264#video -add audio.aac#audio mp4box.mp4&lt;/pre&gt;
&lt;p&gt;That didn't work any better, even though mp4box didn't report a segmentation fault anymore:
  &lt;br /&gt;
&lt;/p&gt;
&lt;pre&gt;$ MP4Box -info mp4box.mp4
* Movie Info *
&amp;nbsp;⁞&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Timescale 600 - Duration 00:00:36.031
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Fragmented File no - 2 track(s)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; File Brand isom - version 1
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Created: GMT Sat Feb 27 15:33:40 2010

File has root IOD
Scene PL 0xff - Graphics PL 0xff - OD PL 0xff
Visual PL: AVC/H264 Profile (0x15)
Audio PL: AAC Profile @ Level 2 (0x29)
No streams included in root OD

Track # 1 Info - TrackID 1 - TimeScale 25000 - Duration 00:00:36.000
Media Info: Language "Undetermined" - Type "vide:avc1" - 900 samples
MPEG-4 Config: Visual Stream - ObjectTypeIndication 0x21
AVC/H264 Video - Visual Size 1280 x 688 - Profile High @ Level 4.1
NAL Unit length bits: 32
Pixel Aspect Ratio 1:1 - Indicated track size 1280 x 688
Self-synchronized

Track # 2 Info - TrackID 2 - TimeScale 48000 - Duration 00:00:36.032
Media Info: Language "Undetermined" - Type "soun:mp4a" - 1689 samples
MPEG-4 Config: Audio Stream - ObjectTypeIndication 0x67
MPEG-2 Audio AAC LC - 2 Channel(s) - SampleRate 48000
Synchronized on stream 1
&lt;/pre&gt;
&lt;p&gt;and mp4info also seemed to like the file better:
  &lt;br /&gt;
&lt;/p&gt;
&lt;pre&gt;$ mp4info mp4box.mp4
mp4info version 1.6
mp4box.mp4:
Track&amp;nbsp;&amp;nbsp; Type&amp;nbsp;&amp;nbsp;&amp;nbsp; Info
1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; video&amp;nbsp;&amp;nbsp; H264 High@4.1, 36.000 secs, 7717 kbps, 1280x688 @ 25.000000 fps
2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; audio&amp;nbsp;&amp;nbsp; MPEG-2 AAC LC, 36.032 secs, 150 kbps, 48000 Hz
&lt;/pre&gt;
&lt;p&gt;Note that re-wrapping this into a Quicktime .mov file (&lt;code&gt;$ ffmpeg -i mp4box.mp4 -acodec copy -vcodec copy -f mov mp4box.mov&lt;/code&gt;) worked and gave a file Quicktime played without trouble.
&lt;/p&gt;
&lt;p&gt;But to get a working .mp4, I had to use yet another tool for the audio: mp4creator. With the &lt;code&gt;-aac-profile=4&lt;/code&gt; option:
&lt;/p&gt;
&lt;pre&gt;$ mp4creator &lt;strong&gt;-aac-profile=4&lt;/strong&gt; audio.aac mp4creator-audio.mp4
Warning - you have changed the AAC profile level.&amp;nbsp;⁞ This is not recommended
If you have problems with the resultant file, it is your own fault
Do not contact project creators&lt;/pre&gt;
&lt;p&gt;Despite the warning, this worked after re-muxing with mp4box:
&lt;/p&gt;
&lt;pre&gt;$ MP4Box -add video.h264#video -add mp4creator-audio.mp4#audio mp4box.mp4&lt;/pre&gt;
&lt;pre&gt;$ mp4info mp4box-2.mp4
mp4info version 1.6
mp4box-2.mp4:
Track&amp;nbsp;⁞⁞⁞&amp;nbsp; Type&amp;nbsp;&amp;nbsp;&amp;nbsp; Info
1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; video&amp;nbsp;&amp;nbsp; H264 High@4.1, 36.000 secs, 7717 kbps, 1280x688 @ 25.000000 fps
2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; audio&amp;nbsp;&amp;nbsp; &lt;strong&gt;MPEG-4&lt;/strong&gt; AAC LC, 36.032 secs, 150 kbps, 48000 Hz
&lt;/pre&gt;
&lt;p&gt;Examining the difference, it seems that both ffmpeg and MP4Box were making an MPEG-2 AAC track, and Quicktime wanted an MPEG-4 track instead.
  &lt;br /&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-8462235267836361627?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/8462235267836361627/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=8462235267836361627' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/8462235267836361627'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/8462235267836361627'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2010/02/quicktime-error-2041-invalid-sample.html' title='Quicktime Error 2041 an invalid sample description was found in the movie'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-6374198734253221028</id><published>2010-02-10T13:48:00.006+01:00</published><updated>2010-03-01T15:48:50.155+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='word'/><category scheme='http://www.blogger.com/atom/ns#' term='conversion'/><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='text'/><category scheme='http://www.blogger.com/atom/ns#' term='en'/><category scheme='http://www.blogger.com/atom/ns#' term='pdf'/><category scheme='http://www.blogger.com/atom/ns#' term='doc'/><title type='text'>PDF to Word conversion notes</title><content type='html'>&lt;p&gt;Had a complex PDF to convert to something editable like .doc, so I had another look at what was available.


&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.freewaregenius.com/2008/03/28/how-to-convert-pdf-to-word-doc-for-free-a-comparative-test/" target="_blank"&gt;This comparative test from 2008&lt;/a&gt; was very helpful, as were some readers' comments. It concluded by recommending the &lt;a href="http://www.koolwire.com/" target="_blank"&gt;koolwire.com&lt;/a&gt; service, which was indeed quite good, and also very convenient because it can be used through email. It produced an RTF with mostly actual tables. Visually, however, the tables in this particular case would have needed quite some re-formatting to look like the original ones.
&lt;/p&gt;
&lt;p&gt;Several readers suggested the &lt;a href="http://www.pdftoword.com/" target="_blank"&gt;PDF-to-Word service at pdftoword.com&lt;/a&gt;. For me, this gave me the best looking results. It converted the complex tables into columnized sections instead, but that was fine. (As an aside, it is not very clear which engine this service is using. It is related to &lt;a href="http://www.nitropdf.com/" target="_blank"&gt;Nitro PDF&lt;/a&gt;, a commercial Windows application which is promoted from the pdtftoword.com page. Also, the Nitro PDF pages link to the free pdftoword.com service as their free version. However, the produced Word document mentions &lt;a href="http://www.soliddocuments.com/products.htm?product=SolidConverterPDF" target="_blank"&gt;Solid Converter PDF&lt;/a&gt;,  another commercial Windows application, in it's properties. Weird...)
&lt;/p&gt;
&lt;p&gt;I also tried the &lt;a href="http://www.convertpdftoword.net/Default.aspx" target="_blank"&gt;convertpdftoword.net service&lt;/a&gt; which others suggested. It also gave a good looking Word document, but built it with tons of independent text boxes which was quite unconvenient in my case. A closer look, showed that this service was actually using &lt;a href="http://www.verypdf.com/pdf2word/index.html" target="_blank"&gt;VeryPDF's PDF2Word&lt;/a&gt;, which produced an RTF file (but with a .doc extension). PDF2Word turns out to actually be a re-packaging of xpdf, and is free (GPL) software. The source is available, but VeryPDF sells the Windows executable.
&lt;/p&gt;
&lt;p&gt;The funny thing from theses tests: the only completely useless conversions happened to be the one from Adobe itself.
&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Conclusion: I had the best results with pdftoword.com&lt;/strong&gt;. But it all depends on your source document and what you want to do with it.
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-6374198734253221028?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/6374198734253221028/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=6374198734253221028' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/6374198734253221028'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/6374198734253221028'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2010/02/pdf-to-word-conversion-notes.html' title='PDF to Word conversion notes'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-7248255190320989528</id><published>2010-01-01T15:12:00.003+01:00</published><updated>2010-01-01T16:36:55.634+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='en'/><category scheme='http://www.blogger.com/atom/ns#' term='email'/><category scheme='http://www.blogger.com/atom/ns#' term='thunderbird'/><category scheme='http://www.blogger.com/atom/ns#' term='code'/><category scheme='http://www.blogger.com/atom/ns#' term='shell'/><title type='text'>Open mbox file in Thunderbird</title><content type='html'>&lt;p&gt;Unfortunately, there seems to be no straightforward way to ask Thunderbird to open or import an Mbox mail file directly.
&lt;/p&gt;
&lt;p&gt; Say you have an mbox file, and would like to view it in Thunderbird. For this example, we will view the file in a "temp-mbox" folder under Thunderbird's "Local Folders". The convoluted way which seems to work goes like this:
&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;In Thunderbird, under Local Folders, create the new "temp-mbox" folder.&lt;/li&gt;
  &lt;li&gt;Exit Thunderbird.&lt;/li&gt;
  &lt;li&gt;Find your "Local Folders" directory in &lt;a title="How to find your Thunderbord profile location" target="_blank" href="http://kb.mozillazine.org/Profile_folder_-_Thunderbird#Finding_your_profile"&gt;your profile&lt;/a&gt;. It may be something like "&lt;span class="filename"&gt;~/.thunderbird/random-string.default/Mail/Local Folders/&lt;/span&gt;". In there, you will find a &lt;span class="filename"&gt;temp-mbox&lt;/span&gt; and a &lt;span class="filename"&gt;temp-mbox.msf&lt;/span&gt; file.&lt;/li&gt;
  &lt;li&gt;Overwrite &lt;span class="filename"&gt;temp-mbox&lt;/span&gt; with your mbox file,&lt;/li&gt;
  &lt;li&gt;and delete the &lt;span class="filename"&gt;temp-mbox.msf&lt;/span&gt; index file.&lt;/li&gt;
  &lt;li&gt;Re-open Thunderbird&lt;/li&gt;
&lt;/ul&gt;I needed to do this, because of another limitation of Thunderbird: it's poor search capabilities. Since the mails I wanted to group are on my own IMAP server, I did the search there, and put all the mails into a single file. What I wanted is all the last year's emails received from or sent to somedomain. The following got me a suitable mbox file:
&lt;pre&gt;mbox=somedomain-2009.mbox; search=@somedomain; \
find ~/Maildir/cur ~/Maildir/.Sent/cur -mtime -365 | \
while read f ; do \
if egrep "^(From|To|Cc):.*$search" "$f"; then \
  echo "From - " &amp;gt;&amp;gt;$mbox; \
  cat "$f" &amp;gt;&amp;gt;$mbox; \
fi; \
done&lt;/pre&gt;To achieve this using the TB search, I would have needed to:
&lt;ul&gt;
  &lt;li&gt;Search Inbox without subfolders for "From contains @somedomain" or "To contains @somedomain" or "Cc contains @somedomain". This also searches previous years, and takes quite a while on my IMAP folder. &lt;/li&gt;
  &lt;li&gt;Save the search&lt;/li&gt;
  &lt;li&gt;Search Sent for "To contains @somedomain" or "Cc contains @somedomain". &lt;/li&gt;
  &lt;li&gt;Save the search&lt;/li&gt;
  &lt;li&gt;Create a folder for results&lt;/li&gt;
  &lt;li&gt;Open the first saved search folders, sort by date, and copy the 2009 mails to the new results folder&lt;/li&gt;
  &lt;li&gt;Repeat with the second saved search.&lt;/li&gt;
&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-7248255190320989528?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/7248255190320989528/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=7248255190320989528' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/7248255190320989528'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/7248255190320989528'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2010/01/open-mbox-file-in-thunderbird.html' title='Open mbox file in Thunderbird'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-1911287083098663673</id><published>2009-12-30T12:42:00.004+01:00</published><updated>2010-01-02T16:18:33.862+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='en'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>OpenVPN client on Ubuntu 9.04 Jaunty</title><content type='html'>A few notes on setting up the openvpn client on Ubuntu, after my move from Windows.

Configuration through the Network Manager VPN tab didn't work for me. As far as I could see, there was no way to directly import or copy my existing .ovpn files from Windows because NM doesn't use them. Instead, it uses it's own config files, which do not provide all the options of the standard openvpn client.

The solution was to
&lt;ul&gt;&lt;li&gt;install openvpn and resolvconf so that the name servers can be updated:
&lt;code&gt;sudo apt-get install openvpn resolvocnf&lt;/code&gt;&lt;/li&gt;&lt;li&gt;copy my &lt;span class="filename"&gt;.ovpn&lt;/span&gt; and key files to &lt;span class="filename"&gt;/etc/openvpn&lt;/span&gt;,&lt;/li&gt;&lt;li&gt;install &lt;a target="_blank" href="http://gopenvpn.sourceforge.net/"&gt;gopenvpn&lt;/a&gt; to have a handy GUI launcher in the Gnome Panel. (the .deb package needs to be downloaded from the site)&lt;/li&gt;&lt;li&gt;Edit my &lt;span class="filename"&gt;.ovpn&lt;/span&gt; files to add &lt;code&gt;up /etc/openvpn/update-resolv-conf&lt;/code&gt; and &lt;code&gt;down /etc/openvpn/update-resolv-conf&lt;/code&gt;
&lt;/li&gt;&lt;/ul&gt;It seems to work fine now.

One example client .ovpn file looks like this:
&lt;pre&gt;client
dev tun
proto udp

remote hostname.example.com 1194

resolv-retry infinite
nobind
persist-key
persist-tun
mute-replay-warnings

ca example-cacert.pem
cert clientname.example.lan.pem
key clientname.example.lan.key

comp-lzo
verb 3

up /etc/openvpn/update-resolv-conf
down /etc/openvpn/update-resolv-conf&lt;/pre&gt;

2 little things are annoying: I need to enter my password, because changing the network requires root privileges. I'm sure there must be a solution, but the annoyance is probably not worth the time needed to find and apply it. And the other glitch is that window asking for my key's password sometimes opens behind the others.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-1911287083098663673?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/1911287083098663673/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=1911287083098663673' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/1911287083098663673'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/1911287083098663673'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2009/12/openvpn-client-on-ubuntu-904-jaunty.html' title='OpenVPN client on Ubuntu 9.04 Jaunty'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-2536743891175221281</id><published>2009-09-18T01:08:00.007+02:00</published><updated>2010-05-23T11:42:00.376+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='en'/><category scheme='http://www.blogger.com/atom/ns#' term='debian'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><title type='text'>Boot an iso file on your hard disk using grub</title><content type='html'>&lt;p&gt;I needed to update the firmware on several of the infamous Seagate Barracuda 7002.11 drives with the &lt;a href="http://www.theinquirer.net/inquirer/news/1050374/seagate-barracudas-7200-11-failing"&gt;buggy "SD15" firmware&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Seagate offers a &lt;a href="http://seagate.custkb.com/seagate/crm/selfservice/search.jsp?DocId=207951&amp;amp;NewLang=en"&gt;Windows executable or an ISO file&lt;/a&gt; to create a bootable CD. However, I had only a Mac, a Linux notebook without a CD drive, and a Windows notebook with neither a CD nor any possibility to attach SATA drives.&lt;/p&gt;

&lt;p&gt;After some googling, it looked like the Intel Mac could be booted from such a DOS CD, and that might have worked ... but I didn't even have a blank CD.&lt;/p&gt;

&lt;p&gt;But wouldn't it be possible to boot from an .iso file on the hard disk?&lt;/p&gt;

&lt;p&gt;As it turns out, it is. And this will probably prove quite handy to boot various Live CDs.&lt;/p&gt;

&lt;p&gt;My notebook has Ubuntu, with the standard Grub boot loader. Grub cannot boot from an iso file, but another boot loader called &lt;a href="http://en.wikipedia.org/wiki/GRUB4DOS"&gt;grub4dos&lt;/a&gt; can. And Grub can boot that smart cousin of his... Yes, it's a sort of weird setup, but it worked for me.&lt;/p&gt;

&lt;p&gt;There are also ways to do that on a Windows system. But here is the Linux version:&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;Get grub4dos from &lt;a href="http://sourceforge.net/projects/grub4dos/"&gt;sourceforge&lt;/a&gt; or &lt;a href="http://gna.org/projects/grub4dos/"&gt;gna.org&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;Extract grub.exe from the zip file and copy it to your /boot directory.&lt;/li&gt;&lt;li&gt;Also put the .iso you want to boot into your /boot directory.&lt;/li&gt;&lt;li&gt;Edit your /boot/grub/menu.lst file and add these lines:&lt;/li&gt;&lt;/ol&gt;&lt;pre&gt;title == Use grub4dos for the following entries: ==

title 1: Reload this menu using grub4dos to enable booting the next entries
kernel /boot/grub.exe

title 2: boot the Seagate firmware ISO file
map --mem /boot/MooseDT-SD1A-3D4D-16-32MB.ISO (hd32)
map --hook
chainloader (hd32)
&lt;/pre&gt;&lt;p&gt;(Adapt the "title 2: ..." line, and of course the "map --mem /boot/name-of-your.iso" line with the right file name.  Note that it is case-sensitive)&lt;/p&gt;

&lt;p&gt;When booting, you will first be in your standard grub, where you select the "1: ..." entry to load grub4dos. It will do just like grub, find the same menu.lst file, and display it again. Now you can select the .iso entry, which grub4dos will understand.&lt;/p&gt;

&lt;p&gt;It is probably also possible to store the iso files on other partitions, but that is "left as an exercise to the reader" ...&lt;/p&gt;

&lt;p&gt;See also: &lt;a href="http://grub4dos.sourceforge.net/wiki/index.php/Grub4dos_tutorial"&gt;the wiki&lt;/a&gt;, &lt;a href="http://diddy.boot-land.net/grub4dos/files/install_linux.htm"&gt;this guide&lt;/a&gt;, &lt;a href="http://www.boot-land.net/forums/index.php?showtopic=5041"&gt;a "success stories" thread&lt;/a&gt; or &lt;a href="http://www.boot-land.net/forums/index.php?showtopic=8634"&gt;this other thread with a much hairier setup&lt;/a&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-2536743891175221281?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/2536743891175221281/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=2536743891175221281' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/2536743891175221281'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/2536743891175221281'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2009/09/boot-iso-file-on-your-hard-disk-using.html' title='Boot an iso file on your hard disk using grub'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-8102614729398254633</id><published>2009-06-22T00:02:00.006+02:00</published><updated>2009-06-22T14:01:44.357+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='fr'/><category scheme='http://www.blogger.com/atom/ns#' term='music'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><category scheme='http://www.blogger.com/atom/ns#' term='rants'/><category scheme='http://www.blogger.com/atom/ns#' term='ch'/><title type='text'>Pirater la musique, c'est mal</title><content type='html'>&lt;p&gt;...
&lt;/p&gt;
&lt;p&gt;Il faut l'acheter pour que les &lt;span style="text-decoration: line-through;color:silver;" &gt;multinationales du disque ne finissent pas comme les constructeurs de voitures américains&lt;/span&gt; artistes gagnent quelque chose. Alors j'essaye...
&lt;/p&gt;
&lt;p&gt;J'étais allé voir iTunes il y a des années, mais c'était réservé aux américains, et ne proposait que des fichiers cryptés que je ne pouvais pas écouter sur l'appareil de mon choix.
&lt;/p&gt;
&lt;p&gt;Puis sont venus les .mp3 de Amazon.com. Je m'y suis précipité, mais ils sont réservés aux américains.
&lt;/p&gt;
&lt;p&gt;Depuis, iTunes est disponible en Suisse, et il paraît qu'ils ont enfin renoncé au DRM dans leurs fichiers. Alors j'essaye itunes.ch. Pour découvrir que je ne peux télécharger de la musique que si j'installe le programme iTunes sur un ordinateur Mac ou Windows. Non merci.
&lt;/p&gt;
&lt;p&gt; Après de longues recherches par Google qui me propose des dizaines de sites et de manières de télécharger immédiatement la musique que je souhaite par divers moyens illégaux, je découvre Qobuz.com qui semble très intéressant. Hélas, c'était durant un week-end où leurs serveurs souffraient de pannes, et je n'arrive à rien.
&lt;/p&gt;
&lt;p&gt;Quelques semaines plus tard je retourne sur Qobuz.com, et j'y fais mon choix. Au moment de "passer à la caisse", je suis envoyé chez ClickandBuy qui semble être leur seul moyen de payement. ClickandBuy prend note de toutes mes données de carte de crédit, adresse, téléphone, etc. puis doit absolument m'envoyer un SMS avec un code de confirmation. Hélas, le code n'arrive jamais, malgré 2 tentatives, et mes vérifications minutieuses du numéro de téléphone portable que je leur donne.
&lt;/p&gt;
&lt;p&gt;Mais j'ai entendu dire que Amazon France offrait enfin aussi des .mp3. J'y trouve ce que je veux, mais au moment de mettre la musique à télécharger dans mon "panier", je reçois ce message: "&lt;quote&gt;Message important Nous sommes désolés. Nous n'avons pas pu traiter votre commande en raison de restrictions géographiques appliquées au produit que vous avez essayé d'acheter. Veuillez consulter les conditions d'utilisation de ce produit pour déterminer les restrictions géographiques applicables. Nous nous excusons pour la gêne occasionnée.&lt;/quote&gt;"
&lt;/p&gt;
&lt;p&gt;Heureusement, je peux écouter toutes ces musiques chez mon voisin, qui semble connaître de meilleurs moyens pour se procurer de la musique rapidement et sans complications...
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-8102614729398254633?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/8102614729398254633/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=8102614729398254633' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/8102614729398254633'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/8102614729398254633'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2009/06/pirater-la-musique-cest-mal.html' title='Pirater la musique, c&apos;est mal'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-2502912679714762454</id><published>2009-05-23T11:49:00.020+02:00</published><updated>2010-11-09T11:24:29.772+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='en'/><category scheme='http://www.blogger.com/atom/ns#' term='partitions'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><title type='text'>Hard drive partitions and file system essentials</title><content type='html'>&lt;p&gt;What most normal users need to know about hard disk partitions and filesystems to be able to move hard disks between various operating systems like Mac or Windows.
&lt;/p&gt;
&lt;p&gt;Hard disks contain 1 or more partitions. To the user, each partition appears as if it were a separate hard disk.
&lt;/p&gt;
&lt;p class="smallnote"&gt;(In Windows, each partition receives a separate drive letter like C:, D:, etc.; on a Mac, you see a separate icon on the desktop for each partition; in Linux, each is a device like /dev/sdb1, /dev/sdb2, etc.)
&lt;/p&gt;
&lt;p&gt; Every partition needs to be formatted with a file system to let the operating system store and retrieve files. &lt;span class="smallnote"&gt;(On Mac, this formatting process is called "erasing")&lt;/span&gt;
&lt;/p&gt;
&lt;p&gt; There are many different types of file systems. Your system needs to understand these file systems to be able to use them. Unfortunately, various operating systems use different file systems. The problem is to find which one will be understood by all the systems you intend to connect your drive to. Also, some systems only support reading some file systems, not writing to them.
&lt;/p&gt;
&lt;h4&gt;Summary
&lt;/h4&gt;
&lt;p&gt;Below is a table trying to summarize the compatibility between the 3 main operating systems and the 4 main file system types. There are many others, but if you know about them, you probably don't need this page.
&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;table style="width: 100%; vertical-align: top;" border="1" cellpadding="1" cellspacing="1"&gt;&lt;tbody&gt;
  &lt;tr&gt;
    &lt;td&gt;
    &lt;br /&gt;&lt;/td&gt;
    &lt;td&gt; Windows &lt;/td&gt;
    &lt;td&gt; Mac OS X&lt;/td&gt;
    &lt;td&gt; Linux&lt;/td&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td&gt;FAT32 or DOS &lt;/td&gt;
    &lt;td style="background-color: rgb(0, 255, 0);"&gt;
    &lt;p&gt; Native support
    &lt;/p&gt;
    &lt;p&gt;Max. 4GB. file size
    &lt;/p&gt;&lt;/td&gt;
    &lt;td style="background-color: rgb(0, 255, 0);"&gt;
    &lt;p&gt;Read/Write
    &lt;/p&gt;
    &lt;p&gt;Max. 4GB. file size
    &lt;/p&gt;&lt;/td&gt;
    &lt;td style="background-color: rgb(0, 255, 0);"&gt;
    &lt;p&gt;Read/Write
    &lt;/p&gt;
    &lt;p&gt;Max. 4GB. file size
    &lt;/p&gt;&lt;/td&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td&gt;NTFS&lt;/td&gt;
    &lt;td style="background-color: rgb(0, 255, 0);"&gt;Native support&lt;/td&gt;
    &lt;td style="background-color: rgb(165, 255, 75);"&gt;
    &lt;p&gt;Read only.
    &lt;/p&gt;
    &lt;p&gt;Write support through external drivers. &lt;a href="#mac_ntfs"&gt;&lt;sup&gt;1&lt;/sup&gt;&lt;/a&gt;
    &lt;/p&gt;&lt;/td&gt;
    &lt;td style="background-color: rgb(64, 255, 112);"&gt;Read/Write on recent distributions. &lt;a href="#linux_ntfs"&gt;&lt;sup&gt;2&lt;/sup&gt;&lt;/a&gt; &lt;/td&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td&gt;HFS+ or "Mac OS extended" &lt;/td&gt;
    &lt;td style="background-color: rgb(255, 255, 105);"&gt;Requires third party programs for reading and writing. &lt;a href="#win_hfs"&gt;&lt;sup&gt;3&lt;/sup&gt;&lt;/a&gt;&lt;/td&gt;
    &lt;td style="background-color: rgb(0, 255, 0);"&gt;Native support &lt;/td&gt;
    &lt;td style="background-color: rgb(206, 255, 105);"&gt;
    &lt;p&gt;Read only.
    &lt;/p&gt;
    &lt;p&gt;Write if the journaling feature has been turned off in Mac OS X. &lt;a href="#linux_hfs"&gt;&lt;sup&gt;4&lt;/sup&gt;&lt;/a&gt;
    &lt;/p&gt;&lt;/td&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td&gt;Ext2 or Ext3 &lt;/td&gt;
    &lt;td style="background-color: rgb(165, 255, 75);"&gt; Free drivers allow Read/Write access.&lt;a href="#win_ext2"&gt;&lt;sup&gt;5&lt;/sup&gt;&lt;/a&gt;&lt;/td&gt;
    &lt;td style="background-color: rgb(255, 255, 105);"&gt;Requires commercial driver. &lt;a href="#mac_ext2"&gt;&lt;sup&gt;6&lt;/sup&gt;&lt;/a&gt; &lt;/td&gt;
    &lt;td style="background-color: rgb(0, 255, 0);"&gt;Native support &lt;/td&gt;
  &lt;/tr&gt;&lt;/tbody&gt;
&lt;/table&gt;
&lt;h5&gt;FAT or FAT32 (named "MS-DOS" in Macs)
&lt;/h5&gt;
&lt;p&gt;This the oldest of the file systems commonly used today. As such, it has the greatest compatibility and the least functionality. It is a sort of lowest common denominator.
&lt;/p&gt;
&lt;p&gt;All operating systems can read and write to it. It is the file system generally used on USB flash drives, memory cards for photo cameras, etc.
&lt;/p&gt;
&lt;p&gt;It cannot store files greater than 4 Gigabytes. It is also the least reliable of the current file systems, and has many other drawbacks &lt;span class="smallnote"&gt;(fragmentation, no support for permission, time stamps in local time and with only 2 seconds resolution, etc.)&lt;/span&gt;
&lt;/p&gt;
&lt;p class="smallnote"&gt;The Windows disk manager refuses to format a FAT32 partition greater than 32 GB. But it can be formatted in Windows with the &lt;a target="_blank" href="http://www.ridgecrop.demon.co.uk/fat32format.htm"&gt;free fat32format.exe utility&lt;/a&gt;, or can be formatted to the wanted size on Mac or Linux.
&lt;/p&gt;
&lt;h5&gt; NTFS
&lt;/h5&gt;
&lt;p&gt;Is the native file system of Windows.
&lt;/p&gt;
&lt;p&gt;Macs can read it, but cannot write to it.
&lt;/p&gt;
&lt;p&gt;However, there is a Mac version of the open source NTFS-3G driver which can write to NTFS. &lt;a href="#mac_ntfs"&gt;&lt;sup&gt;1&lt;/sup&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;Recent Linux versions can both read it and write to it (thes usually have this NTFS-3G driver installed by default). &lt;a href="#linux_ntfs"&gt;&lt;sup&gt;2&lt;/sup&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;h5&gt;HFS aka. "Mac OS X" HFS+ aka. "Mac OS X Extended (journaled)"
&lt;/h5&gt;
&lt;p&gt;Is the native file system on Macs.The Mac default is the HFS+ journaled variant.
&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;p&gt;Windows needs special programs installed to be able to read or write it. &lt;a href="#win_hfs"&gt;&lt;sup&gt;3&lt;/sup&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;p&gt;Linux can read it when it has the hfsutils package installed. It can also write to it if journaling has been disabled. &lt;a href="#linux_hfs"&gt;&lt;sup&gt;4&lt;/sup&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;h5&gt;Ext2 or Ext3
&lt;/h5&gt;
&lt;p&gt; is the most common file system on Linux.
&lt;/p&gt;
&lt;p class="smallnote"&gt;(If you wonder why you would need to know anything about Linux: while it is not very common as a desktop operating system, it is the system used in almost all your non-computer devices which contain a hard disk, like your NAS backup disk, your media player, etc. If that device breaks, you may be able to recover the files from it's hard disk by connecting it to your main computer and installing the driver for the ext2 file system)
&lt;/p&gt;
&lt;p&gt; Windows can read and write to it using free drivers. &lt;a href="#win_ext2"&gt;&lt;sup&gt;5&lt;/sup&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;There is a Mac driver, but it may be problematic. &lt;a href="#mac_ext2"&gt;&lt;sup&gt;6&lt;/sup&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;h6&gt;Footnotes:
&lt;/h6&gt;
&lt;p id="mac_ntfs"&gt;1. &lt;strong&gt;Mac -&amp;gt; NTFS&lt;/strong&gt; : The free and open source ntfs-3g driver for Mac is available on &lt;a title="NTFS-3g for Mac - open source" target="_blank" href="http://sourceforge.net/projects/catacombae/files/"&gt;http://sourceforge.net/projects/catacombae/files/&lt;/a&gt;. The &lt;a title="Tuxera NTFS-3g - commercial" target="_blank" href="http://www.tuxera.com/products/tuxera-ntfs-for-mac/"&gt;commercial version&lt;/a&gt; is based on the same code, but improves speed. You may also want to have a look at the &lt;a target="_blank" href="http://hem.bredband.net/catacombae/ntfs-3g/macntfs-3g_userguide.pdf"&gt;user guide&lt;/a&gt; and the &lt;a target="_blank" href="http://macntfs-3g.blogspot.com/"&gt;macntfs-3g blog&lt;/a&gt;.
  &lt;br /&gt;
&lt;/p&gt;
&lt;p id="linux_ntfs"&gt;2. &lt;strong&gt;Linux -&amp;gt; NTFS&lt;/strong&gt; : In case you have an older distribution which doesn't have it pre-installed, you can normally install "ntfs-3g" using your distribution's package manager. Or have a look at their &lt;a target="_blank" href="http://www.ntfs-3g.org/distributions.html"&gt;availability page&lt;/a&gt;.
&lt;/p&gt;
&lt;p id="win_hfs"&gt;3. &lt;strong&gt;Windows -&amp;gt; HFS&lt;/strong&gt; : If you only need to copy files from a Mac disk to your Windows machine, you can use the free &lt;a target="_blank" href="http://hem.bredband.net/catacombae/hfsx.html"&gt;HFSExplorer&lt;/a&gt;, which will open your drive in a Windows Explorer-like window and let you copy files from there.
&lt;/p&gt;
&lt;p&gt;For full support, you may need commercial software like &lt;a href="http://www.amazon.com/gp/redirect.html?ie=UTF8&amp;amp;location=http://www.amazon.com/s?ie=UTF8&amp;amp;ref_=nb_ss&amp;amp;field-keywords=macdrive&amp;amp;url=search-alias=software&amp;amp;tag=bahutblog-20&amp;amp;linkCode=ur2&amp;amp;camp=1789&amp;amp;creative=390957"&gt;MacDrive&lt;/a&gt;&lt;img src="https://www.assoc-amazon.com/e/ir?t=bahutblog-20&amp;amp;l=ur2&amp;amp;o=1" style="border: medium none ! important; margin: 0px ! important;" height="1" width="1" border="0" /&gt; or similar.
&lt;/p&gt;
&lt;p id="linux_hfs"&gt;4. &lt;strong&gt;Linux -&amp;gt; HFS&lt;/strong&gt; : If it isn't already on your system, you will need to install the "hfsutils" package.
&lt;/p&gt;
&lt;p&gt;If you need to write to the HFS disk, journaling must be disabled. You need to do this on a Mac. Afterwards, you can re-enable journaling (again on a Mac). To disable journaling on a Mac, open Disk Utility, select the volume, hold the Option (or Alt) key while opening the File menu, which will make the "Disable Journal" menu entry appear in the menu. Alternatively, you can enter &lt;code&gt;diskutil disableJournal "/Volumes/&lt;em&gt;YOUR_VOLUME_NAME&lt;/em&gt;"&lt;/code&gt; in Terminal
&lt;/p&gt;
&lt;p id="win_ext2"&gt;5. &lt;strong&gt;Windows -&amp;gt; ext2/3&lt;/strong&gt; : There are 2 free drivers. The open source one is at &lt;a target="_blank" href="http://www.ext2fsd.com/"&gt;http://www.ext2fsd.com/&lt;/a&gt; and the closed source one is at &lt;a target="_blank" href="http://www.fs-driver.org/"&gt;http://www.fs-driver.org/&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;6. &lt;strong&gt;Mac -&amp;gt; Ext2/3&lt;/strong&gt; : You can try the commercial &lt;a target="_blank" href="http://www.paragon-software.com/home/extfs-mac/"&gt;ExtFS for Mac OS X&lt;/a&gt;. Or the open source &lt;a target="_blank" title="Fuse-ext2 on Sourceforge" href="http://sourceforge.net/projects/fuse-ext2/"&gt;fuse-ext2&lt;/a&gt; which I have never tried. &lt;span class="smallnote"&gt;(There is also another free open source driver (http://sourceforge.net/projects/ext2fsx), but that project doesn't seem to be actively maintained. It may have worked well on older Mac OS versions, but when I tried a simple folder move with the current version 1.4d4 on a Mac OS X 10.5 system, it made the system crash hard, and left a badly corrupted drive, which I had to repair using e2fsck on Linux.)&lt;/span&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-2502912679714762454?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/2502912679714762454/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=2502912679714762454' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/2502912679714762454'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/2502912679714762454'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2009/05/hard-drive-partitions-and-file-system.html' title='Hard drive partitions and file system essentials'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-5972389058572494287</id><published>2009-04-24T10:05:00.006+02:00</published><updated>2009-04-24T10:22:03.347+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='en'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><title type='text'>The Is Your New Bicycle Meme Revisited</title><content type='html'>&lt;p&gt;Even though the '... Is Your New Bicycle' meme is already over a year old, I couldn't resist adding to it. So here is a new meta-meme-site for your amusement:
&lt;/p&gt;
&lt;p&gt; &lt;a target="_blank" href="http://allyournewbicycles.com/"&gt;allyournewbicylces.com fetches new 'Is Your New Bicycle' quotes for you&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a target="_blank" href="http://allyournewbicylces.com/"&gt;&lt;/a&gt; It has a list of the best sites which are still alive, selects one, gets you a fresh quote from it, and displays it using the obligatory layout, with a helpful link to the original source site in the corner.
&lt;/p&gt;
&lt;p&gt; And in case you find it easier to remember, it even has an alternative name: &lt;a target="_blank" href="http://thisisyournewbicycle.com/"&gt;thisisyournewbicycle.com&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;If you had not heard about this American election year meme, &lt;a target="_blank" href="http://barackobamaisyournewbicycle.com/"&gt;this is the original site&lt;/a&gt; (which even became a &lt;a target="_blank" href="http://www.amazon.com/gp/product/1592404162?ie=UTF8&amp;amp;tag=bahutblog-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=9325&amp;amp;creativeASIN=1592404162"&gt;book&lt;/a&gt;),&lt;img src="http://www.assoc-amazon.com/e/ir?t=bahutblog-20&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=1592404162" style="border: medium none ! important; margin: 0px ! important;" border="0" width="1" height="1" /&gt; and &lt;a target="_blank" href="http://blogs.chicagotribune.com/news_columnists_ezorn/2008/02/my-new-bicycle.html"&gt;here is an article&lt;/a&gt; about it.
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-5972389058572494287?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/5972389058572494287/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=5972389058572494287' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/5972389058572494287'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/5972389058572494287'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2009/04/is-your-new-bicycle-meme-revisited.html' title='The Is Your New Bicycle Meme Revisited'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-2326486223529111247</id><published>2009-03-18T10:33:00.006+01:00</published><updated>2009-03-18T15:31:28.149+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='conversion'/><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='en'/><category scheme='http://www.blogger.com/atom/ns#' term='debian'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><title type='text'>Installing latest FFMPEG on Debian Etch</title><content type='html'>&lt;p&gt;How to install the latest FFMPEG on a Debian 4 ("Etch") server? &lt;a title="PhillC Journal on Slashdot: Install FFMPEG on Debian Etch" target="_blank" href="http://slashdot.org/~PhillC/journal/190325"&gt;This post&lt;/a&gt; encouraged me to try it, despite the fact that it needs compiling from source, and that Etch isn't even the current "stable" Debian anymore. PhillC's post helped a lot, but it still didn't work for me exactly as described there. So here is how it eventually did work for me.
&lt;/p&gt;
&lt;pre&gt;# echo "deb http://www.debian-multimedia.org etch main" &amp;gt;&amp;gt;/etc/apt/sources.list&lt;/pre&gt;
&lt;p&gt;or
&lt;/p&gt;
&lt;pre&gt;# echo "deb http://www.debian-multimedia.org stable main" &amp;gt;&amp;gt;/etc/apt/sources.list&lt;/pre&gt;
&lt;p&gt;(I used both, and fiddled with enabling and disabling that repository, so I'm not sure anymore which one ended up being useful).
&lt;/p&gt;
&lt;p&gt;&lt;code&gt;aptitude update&lt;/code&gt; gave me a GPG error, so I had to add the key it mentioned:
&lt;/p&gt;
&lt;pre&gt;# gpg --keyserver hkp://wwwkeys.eu.pgp.net --recv-keys 07DC563D1F41B907
# gpg --armor --export 07DC563D1F41B907 | apt-key add -
# aptitude update&lt;/pre&gt;
&lt;p&gt; The following didn't work, or only worked partially:
&lt;/p&gt;
&lt;pre&gt;# apt-get build-dep ffmpeg
&lt;/pre&gt;
&lt;pre&gt;Reading package lists... Done
Building dependency tree... Done
E: Unable to find a source package for ffmpegcvs&lt;/pre&gt;I continued anyway with the long install line of various libraries. I had to remove some of these libraries from the suggested install line. Particularly, since I had to recompile libx264 anyway, I should have removed libx264-dev at this point. It is removed in the line below:
&lt;pre&gt;# aptitude install liblame-dev libfaad-dev libfaac-dev libxvidcore4-dev liba52-0.7.4 liba52-0.7.4-dev build-essential subversion

# cd /usr/src
# svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg&lt;/pre&gt;
&lt;p&gt;And so I got the current version as of March 17:
&lt;/p&gt;
&lt;pre&gt;Checked out external at revision 28979.&lt;/pre&gt;
&lt;pre&gt;Checked out revision 18021.&lt;/pre&gt;
&lt;p&gt;And I tried configure:
&lt;/p&gt;
&lt;pre&gt;# cd /usr/src/ffmpeg
# ./configure --enable-gpl --enable-pp --enable-libvorbis --enable-liba52 --enable-libdc1394 --enable-libgsm --enable-libmp3lame --enable-libfaad --enable-libfaac --enable-pthreads --enable-libx264 -enable-libxvid
&lt;/pre&gt;
&lt;p&gt;After various errors, and removing options, I ended up with this error:
&lt;/p&gt;
&lt;pre&gt;ERROR: libx264 version must be &amp;gt;= 0.65.&lt;/pre&gt;
&lt;p&gt;And trying to install that from the debian-multimedia.org repository didn't work either:
&lt;/p&gt;
&lt;pre&gt;# aptitude install libx264-65&lt;/pre&gt;
&lt;pre&gt;The following packages have unmet dependencies:
libx264-65: Depends: libc6 (&amp;gt;= 2.7-1) but 2.3.6.ds1-13etch8 is installed and it is kept back.&lt;/pre&gt;So &lt;a title="Ubuntu Forums: HOWTO: Install and use the latest FFmpeg and x264" target="_blank" href="http://ubuntuforums.org/showthread.php?t=786095"&gt;this thread&lt;/a&gt; came to rescue, and I embarked on getting x264 and compiling that from source too:
&lt;pre&gt;# aptitude install git git-core&lt;/pre&gt;
&lt;p&gt;Trying to use Git at this point gives an error, but suggests the solution:
&lt;/p&gt;
&lt;pre&gt;# update-alternatives --config git&lt;/pre&gt;
&lt;pre&gt;There are 2 alternatives which provide `git'.
Selection    Alternative
-----------------------------------------------
*+        1    /usr/bin/git.transition
        2    /usr/bin/git-scm

Press enter to keep the default[*], or type selection number: 2&lt;/pre&gt;
&lt;p&gt;Next steps:
&lt;/p&gt;
&lt;pre&gt;# cd /usr/src/
# git clone git://git.videolan.org/x264.git
# cd x264
# ./configure --enable-shared&lt;/pre&gt;
&lt;p&gt;This gave an error about yasm, which was not the right version. I could have tried to compile that too, as shown on the Ubuntu forum, but impatiently decided to try the suggested disable option instead. So the x264 part which worked:
&lt;/p&gt;
&lt;pre&gt;# ./configure --enable-shared --disable-asm
# make
# make install
# ldconfig
&lt;/pre&gt;
&lt;p&gt; And finally, ffmpeg:
&lt;/p&gt;
&lt;pre&gt;# cd /usr/src/ffmpeg/
# ./configure --enable-gpl --enable-postproc --enable-pthreads --enable-libfaac --enable-libfaad --enable-libmp3lame --enable-libx264 --enable-libxvid
# make
# make install&lt;/pre&gt;I also had to remove the old ffmpeg version (&lt;code&gt;aptitude purge ffmpeg&lt;/code&gt;) which I had installed some time before this, and finally did this:
&lt;pre&gt;# echo /usr/local/lib &amp;gt;&amp;gt; /etc/ld.so.conf.d/local.conf
# ldconfig&lt;/pre&gt;
&lt;p&gt;Since I had a leftover libx264 installed with aptitude and which was too old, that caused a segmentation fault when I tried to encode with ffmpeg. After searching (&lt;code&gt;aptitude search x264&lt;/code&gt;), I found i had to &lt;code&gt;aptitude purge libx264-54 libx264-dev&lt;/code&gt; . Then, just to be sure, I re-did the &lt;code&gt;./configure&lt;/code&gt;, &lt;code&gt;make clean&lt;/code&gt;, &lt;code&gt;make&lt;/code&gt;, &lt;code&gt;make install&lt;/code&gt; incantations for both x264 and ffmpeg.
&lt;/p&gt;
&lt;p&gt;In the end, ffmpeg is working. I suppose the --disable-asm option on x264 will make encoding slower, so it may be worth compiling yasm, and re-compiling x264 again.
&lt;/p&gt;
&lt;p&gt;Now that ffmpeg is working, the main problem is trying to understand it's myriad of incomprehensible and cryptically documented options.
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-2326486223529111247?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/2326486223529111247/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=2326486223529111247' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/2326486223529111247'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/2326486223529111247'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2009/03/installing-latest-ffmpeg-on-debian-etch.html' title='Installing latest FFMPEG on Debian Etch'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-8206046236650457219</id><published>2009-01-23T08:39:00.005+01:00</published><updated>2009-01-23T11:50:49.492+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='conversion'/><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='en'/><category scheme='http://www.blogger.com/atom/ns#' term='code'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Encoding video sizes</title><content type='html'>&lt;p&gt;Video compression usually works on square blocks of pixels. These can have sizes of 8x8 or 16x16 or other powers of 2. H264 (AVC) for example, uses macroblocks of 16x16.
&lt;/p&gt;
&lt;p&gt; So when compressing video, it helps if the frame size is such that both width and height are evenly divisible by 16 or at least by 8. This is why videos encoded for the web or for portable video players are often not exactly in a 16/9 aspect ratio. The PSP's screen, for example, is 480 x 272 even though true 16/9 would require 480 x 270. But 270 is not divisible by 16 whereas 272 is. Youtube uses 640x360, which is true 16/9 and divisible by 8. If you use other sizes, FFmpeg will print a message like
&lt;/p&gt;
&lt;blockquote&gt;width or height not divisible by 16 (480x270), compression will suffer.
&lt;/blockquote&gt;
&lt;p&gt;So what are the sizes which are both the right aspect ratio and nicely divisible by 16 or by 8? This little Perl script will let us know:
&lt;/p&gt;
&lt;pre&gt;#!/usr/bin/perl

my $aspect_width  = 16;
my $aspect_height = 9;
my $max_height = 1200;
my @dividers = (16, 8);

for my $divider (@dividers) {

print "$aspect_width/$aspect_height with both ",
     "width and height divisible by $divider :\n\n";

# try sizes up to Full HD
for my $i (1..$max_height/$aspect_height) {
   my $h = $aspect_height * $i;
   unless ($h % $divider) {
       my $w = $aspect_width * $i;
       printf "$aspect_width/$aspect_height divisible by %2d : %4d x %4d\n",
              $divider, $w, $h;
   }
}

print "\n";
}&lt;/pre&gt;
&lt;p&gt;For 16/9, this gives, among others, numbers like
&lt;/p&gt;
&lt;pre&gt;16/9 divisible by 16 :  256 x  144
16/9 divisible by 16 :  512 x  288
16/9 divisible by 16 :  768 x  432
16/9 divisible by 16 : 1024 x  576
16/9 divisible by 16 : 1280 x  720&lt;/pre&gt;
&lt;p&gt; For sizes divisible by 8, you obviously have all of the above, plus (among others):
&lt;/p&gt;
&lt;pre&gt;16/9 divisible by  8 :  384 x  216
16/9 divisible by  8 :  640 x  360
16/9 divisible by  8 :  896 x  504
16/9 divisible by  8 : 1920 x 1080
16/9 divisible by  8 : 2048 x 1152
&lt;/pre&gt;
&lt;p&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-8206046236650457219?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/8206046236650457219/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=8206046236650457219' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/8206046236650457219'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/8206046236650457219'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2009/01/encoding-video-sizes.html' title='Encoding video sizes'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-3799186199630323109</id><published>2009-01-11T16:31:00.005+01:00</published><updated>2009-01-20T14:33:47.573+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='win7'/><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='en'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='GUI'/><title type='text'>try windows 7 beta</title><content type='html'>So we can try this Windows 7 beta now, which is said to be better than Vista, and which we'll have to get used to anyway. Here a few tips which I may need when I find a machine  to try it on, and which may help you too.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The &lt;a href="http://www.microsoft.com/windows/windows-7/beta-download.aspx"&gt;official download&lt;/a&gt; seems to only work with IE 7, but if you get the direct link it does work normally. So with wget, that would be:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For the 32 bit version:&lt;/div&gt;&lt;pre&gt;wget -c http://download.microsoft.com/download/6/3/3/633118BD-6C3D-45A4-B985-F0FDFFE1B021/EN/7000.0.081212-1400_client_en-us_Ultimate-GB1CULFRE_EN_DVD.ISO&lt;/pre&gt;&lt;div&gt;And for the 64 bit version:&lt;/div&gt;&lt;pre&gt;wget -c http://download.microsoft.com/download/6/3/3/633118BD-6C3D-45A4-B985-F0FDFFE1B021/EN/7000.0.081212-1400_client_en-us_Ultimate-GB1CULXFRE_EN_DVD.ISO&lt;/pre&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;To have the beta working until August, you need a key. Apparently, there are only a few keys used:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;7XRCQ-RPY28-YY9P8-R6HD8-84GH3&lt;/div&gt;&lt;div&gt;RFFTV-J6K7W-MHBQJ-XYMMJ-Q8DCH&lt;/div&gt;&lt;div&gt;482XP-6J9WR-4JXT3-VBPP6-FQF4M&lt;/div&gt;&lt;div&gt;D9RHV-JG8XC-C77H2-3YF6D-RYRJ9&lt;/div&gt;&lt;div&gt;JYDV8-H8VXG-74RPT-6BJPB-X42V4&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;4HJRK-X6Q28-HWRFY-WDYHJ-K8HDH&lt;/div&gt;&lt;div&gt;QXV7B-K78W2-QGPR6-9FWH9-KGMM7&lt;/div&gt;&lt;div&gt;6JKV2-QPB8H-RQ893-FW7TM-PBJ73&lt;/div&gt;&lt;div&gt;GG4MQ-MGK72-HVXFW-KHCRF-KW6KY&lt;/div&gt;&lt;div&gt;TQ32R-WFBDM-GFHD2-QGVMH-3P9GC&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Possibly also useful:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a target="_blank" href="http://it-experts.dk/blogs/rsj/archive/2009/01/01/booting-windows-7-from-a-vhd-file.aspx"&gt;booting Windows 7 from a VHD file&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://garyshortblog.wordpress.com/2009/01/10/how-to-install-windows-7-beta-on-an-acer-aspire-one-netbook/"&gt;How to Install Windows 7 Beta on an Acer Aspire One Netbook&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://tech.slashdot.org/article.pl?sid=09/01/10/1943242"&gt;A horde of geeks discussing it&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://arstechnica.com/news.ars/post/20081030-windows-7-management-features-will-make-it-admins-grin.html"&gt;Windows 7 management features will make IT admins grin&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://arstechnica.com/articles/paedia/windows-7-beta.ars"&gt;Deep inside the Windows 7 Public Beta: an in-depth tour&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-3799186199630323109?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/3799186199630323109/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=3799186199630323109' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/3799186199630323109'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/3799186199630323109'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2009/01/try-windows-7-beta_11.html' title='try windows 7 beta'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-5543552975214397088</id><published>2008-12-19T15:22:00.012+01:00</published><updated>2009-05-27T18:09:03.777+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='en'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><title type='text'>Synology NAS tips</title><content type='html'>I recently had to setup 2 Synology 107+ NAS devices. Here a few tips that others may find useful. I didn't want to hack the devices with a different firmware, so I had to deal with Synology's own hacks and quirks. (the firmware I got on the boxes is DSM 2.0-0728)
&lt;h4&gt;Quick start for the impatient:
&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;The DiskStation is probably accessible at &lt;a target="_blank" href="http://192.168.1.1:5000/"&gt;http://192.168.1.1:5000&lt;/a&gt;. Change the IP address manually to a fixed IP working on your network.&lt;/li&gt;
&lt;li&gt;Set a password for the admin user. The same password will be used for root SSH.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;IP address trouble
&lt;/h4&gt;As detailed in &lt;a target="_blank" href="http://www.synology.com/enu/forum/viewtopic.php?f=7&amp;amp;t=11819"&gt;this forum post&lt;/a&gt;, the 107+ grabbed my router's IP 192.168.1.1 instead of getting one through DHCP. Once I had found out (which took me a while), it was easy to fix by connecting directly my machine without the rest of the network, and giving it a good fixed IP. (at this stage, it was not possible to set it up for DHCP. The device doesn't take the setting if it can't get an address straight away).
&lt;h4&gt;SSH access
&lt;/h4&gt;You can login as root through SSH, but you must first define a password for the admin user through the web interface. root uses the same password. (and obviously, you have to also enable SSH in the web interface).
&lt;h4&gt;Ergonomy
&lt;/h4&gt;Like most small Linux devices, this one doesn't have &lt;a target="_blank" href="http://en.wikipedia.org/wiki/Midnight_Commander"&gt;Midnight Commander&lt;/a&gt; installed, so you don't have a file manager to make things easier. Worst of all, it doesn't even have a decent text editor (no, vi does not count as "decent"; that's just a nightmare left over from someone's bad trip during the sixties.) Instead of replacing the firmware so that one can install additional software, the quickest solution is to use NFS.
&lt;ul&gt;
&lt;li&gt;Login through SSH as root (the password is the same as for user "admin").&lt;/li&gt;  &lt;li&gt;Configure &lt;span class="filename"&gt;/etc/exports&lt;/span&gt;: &lt;code&gt;echo "/ 192.168.1.0/24(rw,no_root_squash)" &amp;gt;&amp;gt;/etc/exports&lt;/code&gt;&lt;/li&gt;  &lt;li&gt;Run &lt;code&gt;touch /var/lib/nfs/rmtab &lt;/code&gt;&lt;/li&gt;  &lt;li&gt;(Update: this doesn't seem to be needed anymore with the latest firmware) Start the NFS server: &lt;code&gt;/usr/syno/etc/rc.d/S83nfsd.sh start&lt;/code&gt; (and on the client, you need to start portmap and nfs-common)&lt;/li&gt;  &lt;li&gt;Run &lt;code&gt;exportfs -ra&lt;/code&gt; &lt;/li&gt; &lt;li&gt;Now you can use any Linux machine to go around the file system, edit files etc. &lt;code&gt;mkdir /mnt/mynas; mount -t nfs 192.168.1.xxx:/ /mnt/mynas&lt;/code&gt; &lt;/li&gt;&lt;/ul&gt;(BTW, many people seem to not know that the simplest and easiest console text editor is the one built into Midnight Commander; it can also be used directly by starting &lt;code&gt;mcedit [filename]&lt;/code&gt;)
&lt;h4&gt;File locations
&lt;/h4&gt;Many files are not in &lt;span class="filename"&gt;/etc&lt;/span&gt; but in &lt;span class="filename"&gt;/usr/syno/etc&lt;/span&gt;. That's where you can find smb.conf for example.
&lt;h4&gt;Samba
&lt;/h4&gt;&lt;p&gt;It may be necessary to add &lt;code&gt;unix charset = ISO-8859-1&lt;/code&gt; to the global section of &lt;span class="filename"&gt;/usr/syno/etc/smb.conf&lt;/span&gt;, depending on your setup.
&lt;/p&gt;&lt;h4&gt;Bugs
&lt;/h4&gt;&lt;p&gt;The worst bug I came across so far is that Synology hacked the ext3 filesystem to be case-insensitive. As of firmware DSM 2.0-0728 (December 2008), this makes it unusable for backups of Unix machines. Hopefully, though, it will be fixed soon. Search their forums for updates (one forum post about the problem &lt;a target="_blank" href="http://www.synology.com/enu/forum/viewtopic.php?f=121&amp;amp;t=11985"&gt;here&lt;/a&gt;; another &lt;a target="_blank" href="http://www.synology.com/enu/forum/viewtopic.php?f=3&amp;amp;t=10840"&gt;here&lt;/a&gt;; there are many others). &lt;strong&gt;Update&lt;/strong&gt;: This seems to be fixed in the &lt;a target="_blank" href="http://www.synology.com/enu/support/beta/index.php"&gt;latest beta version&lt;/a&gt; as of January 2009: DSM 2.0-0803.
&lt;/p&gt;&lt;p&gt;&lt;span style="font-weight: bold;"&gt;Update&lt;/span&gt;: Not sure yet, but there may be a problem related to HTREE (dir_index). One of the disk stations didn't boot, so I took the disk out and ran e2fsck on it. It returned many errors like "Inode 114689 has INDEX_FL flag set on filesystem without htree support". &lt;a href="https://lists.linux-foundation.org/pipermail/bugme-new/2003-February/008192.html"&gt;This old message &lt;/a&gt;makes me think that might be the reason it wouldn't boot.
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-5543552975214397088?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/5543552975214397088/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=5543552975214397088' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/5543552975214397088'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/5543552975214397088'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2008/12/synology-nas-tips_19.html' title='Synology NAS tips'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-2830600690661282525</id><published>2008-12-13T17:05:00.006+01:00</published><updated>2009-01-20T14:33:47.652+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='fr'/><category scheme='http://www.blogger.com/atom/ns#' term='registry'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>A propos d'antivirus</title><content type='html'>Hier soir, en passant sur un site web, j'ai attrapé un ou des virus/malware ou autre, et j'ai stupidement perdu des heures pour m'en débarrasser au lieu d'aller me coucher et de résoudre le problème en 10 minutes le lendemain.&lt;br /&gt;&lt;br /&gt;Résumé des enseignements de la mésaventure:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Ne pas oublier que Linux permet de facilement effacer/renommer des fichiers&lt;/b&gt; que Windows ne peut pas. J'ai bêtement commencé par des recherches web qui menaient tous à des forums suggérant l'nstallation d'utilitaires comme MoveOnReboot ou autres. Outre que le programme a lamentablement échoué dans sa tâche, il y a l'absurdité d'installer un nouveau programme pour juste effacer quelques fichiers. De plus, comment savoir que celui-là est OK, parmi l'avalanche de pop-ups causés par l'infection (qui me proposent tous d'installer des pseudo-antivirus gratuits depuis leurs généreux sites web infestés de malware).&lt;/li&gt;&lt;li&gt;&lt;b&gt;Ne pas oublier la recherche de fichiers par date et heure&lt;/b&gt;. Une fois qu'on a l'un des fichiers coupables, ça permet facilement de retrouver tous les autres. Total Commander a ça dans la page "Advanced" de sa fenêtre de recherche (Alt-F7).&lt;/li&gt;&lt;li&gt;Actuellement, &lt;b&gt;parmi les antivirus gratuits que j'avais, &lt;a target="_blank" href="http://www.free-av.de/"&gt;Avira Antivir&lt;/a&gt; est celui qui a le mieux reconnu le problème&lt;/b&gt; (sans pouvoir le résoudre). Il est le plus énervant avec son pop-up géant et quotidien, mais au moins, il voit les virus. (Ceux qui ont été inutiles étaient Moon Antivirus qui ne voyait rien, ClamWin qui ne voyait pas grand chose et qui est d'une lenteur incroyable, et Avast qui ne voyait rien, peut-être parce qu'il ne met plus à jour ses définitions depuis 2-3 mois, parce que je n'ai pas renouvelé la clé d'enregistrement)&lt;/li&gt;&lt;li&gt;Au lieu de l'habituel Run (HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\), &lt;b&gt;les virus actuels tendent à se cacher dans le mécanisme de Winlogon&lt;/b&gt; de Windows (HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify\). &lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;a target="_blank" href="http://www.mlin.net/StartupMonitor.shtml"&gt;StartupMonitor&lt;/a&gt; est vraiment indispensable&lt;/b&gt;. C'est lui qui m'a immédiatement fait réaliser qu'il y avait un problème. (Dommage que ni lui ni son compagnon &lt;a target="_blank" href="http://www.mlin.net/StartupCPL.shtml"&gt;StartupCPL&lt;/a&gt; n'incluent Notify dans les parties de "registry" qu'ils gèrent)&lt;/li&gt;&lt;/ul&gt;Bref, la procédure rapide et efficace est:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Examiner Run et Notify pour identifier les suspects.&lt;/li&gt;&lt;li&gt;Examiner les dates et heure de création des fichiers suspects pour identifier les vrais coupables, puis rechercher d'autres fichiers avec ces dates et heures.&lt;/li&gt;&lt;li&gt;Démarrer Linux pour effacer ou renommer les coupables&lt;/li&gt;&lt;li&gt;De retour dans Windows,  nettoyer le registry.&lt;/li&gt;&lt;/ol&gt;Hélas, dans 6 mois ça ne suffira sans doute plus. Il y aura des virus plus malins...&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Mise à jour:&lt;/b&gt; un ami me fait remarquer que les vendeurs d'antivirus proposent des CD bootables dont il y a un &lt;a target="_blank" href="http://www.raymond.cc/blog/archives/2008/12/11/13-antivirus-rescue-cds-software-compared-in-search-for-the-best-rescue-disk/"&gt;rapport de test ici&lt;/a&gt; (le meilleur semble être &lt;a target="_blank" href="http://dnl-eu10.kaspersky-labs.com/devbuilds/RescueDisk/"&gt;celui de Kaspersky&lt;/a&gt; pour le moment). Si on n'a pas déjà un LiveCD Linux comme Knoppix ou Ubuntu, ou si on ne sait pas exactement quels fichiers il faut effacer, c'est sûrement la solution la plus simple.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-2830600690661282525?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/2830600690661282525/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=2830600690661282525' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/2830600690661282525'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/2830600690661282525'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2008/12/propos-d.html' title='A propos d&amp;#39;antivirus'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-2246488455732069934</id><published>2008-11-17T12:40:00.027+01:00</published><updated>2010-11-17T10:36:57.529+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='en'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><title type='text'>Mac install</title><content type='html'>&lt;h4&gt;Software:&lt;/h4&gt;A few links to (free) software I want on the Mac when doing a fresh install:
&lt;ul&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.mozilla.com/en-US/firefox/"&gt;Firefox&lt;/a&gt; (the standard web browser)&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.apple.com/downloads/macosx/development_tools/smultron.html"&gt;Smultron&lt;/a&gt; (text editor. After install, in Smultron's help menu, also do: "install command-line utility")&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.finkproject.org/"&gt;Fink&lt;/a&gt; (essential open source shell tools like wget, etc.)&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.neooffice.org/neojava/en/download.php#download"&gt;NeoOffice&lt;/a&gt; or &lt;a target="_blank" href="http://www.apple.com/downloads/macosx/unix_open_source/openofficeorg.html"&gt;OpenOffice.org&lt;/a&gt; (Office documents like Word, Excel, etc.)&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.videolan.org/"&gt;Videolan VLC player&lt;/a&gt; (plays most audio/video formats which QT or iTunes don't)
&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://tuppis.com/lingon/"&gt;Lingon&lt;/a&gt; (launchd configuration editor)&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.mucommander.com/"&gt;muCommander&lt;/a&gt; (File manager (and FTP client). Not as great as Total Commander, but better than nothing) (or the shareware &lt;a target="_blank" href="http://www.likemac.ru/english/"&gt;Disk Order&lt;/a&gt;?)&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://sourceforge.net/projects/mediainfo/files/"&gt;MediInfo&lt;/a&gt; (displays all the gory details about audio/video files)&lt;/li&gt;&lt;/ul&gt;A few other things that may be needed or wanted:
&lt;ul&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.siliconimage.com/docs/SiI3132_1.1.9u_Sil_Pkg.zip"&gt;ExpressCard SATA driver&lt;/a&gt; (OS X 10.5 driver for Silicon Image SiI3132 chipset, Vendor ID 0x1095, Device ID 0x3132. For 10.6 or other systems &lt;a target="_blank" href="http://www.siliconimage.com/support/searchresults.aspx?pid=32&amp;amp;cat=3"&gt;look here&lt;/a&gt;)
&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.bombich.com/software/ccc.html"&gt;Carbon Copy Cloner&lt;/a&gt; (disk cloning)
&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://cyberduck.ch/"&gt;Cyberduck&lt;/a&gt; (another FTP client for people who don't like muCommander or need more FTP features)&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://sourcegear.com/diffmerge/"&gt;DiffMerge&lt;/a&gt; (visually compare and merge files)&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://netmedia.fr.pl/osx/tcwidget.html"&gt;Timecode Calculator Widget&lt;/a&gt; (a dashboard widget)
&lt;/li&gt;&lt;/ul&gt;And some configuration notes:
&lt;h4&gt;File locations:&lt;/h4&gt;On the Mac, many standard Unix files are in different locations than expected:
&lt;ul&gt;&lt;li&gt;&lt;span class="filename"&gt;/var/db/smb.conf&lt;/span&gt; for the Samba configuration
&lt;/li&gt;&lt;li&gt;&lt;span class="filename"&gt;/private/etc/sshd_config&lt;/span&gt; for the SSH server config.
&lt;/li&gt;&lt;li&gt;&lt;span class="filename"&gt;/private/var/at/tabs/$USER&lt;/span&gt; for the user's crontab&lt;/li&gt;&lt;li&gt;&lt;span class="filename"&gt;/private/var/mail/$USER&lt;/span&gt; for system mail (like cron output)
&lt;/li&gt;&lt;/ul&gt;&lt;h4&gt;Configuration:&lt;/h4&gt;To change the silly default &lt;span style="font-weight: bold;"&gt;computer name&lt;/span&gt;: System Preferences -&gt; Sharing. If it is not enough, try
&lt;pre&gt;$ sudo hostname my-permanent-name
$ sudo scutil -set LocalHostName $(hostname)
$ sudo scutil -set HostName $(hostname)&lt;/pre&gt;
Configure &lt;span style="font-weight: bold;"&gt;Terminal&lt;/span&gt;
&lt;pre&gt;
$ mkdir ~/bin
$ echo "export PATH=\$PATH:~/bin" &gt;&gt;~/.profile
$ echo "export EDITOR=nano" &gt;&gt;~/.profile
$ echo "export PS1='\[\e]2; \$PWD \a\e[32;1m\]\$PWD/\$\[\e[0m\] '" &gt;&gt;~/.profile&lt;/pre&gt;&lt;a target="_blank" href="http://alma.ch/install/mac/com.apple.Terminal.plist"&gt;These preferences&lt;/a&gt; use the "Grass" look with a 12pt Andale Mono font. To use them:&lt;pre&gt;cp Downloads/com.apple.Terminal.plist Library/Preferences/&lt;/pre&gt;Then "Force Quit" Terminal. (otherwise, Terminal will overwrite them on exit with it's current settings)
&lt;p&gt;I also like a longer history:&lt;/p&gt;
&lt;pre&gt;$ echo "export HISTSIZE=2000" &gt;&gt;~/.profile&lt;/pre&gt;
I use many external disks and &lt;span style="font-weight: bold;"&gt;Time Machine&lt;/span&gt; constantly asking me if I want to use that disk for backups annoys me. To disable it:
&lt;pre&gt;$ defaults write com.apple.TimeMachine DoNotOfferNewDisksForBackup -bool YES
&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-2246488455732069934?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/2246488455732069934/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=2246488455732069934' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/2246488455732069934'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/2246488455732069934'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2008/11/mac-install_17.html' title='Mac install'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-4464248476352597031</id><published>2008-07-07T11:43:00.001+02:00</published><updated>2009-01-20T14:33:47.765+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='en'/><category scheme='http://www.blogger.com/atom/ns#' term='browsers'/><category scheme='http://www.blogger.com/atom/ns#' term='rants'/><title type='text'>The Firefox 3 SSL scam</title><content type='html'>I wonder how much money the Mozilla foundation received from Verisign, Thawte and/or other certification authorities to design their new SSL warning.&lt;br /&gt;&lt;br /&gt;This is obviously designed so as to completely kill the use of self-signed certificates, forcing anyone who wants to use encrypted communications to pay money to some huge private (usually foreign) corporation for the privilege of simple stuff like encrypting login passwords for webmail.&lt;br /&gt;&lt;br /&gt;One more step in the over-taking of the Internet by big money. And this time thanks to an "open source" organization.&lt;br /&gt;&lt;br /&gt;This is supposed to be to improve security. Well, let's see how the security is improved.&lt;br /&gt;&lt;br /&gt;To access the site, you need to click a "Or you can add an exception…" link. This expands to an additional warning, with a helpful "Get me out of here" button. That button helpfully sends you to Google (which happens to be the corporation paying the Mozilla developers).&lt;br /&gt;&lt;br /&gt;The other button is "Add Exception...". In Firefox 2 (or Opera or others), you came immediately to this stage, where you could examine the certificate's content (including it's fingerprint to verify it), and could accept the certificate for this one time only.&lt;br /&gt;&lt;br /&gt;The "improved security" in Firefox 3 will only let you add the certificate permanently! And doesn't let you know anything about this certificate you are about to accept forever. No way to display it's fingerprint, let alone the full content and who claims to have signed it. All you can do is blindly accept some unknown "thing" forever without any possible verification. Or go back to your Big Brother Google to search for another site.&lt;br /&gt;&lt;br /&gt;There is a View button and a "Permanently add" check box, but both are greyed out! To enable them, you need to change some obscure about:config setting(s).&lt;br /&gt;&lt;br /&gt;When I set up my webmail with a self-signed certificate, I also sent the users the certificate's fingerprint so that they could check it when accepting the certificate. Now, with Firefox 3, they have no (easy) way to check it. They will get used to yet more clicking through endless incomprehesible security dialogs (as with Vista's ridiculous UAC), or I could disable encryption, making my users feel comfortable when accessing their webmail, even though they would broadcast their password to anyone who cares to listen on the (often wireless) LAN.&lt;br /&gt;&lt;br /&gt;Firefox is otherwise a very good web browser, and has been my preferred browser since version 0.9 or something, when it was called Phoenix (that was before it was called Firebird). Too bad it now bends so low before big business.&lt;br /&gt;&lt;br /&gt;(See also &lt;a target="_blank" href="http://eggdrop.ch/blog/2007/11/20/the-new-ssl-error-pages-in-firefox-3-suck/"&gt;The new SSL error pages in Firefox 3 suck&lt;/a&gt;.)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-4464248476352597031?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/4464248476352597031/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=4464248476352597031' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/4464248476352597031'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/4464248476352597031'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2008/07/firefox-3-ssl-scam_07.html' title='The Firefox 3 SSL scam'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-5104979450624661300</id><published>2008-07-06T17:49:00.010+02:00</published><updated>2009-01-20T14:33:47.798+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='en'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='GUI'/><title type='text'>Remote support through NAT firewalls</title><content type='html'>Remote support with tools like Remote Desktop, (Tight|Real|Ultra)VNC servers and clients etc. normally requires forwarding ports through NAT routers/firewalls on one side or the other.&lt;br /&gt;&lt;br /&gt;In practice, this doesn't quite work: guiding the remote user over the phone to configure his router is unrealistic. He probably doesn't even know his router's password.&lt;br /&gt;&lt;br /&gt;An alternative is to use reverse connections, so you deal with the port forwarding on your own router. But this doesn't work either if you are away from home and connect through someone else's router.&lt;br /&gt;&lt;br /&gt;There are services which allow you to use someone else's server in the middle of the connection. But these services are usually expensive, charging a monthly fee, and besides you may not want the data to go through some third party's server for security reasons.&lt;br /&gt;&lt;br /&gt;One nice solution I found for Windows is to use &lt;a target="_blank" href="http://www.uvnc.com/pchelpware/sc/index.html"&gt;UltraVNC Single Click&lt;/a&gt;, and to run an UltraVNC repeater on my own server. The principle is shown &lt;a target="_blank" href="http://www.uvnc.com/pchelpware/repeater/#mode2"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;(I'm still looking for an equivalent solution to connect to remote Macs, so if you have suggestions, please post a comment).&lt;br /&gt;&lt;br /&gt;So if you have a server with a public IP address you can do this to support Windows users.&lt;br /&gt;&lt;h3&gt;Install a repeater on your server:&lt;/h3&gt;For my Debian Linux server, I installed the Linux version of the UltraVNC repeater from here:&lt;br /&gt;&lt;a target="_blank" href="http://koti.mbnet.fi/jtko/uvncrepeater/repeater014.zip"&gt;http://koti.mbnet.fi/jtko/uvncrepeater/repeater014.zip&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;After unzipping and moving into the directory, compilation was trouble free with a simple &lt;code&gt;make&lt;/code&gt;.&lt;br /&gt;&lt;br /&gt;The rest consisted of the following steps (which were quickly adapted from &lt;a target="_blank" href="http://forum.ultravnc.info/viewtopic.php?p=42544#39220"&gt;this post&lt;/a&gt;, and could probably be improved):&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Create a new user: &lt;code&gt;adduser uvncrep&lt;/code&gt; (with the shell set to &lt;code&gt;/bin/false&lt;/code&gt;)&lt;/li&gt;&lt;li&gt;Edit the .ini file to produce a &lt;span class="filename"&gt;/etc/uvncrepeater.ini&lt;/span&gt; resembling this (use your server's IP for the "ownipaddress" value, and any numbers you like for the "idlistx" values).&lt;br /&gt;&lt;pre&gt;[general]&lt;br /&gt;viewerport = 5900&lt;br /&gt;serverport = 5500&lt;br /&gt;ownipaddress = aaa.bbb.ccc.ddd&lt;br /&gt;maxsessions = 10&lt;br /&gt;runasuser = uvncrep&lt;br /&gt;allowedmodes = 2&lt;br /&gt;logginglevel = 3&lt;br /&gt;&lt;br /&gt;[mode2]&lt;br /&gt;requirelistedid = 0&lt;br /&gt;idlist0 = 1800&lt;br /&gt;idlist1 = 1801&lt;br /&gt;idlist2 = 1803&lt;br /&gt;&lt;br /&gt;[eventinterface]&lt;br /&gt;useeventinterface = false&lt;br /&gt;&lt;/pre&gt;&lt;/li&gt;&lt;li&gt;Copy the &lt;code&gt;repeater&lt;/code&gt; executable to &lt;span class="filename"&gt;/usr/local/sbin/uvncrepeaterd&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Create &lt;span class="filename"&gt;/etc/init.d/uvncrepeater&lt;/span&gt;:&lt;br /&gt;&lt;pre&gt;#!/bin/sh&lt;br /&gt;&lt;br /&gt;PATH=/sbin:/bin&lt;br /&gt;UVNCREPPID=/var/run/uvncrepeater.pid&lt;br /&gt;UVNCREPLOG=/var/log/uvncrepeater.log&lt;br /&gt;UVNCREPRUN=/usr/local/sbin/uvncrepeater-log&lt;br /&gt;UVNCREPSVC=/usr/local/sbin/uvncrepeaterd&lt;br /&gt;UVNCREPINI=/etc/uvncrepeater.ini&lt;br /&gt;&lt;br /&gt;#if service file does not exist then exit the script&lt;br /&gt;&lt;br /&gt;if test ! -x $UVNCREPSVC ; then&lt;br /&gt;echo $UVNCREPSVC file was not found.&lt;br /&gt;echo Exiting...&lt;br /&gt;exit 2&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;#Create the file to start the service if it does not exist&lt;br /&gt;&lt;br /&gt;if test ! -x $UVNCREPRUN ; then&lt;br /&gt;echo '#!/bin/sh' &gt; $UVNCREPRUN&lt;br /&gt;echo 'exec' $UVNCREPSVC $UVNCREPINI '2&gt;&gt;' $UVNCREPLOG  &gt;&gt; $UVNCREPRUN&lt;br /&gt;chmod +x $UVNCREPRUN&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;case "$1" in&lt;br /&gt;start)&lt;br /&gt;echo -n "Running UltraVNC Repeater..."&lt;br /&gt;start-stop-daemon --start -b -m -p $UVNCREPPID --exec $UVNCREPRUN -- $UVNCREPLOG&lt;br /&gt;echo "."&lt;br /&gt;;;&lt;br /&gt;stop)&lt;br /&gt;echo  "Stopping UltraVNC Repeater..."&lt;br /&gt;start-stop-daemon --stop -p $UVNCREPPID&lt;br /&gt;rm $UVNCREPPID&lt;br /&gt;;;&lt;br /&gt;*)&lt;br /&gt;echo "Usage: $0 {start|stop}"&lt;br /&gt;exit 1&lt;br /&gt;esac&lt;br /&gt;exit 0&lt;br /&gt;&lt;/pre&gt;&lt;/li&gt;&lt;li&gt;Start the daemon with &lt;code&gt;/etc/init.d/uvncrepeater start&lt;/code&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;h3&gt;Configure the Single Click executable&lt;/h3&gt;This is the small executable which your clients will download and run so that you can access their computer.&lt;br /&gt;&lt;br /&gt;You can follow the instructions &lt;a target="_blank" href="http://www.uvnc.com/pchelpware/create/index.html"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;For the &lt;span class="filename"&gt;helpdesk.txt&lt;/span&gt; file, you can use the one provided in &lt;span class="filename"&gt;custom.zip&lt;/span&gt;. However, it is a bit messy, and has a few typos/spelling mistakes. If you prefer, you can try this &lt;a target="_blank" href="http://alma.ch/blogs/bahut/files/helpdesk-template.txt"&gt;alternative template&lt;/a&gt; or this  &lt;a target="_blank" href="http://alma.ch/blogs/bahut/files/helpdesk.txt"&gt;sample file&lt;/a&gt; instead. Both will need editing, particularly to set your server's hostname and one of the IDs you configured on the server .&lt;br /&gt;&lt;br /&gt;Then set up a page from which your clients can download the SC executable.&lt;br /&gt;&lt;h3&gt;Set up the UltraVNC viewer&lt;/h3&gt;After installing UltraVNC on your machine, start the viewer, and configure it like this:&lt;br /&gt;&lt;br /&gt;VNC Server: ID:xxxx (where xxxx is the id number used in your repeater .ini file and when creating the SC executable). "ID" must be in uppercase, and there must be no space in the whole field.&lt;br /&gt;&lt;br /&gt;Check Proxy/Repeater and enter your repeater's name or IP and port. For example:&lt;br /&gt;repeater.example.com:5900&lt;br /&gt;&lt;br /&gt;&lt;img src="http://alma.ch/blogs/bahut/images/uvnc-settings.png" alt="UltraVNC Viewer settings" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Notes:&lt;/h3&gt;As far as I can tell, &lt;a target="_blank" href="http://sourceforge.net/projects/vnc-reflector/"&gt;VNC Reflector&lt;/a&gt; looks like it would provide the same functionality as the repeater. I haven't tried it.&lt;br /&gt;&lt;br /&gt;To support Vista users, there are some difficulties. Apparently there may be &lt;a target="_blank" href="http://forum.ultravnc.info/viewtopic.php?t=11485"&gt;solutions in this lengthy thread&lt;/a&gt;, but I haven't tried them yet. (Fortunately, I have been able to mostly avoid Vista until now.)&lt;br /&gt;&lt;br /&gt;And, as mentioned at the beginning, I would be glad to find a solution to support Mac users from my Windows box through my repeater.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-5104979450624661300?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/5104979450624661300/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=5104979450624661300' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/5104979450624661300'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/5104979450624661300'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2008/07/remote-support-through-nat-firewalls.html' title='Remote support through NAT firewalls'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9195951.post-7530779817704057686</id><published>2008-05-16T18:47:00.010+02:00</published><updated>2009-01-20T14:33:47.821+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='en'/><category scheme='http://www.blogger.com/atom/ns#' term='batch'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='shell'/><title type='text'>Windows ip config with batch scripts</title><content type='html'>It is possible to configure TCP/IP with simple batch scripts in Windows XP, even though the information is well hidden. There are a few typical Windows annoyances attached, but for a notebook user who needs to change settings often, double-clicking a batch file is definitely much better than the network configuration GUI.&lt;br /&gt;&lt;br /&gt;The almost secret - even though it is included in the default XP install - tool is called &lt;code&gt;netsh&lt;/code&gt;.&lt;br /&gt;&lt;br /&gt;Below are a few examples. The main idiosyncrasy is that you need the name of the interface to configure, and that name is somewhat unpredictable. In particular, it is localized. For the normal Ethernet interface, in an English system, it starts with "Local Area Connection". But it is different in other language versions of Windows. There is no simple standard name like "eth0" or "en0".&lt;br /&gt;&lt;br /&gt;Look up your interface names in "Network Connections", or by typing &lt;code&gt;ipconfig&lt;/code&gt; or &lt;pre&gt;netsh interface show interface&lt;/pre&gt; at the command prompt.&lt;br /&gt;&lt;br /&gt;A simple batch file which will set your LAN interface to DHCP:&lt;br /&gt;&lt;pre&gt;SET LAN=Local Area Connection&lt;br /&gt;&lt;br /&gt;netsh interface ip set address name="%LAN%" source=dhcp&lt;br /&gt;netsh interface ip set dns name="%LAN%" source=dhcp register=NONE&lt;br /&gt;netsh interface ip set wins name="%LAN%" source=dhcp&lt;/pre&gt;&lt;br /&gt;This one will set it to a fixed IP address:&lt;br /&gt;&lt;pre&gt;SET LAN=Local Area Connection&lt;br /&gt;&lt;br /&gt;SET IP=192.168.1.56&lt;br /&gt;SET MASK=255.255.255.0&lt;br /&gt;&lt;br /&gt;SET GW=192.168.1.1&lt;br /&gt;SET DNS=%GW%&lt;br /&gt;&lt;br /&gt;netsh interface ip set address name="%LAN%" source=static addr=%IP% mask=%MASK%&lt;br /&gt;netsh interface ip set address name="%LAN%" gateway=%GW% gwmetric=0&lt;br /&gt;netsh interface ip set dns name="%LAN%" source=static addr=%DNS% register=NONE&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Finally, a more complete example, which sets both the LAN and WIFI interfaces can take an optional second DNS server, and set the WINS server:&lt;br /&gt;&lt;pre&gt;SET LAN=Local Area Connection 5&lt;br /&gt;SET WIFI=Wireless&lt;br /&gt;&lt;br /&gt;SET IPLAN=192.168.1.56&lt;br /&gt;SET MASKLAN=255.255.255.0&lt;br /&gt;&lt;br /&gt;SET IPWIFI=192.168.1.57&lt;br /&gt;SET MASKWIFI=255.255.255.0&lt;br /&gt;&lt;br /&gt;SET GW=192.168.1.1&lt;br /&gt;SET DNS=192.168.1.1&lt;br /&gt;SET DNS2=&lt;br /&gt;SET WINS=none&lt;br /&gt;&lt;br /&gt;netsh interface ip set address name="%LAN%" source=static addr=%IPLAN% mask=%MASKLAN%&lt;br /&gt;netsh interface ip set address name="%LAN%" gateway=%GW% gwmetric=0&lt;br /&gt;netsh interface ip set dns name="%LAN%" source=static addr=%DNS% register=NONE&lt;br /&gt;IF NOT "%DNS2%" == "" netsh interface ip add dns name="%LAN%" addr=%DNS2% index=2&lt;br /&gt;netsh interface ip set wins name="%LAN%" source=static addr=%WINS%&lt;br /&gt;&lt;br /&gt;netsh interface ip set address name="%WIFI%" source=static addr=%IPWIFI% mask=%MASKWIFI%&lt;br /&gt;netsh interface ip set address name="%WIFI%" gateway=%GW% gwmetric=0&lt;br /&gt;netsh interface ip set dns name="%WIFI%" source=static addr=%DNS% register=NONE&lt;br /&gt;IF NOT "%DNS2%" == "" netsh interface ip add dns name="%WIFI%" addr=%DNS2% index=2&lt;br /&gt;netsh interface ip set wins name="%WIFI%" source=static addr=none&lt;br /&gt;netsh interface ip set wins name="%WIFI%" source=static addr=%WINS%&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;You can also use netsh to configure the Windows firewall, check network connectivity, etc.&lt;br /&gt;&lt;br /&gt;As a ping replacement, try this:&lt;br /&gt;&lt;pre&gt;netsh diag ping adapter 1&lt;/pre&gt;(replace "1" with your network adapter's index number, which you can find with &lt;code&gt;netsh diag show adapter&lt;/code&gt;). It will automatically ping your gateway, your DNS server(s) and your own IP address.&lt;br /&gt;&lt;br /&gt;For more information, try these links:&lt;br /&gt;&lt;a href="http://www.petri.co.il/configure_tcp_ip_from_cmd.htm" target="_blank"&gt;How can I configure TCP/IP settings from the Command Prompt?&lt;/a&gt;&lt;br /&gt;or&lt;br /&gt;&lt;a href="http://articles.techrepublic.com.com/5100-10878_11-6084726.html"&gt;10 things you should know about the NETSH tool&lt;/a&gt;&lt;br /&gt;or just do a web search on "netsh".&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9195951-7530779817704057686?l=bahut.alma.ch' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bahut.alma.ch/feeds/7530779817704057686/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9195951&amp;postID=7530779817704057686' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/7530779817704057686'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9195951/posts/default/7530779817704057686'/><link rel='alternate' type='text/html' href='http://bahut.alma.ch/2008/05/windows-ip-config-with-batch-scripts_16.html' title='Windows ip config with batch scripts'/><author><name>Milivoj</name><uri>http://www.blogger.com/profile/09148601992263624999</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry></feed>
