Search Results: "xam"

11 August 2006

Jonathan McDowell: So, where did you two meet?

I get asked this a lot about people. Most recently when visiting the Fat Cat with Simon and his work mates this week, but often about the other Simon (who's my business partner as well as a long time friend). The truth is a lot of the people I know I met first online, be it Fidonet (hello Pads, Peter, Simon and several others), Usenet (hello Ox.Net), mailing lists (hello ALUG) or IRC (hello, er, lots of people). I don't think I'm in any way unique here, but it can sometimes be awkward explaining this to people who preconceive internet friendships to be something seedy involving 40 year old fat man and 15 year old naive children. Or at least that's what they seem to be thinking when you say "Oh, we met online". Let's give some examples. I met Simon on Fidonet, back when we were both 17 or so. We were in a couple of echoes together and we did netmail a bit. When I came to England for university one of the echoes we were in had a meet up and so I decided to go. I ended up staying at Simon's (making his mother worry a bit; even back in 1997 people thought meeting online was freaky!) and that was the first time I met him. We've kept in good touch ever since and even gone into business together. Is this a lot odder than a chance meeting at a pub or through friends? I don't think so, but some people do. Or take when I moved to Norwich. I had some friends who could help me load up the van in Harpenden (where I was moving from), but didn't know anyone in Norwich to help unload. I'd already joined the ALUG list, so I thought I'd ask there if anyone was prepared to help in exchange for beer and food afterwards. Adam and Edward Betts both turned up to help, not knowing anything about me. And were very helpful and we got everything unloaded. I still see Adam reasonably often, both online and in person (last night, for example). I haven't really kept in touch with Edward since he left UEA though. :( There are many more examples like this of people who I see a reasonable amount in real life and yet if you asked me I'd have to admit I first knew online, sometimes for several years before actually physically meeting. And lots of people understand it these days, but please tell me I'm not alone in getting the funny looks sometimes. Please?

10 August 2006

Bernhard R. Link: Graphic Libraries

Wouter Verhelst asked why simple games are so slow nowadays.

I think the problems are in the libs. All this modern stuff tries to become more and more modern, and get more and more stuff out of all those new render extensions, direct graphics and hardware accelerations. There simply is no way to decide which way is faster, so libraries have to guess. So it is no suprise things go wrong. And the place they go wrong are of course not the fast computers, but the older stuff, that does not has those nifty accelerations and no fast CPU to cancel it out.

Another disadvantage are all those "portable" libaries. SDL for example needs three connections to the X server before it does anything. Three times etablishing a connection, checking of security cookies, and so on. Its API looks like living with windows, or never intended to be use for anything other than full-screen mode. (You want to find out how large the window is? Why should you be able to when you said the window cannot be resized?)

QT likes to use extensions, too. I don't know if it is its fault or newer X servers, but the newer your installation gets, the slower 2D games using QT can become. (Note the can, if you have the right graphics card, lucky you, if you have the wrong one, bad luck). To be fair QT is not supposed or designed for 2D games. On the other hand I don't know what it is supposed to do other than being a C++ compiler benchmark measured in hours.

GTK was such a promising design. Object orientated (widget classes are one of those very few things were object orientated can be used with more advantages than disadvantages) but still plain C, small and looking like designed for X. To be fair, I do not even know how well it performs, as the ever increasing library cancer drives me away. From the "users should not be able to change their homedir, that would be far too much the Unix way" glib, over all this miriad of differt little libraries, all moving all the time, spewing their headers in so many different directories a compiler invocation folds three time around your terminal.

Well, enough ranted. My next graphical program will use Athena Widgets. I only have to hope all this reanimated X development in the last time will not pull xlib away from under out feets in the future...

9 August 2006

Erich Schubert: AMD maybe to opensource ATI drivers?

Now thats what I'd call good news (URL from #debian-devel) This infoworld article claims:
AMD is strongly considering open-sourcing at least a functional subset of ATI's graphics drivers
Well, the article has some other facts wrong:
If AMD's graphics cards were the only ones with open device drivers, it might affect a buying decision or two.
Well, you know. There is not only Nvidia. There is Intel. And for both the R200 ATI Radeon series and the Intel video chipsets there are opensource drivers with 3D acceleration. It's not as if AMD/ATI would be the "only ones". Wait. Intel? Isn't that like the main competitor of AMD... AMD should better try to draw even! But yeah, if AMD would do that, Nvidia would have some issues selling their stuff to Linux users. Manufacturers that try to sell desktop linux computers will prefer AMD if it's better supported out of the box (for servers, neither ATI nor Nvidia is relevant, of course). For example Lenovo is reported to (plan to?) sell Thinkpads with SuSE Linux preinstalled (I'd actually prefer if they would sell them with FreeDOS preinstalled at a lower price); but if they preinstall the NVidia drivers (and some other things such as Intel wireless), they might violate the GPL or some of the other licenses, apparently. I don't know, just hearsay.

Rob Bradford: Bug buddy integration for GNOME Python apps

Just in case you missed it before…Fernando Herrera and Lorenzo Gil came up with a lovely bit of code that allows the parts of the GNOME experience written in Python to send traces via bug-buddy when something goes wrong. Pessulus will soon have this and i’m working on doing it for Deskbar. Update: Forgot the link to the code…bug-buddy-integration.py.

8 August 2006

Wouter Verhelst: Why...

... do all most free modern Linux games with 1993-era graphics and gameplay (which is a feature, not a bug) require 2009-era computers? Take Freetennis, as an example. A few years back, my brother used to play a game called just "tennis" on my parent's 133Mhz computer. It looked about the same, had a slightly larger number of features, and ran pretty quickly on that system. Freetennis doesn't work on my laptop, because it hogs the CPU and doesn't appear to be getting enough. Especially not if I try to run it fullscreen. My laptop is a 1.3Ghz PowerPC G4. Now if it were just freetennis, I wouldn't care much. But it's a lot, lot more. The only game which I've found that does not make my laptop squirm and die is a little game called "Starfighter". But only barely so, and only if I do not run it fullscreen. I blame the layers and layers and layers and layers and layers and layers of SDL and X and libpng and libalsaplayer and other utter crap that are between my CPU on the one side, and the output devices on my laptop on the other side. Especially SDL. Not Happy.

Carlos Villegas: Table preview of hotspots (SoC 2006)

Some hotpots combinations were tested. Unexpectedly, the use of several hotspots together didn't cause an arithmetic sum of boot time improvements. For example, let's consider the following hotspots and their corresponding boot times:









hotspottime
DASH AS SH4
PRELOADING2
NETWORKING0
HWCLOCK2
REORDERING2
PARALLEL4


On the other side, while trying them together we get:









hotspotTest#1Test#2Test#3Test#4Test#5Test#6
INSSERVXXXXX
DASHXXXXXX
NETWORKINGXXX
HWCLOCKXXX
PRELOADXXXXX
PARALLELXXXX
time improve466664

7 August 2006

Jos Parrella: About apt-proxy

apt-proxy has become an omnipresent tool in Debian-based environments. Both in work and in my clients I usually install it so we have a great way to save bandwidth (in a Country where a 512 Kbps ADSL line costs you around 50$/month, it matters) I have noticed also several Ubuntu users using it, even in big environments where a local mirror might be justified and even when other solutions like apt-cacher seem to be getting stronger. Sadly, current state of apt-proxy is not so good (see bugs 282746, 316670, 274679, 262528, 327268, 302503, 295329 and probably others). While upstream is doing a great job implementing fixes, the user base has evolved very quickly and it’s starting to find (and fix) bugs by its own. One example of this is the current release of this version of apt-proxy, made by Daniel Baur, which implements pending patches for eight bugs, including patches which solve Ubuntu-specific issues. A partial debdiff which shows the relevant changes on the code is here for the lazy admin. Chris Halls has acknowledged these fixes and plans to upload a new version to Sid soon. That would be a happy-ending chapter of saving apt-proxy from death. Personally, I’m going to have a closer look on apt-cacher while this new package appears.

5 August 2006

Aigars Mahinovs: Cobert takes on Latvia (future, hopefull)

I was just told that Steven Colbert is going to feature Latvia in it’s new sketch “Meet an ally”. On his show, he often does thematic multi-part sketches where he meets with all participants of some kind of group. The best example is his ongoing ‘434-part series’ “Better know a district” that even earned a Wikipedia article for itself. After talking with the representative of Pilau to UN, he found out that only military force they had was one single patrol boat and that it’s ambassador has barely any relation to the small island state from the Pacific. Hopefully we will look a bit better :) P.S. Regarding spelling - I have found that it is still more convenient to use gnome-blog package then to use the Wordpress on-line spelling plugins.

