标签 CentOS 下的文章

所谓适合你的商用Linux服务器,可能只是符合你的职员水准的服务器。

penguins
供图: flickr/Pete

与上千种Linux桌面版本相比,Linux服务器只有可怜的十几种。但想要选对适合你的企业需要的仍然不是件容易的事情。我可以帮助你。Linux 方面我有20年经验了,对Linux服务器略懂一二。

参考:

我觉得选Linux服务器首先要考虑的是你的IT部门对Linux有多熟悉。尽管这些年Linux专家好找多了,但是专业搞Linux的人还是不太好找。

今年早些时候我去俄勒冈州的波特兰参加一个叫做OSCon的开源大会的时候,我确认了一个事实就是每家公司(包括某家叫什么软的)都在考虑雇佣有Linux和开源工作经验的人

特别地,从已有经验来看,雇主在找有[几年Linux使用经验]的职员的时候都遇到了麻烦。或者确切地说是你需要保证你的Linux服务器火车准点的雇员。

不难看出,如果你手底下没有一群经验丰富的Linux技术人员的话,你要避免选择像Debian这样没有供应商提供技术支持的版本。

别搞错了,如果有经验丰富的人员的话Debian是个很棒的选择,但是如果你的职员连BASH和C Shell有什么区别都不知道的话那还是算了吧。

推荐给Linux新手的Linux服务器

  • RHEL
  • SUSE
  • Oracle Linux
  • Turnkey Linux

如果你的职员是Linux新手,你需要用一个商业版本的Linux。在它们之中,多数人力荐的是Red Hat Enterprise Linux

Red Hat靠对商用的支持成为了第一个资产过亿的Linux公司。RHEL比起其它Linux有很大的优势,因为它有着全套的工具——企业级支持专业认证硬件认证,通过Red Hat Network (RHN) 的自动在线更新 —— 那让CFO和CIO们很开心。

话说回来,Red Hat 确实有个真正的对手:SUSE Linux Enterprise Sever (SLES)

像RHEL一样,SLES有着技术支持;由它的姊妹公司Novell负责的人员认证硬件认证在线更新

那么,在它们当中该怎么选择呢?你可以试试先。它们用起来都很容易。就我而言,它们我都用过。总之要视实际情况而定,它们各有用武之地。

还有一个企业级Linux可以选择: Oracle Linux。尽管它是以RHEL为模仿对象和奋斗目标的,反正我不用。我所知道的唯一在商用中使用它的是一群把它们的IT鸡蛋们都放在Oracle这个篮子里面的人。

推荐给非专家用户的Linux服务器

  • CentOS
  • openSUSE
  • Ubuntu Server

假设你中等水平,你的手下了解一些Linux的知识但并不是专家,怎么办呢?

我将推荐几个Linux。首先,如果你喜欢RHEL的话,那么一个免费的RHEL的克隆版本CentOS,值得你去关注。

CentOS 人气很高。如果你有一个运行在大多Web托管服务上的Apache服务器软件,很有可能你的网站就是运行在CentOS上的。要在网上寻找这个发行版的免费技术支持也不是件难事。

如果你在担心Red Hat找CentOS麻烦的话,尽管放心好了。虽然Red Hat对Oracle Linux没什么好感,但对CentOS不一样。RedHat的CEO James Whitehurst最近说:“CentOS 是 RHEL生态系统成为行业标杆的原因之一。如果不是它,Linux就必须付费使用而RHEL也就不会这么流行了。所以,往小处看我们是损失了一些收入,但从长远看,CentOS 在使RHEL成功方面扮演着非常重要的角色。”

另外一个给稍微了解一点Linux的人的选择是openSUSE。这是SUSE的社区版本。尽管它不提供SLES的技术支持,它还是挺好用的。我的家用服务器就是用的openSUSE。

Fedora是RHEL的社区版,但我不推荐用它做服务器。Fedora对想要挖掘Linux潜力的开发者们是不错的,但它不适合想要一个稳定的服务器的人。

另外一个中游的选择是Canonical的Ubuntu。Ubuntu以桌面版本及其在平板电脑和智能手机上的设计而闻名,同时它也有相当好的服务器版本:Ubuntu Server

