Debian/Ubuntu/CentOS which server is more suitable?

Source: Internet
Author: User
Tags debian server

Debian/Ubuntu/CentOS which server is more suitable?
// Update at mainly involves some comments that are scattered everywhere. I think they are valuable.
A comment in one of my answers to this question was deleted !!!!!
I didn't want to answer this question before, even though the current first Rio answer was an outrageous mess. I just liked Peng Yong's answer.

My deleted comments are as follows:
"If you don't use it, don't blame the system for being bad. We recommend that Debian/Ubuntu run Server, which is very irresponsible ."

Why is the content unfriendly? Which of the above words is unfriendly? I swear? Have I ridiculed anyone? When I point out that others will not use it, is it unfriendly? I cannot fly a plane or a tank. Is it unfriendly if someone points out that my skills are insufficient?

Now let me talk about it. The question of the subject is what release version the server uses! So the following discussions are all about servers.

First of all, I would like to invite all players. You should not feel good about yourself when you are playing new games recently, and then make a big recommendation! Take responsibility! People are servers, and sometimes choosing the wrong release version will lead to death!
Yes, now you finally find that there is a version named Ubuntu. It's so cool. There are so many packages. You can just use apt-get and 30 thousand packages in the repository without compiling them. Great! Almost all software is available in the latest version! Alas? Two days later, you found that Ubuntu was originally from Debian. Debian is called Niu. It operates in a full community and has a large number of packages. We will find Gentoo in two days, wow, ox! The ultimate performance optimization, compilation and re-compilation, configure, configure and then configure, streamlined to the extreme. In the next two days, Gentoo will get bored. Isn't it just compilation ~ Alas? There is still Arch. This is good. If you want to compile, you can also use the default package if you don't want to compile it. Then, the system that has not been updated by pacman in two months will be suspended.
Your ideology is the best choice at any stage. But this is not the case. It's just your interest.

To discuss this issue, you must first know the differences between the two major releases. RedHat and Debian.

I. Version Definition
RedHat is a release version maintained by RedHat. Its RedHat 9 is the last release in the name of RedHat. After RH9, the versions are divided into Fedora maintained by the community and EL used by the enterprise. The CentOS X we mentioned is compiled from rhel x. Therefore, in essence, the target user of CentOS is the Enterprise Server.
CentOS has the concept of release. What is the concept of release? When a version is set, the vast majority of software packages, including Kernel, have been determined. In this release, there are no special circumstances, and the major version number does not change.

For example, a Kernel version of CentOS 6:
2.6.32-358. el6.x86 _ 64

2.6.32 is the kernel version, and 358 is the package version. The package version indicates the number of times the package is packaged. For RHEL, it is normal to package a kernel 500 times.
For example, if some Software Version 1.1.3 is a version, if the Software Defined by itself is the bugfix version, and the last bit is the function version, then in RHEL, feature updates are rare! Generally, only the bugfix is updated! That is, only minor version updates are displayed.

Debian is a release version maintained and contributed by the community, and its selection, packaging, and operation are all organized by the Community and distributed.
Debian does not have the true concept of release. Debian has many repositories, such as stable, testing, unstable, and experimental. the Debian organization system approach is that a software first enters experimental, put it for a period of time, bug fixing, no bug, and moved it into unstable after a period of time, so that the loop is finally moved to stable. In this case, Debian does not have a stable version. Today you use kernel 3.2.1-87, and update it to kernel 3.3.2-5 tomorrow.
-------- Supplementary content -------
I think I have already explained the so-called release concept clearly, but some people in the comments are telling me that Debian has a release. The release I mentioned is not the kind of concept of drawing a timeline and calling a name. It is the concept of version maintenance.
@ Liu Shiwei: Debian is also like this. Well, I'll prove it to you.
You get Debian from here -- the linux-image-3.2.0-4-amd64 package details in wheezy can get the Linux kernel package of Debian stable now, download it, decompress it