Steve Kemp: The foulest stench is in the air

I received a few interesting comments on my last post about mailing list software so I’m going to summerise my current thoughts. Before covering the available software I’ll say what I personally need from a mailing list manager: When it comes to the handling of spam I mostly don’t care. Messages are filtered via the mailserver at SMTP time (ditto for viruses) and although moderation is generally useful I prefer to either bounce or eat the messages which are not forwarded. (Either case is fine so long as logs are available). This simplifies things significantly since the pedning messages don’t need to be stored/queued. Here is a list of all the mailing list software which is available to users of Debian’s Sarge release along with some of my thoughts/comments/impressions. (Some of these details may be wrong, I’d happily be educated …):
ecartis
The Ecartis package for Debian GNU/Linux is mostly broken. In sid the package is essentially unmaintained, and that is a worrying sign. Ignoring that for the moment the software works reasonably well. It allows most of the kind of control I desire but the significant downside is that it is severaly broken with regard to character sets and encoding issues. For a cromulent example see this message.
enemies-of-carlotta
This software wins double-plus bonus points for a most excellent name. Naming software is hard, and although the relationship between the film and the purpose of the software is random I like it! eoc suffers from a virtually non-existant set of documentation. Whilst it might be simple to use I it isn’t documented except in a single manpage. I seem to recall I had difficulty getting my Exim4 configuration to pass relevent environment variables ($SENDER + $RECIPIENT) passed into the script properly. The lack of documentation just made this more irritating.
fml
There is a lot of documentation for this, which is half in English and half in Japanese. I admit I mostly didn’t explore this software - although my impression is that it doesn’t have support for virtual hosts.
mailman
Mailman is big, popular, and I dislike it with a passion. The admin interface has a billion configuration options, but even if you know they exist finding the damn things are an impossible job. The system requires about five python processes running even when it is “idle”. In my mind a mailing list software doesn’t need a daemon componant - just a program to spawn when a message “comes in”. The whole password system is broken and gains you zero additional security. Again to rail against mailman: it has integrated message archival, something i think should be distinct. (eg. mhonarc). Virtual hosting is possible, but I believe that mailing list names must be distinct regardless of domain name. That may not be correct honestly I’ve detested the softwware with a passion which suprises me and I may not be 100% objective here.
mlmmj
Looks nice. Looks clean. doesn’t look particularly joyful. (The name mlmmj means “mailing list managing made joyful”.) It doesn’t appear to support virtual hosting, and it doesn’t appear to support enough different list types.
quickml
Listens upon a network port (10025 by default) and not support different list types or virtual hosting.
smartlist
Complex. Icky.
sympa
Seems very featureful, but it is yet another system which has an integrated web-component like mailman == bad. It doesn’t support having the same named mailing list in multiple virtual hosts, although it appears to do everything else I desire.
In summery: There are several available packages, but none are good, and many are actively bad. I still believe that creating another list server would be a useful thing to do. I’ve written a brief design overview elsewhere which I will post for comment later. I’d like to support a couple of “advanced” features such as allowing the mailing list software to only accept GPG signed messages, or to act as a remailer such that messages posted to the list will be automatically GPG signed prior to delivery to all users. Looking around I think most of the individual bits of code are available (in Perl). eg. Mail::Message, Mail::GPG, etc. Its just a matter of gluing the bits together in a modular fashion.