像RHEL和SLES一样,Ubuntu也有技术支持和认证服务,但比不上Red Hat 和SUSE的资源丰富。另一方面,Ubuntu作服务器的话还是挺容易上手的。

专家级Linux服务器

  • Arch
  • Gentoo
  • Debian
  • Fedora

如果你对云计算感兴趣,Ubuntu(像RHEL一样)和OpenStack结合地很好。另外,Ubuntu的母公司Canonical提供了Juju,一套非常方便的DevOps(开发/运营)的工具,这使得Ubuntu的架设、配置、管理、维护、升级和扩展服务器变得更简单。

当我们在探讨云的时候,你也应该考虑你是不是真的需要在你的办公室或者数据中心里运行通用Linux服务器。很有可能你能在云的某一特定Linux服务器上运行服务。

多数公用云计算服务,如Amazon Web Services(AWS),Azure和RackSpace,提供Linux服务器。这样的话配置服务器等等一些难做的工作就已经替你做好了。

举个例子,在Amazon Elastic Cloud (AE2)上,Amazon提供了随时可用的Amazon Machine Images (AMIs),包括上文提到的每一种Linux发行版本,还有它自己的Amazon Linux可以选择。Microsoft的Azure呢,不管你信不信,。最后,RackSpace,一个OpenStack的拥护者,支持大多数主流Linux服务器版本和两个轻量级Linux,Arch和Gentoo。然而,像Debian一样,支持CentOS,openSUSE,SUSE和Ubuntu我仅推荐那些特别了解这些Linux发行版的人使用它们作为关键业务服务器。

谁说你就算是在云上都要有一个全功能Linux服务器?你可能只需要一个针对特定工作的Linux服务器。Turnkey Linux可以满足你。

Turnkey基于64位的Debian,但它需要的专业知识最少。因为它只提供特定的服务而不是一个全功能的发行版本。

Turnkey有超过100个可用的应用。包括Apache,Linux,MySQL,PHP/Python/Perl (LAMP) ;WordPress博客平台;Drupal内容管理系统(CMS)以及像Ushahidi这样的大流量购物服务器,优秀的人际关系管理(CRM)应用Zurmo,人道救援管理系统Sahana Eden。你可以在AWS,裸机,虚拟机(VM)或者Infrastructure as a Service(IaaS)云上面使用它们。

简言之,不论你对Linux知道多少,总有一款Linux服务器版适合你进行商用。动手吧!

via: http://www.itworld.com/operating-systems/372236/how-choose-best-linux-server-your-business

本文由 LCTT 原创翻译,Linux中国 荣誉推出

译者:boredivan 校对:jasminepeng

LAMP 是服务器系统中开源软件的一个完美组合。它是 Linux 、Apache HTTP 服务器、MySQL 数据库、PHP(或者 Perl、Python)的第一个字母的缩写代码。对于很多系统管理员来说安装 LAMP 除了是必备的技能外,都已经具有驾轻就熟的操作他们的能力了。不过新手们通常希望有没完没了的这方面的教程来告诉自己怎么做,下面我就和大家说说我的方法步骤。

LAMP 是服务器系统中开源软件的一个完美组合。它是 Linux 、Apache HTTP 服务器、MySQL 数据库、PHP(或者 Perl、Python)的第一个字母的缩写代码。对于很多系统管理员来说安装 LAMP 除了是必备的技能外,都已经具有驾轻就熟的操作他们的能力了。不过新手们通常希望有没完没了的这方面的教程来告诉自己怎么做,下面我就和大家说说我的方法步骤。

现在,很多时候我们需要用 MariaDB 来代替 MySQL 了。在这里我会告诉大家 MariaDB 的安装过程。

我的测试主机名为:server.linux.cn,测试 IP 地址为:192.168.1.200/24

安装 Apache

Apache 是​​一个开源的跨平台的 Web 服务器。它提供了一个全方位的 Web 服务器功能,包括CGI,SSL 和virtual domains (虚拟域)。

安装命令非常简单,只需要打开一个终端,在终端中输入如下命令:

[root@server ~]# yum install httpd -y

安装完毕后,需要设置让 Apache 服务启动,并且在每次服务器重启的时候都自动启动,输入如下命令来完成:

[root@server ~]# /etc/init.d/httpd start
[root@server ~]# chkconfig httpd on

如果您想通过您的防火墙活路由器来远程连接,那么需要允许 Apache 服务接管服务器的 80 端口:

[root@server ~]# vi /etc/sysconfig/iptables
[...]
-A INPUT -p udp -m state --state NEW --dport 80 -j ACCEPT
-A INPUT -p tcp -m state --state NEW --dport 80 -j ACCEPT
[...]

重新启动 iptables :

[root@server ~]# /etc/init.d/iptables restart

打开您的浏览器访问 http://localhost/ 或者 http://server-ip-address/ 测试 Apache 安装是否成功。

[
点击查看原始大图](https://img.linux.net.cn/data/attachment/album/201307/01/000741vj5w5u6lvmvz2m53.png)

安装 MariaDB

MariaDB 是一个替换 MySQL 的产品。功能强大而可靠。安装前,如果您的服务器中安装有 MySQL ,那么您需要删除它。删除命令:

[root@server ~]# yum remove mysql* mysql-server mysql-devel mysql-libs

为了让 MariaDB 同时兼容 MySQL,我们需要安装 REMI 库来解决兼容性和安装 MariaDB 时软件包依赖性问题。安装命令:

[root@server ~]# rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

安装兼容 mysql55 包命令:

[root@server ~]# yum --enablerepo=remi-test --disablerepo=remi install compat-mysql55

为 MariaDB 创建一个 repository 文件,并在其中输入如下代码:

32 位系统:

[root@server ~]# vi /etc/yum.repos.d/mariadb.repo

MariaDB 5.5 CentOS repository list - created 2013-06-06 07:42 UTC

http://mariadb.org/mariadb/repositories/

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/5.5/centos6-x86
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

64 位系统:

[root@server ~]# vi /etc/yum.repos.d/mariadb.repo

MariaDB 5.5 CentOS repository list - created 2013-06-06 07:53 UTC

http://mariadb.org/mariadb/repositories/

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/5.5/centos6-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

保存并退出该文件,并运行 yum update 命令:

[root@server ~]# yum update

现在开始安装 MariaDB :

[root@server ~]# yum install MariaDB-devel MariaDB-client MariaDB-server -y

安装完毕后,启动 MariaDB 服务,并让它在每次重启服务器后自动启动。

[root@server ~]# /etc/init.d/mysql start
Starting MySQL... SUCCESS!
[root@server ~]# chkconfig mysql on

为 MySQL 的 root 设置密码,默认情况下,MySWL root 密码是空的。为了防止未经授权的用户访问 MySQL 我们需要设置 root 用户密码:

[root@server ~]# /usr/bin/mysql\_secure\_installation
/usr/bin/mysql\_secure\_installation: line 379: find\_mysql\_client: command not found

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none):
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

You already have a root password set, so you can safely answer 'n'.

Change the root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!

By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n]
... Success!

Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n]
... Success!

By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n]

  • Dropping test database...

ERROR 1008 (HY000) at line 1: Can't drop database 'test'; database doesn't exist
... Failed! Not critical, keep moving...

  • Removing privileges on test database...
    ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n]
... Success!

Cleaning up...

All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

安装 PHP

PHP(PHP 是:Hypertext Preprocessor 的缩写)是一种广泛使用的开放源码的通用脚本语言,适合于 Web 开发,可嵌入到 HTML 中。

安装 PHP 命令:

[root@server ~]# yum install php -y

创建一个的 “testphp.php” 的文件在 Apache 的文档根目录文件夹,在其中如入如下代码。命令:

[root@server ~]# vi /var/www/html/testphp.php
phpinfo();
?>

重新启动 httpd 服务:

[root@server ~]# /etc/init.d/httpd restart

用浏览器打开 http://server-ip-address/testphp.php 。它会显示关于 PHP 的详细信息,比如版本,建立日期等。

