TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

The destructive desktop — Linux in trouble?

141 点作者 larelli超过 13 年前

19 条评论

rlpb超过 13 年前
"If you don't use NetworkManager, a number of programs will refuse to connect to the Internet or behave in various weird ways. More so, a lot of system services now depend on NetworkManager and won't start unless it is running. And if you run NetworkManager, it starts periodically messing up any local system configuration. So you're basically bound to use NetworkManager. "<p>...<p>"The effect of all those changes are numerous. For one, it is no longer possible to run the system without a graphical user interface unless you plan to invest a huge amount of work and to throw out most of your system support. If you want to get vendor support, this is not the way you will want to go."<p>Not true. Ubuntu Server does not use a GUI. Nor does it use Network Manager.
sagarun超过 13 年前
This is factually wrong: <i>Then you try to figure out how to configure NetworkManager from the command line. There's no tool in the entire distribution which lets you do that</i><p>nmcli lets you configure network manager through command line <a href="http://manpages.ubuntu.com/manpages/maverick/man1/nmcli.1.html" rel="nofollow">http://manpages.ubuntu.com/manpages/maverick/man1/nmcli.1.ht...</a>
评论 #3598925 未加载
评论 #3594599 未加载
asto超过 13 年前
I've never done any systems programming on Linux (or any other OS for that matter) so I can't comment on most of the article but I HAVE configured a network on a Fedora box on many occasions and it's simpler than the author's making it out to be.<p>On my fedora computer, I can just run system-config-network from the terminal and have a GUI pop up where I can configure network devices and DNS addresses with no need for X11 whatsoever. This is enough for a stable internet connection with no further action from the administrator of the computer such as <i>"periodically calling ifconfig and ip route add until you finally managed to fetch all the data before NetworkManager would mess it up again."</i><p>Of course, if your router issues the configuration via DHCP, then you don't even need to do this much. You can just boot in on install and access the internet. I believe RedHat and CentOS work the same way. Contrary to his perception, configuring a network is not really a big deal on a Linux computer! :-D
评论 #3593970 未加载
jiggy2011超过 13 年前
Network manager is particularly annoying. It doesn't seem to like static IP addresses at all, sure the GUI will allow you to assign them but it doesn't actually seem to affect the system at all.<p>I tried disabling NetworkManager since on my development box I like to have a number of static IPs assigned to it for testing on the LAN. However I also want to be able to easily connect to wireless networks and I can't find an easy way to do that without NM (I tried wickd but had other issues with that).<p>The upshot of this is that I have to use NM with some bash scripts that run on login to overwrite some of it's settings.<p>Don't get me started on sound..
评论 #3594002 未加载
评论 #3593994 未加载
nailer超过 13 年前
It's 2012. Who cares?<p>I think Linux on the desktop hit its peak in the early 2000s, when 'Windows, Mac and Linux' was in people's minds, we had Linux companies like Loki and Transgaming etc, commercial games from Epic and ID, proper UX-focused companies like Eazel and Ximian, etc.<p>I think most people have given up, but that's OK: Linux on the desktop, back then, still made a huge difference to today. GNOME had GTKHTML which spawned a rival KHTML which became Webkit which now seems to be the app platform for the thing that came <i>after</i> the desktop - the browser.<p>Now I have more apps open in Chrome right now than I do in the dock, taskbar, gnome panel. So do many users. And the direction is more in the browser than ever.<p>It's not just Linux: worrying about the desktop per se is irrelevant - like worrying about the dominant groupware platform or the dominant LAN manager. OS/2 might be better than NT, but nobody cares anymore.
评论 #3594114 未加载
评论 #3595042 未加载
评论 #3594230 未加载
评论 #3594308 未加载
marbu超过 13 年前
Having network manager on the server just doesn't make sence in most cases. I'm running CenOS 6 (community rebuild of RHEL 6) on my vps without network manager and don't see any problems with this setup. I also don't know any service which would not work without network manager, I'm aware only of the opposite ones (eg. Red Hat cluster suite won't work with networkmanager). Moreover I'm quite sure that you can install RHEL, Fedora or Debian in headless mode.
rabbidroid超过 13 年前
I have also been annoyed by the way Ubuntu handles the network management, I was setting up an nfs server at home, a task that should've taken no longer than 10 minutes, ended up eating up a few hours, not to mention the fact that I had to reconfigure the network reboot which I blamed on myself but now blame on networkmanager.<p>I have been using Solaris 11 at work for the past few months, even-though I dislike Oracle, I was surprised by the way they implemented their networking, its a pleasure using it and its the most flexible and configurable networking in all OS's Ive used before.<p>I will still use Linux at home for personal use, I still envy Enterprises that have the financial ability to get these servers running Solaris 11. I know that It's not open source, and that Oracle is the most evil company, I still love their product (which was developed by sun, and was open-source till oracle stuck their nails in-to it) and I hate myself for loving it.
hp超过 13 年前
This article is not well-informed. I worked on or sat next to people who worked on a lot of the stuff mentioned. So you can take me as biased or as having a clue or both as you wish.<p>A general point, the changes described here have been over the course of something like 15 years. So the article seems to be making a "stuff keeps changing!" point... but we are talking about over 15 years. Think about changes to hardware, the Internet, etc. over that time. And most indicators are that the Linux desktop has moved much too slowly compared to say Windows, Mac, Android, and iOS.<p>Some examples of errors:<p>"So the Gnome developers wanted to reduce the complexity of their protocol as well and started working on a protocol which was supposed to join the advantages of DCOP and CORBA. The result was called the Desktop Bus (dbus) protocol. Instead of complete remote objects it just offers remote interfaces with functions that can be called."<p>This is false on several levels. dbus was mostly a kind of cleanup of DCOP for general use, with no intent to "join the advantages of CORBA" which were essentially none. I can make no sense of "instead of objects it offers interfaces" - it has both objects and interfaces, and pretty much can implement the same kind of API that DCOP does (I believe KDE even did that). Basically this paragraph doesn't mean anything I can relate to the actual technology.<p>"APIs to abstract the uses of OSS, esound and ALSA: gstreamer for Gnome and Phonon for KDE"<p>This is wrong. GStreamer is for making graphs of elements, where elements are decoders, encoders, effects, filters, etc. and can be both audio and video. There is one kind of element ("sound sink") that does abstract sound output, as you would imagine. There are some other elements that use sound APIs too. But GStreamer is not the same thing as a sound API like ALSA, in any way shape or form. It's for building multimedia _apps_, sort of a media toolkit.<p>Moreover, the main reason to replace the older tech here (OSS, esound) was just that it didn't work very well and didn't support a lot of the things sound cards do. It's not like keeping that old stuff was an option, since it could barely play beeps.<p>"it is no longer possible to run the system without a graphical user interface"<p>I'm just not sure what planet that's on. There sure are a lot of headless Linux servers out there in the world, and it's pretty obvious that the large Linux distributions care about this intensely.<p>Re: NetworkManager, if it's somehow needed when headless and not configurable headless, that would be considered a bug by all involved. Just a matter of tracking down the details and reporting them if they have not been. All the Linuxes aspire to (and in my experience do) support headless operation.<p>"they don't implement the original X11 protocol directly and rely on so-called window manager hints."<p>This sentence is total word salad. X11 has had window manager hints for two decades. What's new is "extended window manager hints" which are some new hints in the same spirit ... in order to do new things. They don't "wrap" anything, so "directly" is just gibberish. Kind of like how CSS 2.0 isn't the same as CSS 1.0, you know? This complaint is equivalent to bitching because you can't use IE5 on the modern web anymore. The protocols are documented, and you have to use an implementation that implements something from within the last 5 years. The extended window manager hints range from 6 years old to 10 years old, so that's how old a crap we're talking about.<p>An almost exact translation of this claim to the web is: "they don't implement the original CSS 1.0 directly and rely on so-called CSS 2.0 properties" ... see how that makes no sense?<p>"Writing X11 programs with xcb and proper RPC APIs like SUNRPC or Thrift should be more than good enough."<p>This 100% misunderstands why dbus is used. The first goal of dbus is not to send a message from process A to process B; it's to keep track of processes (help A find B, have them each know when the other goes away). The messaging is important but in many ways secondary.<p>Overall, the article doesn't understand the big picture of why all this new stuff was needed. I think there's one big reason: dynamic change. The old ways of doing things almost all involve editing a text file and then restarting all affected applications. But to implement the UIs that people expect (as you'd find on iOS, Android, Windows, Mac), everything has to be "live"; you change a setting in the dialog, and the whole system immediately picks up on the change. You unplug a cable, everything notices right away. etc. The daemons are because so many pieces of dynamically-updated live state are relevant to more than one process or application. That's why you have a "swarm of little daemons" design. And guess what: some other OS's have the same design.<p>That's (at least one of) the major problems being solved. And the author here gives no indication he knows it exists, let alone his proposed alternative approach.<p>I sort of get the inspiration for the article: Linux has been trying to keep up with modern UI expectations without having enough staffing for that really, and certainly regressions have been introduced and there have been bugs and things that could have been better. On the 6-month distribution release cycles, users are going to see some of that stuff. It's software, people. And it's understaffed open source software to boot. So yeah, legitimate frustration, shit changes, sometimes it breaks. I get it.<p>But there's no need to wrap that frustration up in pseudo-knowledge as if it were a technical problem, or say inane things about getting back to the "unix way"; if someone could show up and make the desktop UI stuff behave well with the "unix way" they would have done it. Or maybe they did do it, and the critics understand neither the problem requirements nor the "unix way." Just saying.
评论 #3594399 未加载
评论 #3596760 未加载
评论 #3594618 未加载
jakobe超过 13 年前
While I don't quite understand the specifics the author describes, I can relate very well to the general problem: Open Source software often depends on packages that are common on the Linux Desktop. This quickly gets you into dependency hell if you try to compile the program/library on a different platform.<p>An example I was recently confronted with was libmdb, a library that reads Microsoft Access databases. For some reason it depends on glib2, which in turn depends on a few other libraries. In the end I needed to compile 5 different libraries because libmdb uses hash tables and arrays from glib2.
评论 #3593974 未加载
评论 #3594034 未加载
评论 #3594047 未加载
dman超过 13 年前
You can disable network manager and use /etc/network/interfaces to manage your connections directly - this has the nice side effect of having internet connectivity even before you login. I dont understand the thrust of this article - most people running servers are running linux without a GUI and are doing so without any loss of productivity.
lambda超过 13 年前
This looks like it's taken almost directly from 1990sLinuxUser: <a href="https://twitter.com/#!/1990slinuxuser" rel="nofollow">https://twitter.com/#!/1990slinuxuser</a>.
loftsy超过 13 年前
tl;dr - Author tries to patch together his/her own distribution; and fails.<p>To provide a good user experience you need to know if the network is up or down; and when it changes. UNIX does not provide this. This is why NetworkManger is now part of the "Linux Platform".<p>The biggest myth in open source: "Linux is about choice".
评论 #3594121 未加载
wisty超过 13 年前
tl;dr<p>Linux is getting to be a mess, with all kinds of dependencies.<p>I guess it really comes down to your distro (since Linux is just the kernel, it's the distro which adds in all the bits). He's complaining about using RHEL and Ubuntu on a router. I think those are meant to be run on big servers. I'd guess Slackware and Gentoo are better bets for running a small server. There are also distros <i>designed</i> to be used on routers, if that's what you're after.<p>Big distros are big. They sometimes have a few bits which are over-engineered, because over-engineering makes sense to the people who join GUIs together.
评论 #3594056 未加载
评论 #3594014 未加载
darklajid超过 13 年前
I really would like to understand/get feedback (if the author is reading here as well or someone agrees with the rant)<p>- what 'services' on a server really depend on NetworkManager<p>I cannot imagine that a server would actually need it (although, on my _desktop_ I most certainly want it and love it).<p>From my vps (granted, not LTS. But did they actually _remove_ a dependency here? I highly doubt that):<p><pre><code> darklajid@neuland:~$ apt-cache policy network-manager network-manager: Installed: (none) Candidate: 0.9.1.90-0ubuntu5.1 Version table: 0.9.1.90-0ubuntu5.1 0 500 http://de.archive.ubuntu.com/ubuntu/ oneiric-updates/main amd64 Packages 0.9.1.90-0ubuntu3 0 500 http://de.archive.ubuntu.com/ubuntu/ oneiric/main amd64 Packages darklajid@neuland:~$ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=11.10 DISTRIB_CODENAME=oneiric DISTRIB_DESCRIPTION="Ubuntu 11.10" </code></pre> In fact, the Debian package description (couldn't find something for Ubuntu or RH, but the former is probably using the very same thing) says this: "NetworkManager attempts to keep an active network connection available at all times. It is intended only for the desktop use-case, and is not intended for usage on servers." [1]<p>- why you'd have a hard time configuring it<p>If you install it anyway it comes with some tools [2] called nm-tool and nmcli. The latter [3] is, while the man page admits that it isn't meant to replace the applet, described as "The main nmcli's usage is on servers, headless machines or just for power users who prefer the command line."<p>At this point we have the following: The author of this blog posts writes up some evolutionary history of the linux desktop technologies (arguably unrelated? Is he really missing Corba or Orbit?) and then ends with a giant rant about network-manager (which I should've proved as being unnecessary and which, contrary to what he says, _comes_ with a tool to configure it) while punching dbus every now and then.<p>The title is link-bait and - well - weird. The article has no real point. I'm confident it took me a lot more time to write this comment and provide the relevant links than the whole 'problem' of setting up a network connection on a more or less recent Linux system can possible take.<p>If it takes so long - don't blame the tools.<p>1: <a href="http://packages.debian.org/squeeze/network-manager" rel="nofollow">http://packages.debian.org/squeeze/network-manager</a><p>2: <a href="http://packages.debian.org/squeeze/amd64/network-manager/filelist" rel="nofollow">http://packages.debian.org/squeeze/amd64/network-manager/fil...</a><p>3: <a href="http://manpages.ubuntu.com/manpages/oneiric/man1/nmcli.1.html" rel="nofollow">http://manpages.ubuntu.com/manpages/oneiric/man1/nmcli.1.htm...</a>
评论 #3593986 未加载
wazoox超过 13 年前
The main conclusion of this article: Network Manager is utterly broken. I concur. It's quite good for laptops and basic desktop, and absolutely unusable for any development desktop or server.<p>The main and gravest sin of Network Manager is that is absolutely ignores what's in /etc/network/interfaces (or similar configuration files for other distros AFAIK), and makes most usual stuff (bonding, bridging, vpns, etc) nigh to impossible. It may be relatively easy to fix, dunno.<p>Fortunately from my experience, you can simply remove it altogether without any problem, at least under "reasonable" distros such as debian.
HerrMonnezza超过 13 年前
I agree with the general trend that the author points out, <i>but</i> he speaks as if this was happening to all Linux distributions alike (he almost always uses the word "Linux" with no qualifications). This is not the case: distributions that have a strong command-line and server-oriented community (think of Debian and Arch Linux) still do support "no DBus" operation.
bazzargh超过 13 年前
He blames /dev/initctl not working on systemd - but wasn't that a change in sysvinit? They moved it to /run/initctl because /dev/initctl wasn't portable. Quite recently, too.<p><a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=638019" rel="nofollow">http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=638019</a>
xxiao超过 13 年前
i must say something for this topic. i fully agree with the author, that linux is becoming a mess these days when you need customize it, e.g for embedded systems or headless servers. and the first thing I _always_ do is to remove network-manager, that's an ass-hole app!
SaltwaterC超过 13 年前
tl;dr Lennart is an ass.