Junichi Uekawa: Big fan of sshfs.

You can mount remote filesystems if ssh (sftp) works.Local commands can be used with remote filesystems.Handling too large files may cause network bandwidth problems, but it's useful.For example, Packages and Sources files, the index files forDebian packages, requires dpkg-scanpackages/dpkg-scansourcesto build.When the remote server isn't Debian based, it's abit difficult to execute these commands on the remoteserver.Here comes sshfs.You can mount the remote filesystem, and use the commands locally.

4 August 2006

Gunnar Wolf: Today's first good laugh...

Goes, of course, to good Maulkin. Worst of all, it seems to be inspired by real life - Now, could you do a similar analysis of end results? :)
And when sharing it, Rodrigo sent me to Spamusement. What's that, you ask? A magic machine that turns spam titles into humor. Two beautiful examples: It's not a joke and Your Dog Will Love It!.
Now, please, can I have my 30 minutes back?

Wouter Verhelst: Password expiration sucks!

Just a few moments ago, I was trying to commit a minor fix to the NBD subversion repository. However, suddenly the server refused my commit; the password which I knew to be right wasn't working. So I loaded SourceForge.net in my browser and went to the admin link there to find out whether I had perhaps fucked up my own commit rights. I've been known to do that before. Doing so of course required me to log in. Which revealed the problem that was causing this in the first place: apparently my password had expired. I had been using the very same password since ages, but for some reason unknown to me, sourceforge has now decided that they want to introduce password expiry. Of course, good password management is very important if you want to avoid issues with people stealing your passwords. For that reason, I usually generate my passwords with pwgen -s 15, which generates passwords that are impossible to guess—one example of an actual password that I have used in the past (but that I do not have in use in any other system anymore today) is qChjZeWIbSDGON/. The hard part is, probably, to memorize that; for that, I have a pretty simple method: I enter 'gpg -o ~/foo' and enter my new password. Then I pick out some random .jpg file somewhere on my hard disk, and concatenate the gpg data to that file. It is usually still possible to view the file in a viewer with that extra data added to it; IME, most image viewers have the ability to view all data in a corrupt JPG-encoded image that occurs before the corruption—which in this case, will be all of the image. As such, if you don't know which file it is, and you don't know my GPG password, chances are low that you'll find it and steal my login data. Additionally, of course the .jpg file is either removed or restored to its original state when I memorized the password, and finally I also update my GPG key and the password of the system that contained the file with the encrypted password to be using the same new password, so chances of stomeone stealing it get even lower. However, even with this method, it still takes me a few days or weeks to memorize it. Also, synchronizing the new password to all the systems and websites on which I have an account takes a while. For that reason, I prefer not to do it too often. With that in light, it is slightly problematic to have an account on a system that has a password expiration policy in force, because a) this makes it impossible for me to use the highly secure passwords that I use "everywhere else" on these expiration-using systems, b) because the average expiration policy is 2 months, making it impractical for me to generate secure passwords for these sites as well (by the time I memorized the new password, we're already at least halfway through the two months if I need to use that password fairly regularly—or it might even be too short if I don't use the password regularly. The result of the above is that password expiration policies, in my case, force me to use less secure passwords of which I'm sure I can remember them—old passwords which I used before I had a GPG key or had learned about pwgen. I still use those on websites that require me to enter a password but which I do not trust to handle my passwords in a secure manner; I don't want to give these sites the password to unlock my gpg key, for example. The problem with these passwords is that they are easy to guess; they're usually not some unintelligible bit of random letters, but are six to eight characters that actually have a meaning. In fairness, I did have one of those old and insecure passwords in use at sourceforge, because I indeed didn't trust them with my secure passwords. If they base their password expiration policy on the strength of the password, then this whole blog post should be ignored. But in general, it is my point that password expiration policies do not improve security at all. It forces people to use passwords that they can quickly memorize (otherwise they're trying to memorize all the time), and it does not give people who usually pick easy to guess passwords any incentive to pick better, harder to guess passwords. On the contrary, in fact. Password expiration policies suck.

