Revisiting Linux Part 1: A Look at Ubuntu 8.04
by Ryan Smith on August 26, 2009 12:00 AM EST- Posted in
- Linux
Things That Went Terribly, Terribly Wrong
One concern I’ve had for some time when writing this article is that it runs the risk of coming off as too negative. I don’t want to knock Ubuntu just for being different, but at the same time I’m not going to temper my expectations much as far as usability, stability, and security are concerned. If something went wrong, then I intend to mention it, as these are things that can hopefully be resolved in a future version of Ubuntu.
This section is reserved for those things that went terribly, terribly wrong. Things so wrong that it made me give up on using Ubuntu for the rest of the day and go back to Windows. This isn’t intended to be a list of all the problems (or even just the big problems) I encountered using Ubuntu, but rather the most severe.
We’ll start with mounting file servers. I have a Windows Home Server box that I use to store my common files, along with hosting backups of my Macs and PCs. I needed to be able to access the SMB shares on that server, which immediately puts Linux at a bit of a disadvantage since it’s yet another non-native Microsoft protocol that Linux has to deal with, with protocol details that were largely reverse engineered. My Macs have no issue with this, so I was not expecting any real problems here, other than that the network throughput would likely be lower than from Windows.
For whatever reason, Ubuntu cannot see the shares on my WHS box, which is not a big deal since neither do my Macs. What went wrong however is that manually mounting these shares is far harder than it needs to be. Again using the Mac as a comparison, mounting shares is as easy as telling Finder to connect to a SMB server, and supplying credentials, at which point it gives you a list of shares to mount.
Ubuntu, as it turns out, is not capable of mounting a share based on just the server name and credentials. It requires the share name along with the above information , at which point it will mount that share. Browsing shares based on just a user name and password is right out. Worse yet, if you don’t know this and attempt to do it Mac-style, you’ll get one of the most cryptic error messages I have ever seen: “Can't display location "smb://<removed>/", No application is registered as handling this file.” This tells you nothing about what the problem actually is. It’s poor design from a usability standpoint, and even worse error handling.
Unfortunately the story doesn’t end here. Ideally all applications would work as well with files on a network share as they would a local drive, but that’s not always the case – often the problem is that it’s harder to browse for a network shared file than a local file from inside an application. For this reason I have all of my common shares mapped as drives on Windows (this also saves effort on logging in) and Mac OS X takes this even further and immediately maps all mounted shares as drives. So I wanted to do the same for Ubuntu, and have my common shares automount as drives.
Nautilus, which transparently accesses SMB shares, is of no help here, because by transparently accessing SMB shares it doesn’t mount them in a standard way. The mount point it uses is inside of a hidden directory (.gvfs) that some applications will ignore. The ramifications of this being that most applications that are not a GTK application cannot see shares mounted by Nautilus, because they can’t see the mounted share that GTK tells its applications about, nor can they see the hidden mount point. The chief concern in my case was anything running under Wine, along with VLC.
The solution is not for the faint of heart. Highlights include additional software installations, manually backing up files, and a boatload of archaic terminal commands – and that’s just if everything goes right the first time. I love the terminal but this is ridiculous. Once it’s finished and set up correctly it gets the job done, but it’s an unjust amount of effort for something that can be accomplished in a matter of seconds on Windows or Mac OS X. This was easily the lowest point I reached while using Ubuntu.
The other thing I am going to throw in this category is mounting ISO images. I keep ISOs of all of my software for easy access. Interestingly enough, Ubuntu has the file system driver necessary to mount ISOs, but not a GUI application to do this. While it would be nice to have all of that built-in (ala Mac OS X) that’s not the flaw here – I’m perfectly content downloading a utility like I do for Windows (Daemon Tools). The flaw here was the Ubuntu GUI application for this, Gmount-ISO, can’t mount ISOs off of a SMB share. Worse yet, it doesn’t tell you this either.
The first time around, the only solution I was able to find was an another archaic CLI command that involved running the mount command by hand, in the style of “mount file.iso /cdrom -t iso9660 -o loop”. This was a terrible solution.
It wasn’t until some time later that I finally found a better solution. An application that wasn’t in the Ubuntu repository, AcetoneISO, can properly mount files off of SMB shares. Better yet it’s a bit closer to Daemon Tools functionality, since it can mount BIN/CUE, NRG (Nero Image), and MDF images.
I throw this in “terribly, terribly wrong” column because the solution was completely non-obvious. If you search for “Ubuntu Hardy mount iso” or something similar, AcetoneISO is nowhere near the top of the results, and the Ubuntu package repository is of no help. What’s in the repository is the aforementioned useless Gmount-ISO, and what’s at the top of Google’s results are Gmount-ISO and instructions to mount the image via CLI. It’s a success story in the end, but it was uncomfortably painful getting there.
If there’s any consolation in these matters, it’s that these were the only two issues that made me outright stop using Ubuntu, and go back to Windows for the day. Any other problems I had were significantly less severe than this.
195 Comments
View All Comments
jasperjones - Wednesday, August 26, 2009 - link
I second most of Fox5's suggestion.1.) I've been completely ignorant of software development on Windows over the last few years. Comparison of MS Visual Studio vs Eclipse or vs Netbeans/Sun Studio? How fast are CLI C++ apps on Windows vs. Linux? Perhaps using both GNU and Intel C++ Compiler toolchains on Linux. And possibly MS Visual C++ and Intel Visual C++ on Windows.
Perhaps less esoteric, 2.) instead of benching SMB/CIFS on Windows vs Samba on *nix, bench something *nix native such as scp/sftp or nfs. Netperf.
3.) Number-crunching stuff. I guess this is sort of similar to running at least a few synthetic benches. LINPACK or some other test that uses BLAS or LAPACK, tests that use FFTW. Maybe even SPEC (I wouldn't expect any exciting results here, though, or are there?)
Eeqmcsq - Wednesday, August 26, 2009 - link
Are you looking for benchmarks in Windows vs Ubuntu with the same hardware? Or benchmarks in different CPUs/motherboards/etc with the same Ubuntu?Ryan Smith - Wednesday, August 26, 2009 - link
Cross-platform. There's no problem coming up with Linux-only benchmarks for hardware.Eeqmcsq - Wednesday, August 26, 2009 - link
I have a question about your benchmarks that involve files, such as copying and zipping. When you run your benchmarks, do you run them multiple times and then get an average? I ask that because I have learned that in Linux, files get cached into memory, so subsequent runs will appear faster. I suspect the same thing happens in Windows. Do you take that into account by clearing cached memory before each run?Ryan Smith - Wednesday, August 26, 2009 - link
We reboot between runs to avoid cache issues (and in the case of Windows, wait for it to finish filling the SuperFetch cache).fri2219 - Wednesday, August 26, 2009 - link
I heard Sony is coming out with this thing they call a Walkman.You should review that next!
StuckMojo - Wednesday, August 26, 2009 - link
ROFL!Fox5 - Wednesday, August 26, 2009 - link
The LTS is really for the same types of people that avoid grabbing the latest MS service pack. IE, anyone who's still running Windows XP SP2 with IE6. Do that comparison and see how they compare.Ubuntu is little more than a tight integration of many well-tested packages, there's no reason to go with ubuntu's LTS when everything else already goes through it's own extensive testing. Given how quickly open source software advances, I'd say the LTS is probably less stable than the most up to date versions, and certainly far behind on usability.
You want the equivalent of Ubuntu's LTS in Windows? It most closely matches the progression that the Windows server versions follow.
Ryan Smith - Wednesday, August 26, 2009 - link
To put things in perspective, 8.04 was released shortly after Vista SP1 and XP SP3 were. So Hardy vs. XP SP2 (a 4 year old SP) is a pretty poor comparison.You'll see an up to date comparison in part 2 when we look at 9.04.
awaken688 - Wednesday, August 26, 2009 - link
I'm glad you did this article. It really has been something I think about. I'm ready to read your Part II. As others have mentioned, I have a couple of other articles that would be great.1) The comparison of the various versions as mentioned. SuSe, Ubuntu 9.04, BSD, etc...
2) Someone mentioned VirtualBox. I'd love to hear more about this including a detailed setup for the normal user. I'd love to be able to surf while in Linux, but able to play games in Windows and keep them separate for added security.
Thanks for the article! Hope to see one or both of the ideas mentioned above covered.