Is anyone QA'ing Samba ??

by Jon Davis 2. September 2007 19:23

We had an old ("old" meaning installed a year ago) installation of Fedora v3 running a CMS that was publishing data to Windows Server 2003 over Samba. Occasionally, at the same time in the middle of the night that the publishing occurred, Windows Automatic Updates would download some patch for Windows and reboot the server. Obviously that was a mistake on our part to let these two actions coincide. But the bigger problem was that the Samba link didn't just drop when Windows rebooted. Instead, it locked up. So by the afternoon the next day, people are pulling their hair out trying to figure out what the @#% is wrong with this stupid CMS server, and why it just starts working again when we reboot Linux. We finally narrowed it down to a Windows server reboot--a Samba failure to drop the link.

http://www.linuxforums.org/forum/servers/98115-samba-mount-does-not-drop-timeout.html

What should happen is a timeout should occur, an error should be raised to the calling application (the CMS service), the service should halt, and then when the Windows server comes back up and the CMS service on Linux reattempts to access the path, Samba should reattempt to build the link and either succeed or fail.

That was Fedora v3. Now were' using RHEL 5, and meanwhile I'm using Ubuntu 7.04 at home on my laptop. I'm expecting a much smoother Samba experience now. But unfortunately, we cannot even seem to get our Samba links to even work, much less behave correctly (i.e. drop) when the Windows server goes down. Now I'm having all kinds of different issues.

The first issue is on my laptop at home, when I use the Network browser in Nautilus to browse my shared folders on my home machines, everything goes erratic. It sees everything really fast one minute, then it locks up for five minutes the next. I click on a folder, it becomes a file. I hit refresh, it can't "see" anything. I go up the tree a couple branches, it finally starts seeing things. I go back into the branch I was in, and it displays it pretty quickly. I copy a folder to the clipboard, and paste to /home/jon, and nothing happens.

Now it could very well be a Nautilus issue, but then here's the other problem ...

At the office, we now have RHEL 5, we have been trying to migrate off the old Fedora 3 system and onto the new system. And now this happens:

http://www.linuxforums.org/forum/servers/102298-samba-cifs-mount-point-wont-allow-read-write-non-root-user.html

Essentially, once the Linux user writes to the Samba share, the share becomes "owned" by root and the user can't do diddly squat. This essentially breaks our publishing plans, rendering the Samba link useless.

Fortunately, Microsoft was kind enough to implement NFS support in Windows Server 2003 R2, and R2 is the build we just erected for the new environment. I'll try that next. But it still makes me wonder, what on earth happened to Samba?? It's only been around for, like, a decade!

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: , , ,

Open Source | Computers and Internet | Operating Systems | Linux | Microsoft Windows

Open-Source Desktop: Giving It Another Go

by Jon Davis 31. August 2007 15:02

A week or so ago I posted a blog entry describing why I felt that Linux simply isn't the long-term answer for the need for an open-source, community-supported desktop operating system. I got some good feedback on this, as well as some not-so-helpful feedback ("here's another troll", "this goes out to everyone ELSE, not to Jon Davis, who has clearly made up his mind", etc). I also commented that Haiku looks beautiful and is quite promising since it is based on (that is, inspired by and compatible with) Be OS, which is the closest I've seen yet to an OS done right, but that Haiku won't be the answer, either, until it gets past R1, which may or may not ever happen. Meanwhile, I brought up ReactOS and how it isn't the answer, either, because if we wanted Windows we can just install Windows. (Couldn't say that about Haiku / Be OS because Be OS is no longer available.) Over the last week I downloaded the latest React OS build and ran it in VMWare. It's not nearly as far along as Haiku is, in terms of stability (not to mention the front-end aesthetic talent). Finally, one of my biggest complaints about Linux--the rediculously arcane file system layout which never seems to go away--seemed to have been resolved in Gobo Linux, until I realized that it's even worse: it's Proper Cased, and since Linux uses a case-sensitive file naming system (which sucks), that makes Gobo Linux nearly unusable for administration, having to constantly check the case of each and every letter rather than just trust that everything will be lower case.