Benjamin Seidenberg: Happy (NM) Anniversary to Me!

Today marks the 1 year anniversary of my application to become a Debian Developer. Here is an approximate break down of my time in the NM Queue: Waiting for advocate: 2.5 weeks (This should have been shorter, I had my advocate lined up, but then there was a question about me signing the key of the guy who signed mine, but I hadn’t checked his ID). Waiting for AM: 6 months Going through the checks: 2.5 months. (This would have been shorter had it not been right around the end of school, with the mad rush to cram everything in before exams)
Waiting for FD: 1.5 Months Waiting for DAM: almost 7 weeks so far… Total: 1 year and counting…

3 August 2006

Erich Schubert: SELinux local module example

If you have some simple local modifications to your policy (not using many interfaces etc.), you can grab this local module example tarball, and make a proper SELinux module out of your changes. Maybe you can then avoid building your own policy. Notice that you can't use any macros with this standalone module source, making policy writing there a bit more difficult than necessary. :-( Based on the Fedora SELinux FAQ. I still wish we could get rid of the full M4 complexity for building the policy, and instead use something easier to reuse in such situations.

2 August 2006

Isaac Clerencia: ccache + pbuilder

As it looks like there is some ccache hype lately in Planet Debian, I’ll add some of my own. I use pbuilder to build my packages and it was a real PITA when some big package like wesnoth or kdesomething failed to build and I’d to restart the build from scratch, so (after several months of procastination) I decided to add ccache powers to my pbuilder setup. In fact, it was quite easy, although a bit “dirty”.
  1. Create a directory to store the ccache cache for your pbuilder, for example,
    /var/cache/pbuilder/ccache
  2. Create a directory to put the needed pbuilder hooks, for example, ~/debian/pbuilder-hooks/
  3. Add an A (run just before starting the build) hook to set up ccache, for example, A01ccache:

    #!/bin/sh
    echo "Setting up ccache"
    apt-get install ccache
    cd /usr/lib/ccache
    for c in *
    do
       ln -s /usr/bin/ccache /usr/sbin/$c
    done
    ln -s /var/cache/pbuilder/ccache /root/.ccache

    This is the dirty bit, as I can’t set $PATH from one of the hooks, I link the ccache stuff into /usr/sbin/ which precedes /usr/bin/ in $PATH, if somebody knows any other clean way (i.e., without modifying the chroot) to do this, please tell me.
  4. I’ve two more hooks, to run interactive shells when the package finishes building (or fails building), note that you need to run the shell like this:

    /bin/bash < /dev/tty > /dev/tty
  5. Run pbuilder with the correct options, I’ve a script named wonderbuild to do this:

    #!/bin/sh
    pdebuild -- --bindmounts /var/cache/pbuilder/ccache --hookdir ~/debian/pbuilder-hooks/ $*