Under the usr/share/doc/linux-image-3.2.0-4-amd64 directory There Is A changelog. Debian, grep:

Grep wheezy changelog. Debian

Linux (3.2.57-3) wheezy; urgency = medium

Linux (3.2.57-2) wheezy; urgency = medium

Linux (3.2.57-1) wheezy; urgency = medium

Linux (3.2.54-2) wheezy; urgency = high

Linux (3.2.54-1) wheezy; urgency = high

Linux (3.2.53-2) wheezy; urgency = high

Linux (3.2.53-1) wheezy; urgency = medium

Linux (3.2.51-1) wheezy; urgency = low

Linux (3.2.46-1 + deb7u1) wheezy-security; urgency = low

Linux (3.2.46-1) wheezy; urgency = low

Linux (3.2.41-2 + deb7u2) wheezy-security; urgency = high

Linux (3.2.41-2 + deb7u1) wheezy-security; urgency = high


At least in the wheezy (stable), he went from 3.2.41 to 3.2.57, and ...... You can see that each version is packaged for 1-2 times, 1-2 times! In addition, Debian's unstable can really just walk around to stable.

Linux (3.2.41-2 + deb7u1) is the first stable version. Its previous version is

Linux (3.2.41-2) unstable

Linux (3.2.41-1) unstable, get, hit once

Linux (3.2.39-2) unstable, 39 is twice.


From this process, you can see that Debian is still following the Kernel Source in general. Why? Nobody! It is better to rely on small version updates of the Kernel itself to install patches by scattered people.


What about RedHat?

Put a Release Note of RHEL 6.4


Https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/6.4_Technical_Notes/kernel.html


RHEL is not a small version number of the kernel source. It integrates the bugfix itself, mainly security-related patches.

Why not use kernel source?

The main difference is that the target users are different, just as the driver I want to explain below. The target user of RHEL is the Enterprise Server. Many things have been replaced in its Kernel. Disks, NICS, and various drivers. The Kernel source is unreliable even though it only uses a small version number. Frequent acquisition is also highly risky.

In fact, after 2.6, there is no real stability concept. It is just a step forward. Of course 2.6.32.xx is indeed dominated by bugfix. However, this amount is too large, and not all RHEL comes in.


You must argue with me about the version. Well, I won't compete with you. Debian Stable has a version ~ Are you satisfied? This kind of kernel is packed twice. You can use it if you like it. It doesn't matter.

However, some versions are only stable. I have never seen testing.


To tell the truth, I really spent more time looking for Debian information,

In 6.0, it entered stable 2014, and there was indeed an update recently, at 08 Apr.


Http://metadata.ftp-master.debian.org/changelogs//main/l/linux-2.6/linux-2.6_2.6.32-48squeeze5_changelog


Lenny, or 5.0 released in, is hard to find even information. If anyone can find lenny, please give a kernel changelog


----- Supplement ended -------


His successor, Ubuntu, has the concept of release, such as 9.04 and 10.06. When he confirms release, he will not make too many version changes in this version.
But the problem is that he has learned the form of CentOS and has not learned the essence of CentOS. Why? Because he wants to pursue a new version (two versions a year) and want to learn more about the server market. This is completely contradictory.
New, easy to handle, as long as you follow Debian, the experimental warehouse will always be the latest. Take it, test it, repackage it, and release it!
Stable? (Ubuntu-Server) This is hard, and requires constant manpower investment. Debian will not help you with this. Do it by yourself? I tried Ubuntu several times, but I haven't seen it yet. Almost all of them give up.


Ii. Maintenance power
Do you know what is the release version used to maintain a server?
CentOS 4.0
CentOS 4.9
6 years

Ubuntu 8.04 LTSApril 24,200 8
Ubuntu 8.04.4 LTSJanuary 28,201 0
1 year and 9 months
What about LTS ???

Ubuntu 10.04 LTSApril 29,201 0
Ubuntu10.04.4LTSFebruary 16,201 2
What about LTS?
End of the Date is a joke for three years. As long as the next release is released, the number of updates received by the last release is poor.