[
点击查看原始大图](https://img.linux.net.cn/data/attachment/album/201307/01/000744ov9lcv692nb6ilui.png)

如果您需要安装所有的 PHP 模块,可以输入 yum install php* -y 来安装,安装完毕后重启 httpd 服务。重启服务后,您可以用浏览器打开 http://server-ip-address/testphp.php 来查看您刚才安装的模块情况。

安装 nstall phpMyAdmi

根据您的情况来选择是否安装 nstall phpMyAdmin 。

phpMyAdmin 是一个免费开源的 MySQL 管理工具。默认情况下 CentOS/RHEL/Scientific Linux 官方库中没有 phpMyAdmin。所以我们需要从 EPEL 库中安装。

首先,我们需要添加 EPEL 库:

[root@server ~]# rpm -ivh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

现在我们可以安装 phpMyAdmin 了。安装命令:

[root@server ~]# yum install phpmyadmin -y

安装完毕后,我们需要配置的 phpMyAdmin。打开 phpmyadmin.conf 的文件。查找以“<Directory” 开头到 包含的部分,如下命令所示:

[root@server ~]# vi /etc/httpd/conf.d/phpMyAdmin.conf

Alias /phpMyAdmin /usr/share/phpMyAdmin
Alias /phpmyadmin /usr/share/phpMyAdmin

Comment the following Section

Apache 2.4

Require ip 127.0.0.1

Require ip ::1

Apache 2.2

Order Deny,Allow

Deny from All

Allow from 127.0.0.1

Allow from ::1

打开 config.inc.php 文件,将 cookie 改为 http。

[root@server ~]# cp /usr/share/phpMyAdmin/config.sample.inc.php /usr/share/phpMyAdmin/config.inc.php
[root@server ~]# vi /usr/share/phpMyAdmin/config.inc.php
[...]
/* Authentication type */
$cfg['Servers'][$i]['auth\_type'] = 'http';
[...]

重新启动 Apache 服务:

[root@server ~]# /etc/init.d/httpd restart

现在,您可以访问 phpmyadmin 控制太来管理 MySQL 了。打开一个浏览器,访问:http://server-ip-address/phpmyadmin/ 。需要输入您的 MySQL 用户名和密码,如果您按前面的步骤设置了密码的话。我设置的是 “root” 和 “centOS”。

[
点击查看原始大图](https://img.linux.net.cn/data/attachment/album/201307/01/000746ha6gi1gahyjygjeh.png)

您将被重定向到 phpMyAdmin 的 Web 主界面:

[
点击查看原始大图](https://img.linux.net.cn/data/attachment/album/201307/01/000749sda7a7f6d6ujtdfj.png)

现在,您能够通过 phpMyAdmin 管理您的 MariaDB 数据库了。

好了,您的 LAMP 服务器已经安装完毕并运行起来了。

是的,之前Google就说了,由于CentOS/RHEL 6已经是过期的系统,所以不再会有Chrome了。虽然后来由于引起了社区的抗议,从而改口,不再提CentOS/RHEL 6是过期系统了;但是,目前在CentOS/RHEL 6上已经没有Chrome可以下载使用了。

其实,根本的原因不是CentOS/RHEL 6有多老,连Windows XP和停止更新的Ubuntu 10.04都能继续使用Chrome呢。实际的原因是,Chrome由于种种考虑,使用了CentOS/RHEL 6中所不支持的C++ 11,所以才不能继续更新CentOS/RHEL 6上的Chrome。

那么,如果希望在CentOS/RHEL 7出来之前继续使用Chrome怎么办?使用Chrome的开源版本:Chromium。

1、切换到root:

su - 或者 sudo -i

2、下载新的软件源定义:

cd /etc/yum.repos.d

wget http://people.centos.org/hughesjr/chromium/6/chromium-el6.repo

3、安装Chromium:

yum install chromium

这样就安装完成了。

可以通过菜单来启动浏览器:

Chromium Launcher CentOS 6

启动后:

Chromium Running on CentOS 6

如果需要查看Flash和PDF,可以继续下面两步来安装插件。

4、安装Pepper Flash插件:

4.1、下载 hughesjr 辅助安装脚本:

cd /tmp

wget https://raw.github.com/hughesjr/chromium_el_builder/master/chrome_pepperflash_copy.sh

4.2、设置 chrome\_pepperflash\_copy.sh 为可执行:

chmod +x chrome\_pepperflash\_copy.sh

4.3、 执行脚本进行安装(你可以查看一下脚本内容来了解发生了什么):

./chrome\_pepperflash\_copy.sh

安装后,如果需要通过命令行方式启动(带有Flash支持),可以输入以下命令:

/opt/chromium/chrome-wrapper %U --ppapi-flash-path=/opt/chromium/PepperFlash/libpepflashplayer.so --ppapi-flash-version=$(grep '"version":' /opt/chromium/PepperFlash/manifest.json | grep -Po '(?<=version": ")(?:\d|.)*')

也可以修改系统菜单中的对应命令。

Chromium running on CentOS 6.4 with Pepper Flash Plugin and Chrome PDF Viewer Plugin

5、安装Google Chrome PDF Viewer插件:

5.1、下载 hughesjr 辅助安装脚本:

cd /tmp

wget https://raw.github.com/hughesjr/chromium_el_builder/master/chrome_libpdf_copy.sh

5.2、设置 chrome\_libpdf\_copy.sh 为可执行:

chmod +x chrome\_libpdf\_copy.sh

5.3、执行脚本进行安装(你可以查看一下脚本内容来了解发生了什么):

./chrome\_libpdf\_copy.sh

Chromium running on CentOS 6.4 (Adobe Flash Test Page)

参考资料:http://www.if-not-true-then-false.com/2013/install-chromium-on-centos-red-hat-rhel/

CentOS系列一直没有默认支持使用exfat格式的大容量U盘。

可以通过添加fuse-exfat模块来支持。根据网上资料,整理如下:

1、下载fuse-exfat支持软件:

exfat支持是通过fuse模块的方式支持的,其项目地址是: https://code.google.com/p/exfat/ ,当前版本是:1.0.1。

目前exfat的支持已经是全功能支持,支持读写。

可以下载源代码包,并自行使用scons和gcc编译,也可以在rpmfusion下载源代码RPM,然后通过构建RPM来安装。这里采用构建RPM的方式(这样安装卸载都很方便)。

下载地址:http://download1.rpmfusion.org/free/el/updates/6/SRPMS/repoview/index.html

分别下载:fuse-exfat-1.0.1-1-el6.src.rpm 和 exfat-utils-1.0.1-1.el6.src.rpm

2、编译安装:

编译前,请先检查系统,如果系统中没有scons和gcc,请通过yum安装:

$ sudo yum install scons gcc

这个软件是fuse模块,编译需要fuse-devel包支持:

$ sudo yum install fuse-devel

下载后,安装源代码RPM:

$ rpm -ivh fuse-exfat-1.0.1-1-el6.src.rpm exfat-utils-1.0.1-1.el6.src.rpm

在主目录下,会出现rpmbuild目录:

$ cd ~/rpmbuild/SPECS

$ rpmbuild -ba fuse-exfat.spec

$ rpmbuild -ba exfat-utils.spec

构建完成后,即可在 ~/rpmbuild/RPMS里面找到生成的RPM(根据系统架构,分别在x86\_64或i386目录下,其中名字中带有debuginfo的包不必安装):

$ cd ~/rpmbuild/RPMS/x86\_64

$ sudo rpm -ivh fuse-exfat-1.0.1-1.el6.x86\_64.rpm exfat-utils-1.0.1-1.el6.x86\_64.rpm

这样就安装完成了。

3、挂载:

可以通过以下命令来挂载exfat的U盘了:

$ sudo mount.exfat /dev/sdXn /mnt

其中sdXn中的X代表你的U盘设备名,n代表分区号,比如:/dev/sdb1这样。

此外,为了方便,你可以将以上安装在/usr/sbin下的命令在/sbin下做个符号链接:

$ sudo ln -s /usr/sbin/mount.exfat /sbin/mount.exfat

便于直接使用mount来安装:

$ sudo mount -t exfat /dev/sdXn /mnt