I expect this to be useful to somebody else, it works really great for me :) Any improvement would be welcome.

Isaac Clerencia: Beach, driving license exam, books, Akademy

So I was having these great holidays in the beach with some friends, getting a tan, swimming in the sea, chasing some fish wearing really-big-nose water goggles, drinking beer by the seaside, … but I had to come back to Zaragoza to take my driving license exam. I’ve gone to the driving school today to ask what time was the exam taking place exactly, and I’ve been told that the exam has been moved to Monday (can this happen in any other European country besides Spain?). As I only have holidays this week, I can’t attend my exam next Monday, and thus, the whole thing sucks, specially the getting-back-from-holidays-sooner bit. To keep my karma up and given the fact that I’d some free time to spare as I no longer needed to study for the exam, I’ve visited some bookshops and purchased some books (namely, The Ages of Lulu, Fahrenheit 451, The adventures of Huckleberry Finn and Notes from a Small Island), and then I’ve gone to the park and read for a while (actually, I’ve finished reading Wilt, by Tom Sharpe, which I started reading yesterday in my way back from the beach). I’ve thought about blogging about the books I read, although I’m not sure if I’ll manage to do it. In the end, it has been a nice day and I’ve come home quite relaxed again. With regard to free software stuff, Wesnoth 1.2 is going to be released really soon now, as well as KOffice 1.5.2, I’ve already registered for Akademy 2006 in Dublin, I created my first attempt of flake plugin some days ago, …

Ian Murdock: Windows as a poorly debugged set of device drivers?