This is the strength of RedHat! You only need to use my release version, so you don't have to worry about it! What about Ubuntu? Just kidding, even if it is LTS, LTS will hardly be updated after the new version is released. Patch? Never seen! That is, the real life of LTS is 6 months to 1 year. Do you dare to use it? Do you dare to use it for your company?

One day, a software vulnerability similar to the recent openssl vulnerability was reported. CentOS 5 Users obtained the upgraded rpm the next day. Debian users receive a major version update and must update glibc, kernel, and other packages due to dependencies. Ubuntu users receive an official reply: "apt-get dist-upgrade"

This is the difference between the maintenance of these release versions.

Let's talk about RHEL again. Many people don't understand it and think Ubuntu is "new" and RHEL is "old ".
Your server has a Broadcom network card. CentOS 6 (2.6.32-358. el6.x86 _ 64) User modinfo.

Filename:/lib/modules/2.6.32-358.6.1.el6.x86 _ 64/kernel/drivers/net/tg3.ko

Firmware: tigon/tg3_tso5.bin

Firmware: tigon/tg3_tso.bin

Firmware: tigon/tg3.bin

Version: 3.124


Debian testing (3.12-1) User modinfo

Filename:/lib/modules/3.12-1-amd64/kernel/drivers/net/ethernet/broadcom/tg3.ko

Firmware: tigon/tg3_tso5.bin

Firmware: tigon/tg3_tso.bin

Firmware: tigon/tg3.bin

Version: 3.133

Do you know which version of tg3 driver is carried by http://kernel.org's latest 2.6.32?

# Define DRV_MODULE_VERSION "3.102"

# Define DRV_MODULE_RELDATE "September 1, 2009"


Is CentOS "old? Who is driving the latest driver into the old kernel? Who is testing the compatibility between the new driver and the old kernel? RH !! These are all human resources, and these are financial resources.

While ensuring stability and compatibility, RH provides the most comprehensive device matching and the latest driver support for server users. All of this! You don't have to worry about stability and compatibility, because RH does not have a new version and does not bring about a huge feature update.

Another example is as follows:
The RPS function in google RFS patch in linux kernelLinux 2.6.35.
This is what Linux Server users dream of. You don't have to worry about wasting your multi-core CPU. You don't have to spend a lot of money on expensive multi-irq NICs. But it only takes 2.6.35 ~

But you don't have to worry. CentOS 6 (2.6.32) has integrated RPS into kernel 2.6.32.
Have you seen Ubuntu do this? What is Ubuntu busy? I'm busy sending another version this year!
Why does RHEL do it? Because the user is a server! RPS cannot be used at all.

I return to the beginning. I have also made products using Ubuntu, although it is not a server. But the final result is not good. I have heard that a colleague's previous company uses Ubuntu as a server, with thousands of servers. After chatting, I found it was almost as painful as I predicted.

The basic painful process is like this.
If you encounter a problem, you can only update the software version to solve the problem.> the current version does not provide the software version.-> you cannot compile it yourself, dependency too heavy-> Decision dist-upgrade-> found to span N release-> test dist-upgrade-> 10 machines, 2 success, 8 failure, different failures-> painful solutions-> Successful dist-upgrade-> found that the company's business program needs to be re-compiled-> communicate with developers to explain the importance of the upgrade-> developers re-Debug and test the new version of the library used by some columns-> deliver the new version

CentOS users are basically like this: The following is a recent real conversation
"Xxx, you saw the openssl vulnerability in the news"
"Ah? I don't know. Let me check it out"
----
The puppet operation will take 10 minutes.
"Boss, the patch has been released, updated, and apache with ssl has been restarted automatically"

End ~

Finally, I will explain my previous comments.

"If you don't use it, don't blame the system for being bad. We recommend that Debian/Ubuntu run Server, which is very irresponsible ."

