每个人心中都有一个哈姆雷特,每个人心中都有一个Linux。Linux对某些人来讲是一种宗教信仰,对某些人来讲是一个包罗万象的广阔平台,对某些人来讲是给其他软件提供运营环境的硬件资源管理器,对某些人来讲可能只是一种更方便的工具。
Linux从1991发布以来,至今已走过了23年的历史。从最早的PC到现在的服务器、云系统、手机、汽车到各种各样让你眼花缭乱的智能设备,无处不闪耀着它动人的风采和魅力。尤其是Android,这款源自Linux的操作系统在过去几年中独领风骚,其发展的迅猛势头不但令微软的Windows Phone望尘莫及,甚至还将苹果的iOS挑落马下。
一、初识LINUX
我是从大学时代开始接触的Linux,当我看到老师在键盘上敲下那些简洁优雅的程序和干净清晰的代码时,崇拜的无以复加。课下当我自己反复实验,用虚拟机装上Linux时,那激动的心情依然印象深刻。 Linux的命令很简洁好用,为了把这些命令用的熟练,不断的练习和思考是很重要的。比如它的权限管理,就设计的非常有意思。我们来看一个例子:
#ls -dl /tmp/
drwxrwxrwx 319 root root 499712 2014-11-07 15:05 /tmp/
[权限] [连结][拥有者] [群组] [大小] [修改日期时间] [名字]
在LINUX中,对于文件rwx是指对文件内容可以读写或执行文件,不包括删除该文件;对于目录,r可以读取文件列表,x可以进入目录(rx权限同时存在才有意义),而w权限可以添加删除本目录中的文件或子目录。当你要改变权限时,则可以使用chmod;改变文件的拥有者,则可以使用 chown ;改变文件与目录所属的群组,则可以使用chgrp。如果你想递归改变目录下的子目录里文件的权限和属主,则别忘了加-R参数。除了这些,还可以设置一些特殊权限,比如Chattr命令: chattr +i file1 表示不可以修改的文件,root也不可以修改;Chattr +a 表示不可删改,只可递加(如日志文件)。查看一个文件的i属性则可以使用lsattr。那么在同一个文件中,你想针对不同用户设置不同的访问权限,则可以使用
访问控制列表:setfacl和getfacl命令。具体举例请参见《从一则需求看LINUX下的权限细分设置》。当你在实践中遇到问题,不断的去学习和思考时,你就会发现LINUX的简洁与精妙,每一个地方都那么美。
除了权限的设置,LVM的使用也让初识LINUX的人有点蒙圈。如何建立、修改、扩容、删除LVM分区,让你很是头疼。不过当你掌握了一定的步骤和方法,这一切又都是那么简单和轻松。基本步骤无外乎:
1).建立LVM类型的分区
2).建立LVM物理巻PV
3).建立LVM巻组VG
4).建立LVM逻辑巻LV
5).建立文件系统
6).挂接文件系统
7).使用文件系统
8)在实际使用中,根据业务需求进行修改、扩容、删除
Linux是***留给世界的美好回忆。每一个热爱和喜欢LINUX的人心中都有一个哈姆雷特的梦,
从技术方面看,Linux肯定会越变越好;而从自由和开源方面看,它将对未来世界的科技发展产生深远的影响。
二、LINUX的深入运用
一般来说,企业或互联网公司都要求操作系统要有最大的性能,可用性、可靠性和可扩展性,Linux一直是较佳的选择。LINUX系统的可靠性也比WINDOWS操作系统更加成熟和稳健。
Linux不是一个由一家商业公司维护的软件。Linux是可以任意包装自由配置的东西。任何一个人,一家公司都可以按照自己的想法,比如添加一点功能,加中文支持,作一个自己想要的Linux版出来。这些 Linux虽然核心部分都一样,但是他们各自所带的各种软件,缺省的配置都不一样。Linux可以结合企业或公司的特定需要,进行自由定制和内核修改,这些都是很好的特性。
一般来说,影响系统性能因素主要有4个方面:CPU,内存,磁盘I/O宽带,网络I/O宽带。在CPU上,使用支持SMP的linux内存,因为在大部分CPU都是在同一时间内只能运行一个线程,而有SMP(超线程)可以在同一时间内运行多个线程。另外Linux内核会把多核处理器当做多个单独的CPU来识别,但是从性能上讲是不等价的,后者整体性能比较高。在内存上,内存小会使系统进程堵塞,性能下降。而内存过大,会导致资源浪费。Linux中有虚拟内存和物理内存的概念,可以创建虚拟内存来缓解物理内存的不足,但是如果占用过多的虚拟内存,会造成应用程序的性能明显下降。建议使用64位Linux因为64位操作系统可以使用更大的内存,而且在32位Linux操作系统中,应用程序的单个进程最大只能用2G内存,而64位系统没有这个限制。在磁盘I/O宽带上,可以使用RAID技术来提高I/O性能。在网络I/O宽带上,因为现在大多数Linux应用都是基于网络的,所以需要建立稳定、高速的带宽。
Linux的高可靠性开源解决方案,比较典型的就是Keepalived + Nginx 、LVS + Keepalived、HAProxy + Keepalived。 在生产环境中,任何的机器宕机导致的损失都需要被降到最低,传统的生产环境中,都是将服务器直接放置在4/7层交换机后面以避免因为服务器或者服务器软件故障导致的服务中止。在当今的业务模式下,有许多高并发的服务需求,Js小文件、高速动态接口、Nginx七层业务,都希望所有的Socket操作能够尽快完成,以减少用户的时间等待。4/7层交换机由于负责了多个应用的服务,经常会成为高并发服务应用的一个制约条件。于是,就孕育出了使用Keepalived+Nginx实现双机交叉热备使用公网ip进行DNS轮询服务的想法,这个方案可以运用于需要高并发服务的所有应用环境。越少的Socket通讯层,数据到达用户桌面的速度越快。
Linux的高扩展性使Linux具有更多的优势。标准的Linux实用程序有着大量的功能,开发人员可以通过修改源代码来进行各种功能的扩展。Linux可以在广泛的硬件平台上运行且有类似的接口,用户可以把应用程序从一个Linux系统很方便的移植到另外一个Linux系统。而且Linux的用户界面与各个商业版本的UNIX非常相近,几乎所有的IT技术人员都对其操作界面有相当的了解。此外,由于Linux可以在各种硬件平台上运行,熟悉Linux的技术人员可以很容易地管理多种硬件平台上的应用。
三、LINUX的未来
随着开源软件在世界范围内影响力的日益增强,Linux在服务器、桌面、行业定制等领域获得了长足发展。在高端服务器操作系统领域,随着开源软件在世界范围内影响力日益增强,Linux服务器操作系统在整个服务器操作系统市场格局中占据了越来越多的市场份额,并以强劲的势头成为服务器操作系统领域中的中坚力量。近年来,特别在国内市场,Linux桌面的发展趋势非常迅猛。国内如中标软件、麒麟、红旗等系统软件厂商推出的Linux桌面操作系统,目前已经在政府、企业、OEM等领域得到了广泛应用。同时政府采购和正版化市场的形成,为国产Linux桌面操作系统在政府、企业信息化领域的推广提供了良好的机遇。在行业定制市场,通过对Linux功能模块的裁剪,去掉一些用户不需要的模块,提供针对特定用户需求的特定产品,这大大增强了Linux产品的实用性。
我们有理由相信LINUX的未来会越来越好,前景无可限量。
【有奖征文】 我的Linux,我做主! 正在进行,欢迎大家参与,分享你心目中的Linux,晒晒你定制的Linux系统。
详情查看:http://51ctotopic.blog.51cto.com/2009463/1564825