I often quote Marc Andreessen’s 1995 comment that Netscape would reduce Windows to a “poorly debugged set of device drivers” when talking about Linux on the desktop—namely, that with applications increasingly moving to the web, it matters less whether Windows is on your desktop, because all you need to run your apps is a browser. The assumption here is if you no longer need Windows to run your apps, you’d run Linux, either because of the freedom of choice it gives you, or simply because it doesn’t cost $200 (take your pick there). Of course, there’s a flip side to this: if the operating system is just a set of device drivers, wouldn’t you want the most extensive set? As far as Linux on the desktop has come in the past few years, it still lags Windows significantly in plug-and-play value. For example, during my recent trip to Moscow, my Windows-running colleagues hopped onto wireless networks with impunity, both at the hotel and even sitting in taxis in the infamous Moscow traffic. While they were clicking on nice little balloons saying “wireless network detected”, I was learning more than I ever wanted to know about iwconfig, cursing all the while. And it’s not just wifi. My laptop only successfully suspends about the half the time. For whatever reason, the 3D acceleration on my laptop doesn’t work with the latest eye candy. And so on.. Me, I actually prefer the Linux desktop over Windows. But now, with all the improvements in virtualization over the past few years, I can still use the Linux desktop as my primary UI and have access to the most extensive set of device drivers. For the cheapskates among us, cost really isn’t an issue either—VMware Player and VMware Server are now available for free, and who doesn’t have at least five Windows licenses sitting around that they aren’t using? Besides, who wouldn’t pay a measly $200 to get Linux perfectly working with their laptop hardware? Food for thought. Let the flames begin..

1 August 2006

Simon Law: 2006 Ottawa Linux Symposium


Penguin and his boy
Originally uploaded by sfllaw.
The Ottawa Linux Symposium is arguably Canada's biggest conference about Linux and its associated technologies. It happens every year, right after the Kernel Summit, which virtually guarantees that some famous people stick around afterwards to attend OLS. Now the Kernel Summit is a small gathering of Linux developers where they hash out big issues in the kernel. After all, it's a lot easier to get your point across when you're sitting in the same room as the person you're talking to. Mailing lists are just not the same. OLS, however, is a free-for-all. If you pay in time, you get to show up. This makes for an astoundingly large conference, about 850 people in total. I brought along [info]wlach, who had never been to OLS before. So I was doing my part in inflating the number of people there. I think he ended up in the right crowds. Which is difficult, because there are a lot of crowds there. People walk past in a blur and you can never quite remember if you've met someone before.

Bowtied
Originally uploaded by sfllaw.
At the conference, there are four tracks of presentations, at any one time. Some of these are perennial talks, like the tutorial on writing your own kernel module. And others change as the years go by. The big topic this year was Xen, the free virtualization software that really got huge in the past two years. Xen allows people to run multiple copies of their operating system inside one computer, with very little overhead. This makes it attractive to a lot of people, be they system administrators, software developers, or people who like fiddling with their machine. I met a consultant from Chicago that sells Xen-based solutions. She builds a big server and runs various virtual servers for small business inside that one box. It's very cost effective and is a good way to make server maintanance easy. Whenever I wanted to find her, I'd just pop into one of the ubiquitous Xen talks. The amount of work that gets done at this conference is astounding. You'll see people sitting around at tables hashing out designs and beating out flaws. Hackers huddle around laptops in an attempt to get the C library building on PA-RISC again. That's because the bandwidth to communication is very high and the latency is inconsequential. There were times when I wanted to pull out my laptop and do some work. But then I remembered that I left it in the hotel. Because it's heavy. There's actually a lot of space at OLS, because it's spread across the three floors of the Ottawa Congress Centre. It's really easy to miss someone for weeks before bumping into him at a party. Like [info]opalmirror, for example, who I was very glad to meet in person. And are there ever parties.

Super balls
Originally uploaded by sfllaw.
Ostensibly, you go there for the talks. And talks there are: some of them quite good and the vast majority are rather mediocre. They're the results of a year of hacking, months of academic research, or inspired observation. I have to admit that I get a bit lax when attending speakers. It reminds me too much of the classroom. And just like university, I buy the course notes to mitigate my guilt. They make for good reading when finals come along. It's the conversation that you go there for. When you get to sit down with Alan and have a good laugh about geeky topics. Or buy Donald a drink for working on those ugly network cards all those years ago. You get to connect with people that you've only seen online, or read as their names flashed past in the boot messages. That's that kind of bonding that people yearn for. I'm looking forward to next year already.

Erich Schubert: Speeding up Bittorrent