Any Linux release version is the same in theory. The operation is only convenient and troublesome! Yes, yum is weaker than apt (this is the difference between enterprise maintenance and community maintenance. Enterprise maintenance does not require such A function), but any effect that can be achieved in release A is as follows, it must be implemented on B. You can even use CentOS and compile it based on Gentoo! By making RPM, you can reduce the dependency by yourself. You can say it is troublesome, but you cannot say it is impossible to achieve it.
So I should repeat it again: "If you don't use it, don't blame the system for being bad "! This is not discrimination, it is not ridicule, it is a more useful place for you to recognize the facts!
Second sentence! "We recommend that Debian/Ubuntu run Server, which is very irresponsible ." This is a lesson of blood and tears! It doesn't matter if you don't want to hear it, but there are always people who want to be put on unfriendly hats and want to tell you this truth!

I would like to add that I do not mean to be disrespectful. However, most companies like Douban and VeryCD use Gentoo In the circle. The people who made this decision at that time basically put their interests above the company's interests. This is actually an irresponsible action, which will directly lead to an increase in the company's maintenance costs.

Do you really think that CentOS cannot achieve your performance with Gentoo?
Do you really think that the quality of package for one of your small teams must be better than that of the staff of a company in RH?
If you thought so at the time, you could only prove that you would not have used it at the time.

If I tell you today that I want to create an http server, I don't need apache to use nginx, and I need to rewrite one set based on xxx for performance. I believe most people will ask the same question: "Do you think you can write better than ng ?"

Let's look at yourself later.

----

I don't want to. It makes no sense to turn this answer into a dispute between people using different versions. I just said that in the current status, the First push is still CentOS. I personally use Gentoo on the PC vm, And the HomeServer at home uses Debian. The company is naturally CentOS.
As for the Debian server, if you like it, it won't be a big problem. But it is really not as easy as CentOS.
Ubuntu... really miserable
Gentoo... no zuo no die

Supplement to Debian:
Comment 1:
Debian is a good choice in many environments that are not so important. [It doesn't mean that even if you get down for ten minutes or half an hour, your boss won't lose money with you.] Why? 1. a sufficient number of packages. 2. testing has acceptable reliability. (Compared with Arch) 3. testing has a very good software update speed. 3. testing does not have the release Feature and is always upgraded smoothly (same as Arch Gentoo ). Similar to Ubuntu, Fedora has the release feature, but once the new version comes out, the old version is rarely maintained. At the same time, the dist-upgrade process is unfriendly and the experience is poor. Therefore, if I have to choose one, Debian will also be used in the school data center. In my answer, I also mentioned that my HomeServer uses Debian. In fact, Arch was used in the past, but Arch Stability is really poor. A pacman-Syu is playing with you. After suffering the trouble, I switched to Debian Testing and ran for about two years. It still felt very reliable.

