That's why people who advocate healthy food are seen as dicks. Come down from your condescending high horse and maybe more people would listen to you. Do you really think you are going to help people by insulting them like "But go ahead and munch on Doritos and Mt. Dew if you prefer - a goatee should compensate."? Most people will just think that you are a dick. Or "experience real food.", like you are the expert who decides what is "real" food and what isn't.
Groovy is an example how to do it right. In Groovy, I don't need semicolons and even parenthesis are optional, but there is no pitfalls you can fall into like in JavaScript. That is because the Groovy compiler don't try to be intelligent and try to guess your intent.
In Groovy I can write func "a", "b" func "a" bar "b" baz "c" func { closure } return [func: "something"]
That's a no brainer. Because if a job is open people will take it. But woman have more options than man. For example, marrying a man who goes into STEM, or make money off looks (which includes everything from ads, to modeling, to porn, to marrying), or go into services or nursery or kindergarten or teacher jobs.
Utter BS. The user land of Linux gets better and better. I remember the time about 14 years ego when I had to put some obscure data of my monitor in the Xorg.conf to get any graphic output, and when I could only have sound from one application. PulseAudio, KDE and Gnome all improved my experience of Linux, and now systemd which also improves my experience. For example, to add the Emacs-Daemon I just had to put a 14 lines systemd-service file in.local/share/systemd/user/emacsd.service and run systemctl --user enable emacsd, without root privileges.
Just look what a mess Sysvinit scripts are for the same task: http://www.emacswiki.org/emacs... For the same task in systemd for Sysvinit I need an over 150 lines bash script, root privileges, and the Sysvinit have several bugs that needs to be fixed. And for what? Just to start a user daemon.
Like I think all of the Systemd stories, sensational article is sensational. If you actually read what machinectl is, you'll see it has nothing to do with the su command, and it's also not suppose to replace it. Basically, from reading for about 1 minute, machinectl is to execute operations on VMs and containers. Last time I checked, the su command don't do that and have nothing to do with it. Probably someone asked Poettering, "Hey, would be nice to have root shells in a VM"
machinectl may be used to execute operations on machines and images. Machines in this sense are considered running instances of:
Virtual Machines (VMs) that virtualize hardware to run full operating system (OS) instances (including their kernels) in a virtualized environment on top of the host OS.
Containers that share the hardware and OS kernel with the host OS, in order to run OS userspace instances on top the host OS.
The host system itself
Wasn't the point that chroot is as good, and not better, as the normal Unix permission/groups security feature? So, basically, chroot doesn't and isn't designed to add any additional security besides the normal Unix permission/groups security.
This means using a chroot is not less secure, but it is not more secure either. If you have proper permissions configured on your system, you are no safer inside a chroot than relying on system permissions to keep a user in check.
Firefox and other browsers (and Flash) had 0-day security exploids like forever, but nobody recomends to just stop using the Internet. Also, you can chose to run the Java Applet in a sandbox. There are tons of very useful Japa Apples still there, why should I deactivate Java and stop using them now? How is that 0-day exploid going to affect me in any way? It isn't and it won't, especially because Java Apps ask for permission to be run.
"The documented format is compatible with the format used in the first versions of the journal, but received various compatible additions since."
So, your last statement is factually wrong, i.e. that you need the version of journalctl that systemd was running. You can use the first version of journalctl and you will be able to read systemd 195 logs. But pracically, it is not the big deal you want it to make.
And what? That was in 2011, and they wrote "At this point we have no intention to standardize the format..." That quoted document was from the introduction of the journal. It's obviosly that the developers didn't want to freeze the format at that time.
I don't get the issue of binary logging. All files on my computer are binary, I always need some sort of program to show me the content of the file on my monitor. And what's the difference if SystemRescueCD ships journalctl alongside grep and emacs to show me system-log files? The other, systemd's influence over other projects? What? So, if developers of Gnome or KDE decide that systemd brings a feature that they want to use (like systemd-logind) *that's* what you call "system'd influcence over other projects"? What is that igocentric thinking on your part?
I never understand the penchant for people who complain how many tabs other people have open. Is there a rule that you should limit yourself to single digit count of tabs open? But to answer your question, Firefox have since ages vertical tree tabs as plugin, and the lack of such vertical tabs plugin is the reason why I don't use Chrome.
Lying is not a "mortal sin" (sic), where did you get that from? Unbelief is the mortal sin in Christianity and Islam. Btw, I'm not religious in any sense, just pointing that fact out. Or, just to help you to understand the Creationist view point, "Now faith is confidence in what we hope for and assurance about what we do not see." Hebrews 11:1. i.e., faith is evidence in the Creationist view point.
Also every industrialized country have minium wage, and the majority of them that do, have it about 30% to 50% of GDP per capita. Only the United States is at the bottom, with just 28% of GDP per capita. Germany is on the top with 49%, and we are now currently demaning to increase the minium wage. The minium wage have no impact on jobs, it just makes sure that if you have a job you can sustain yourself. Which will benefit everyone, the small and middle business have more paying customers, we have less crime rate and less of a wellfare state. http://en.wikipedia.org/wiki/L...
A lot of users left, really? Lets see on Distrowatch.com 2010 9. Arch 768 2011 6. Arch 1134 2012 7. Arch 1201 systemd was introduced 2013 9. Arch 1016 2014 7. Arch 1087 Now 9. Arch 924, with Ubuntu, Debian, Mint and openSUSE on top, probably because of the new releases. All with systemd. -- 2012 22. Gentoo 466 Now 40. Gentoo 313 As far as I can tell, Arch gained popularity for the systemd change, and stood on top through the years, while Gentoo lost a lot of popularity.
Your arguments are all biased and manufactured. That is a frequent observation from me that people who just don't like systemd make up arguments for why it is bad. Quite just like religious people make up argument for why evolution is false. It's also psychology 101 that people form beliefs first and make up arguments later to justify those beliefs. You just don't like systemd. My recommendation is to just give it a try.
"Those you shown are global parameters, not startup scripts." No, those are the start up scripts. "SystemD generates diagnostic messages" Yes, those are extra. There are no diagnostic messages in sysvinit at all. So, you complain that systemd gives you extra tools to debug services. "systemD instructs you to use some crazy command to parse the binary logs" All files on a computer a binary and you need some program to read it. The journalctl tool is not crazy, it actually behaves just like grep and tail. "Usually you can't just disable SystemD, and the tendency (IE it WILL happen), sysvinit will be removed." The better tools will replace the old and worse tools. "Precisely. Its not opt-in. And when you manually startup scripts, it captures the useful information the program is outputing *at that instance*." Let me explain again. If you start a service it will capture sysout and syserr, because otherwise those outputs are lost (like in sysvinit). If you start manually via systemctl those are in the logs and you can see them via systemctl status. "What we have now, are deamons silently failing and requiring an extra command to understand why" No, you describe the situation with sysvinit. If a daemon is started on startup the sysout and syserr outputs are lost. Systemd logs them. And also, systemd actually shows you that the daemon failed to start, and blocks other daemons that depend on the failed daemon from starting.
So, comparing apples to apples, the apache22 init script in FreeBSD has around 190 lines, and nginx's ~140, including comments and dependencies. The scripts are quite easy to understand and show how to put everything in place.
Still an order of magnitude more complex than systemd.
[Unit] Description=MaraDNS secure Domain Name Server (DNS) recursive resolver Documentation=man:Deadwood(1) Requires=network-online.target After=openhomecrypt.service After=network-online.target After=network.service
Then what are we discussing? Use your old style sysvinit.
Theoretically. In practice, it overrides the way sysvinit works, and you need to explicitly re-enable it.
I don't know again what you mean. The sysvinit init scripts are still working.
it doesn't, as systemd isn't capturing the program's log.
Because it doesn't suppose to do that. The journald is used internally by systemd, and services can opt-in to use it. It's also a situation of damn if you do, damn if you don't do. How many times I red on Slashdot the complain that with systemd you must have binary logs, or that it takes over logging.
In Roundcube for example you can opt-in into syslog logging. http://trac.roundcube.net/tick... The same options should be there to enable journald logging. At least systemd captures sysout and syserr into the journal, so it's not lost. Another huge improvement over sysvinit. How many times I had to start a daemon manually so I can see the errors from syserr.
But again, the MySQL logs are still there in/var/log ? It's not systemd fault if Oracle is not updating MySQL to use journald.
In science, it's irrelevant if you admit it or not. Either your model works or not, and if it's not working somebody will come up with a better model and replace yours. People will use the better model because it works better. Or maybe I misunderstand you. Newton's laws of gravity works "almost right", Einstein's theory is better. But in cosmonautics and mechanics we use Newton's laws, because they are good enough.
If we can't observe anything new. And by "new" I mean something that was not predicted by a scientific theory. Of course, there is always the possibility to observe something new, but it's like an asymptote. New scientists will be less and less excited, because they will just confirm established theories.
Aw, boring. I was hoping that everyone was wrong and we get some new physics. Misconception of scientists number one, scientists (and me) like to be shown wrong so we can go and investigate and discover new knowledge. The day it turns out that we know everything will be a very sad day indeed.
"What I want is quite simple. To be able to configure and manage stuff with the least hassle."
Then you want systemd. As I mentioned before, the sysvinit start scripts are huge, complicated and error prone (the loop in Apache init script). In systemd all you have is a 17 lines file for Nginx: https://projects.archlinux.org...
systemd adds a lot of extras, and does not take anything away. It adds, a) info on whether the service was started, b) automatic restart of crashed services, c) journald, d) limit resource usage per service, e) simple and powerful service configuration files, f) inter service dependencies management (start Thin only if Nginx is started, or start MySQL after Apache) g) a lot of tools that were missing like systemd-ask-password.
And systemd does not take anything away from you. You can still use all your old school tools and your old style logging, and even the old sysvinit scripts.
"but no standard tool will help you when some opaque software is capturing the initialization process."
I don't know what you mean by that.
"Do you know which flags are passed to eg. your nginx setup? A quick look at the rc.d script will enighten you."
Same with systemd service files, see my example above.
"Is there a bug on the script (it happens more often than you seem to think)? Easy to fix."
In a 9000 bytes script file? You gotta be kidding me. The systemd file is just 17 lines long. The systemd developers have automated tests to make sure their software runs, if you don't trust them, why do you trust the kernel devs or the devs of the services you are using?
"but if not, why the f*ck is it taking control over MySQL initialization? "
What do you mean by that? It starts the service and watches the service that it is really started, and it gives you info that it is started or it didn't started or it crashed. For example, on my laptop:
# systemctl status maradns-deadwood.service maradns-deadwood.service - MaraDNS secure Domain Name Server (DNS) recursive resolver
Loaded: loaded (/usr/lib/systemd/system/maradns-deadwood.service; enabled)
Active: failed (Result: start-limit) since Sun 2015-04-19 23:49:55 CEST; 4 days ago
Docs: man:Deadwood(1)
Process: 1472 ExecStart=/usr/sbin/Deadwood (code=exited, status=1/FAILURE)
Main PID: 1472 (code=exited, status=1/FAILURE)
CGroup:/system.slice/maradns-deadwood.service
Apr 19 23:49:55 localhost.localdomain Deadwood[1472]: There is no directory/mnt/homecrypt/var/cache/deadwood Apr 19 23:49:55 localhost.localdomain Deadwood[1472]: Fatal: chdir() failed Apr 19 23:49:55 localhost.localdomain systemd[1]: maradns-deadwood.service: main process exited, code=exited,...LURE Hint: Some lines were ellipsized, use -l to show in full.
That's why people who advocate healthy food are seen as dicks. Come down from your condescending high horse and maybe more people would listen to you. Do you really think you are going to help people by insulting them like "But go ahead and munch on Doritos and Mt. Dew if you prefer - a goatee should compensate."? Most people will just think that you are a dick. Or "experience real food.", like you are the expert who decides what is "real" food and what isn't.
http://tolweb.org/
Is also a Tree Of Life project, but unlike OpenTree, it have pictures and descriptions and it also contains extinct species.
For examples for Aves:
https://tree.opentreeoflife.or...
http://tolweb.org/Aves
Groovy is an example how to do it right. In Groovy, I don't need semicolons and even parenthesis are optional, but there is no pitfalls you can fall into like in JavaScript. That is because the Groovy compiler don't try to be intelligent and try to guess your intent.
In Groovy I can write
func "a", "b"
func "a" bar "b" baz "c"
func { closure }
return [func: "something"]
That's a no brainer. Because if a job is open people will take it. But woman have more options than man. For example, marrying a man who goes into STEM, or make money off looks (which includes everything from ads, to modeling, to porn, to marrying), or go into services or nursery or kindergarten or teacher jobs.
Utter BS. The user land of Linux gets better and better. I remember the time about 14 years ego when I had to put some obscure data of my monitor in the Xorg.conf to get any graphic output, and when I could only have sound from one application. PulseAudio, KDE and Gnome all improved my experience of Linux, and now systemd which also improves my experience. For example, to add the Emacs-Daemon I just had to put a 14 lines systemd-service file in .local/share/systemd/user/emacsd.service and run systemctl --user enable emacsd, without root privileges.
Just look what a mess Sysvinit scripts are for the same task:
http://www.emacswiki.org/emacs...
For the same task in systemd for Sysvinit I need an over 150 lines bash script, root privileges, and the Sysvinit have several bugs that needs to be fixed. And for what? Just to start a user daemon.
Like I think all of the Systemd stories, sensational article is sensational. If you actually read what machinectl is, you'll see it has nothing to do with the su command, and it's also not suppose to replace it. Basically, from reading for about 1 minute, machinectl is to execute operations on VMs and containers. Last time I checked, the su command don't do that and have nothing to do with it. Probably someone asked Poettering, "Hey, would be nice to have root shells in a VM"
http://www.freedesktop.org/sof...
machinectl may be used to execute operations on machines and images. Machines in this sense are considered running instances of:
Virtual Machines (VMs) that virtualize hardware to run full operating system (OS) instances (including their kernels) in a virtualized environment on top of the host OS.
Containers that share the hardware and OS kernel with the host OS, in order to run OS userspace instances on top the host OS.
The host system itself
Wasn't the point that chroot is as good, and not better, as the normal Unix permission/groups security feature? So, basically, chroot doesn't and isn't designed to add any additional security besides the normal Unix permission/groups security.
This means using a chroot is not less secure, but it is not more secure either. If you have proper permissions configured on your system, you are no safer inside a chroot than relying on system permissions to keep a user in check.
https://securityblog.redhat.co...
Firefox and other browsers (and Flash) had 0-day security exploids like forever, but nobody recomends to just stop using the Internet. Also, you can chose to run the Java Applet in a sandbox. There are tons of very useful Japa Apples still there, why should I deactivate Java and stop using them now? How is that 0-day exploid going to affect me in any way? It isn't and it won't, especially because Java Apps ask for permission to be run.
https://sites.google.com/site/...
"The documented format is compatible with the format used in the first versions of the journal, but received various compatible additions since."
So, your last statement is factually wrong, i.e. that you need the version of journalctl that systemd was running. You can use the first version of journalctl and you will be able to read systemd 195 logs. But pracically, it is not the big deal you want it to make.
And what? That was in 2011, and they wrote "At this point we have no intention to standardize the format ..." That quoted document was from the introduction of the journal. It's obviosly that the developers didn't want to freeze the format at that time.
Citation very much needed.
Here is a documentation of the binary log format:
http://www.freedesktop.org/wik...
Systemd offers a C API to access those, an export format for easier parsing, and of course you can access the binary logs directly.
http://www.freedesktop.org/sof...
http://www.freedesktop.org/wik...
I don't get the issue of binary logging. All files on my computer are binary, I always need some sort of program to show me the content of the file on my monitor. And what's the difference if SystemRescueCD ships journalctl alongside grep and emacs to show me system-log files?
The other, systemd's influence over other projects? What? So, if developers of Gnome or KDE decide that systemd brings a feature that they want to use (like systemd-logind) *that's* what you call "system'd influcence over other projects"? What is that igocentric thinking on your part?
I never understand the penchant for people who complain how many tabs other people have open. Is there a rule that you should limit yourself to single digit count of tabs open? But to answer your question, Firefox have since ages vertical tree tabs as plugin, and the lack of such vertical tabs plugin is the reason why I don't use Chrome.
Lying is not a "mortal sin" (sic), where did you get that from? Unbelief is the mortal sin in Christianity and Islam. Btw, I'm not religious in any sense, just pointing that fact out. Or, just to help you to understand the Creationist view point, "Now faith is confidence in what we hope for and assurance about what we do not see." Hebrews 11:1. i.e., faith is evidence in the Creationist view point.
Sure, my email is erwin.mueller@deventm.org
I think it's also on my web site.
Wikipedia is *now* a "trusted data source"? I think humanity is destined for doom.
Wikipedia is not a "trusted data source"? I think humanity is destined for doom.
Also every industrialized country have minium wage, and the majority of them that do, have it about 30% to 50% of GDP per capita. Only the United States is at the bottom, with just 28% of GDP per capita. Germany is on the top with 49%, and we are now currently demaning to increase the minium wage. The minium wage have no impact on jobs, it just makes sure that if you have a job you can sustain yourself. Which will benefit everyone, the small and middle business have more paying customers, we have less crime rate and less of a wellfare state.
http://en.wikipedia.org/wiki/L...
A lot of users left, really? Lets see on Distrowatch.com
2010 9. Arch 768
2011 6. Arch 1134
2012 7. Arch 1201 systemd was introduced
2013 9. Arch 1016
2014 7. Arch 1087
Now 9. Arch 924, with Ubuntu, Debian, Mint and openSUSE on top, probably because of the new releases. All with systemd.
--
2012 22. Gentoo 466
Now 40. Gentoo 313
As far as I can tell, Arch gained popularity for the systemd change, and stood on top through the years, while Gentoo lost a lot of popularity.
Your arguments are all biased and manufactured. That is a frequent observation from me that people who just don't like systemd make up arguments for why it is bad. Quite just like religious people make up argument for why evolution is false. It's also psychology 101 that people form beliefs first and make up arguments later to justify those beliefs. You just don't like systemd. My recommendation is to just give it a try.
"Those you shown are global parameters, not startup scripts."
No, those are the start up scripts.
"SystemD generates diagnostic messages"
Yes, those are extra. There are no diagnostic messages in sysvinit at all. So, you complain that systemd gives you extra tools to debug services.
"systemD instructs you to use some crazy command to parse the binary logs"
All files on a computer a binary and you need some program to read it. The journalctl tool is not crazy, it actually behaves just like grep and tail.
"Usually you can't just disable SystemD, and the tendency (IE it WILL happen), sysvinit will be removed."
The better tools will replace the old and worse tools.
"Precisely. Its not opt-in. And when you manually startup scripts, it captures the useful information the program is outputing *at that instance*."
Let me explain again. If you start a service it will capture sysout and syserr, because otherwise those outputs are lost (like in sysvinit). If you start manually via systemctl those are in the logs and you can see them via systemctl status.
"What we have now, are deamons silently failing and requiring an extra command to understand why"
No, you describe the situation with sysvinit. If a daemon is started on startup the sysout and syserr outputs are lost. Systemd logs them. And also, systemd actually shows you that the daemon failed to start, and blocks other daemons that depend on the failed daemon from starting.
So, comparing apples to apples, the apache22 init script in FreeBSD has around 190 lines, and nginx's ~140, including comments and dependencies. The scripts are quite easy to understand and show how to put everything in place.
Still an order of magnitude more complex than systemd.
[Unit]
Description=MaraDNS secure Domain Name Server (DNS) recursive resolver
Documentation=man:Deadwood(1)
Requires=network-online.target
After=openhomecrypt.service
After=network-online.target
After=network.service
[Service]
ExecStart=/usr/sbin/Deadwood
Restart=always
[Install]
WantedBy=multi-user.target
None of them are useful to me.
Then what are we discussing? Use your old style sysvinit.
Theoretically. In practice, it overrides the way sysvinit works, and you need to explicitly re-enable it.
I don't know again what you mean. The sysvinit init scripts are still working.
it doesn't, as systemd isn't capturing the program's log.
Because it doesn't suppose to do that. The journald is used internally by systemd, and services can opt-in to use it. It's also a situation of damn if you do, damn if you don't do. How many times I red on Slashdot the complain that with systemd you must have binary logs, or that it takes over logging.
In Roundcube for example you can opt-in into syslog logging. http://trac.roundcube.net/tick... The same options should be there to enable journald logging. At least systemd captures sysout and syserr into the journal, so it's not lost. Another huge improvement over sysvinit. How many times I had to start a daemon manually so I can see the errors from syserr.
But again, the MySQL logs are still there in /var/log ? It's not systemd fault if Oracle is not updating MySQL to use journald.
In science, it's irrelevant if you admit it or not. Either your model works or not, and if it's not working somebody will come up with a better model and replace yours. People will use the better model because it works better. Or maybe I misunderstand you. Newton's laws of gravity works "almost right", Einstein's theory is better. But in cosmonautics and mechanics we use Newton's laws, because they are good enough.
If we can't observe anything new. And by "new" I mean something that was not predicted by a scientific theory. Of course, there is always the possibility to observe something new, but it's like an asymptote. New scientists will be less and less excited, because they will just confirm established theories.
Aw, boring. I was hoping that everyone was wrong and we get some new physics. Misconception of scientists number one, scientists (and me) like to be shown wrong so we can go and investigate and discover new knowledge. The day it turns out that we know everything will be a very sad day indeed.
"What I want is quite simple. To be able to configure and manage stuff with the least hassle."
Then you want systemd. As I mentioned before, the sysvinit start scripts are huge, complicated and error prone (the loop in Apache init script). In systemd all you have is a 17 lines file for Nginx: https://projects.archlinux.org...
systemd adds a lot of extras, and does not take anything away. It adds, a) info on whether the service was started, b) automatic restart of crashed services, c) journald, d) limit resource usage per service, e) simple and powerful service configuration files, f) inter service dependencies management (start Thin only if Nginx is started, or start MySQL after Apache) g) a lot of tools that were missing like systemd-ask-password.
And systemd does not take anything away from you. You can still use all your old school tools and your old style logging, and even the old sysvinit scripts.
"but no standard tool will help you when some opaque software is capturing the initialization process."
I don't know what you mean by that.
"Do you know which flags are passed to eg. your nginx setup? A quick look at the rc.d script will enighten you."
Same with systemd service files, see my example above.
"Is there a bug on the script (it happens more often than you seem to think)? Easy to fix."
In a 9000 bytes script file? You gotta be kidding me. The systemd file is just 17 lines long. The systemd developers have automated tests to make sure their software runs, if you don't trust them, why do you trust the kernel devs or the devs of the services you are using?
"but if not, why the f*ck is it taking control over MySQL initialization? "
What do you mean by that? It starts the service and watches the service that it is really started, and it gives you info that it is started or it didn't started or it crashed. For example, on my laptop:
# systemctl status maradns-deadwood.service /system.slice/maradns-deadwood.service
maradns-deadwood.service - MaraDNS secure Domain Name Server (DNS) recursive resolver
Loaded: loaded (/usr/lib/systemd/system/maradns-deadwood.service; enabled)
Active: failed (Result: start-limit) since Sun 2015-04-19 23:49:55 CEST; 4 days ago
Docs: man:Deadwood(1)
Process: 1472 ExecStart=/usr/sbin/Deadwood (code=exited, status=1/FAILURE)
Main PID: 1472 (code=exited, status=1/FAILURE)
CGroup:
Apr 19 23:49:55 localhost.localdomain Deadwood[1472]: There is no directory /mnt/homecrypt/var/cache/deadwood
Apr 19 23:49:55 localhost.localdomain Deadwood[1472]: Fatal: chdir() failed
Apr 19 23:49:55 localhost.localdomain systemd[1]: maradns-deadwood.service: main process exited, code=exited,...LURE
Hint: Some lines were ellipsized, use -l to show in full.