I've recently used bittorrent a bit. For example, I loaded the Ubuntu installer CD with it. For power users, I think rtorrent is a good client. I tried freeloader, but apart from some obvious bugs (it doesn't save the maximum bandwidth settings value), i'm lacking interesting information such as the number of peers or of distributed copies. When toying around with rtorrent and it's options I noticed a couple of interesting things. First of all, if you're firewalled, you'll be much slower. Allowing incoming connetions (and having a port forwarding in your router) makes a huge difference in the number of peers. My estimates are that 70% of peers are firewalled; if both of you are, you can't transfer data! The other thing is that apparently BitTorrent clients use some kind of "Tit for Tat" strategy. They request a packet, you request a packet. If you don't send them data, they'll stop sending you any. They'll still eventually retry (maybe you were overloaded), but largely your download speed will be related to your upload speed. I don't know how much peers (and seeds) trade information on who has which parts or is sharing how much upload speed. I guess they do somehow to deflect cheaters. Assuming that the illegal file sharing tools work similarly, this gives some interesting (theoretical?) ways to recude illegal file sharing:

31 July 2006

Enrico Zini: tenth-day-in-addis

Tenth day in Addis Procedure to check if all the services of Dream University are up and running If a machine blocks pings, use arping instead.
  1. Test DHCP:
    $ sudo ifdown eth0
    $ sudo ifup eth0
    $ ifconfig
    
  2. Test the DNS:
    # See if the DNS machine is on
    # The network
    $ ping -n 192.168.0.1
    # See if the DNS resolves names
    $ host www.dream.edu.et
    
  3. Test the gateway:
    # Ping the gateway
    $ ping gateway
    # Ping an outside host
    $ ping -n 10.4.15.6
    
  4. Test the proxy:
    # Ping the proxy
    $ ping proxy
    # Open a web page and see if it displays
    # See if it caches
    http_proxy=http://proxy.dream.edu.et:3030/ wget -S -O/dev/null http://www.enricozini.org  2>&1   grep X-Cache
    
  5. Test the mail server:
    $ ping smtp
    $ nmap smtp -p 25  grep 25/tcp
    $ if nmap gateway -p 25  grep 25/tcp   grep -q open ; then echo "It works"; fi
    $ send a mail and see if you receive it
    
To do more advanced network and service monitoring, try nagios: New useful tools seen today
wget - The non-interactive network downloader.
Special devices Example uses:
wget -O/dev/null http://www.example.org
dd if=/dev/zero of=testdisk bs=1M count=50
mke2fs testdisk
sudo mount -o loop testdisk  /mnt
Tiny little commands Example uses: Some more shell syntax Some people run commands ignoring the standard error: command 2> /dev/null this causes unexpected error messages to go unnoticed: please do not do it. What to check if a machine is very slow More VIM command mode Command mode allows to perform various text editing functions. You work by performing operations on selected blocks of text. Some common operations: Some common blocks: Examples: The best way to learn more vim is always to run vimtutor. Installing squirrelmail To install squirrelmail:
  1. apt-get install squirrelmail
  2. /usr/sbin/squirrelmail-config and configure IMAP and SMTP. In our case, since we use IMAPS, the IMAP server is imap.dream.edu.et, port 993, secure IMAP enabled and SMTP is smtp.dream.edu.et.
  3. Read /usr/share/doc/squirrelmail/README.Debian.gz (with zless) for how to proceed with setup. A short summary:
    • link /etc/squirrelmail/apache.conf into the apache conf.d directory
    • customise /etc/squirrelmail/apache.conf for example setting up the virtual hosts, or running it only on SSL
To have different virtual hosts over HTTPS, you need to have a different IP for every virtual host: name based virtual hosts do not work on HTTPS. You can configure multiple IP addresses on the same computer: use network interfaces named: eth0:1, eth0:2, eth0:3... These are called interface aliases. You cannot setup interface aliases using the graphical network configuration and you need to add them in /etc/network/interfaces:
    iface eth0:1 inet static
          address 192.168.0.201
          netmask 255.255.255.0
          gateway 192.168.0.3
    auto eth0:1
This is the trick commonly used to put different virtual HTTPS hosts on the same computer. Links squid documentation: Shell programming: Performance analysis: Setting up mail services:

Next.

Previous.