I came across a few interesting tidbits of information since that post. I also received my old laptop from repair (replace the keyboard for a missing 'O' key), an Acer Aspire 5050 that I got at Wal-Mart about ten or eleven months ago, and I decided that since the laptop has since been replaced, before I go pawn it off I should format the drives and actually try installing Ubuntu Linux on it so that no one can say that I've only tried Ubuntu within VMWare. Unfortunately, the latest Ubuntu Live CD doesn't even boot on my newer Toshiba Satellite X205-S9359, so I couldn't even try to install it on my old laptop hard drives that were replaced. Sheesh.

Compiz-Fusion seems to be for Linux what Aero is for Windows, at least in theory. I still have not gotten it to work; "GL Desktop", which I assume is related, doesn't seem to do anything when I turn it on from the System menu. OpenGL stuff does work--I ran the OpenGL implementation of Tux Racer, worked beautifully. I tried the drivers from ATI/AMD but the stuff won't execute. Changing the Compositing option in the xorg.conf file doesn't help. *sigh* Oh well I'll keep tinkering.  UPDATE: I did get it to work, partially. At least, I get the wobbly windows. Not much else, though, like I can't get the Emerald themes to turn on. Seems there's some limitations on my video card chipset such that they disabled 3D support (even though my video chipset fully supports high-performance 3D).

Device support for Linux at install-time is improving, as are the tools for device support, but it is still an awful mess. I have never seen so many files fly across my terminal screen in my life just to try to install the ALSA audio driver. And with it installed, there's still no sound. Hello, guys? If there's no sound, the audio control panels shouldn't behave like everything's hunky dory. For the specific sound card driver I've scoured Google and Ubuntu forums regarding ALC883 support and it's clear that other people are having trouble with this sound card, so I'll have to keep tinkering with this. But that's not the point with regard to it being a mess. Scanning the forums for support, it confounds me how comfortable people are with opening up configuration files and toying with them, the only difference now is that they use gedit instead of vi. Holy cow, someone needs to give these Linux developers a lesson on UX! It has nothing to do with editing in a Windows-like editor--I have actually finally gotten used to vi, and prefer not to have to move my hand to a mouse to reach the scrollbar.

The ideal desktop operating system should not use antiquated techniques like service-proprietary configuration files, or configure / make / make install, not even if that stuff is hidden from view using some wrapper shell which in the long run only makes things more complex. In fact, compiling anything outside of a JIT'er seems rediculously arcane to me. Call it a matter of opinion, but that's one thing I really like about having a central authority (like Microsoft) to basically say this is exactly how hardware drivers should be deployed. Don't get me wrong, Windows is a mess of its own with its Registry mess, etc. But then why do you think the notion of open source desktops has gotten me curious (and critical) lately?

On that point, yes, I get it, I get that Linux's advantage is that, being an open system, it is necessary for stuff to be "recompiled into the system" but really makes me wonder why Bill Gates, rather than Linus Torvolds, is given the Borg treatment, when assimilation is done in Linux at a technical level at runtime in much the same way Microsoft traditionally did using business agreements. For that matter, what's so wonderful about a system being "open" for some source code to compile against any of its many flavors and then (crossing fingers) maybe run, as opposed to having just a few "flavors" and putting time and energy (and, yes, money) into making sure that the stuff has already been compiled, is already known to run, and will almost certainly "just work", assuming that there are no device hardware driver conflicts.

Wouldn't it be ideal if there was a cleaner pluggable hardware abstraction model that the operating system exposed and that drivers could just plug into in a cleaner fashion than the nerdy way the stuff is managed now? Isn't that essentially what a kernel is supposed to do, along with executing user-level applications? Virtual device drivers suddenly popped into my head, a la VMWare and its virtual machine and virtual devices. Abstraction is so cool. Say, why can't each basic hardware function that software expects to be able to use--file system I/O, video card / display, audio, keyboard, mouse--all be cleanly tucked into a clean API that the hardware manufacturers' drivers sit on top of, rather than vice-versa. Why can't we put them into a virtual hardware sandbox? Why can't hypervisors be taken to such an extent as to allow for physical base-level hardware to be virtualized, so that each hardware device driver "sees" a virtualized reality?