@ Dai yunjie:
Gentoo can arouse feelings-> increase in productivity-> protect the company's interests. Haha, you win. We still need to divide the case into cases. Is 60 still worth 6000? I have also used Gentoo as a product, but it is not a server. I decided to transfer the x86 products of TVU networks to Gentoo. This product makes good use of Gentoo's convenient customization and smooth update features, because TVUPACK needs to adapt to the latest USB Modem. The only pity is that I didn't have time to give it a binary distribution system. If I have another chance next time, I will definitely find a solution. Compiling on the Server is not my style, it is too dirty. I have reduced CentOS 5 to 96 RPM and can still start up. CentOS 6 can only achieve more than 100.
However, we still need to separate things. I will also spend a lot of time debugging VIM to write bash to write python, but I started to write Cocoa, and I decided to give up VIM and I had to use xcode.
I guess a lot of new users (well, it's time to show B ge) think that the discussion sessions between releases are similar to those between various early development languages that are similar to religious discussions [attacks].
In fact, this is not the case, because the cost of getting familiar with a release version is much lower than that of a development language. 5-10 years later, enough time for you to get familiar with mainstream Release versions. It is enough for a master to make the best use of things.
I am not a fan of any release version. I use CentOS on the company server, I use Debian on HomeServer, I use Debian on CubieBoard, I use openwrt on the router, and I use OSX on the PC, I use Gentoo on a PC VM. This is the highest level.

In fact, Dai yunjie likes personal interests = company interests. I gave a thumbs up. Likes likes this feeling. There are a lot of things that you like. I respect everyone's liking. You don't really need much reason. I did this just to "like ".
Besides, boss Dai yunjie gave me a thumbs up. What else can I say? haha.

@ Subaozi comments:
I can understand you, but I don't agree with you. Why?
Because I am also old enough to use XXX as a driver, I think it is very interesting, Cool, very special, and I hope I can be different from others, or I can tell myself that I can learn more (yes, indeed ).
But when I go through this stage and look back. I know two points. 1. This process is valuable. Without this process, it will not become me today. 2. This process takes too much time. I have invested 100% more experiences than others to get 30% more knowledge than others. Maybe there is a better way to go?
Today, my colleague told me that he wants to compile apache and put it online. I told him. You don't need to do this. You can use the built-in CentOS. You can really figure out the performance-related parameters of apache (Believe Me, many people cannot figure it out ), you can also study how to allow developers to freely release new versions in a controlled environment, and have good rollback functions without the need for O & M intervention. You can also write a system to verify whether the database backed up once a week can be loaded normally.
Believe me, in actual O & M work, there are too many jobs worth doing but no one is doing. They are much more meaningful than configure.

Well, we should be elders about age. RH 6? I checked things in 1999 and I am still in junior high school.

@ Paste
1. "I have no opinion on the RedHat series, but do you pay for it ?"
So we are talking about CentOS? Do you know the relationship between them? Let's see.

2. "I have already told you about the support time, but it will not be a bit of a jet? "I tried Ubuntu several times, but I haven't seen it yet. ."
Ubuntu says that LTS has been maintained for three years. It can be viewed from the historical maintenance time, with little maintenance to three years.
This is what I want to express. Do you know that LTS is 3 years old?

3. "One day a software vulnerability similar to the recent openssl vulnerability"
Well, you quoted my original words. Please note that what I want to say is "similar". This is not the openssl.
Your statement is incorrect when talking about how to fix openssl.
There are two ways to fix openssl this time. One is to Update openssl to a small version, and the other is to re-compile the function that causes the problem to be disabled. It is not just an upstream repair method.

RedHat should adopt the second type, because it updates 1.0.1e-16 and only adds the packaging number. (Note that the RedHat version is maintained as much as possible. I don't know if Debian is doing this, or is it upgraded to 1.0.1f? May answer the question ?)
This is a digress ...... What I want to express here is that the organization of Debian may be updated jointly and severally, especially in the Testing environment, because Debian keeps moving forward in Testing. For example, if A depends on B, B is constantly moving forward, and A encounters A Bug, A and B may be updated at the same time in the next update. This phenomenon exists in Testing. Stable.

At the same time, I have recognized in some comments that I have exaggerated Debian descriptions.

4. It's your business to use squeeze and wheezy. Because you use it so much, I don't use it so it shows that I don't understand it? Me BB? You are too proud of yourself. Please give me some reason.

In addition, I have already mentioned the answer at the end. You can use Debian as a server, and there is no big problem.
I have already described the reason why I don't recommend it. The kernel is much weaker than the RedHat. You may want to refute this question.

This short answer to my answers and comments reflects at least three things that you don't understand. I think you should read more.
In addition, to be polite, no one will treat you as a fool. Many people may fall into a situation where they attack others to reflect their height. In fact, this is not necessary for truly powerful people.
Just like a comment on Gentoo, I must say that I am attacking Gentoo, but in the comment, I will do everything I can to show how familiar Gentoo he is and how useful he is. As? The way you reflect your abilities must first place others on your opposite side? Low ......

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.