Of course, then performance and virtualization management become the huge issues.

More importantly, this isn't particularly a realistic notion since currently hardware drivers literally read/write to/from memory spaces that the kernel maps to the physical device, and execute by way of things like IRQ events. Sometimes I wonder, though, why even that shouldn't be rethought. But now I'm getting into real physical hardware design space, so it's not like I can just pull up a trusty C compiler and recompile a new motherboard. Besides, putting hardware device manufacturers into a software sandbox certainly stifles their opportunities to innovate.

Over last weekend I thought it would be cool, if naive, to actually spawn off YAOS (Yet Another Operating System), derived from nothing, but appended with virtual support for Win32 (like WINE) and Linux (like Cygwin), but inherently have its own system. After all, that is essentially what hypervisor operating systems propose to do. The difference is that it would be ideal if the hypervisor operating system itself could be a viable operating system.

VMWare ESX and Xen, being hypervisor operating systems, run on the Linux kernel variants.

Windows Server 2008, having hypervisor support (however limited, I'm not sure), runs on, well, Windows.

Good starts on hypervisor concepts, but why not take the opportunity to flush out this legacy stuff and build a hypervisor-supporting system that can also be a new OS? Oh how I would love it if, once R1 stablizes, the Haiku operating system added hypervisor support!

I'll post to my blog here at http://www.jondavis.net/blog/ as I continue to tinker with Ubuntu on real hardware.

Haiku: Still Not The Desktop Answer

by Jon Davis 19. August 2007 23:05

Alright, now that I've downloaded the demo VM I previously linked to, the one that has several BeOS apps installed, I've reached a new conclusion about Haiku.

My conclusion is this: Haiku is to BeOS what ReactOS is to Windows NT 4.0. It's a whole lot of effort to emulate an old architecture all the way down to the bottom-most level, but ultimately being a third party rehash it will never perfectly emulate, and it will always reflect the old milestone of the OS it was trying to emulate.

In other words, Haiku OS is not a futuristic operating system, it's a remake of an old one, and it has some problems.

  • It's focused solely on legacy support. What a horrible way to build a new operating system; yes, I know, the advantage is you get all this BeOS software up and running on the system right away, but a) it will never work like it did in Be, and b) software on Be in general only had a few short-lived years to mature. Or let me put it this way, I'm really happy and excited for Haiku for being what it is--a nostolgic OS that might still have a future once they wrap up R1 (whenever that happens, if ever) and get started on R2. But until R1 is out of the way, there's nothing really I for one can do; I'm NOT going to write BeOS software targeting R1 considering R1 emulates a Windows 98 generation operating system.
  • I posted last night that I thought its base directory structure was perfect. Poking around now with a more loaded system, I retract that. For example, I don't like the idea of apps being installed three different places: in the root directory, in a "home" directory, and in the "beos" directory. WAY too confusing. You have "develop" and "apps" directories in the root, in home, and in beos, but they should all be in root and there should only be one instance of the set.
  • I see no user profile support here. I don't recall, did BeOS have a login process? The old Mac environment didn't force you to log in and access the OS through a user profile, but in my opinion that is simply the evolution of operating system technology, like multiprocessing. Without a user profile, you have a single-user machine, which makes the OS good for, yep, good ol' mobile devices. (No wonder BeOS was sold to Palm!)
  • The yellow/orange titlebar taking up only the width of the title is not just an aesthetic statement, nor does it appeal to my inner sense of geek, as in, "Cool, a window that isn't perfectly rectangle". It's actually an annoyance. My mouse scrolls on the right, always. It accesses the deskbar on the right. It usually resizes the window from the right. Why must I move the mouse all the way to the top left in order to relocate the window or hit the close button? And yes, I know you can move the window around using the border. But it's such a tiny little border. I've got a 20" monitor running at a resolution of 1600x1200, running Haiku in this little 800x600 VMWare window. It's dang hard for me to find those one or two pixels of border width where I can hold the mouse button down to drag the window; I'd rather move the mouse to the top-left where the titlebar is. Which brings me back to my original complaint; make it flush right, please. Not to mention, it makes a terribly 90's-ish aesthetic statement. (I can get left-aligned narrow title bars in Microsoft Windows using Stardock's WindowBlinds. Needless to say, I have no interest in using it.)
  • Half the apps lock up when I try to close out of them. This is because it's pre-alpha, though, so no real surprise there.

I notice Fedora there in my VMWare VMs list, and I ask myself, how does that make me feel? I feel like I miss Fedora, with all its many features and completeness. Which is ironic because I just posted a long post last night about how unimpressed I am with Linux. I'm reminded yet again of what it takes to build an OS. These guys have been at it for six years, yet they don't have an Alpha release done yet. No wonder the geeks hesitate, despite the tools. Without many millions of dollars on hand to invest in people's efforts, and at least as many years, there's just not enough motivation to get something like that done, or done right.

I must admit, though, the idea of seeing a fork of Haiku once it reaches some stable state, and producing an alternate "distro" with all new rules for toolset and GUI, appeals to my imagination. But now suddenly I am more able to understand why there are hundreds of distros of Linux.

I suppose my interest in alternate OS's is related to the wish for a good, approachable, maintainable, community embraceable OS that abandons UNIX or other unapproachable geekiness as well as proprietary and abusive underpinnings like Microsoft's inconsistent and overuse of the Windows registry. I'd love it if I could just sit down with some architects and plan out how a good operating system should be built. As I said before, Be OS came (and Haiku comes) close, but it's already old and just short of archaic considering all that we enjoy in Windows Vista and Mac OS X from both a programmer and a user perspective.

I will keep a close eye on Haiku for a while. Were I to just sit down and construct an OS (and I were a god, which I ain't, and if I was a billionaire, which I also am not), I'd probably start with Haiku, because I like its simplicity in its basic setup--no "/var/", "/opt/" or other gobbligook, and libraries are pretty plainly organized--and I like its performance, basic device support, SMP support, and the total elimination of text-mode bootup junk. I'd add a registry, and build it on something like SQLLite or Berkely DB, something like Elektra. I'd make it user profile oriented, and put users in a 'users' directory, like Vista. I'd make sure that the file system had all the key features of NTFS like security and self-repair... or heck maybe just add full NTFS support and disk checking. In so doing I'd make sure ACL (access control lists) were supported per-file, per-directory, and per other objects. Then I'd tack on cross-platform APIs like Java and Mono. Then I'd get a killer C++ IDE added and fully functional, something on par with Eclipse for Java (oh and for Java support I'd make sure Eclipse worked well). Then I'd tackle 3D graphics API, and push beyond OpenGL and look for a Windows Presentation Foundation API look-alike that had a small footprint but supported 3D and other multimedia. I'd rewrite the shell in that API, taking a cue from Windows Vista Aero. (The goal being not to make it bloated but to make it both fast and powerful, by harnessing the power of modern video cards and delivering powerful, clean, and convenient programming APIs.)

Or, I'd rebuild something from scratch like what I've heard of Singularity, and tackle features on a per-application-requirements basis.

My original silly idea which led to last night's long-winded rant was that someone should sit down with Linux, and just completely refactor the whole thing top to bottom, throwing out legacy compatibility but using GNU tools and clean the whole thing up, starting with the elimination of those oddball directories, replacing the X-Window subsytem with one that is more to-the-metal, basic, and user and developer friendly (and that starts up first to hide the text-mode startup junk), killing off or completely deprecating old-school tools and ways of doing things, add hidden symbolic links for those old, ugly paths to a compatibility subdirectory, and reworking developer tools like Java and Python, one by one, to be compatible with this new system. I'd sell it off as a whole new Linux "distro" like Debian but even much more heavily reworked.

But then I realized, all of that is almost what Haiku does. Except Haiku's focus is to reproduce Be, not to refactor Linux top-to-bottom without constraints. I think the latter is more attainable, useful, and future-friendly.

Honestly, I don't know. I'm awfully naive, but not so naive as to think that my imagining these things should be taken seriously. As much of a geek I am, I'm not qualified to even try to play any part of any of this unless it was high-level. I understand general, high-level architecture well enough, but I couldn't write a device driver, let alone a full-blown kernel, nor do I know enough people who would have an interest in taking on roles in building the hundreds of different parts of a complete OS.

Even so, it's fun to dream, isn't it.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: ,

Computers and Internet | Operating Systems | Software Development

Haiku is getting close

by Jon Davis 19. August 2007 18:57

So I only recently (as in, last night) just stumbled upon Haiku, the complete open source operating system built from scratch to mirror, and have binary compatibility with, good old BeOS. It's not done yet, not even in a public beta yet. But after six years (the project just had a 6th birthday) I've played with its base VMWare image and I can say that it's looking really solid. Definitely simple and lightweight right now, sure, but it's coming along and seems very fast and stable, and looks to be, by far, good enough to start enticing a lot more geeks to participate. When it can recompile itself within itself (and I believe they mention that that milestone is really close) so that you don't need Linux to compile the OS, I think that will be the beginning of a new OS era.

One quick observation of the Haiku community, IMO it mirrors the BeOS community (which are not entirely one and the same, but only mostly), and I think that it suffers from a little bit too much of antagonism with commercial OS's (namely Windows), which itself I really abhor. I think Windows Vista and Mac OS X are both very fine operating systems, despite their many flaws, and a decade ago I always thought it was ever so annoying and crippling of progression for the BeOS (and now Haiku) to constantly berate proven ideas in use in Windows and in Mac OS and dismiss them as horrible and stupid, just because the ideas were introduced in those operating systems. For example, the Registry. I was around in the Windows 3.1 days and I thought the registry was a really good idea. I still think so; I just think Microsoft abuses it, and I think MS should have published and followed some better best practices for where to put installation audits so that if an app gets manually removed there is only one branch that needs to be deleted. But the idea of a consistent central repository of configuration information for installed apps that integrate with the OS as well as for the system itself is a very good one. Anyway, Be folks (Haiku folks) just whine and complain about that stuff, waa, I hate Windows, waa. The problem is that their hatred of all things exclusive to Windows has traditionally blinded them. Microsoft spends hundreds of millions of dollars on reasearching operating system best practices and usability. They've made a lot of mistakes but their results, especially their exclusive "features" like the registry, should not go completely unnoticed.

I got so annoyed by it that circa 1999 or so I tried to start a web site called BeCritical, criticizing the Be design for things like neglecting to inform the user of being in a busy state when double-clicking an application icon, just for the sake of trying not to be like Windows. I even conducted and posted a real e-mail-based interview with their role model, Alan Cooper, author of the book About Face, to gain his insight. But I was hosting the web site locally in my home office (as I do now with this blog) and the whole site was lost due to a bad hard drive (or something) shortly thereafter, and I hadn't learned to backup my stuff and so obviously I didn't rebuild.

Last night I wasn't sure how to get Be OS software installed on my copy of the VMWare image, since a web browser hasn't been added yet. I saw the FTP command line client is present, but using that assumes that what I might try out is FTP-accessible (UPDATE: wget is in there as well).

But today I found a better way to sample BeOS software on this thing. Someone in the community has started to compile a big huge VMWare image of a bunch of BeOS software apps running within Haiku. I'm downloading now ...

http://www.haikuware.com/index.php?option=com_remository&Itemid=38&func=fileinfo&id=74

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: ,

Computers and Internet | Operating Systems


 

Powered by BlogEngine.NET 1.4.5.0
Theme by Mads Kristensen

About the author

Jon Davis (aka "stimpy77") has been a programmer, developer, and consultant for web and Windows software solutions professionally since 1997, with experience ranging from OS and hardware support to DHTML programming to IIS/ASP web apps to Java network programming to Visual Basic applications to C# desktop apps.
 
Software in all forms is also his sole hobby, whether playing PC games or tinkering with programming them. "I was playing Defender on the Commodore 64," he reminisces, "when I decided at the age of 12 or so that I want to be a computer programmer when I grow up."

Jon was previously employed as a senior .NET developer at a very well-known Internet services company whom you're more likely than not to have directly done business with. However, this blog and all of jondavis.net have no affiliation with, and are not representative of, his former employer in any way.

Contact Me 


Tag cloud

Calendar

<<  September 2020  >>
MoTuWeThFrSaSu
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

View posts in large calendar