centos vfs?centos8.3
今天给各位分享centos vfs的知识,其中也会对centos8.3进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
windows相比unix linux 优势是什么
一、Unix是一个强大的多用户、多任务操作系统,支持多种处理器架构,按照操作系统的分类,属于分时操作系统,其特点:
1、可靠性高,许多UNIX主机和服务器在国外大中型企业中每天24小时,每年365天不间断地运行。这是NetWare、WindowsNT和OS2等操作系统所不能比拟的。
2、伸缩性强,UNIX系统是世界上唯一能笔记本电脑,PC,直到巨型机上运行的操作系统,最近已宣布用于NC的UNIX系统。
3、开放性好
4、网络功能强,作为Internet网络技术基础的TCP/IP协议就是在UNIX上开发出来的,而且成为UNIX系统的一个不可分割的成分。UNIX几乎所有系统都包括对TCP/IP的支持。因此,在Internet网络服务器中,UNIX服务器占80%以上,占绝对优势。此外,UNIX支持所有最通用的网络通讯协议,其中包括NES、DCE、IPX/SPX,SLIP,PPP等,使得UNIX系统能方便地与主机、各种广域网和域网相连。
5、强大的数据库支持功能
由于UNIX系统对各种数据库,特别是关系型数据库管理系统提供了强大的支持能力,因此主要的数据库厂家,包括Oracle,Informix,Sybase,Progress等都将UNIX作为优选的运行平台,而且创造出极高的性能价格比。
Unix操作系统在服务器市场上的应用领域:
Unix服务器操作系统,主要支持大型的文件系统服务、数据服务等应用。但是只在服务器厂商生产的高端服务器产品中支持Unix操作系统应用,因此SUN Solaris、IBM-AIX都是定位于高端服务器操作系统市场的。
二、Linux操作系统是一种自由和开放源码的类Unix操作系统。Linux可安装在各种计算机硬件设备中,从手机、平板电脑、路由器和视频游戏控制台,到台式计算机、大型机和超级计算机。Linux是一个领先的操作系统,世界上运算最快的10台超级计算机运行的都是Linux操作系统。
Linux操作系统的结构与Unix操作系统相差不多,主要包括内核和核外程序两部分。核外程序包括各种语言的处理程序和其他系统程序。用户经过自编并经过编译、连接处理而形成的各种可执行目标程序也属于核外程序。核内程序大致分成存储管理、进程管理、设备管理和文件系统管理等几部分。Linux和Unix一样采用各种系统调用来实现核外程序向内核调用的支持。
在Linux系统中,进程没有绝对的优先权,也就是说一个进程不能停止另一个进程来运行它自己。每个进程根据自己是否需要等待某些系统资源,或时间片是否用来决定是否放弃所占用的CPU。
Linux系统的存储管理采用了页式管理机制。每一个进程都有一个比实际物理空间大得多的进程虚拟空间。通过虚拟是地址的映射,系统来管理整个进程地址空间,Linux的地址分配策略比较注重实效性,只有在使用中必要时才进行地址的分配。可以说,这是一种效率与速度的折中策略。
Linux文件系统继承了Unix系统各种强大的文件系统功能特性,并采用了经过筛选和提高的EXT2文件系统,而且Linux采用了被称为虚拟文件系统(VFS)的接口层来提高系统对各种文件系统操作的透明度,因而它的文件系统具有非常优越的特性。
Linux操作系统的特点:
1、模块化程度高。Linux的内核设计非常精巧,分成进程调度、内存管理、进程间通信、虚拟文件系统和网络接口五大部分;其独特的模块机制可根据用户的需要,实时地将某些模块插入或从内核中移走,使得Linux系统内核可以裁剪得非常小巧,很适合于嵌入式系统的需要。
2、源码公开
3、广泛的硬件支持
4、安全性及可靠性好。内核高效稳定。Linux内核的高效和稳定已在各个领域内得到了大量事实的验证。Linux中大量网络管理、网络服务等方面的功能,可使用户很方便地建立高效稳定的防火墙、路由器、工作站、服务器等。为提高安全性,它还提供了大量的网络管理软件、网络分析软件和网络安全软件等。
5、具有优秀的开发工具。开发嵌入式系统的关键是需要有一套完善的开发和调试工具。
6、有很好的网络支持利文件系统支持。 Linux几乎支持所有主流的网络硬件、网络协议和文件系统,因此它是NFS的一个很好的平台。另一方面,由于Linux有很好的文件系统支持(例如,它支持Ext2、FAT32、romfs等文件系统),是数据各份、同步和复制的良好平台,这些都为开发嵌入式系统应用打下了坚实的基础。
7、与UNIX完全兼容。
Linux可以作为普通的工作站操作系统,原有的SCO和SVR4程序以及MSDOS和Windows程序都可以在此类工作站中通过挂接模拟器和仿真器来运行。Linux可以使基于Intel系列芯片的计算机或者Alpha APX、 Power PC、MIPs及SParc系列芯片的计算机成为网络工作站和X终端或X服务器。 Linux可以作为网络服务器,如文件服务器(可以设置成网络文件系统NFS)、打印服务器或者网关服务器等。
三、Windows操作系统
Windows是以窗口形式表述应用和信息的。在系统设计方面,构思巧妙,已具有多任务处理能力。多个应用程序可同时打开,并运行于各自的窗口中。每个运行中的程序都有自已独占的屏幕空间和设备空间,互不干扰,互相参照,彼此可方便地进行信息传递和移动。在用户界面的设计上更独具匠心,富有特色。
Windows操作系统的特点:
1、界面图形化 2、多用户、多任务 3、网络支持良好 4、出色的多媒体功能 5、硬件支持良好 6、众多的应用程序
windows最大的优点自然是操作简单,界面化,基本上操作可以通过键盘鼠标实现,必须需要命令行执行的操作很少。
windows的缺点就是完全没有类unix的操作系统稳定,unix和linux根本不会存在windows所谓的死机情况出现。
windows操作系统的功能:具有多任务处理能力;打破了PC机中640KB内存的限制;使用鼠标操作,方便灵活;灵活的窗口操作;直观的命令表现方式。
微软公司的Windows系统不仅在个人操作系统中占有绝对优势,它在网络操作系统中也具有非常强劲的力量。这类操作系统配置在整个局域网中是最常见的,但由于它对服务器的硬件要求较高,且稳定性能不是很高,因此微软的网络操作系统一般只是用在中低档服务器中,高端服务器通常采用UNIX、Linux等非Windows操作系统。
以上摘录自百度文库文章《unix、linux、windows比较》
服务器操作系统应该选择 Debian/Ubuntu 还是 CentOS
著作权归作者所有。
商业转载请联系作者获得授权,非商业转载请注明出处。
作者:彭勇
链接:
来源:知乎
早期,我们使用 Debian作为服务器软件,后来转向了CentOS,主要原因如下:
1、CentOS/RHEL的生命周期是7年,基本上可以覆盖硬件的生命周期,也就意味着一个新硬件安装以后,不用再次安装操作系统。要知道重新折腾一个生产机是很麻烦而且有风险的事情。
[2012.2.1]今天刚刚收到红帽子的通知邮件,RedHat 5, RedHat 6的生命周期,延长到10年,太牛叉了。这个对企业用户很重要。
而Debian的生命周期是不固定的,一般新版本发布以后,上个版本再维护18个月。而Debian的版本发布时间间隔不稳定,经常会延期。综合起来一个版本的生命周期一般在3~4年。
[2014.4.24]Debian宣布对Squeeze(6.0),提供5年的LTS长期支持。
Ubuntu的LTS版生命周期是5年。
如果你选用了 Debian或者 Ubuntu作为服务器,等生命周期过了以后,就没有安全补丁,你的服务器就会裸奔或者需要重新安装系统。
2、RedHat是一个值得尊敬的开源公司,长期以来Linux内核RedHat的贡献程度都是最多的。可以这么说,如果一个Linux方面的问题,RedHat搞不定,那么也很少有其他公司可以搞定了。公司有一批Linux内核方面的如雷贯耳的大牛,比如:
Alan Cox- Core developer, numerous contributions
Ingo Molnar- x86 subsystem maintainer
Al Viro- VFS subsystem maintainer, linux内核贡献第二多的个人
David Miller- Sparc Port maintainer, linux网络部分开发者, linux内核贡献最多的个人
Jeff Garzik- Sata subsystem maintainer
John Linville- Wireless subsystem maintainer
Stephen Tweedie- Ext3 filesystem developer
Eric Sandeen- XFS, Ext4 filesystem developer
Josef Bacik- Btrfs filesystem developer
Rik Van Riel- VM developer
Ric Wheeler- Filesystem developer
Val Henson- Filesystem developer
Dave Jones- Fedora kernel maintainer
Kyle McMartin- Fedora kernel maintainer
Chuck Ebbert- Fedora kernel maintainer
Eric Paris- LSM/SELinux/Audit/Capabilities maintainer
Eugene Teo- Security Response
Kay Sievers- Hotplug
3、CentOS/RHEL对硬件的支持很好,主流硬件厂商早就将服务器拿过去测试,一般不存在硬件的兼容性问题。
而Debian就麻烦了,由于有版权上的考虑和代码纯洁性上的洁癖,一些硬件驱动和软件被删掉了,导致安装过程有问题。比如 Dell服务器上,大量使用的网卡 BroadCom,就驱动不了,安装了以后,网络起不来。
4、大量商业软件,比如 Oracle,都是针对 Redhat认证的,有大量的帮助文档和使用说明,有良好的技术支持。出了问题,也容易在网上找到类似的答案和经验。
5、CentOS是RedHat的克隆版,如果需要可以随时平滑切换到 RedHat,从而享受RedHat的服务支持。要知道厂商的服务,是最后一道防火墙,如果你给一个大客户做方案,他们一般会倾向选用商业服务。万一出了什么问题,还有Redhat可以求助,或者有一个RedHat可以承担责任:-)
6、如果你是一个工程师,熟悉了 CentOS/RedHat,找工作更加容易。如果你是一个企业老板,相对也容易招聘到熟悉CentOS/RedHat的工程师。RHCE的培训,也相对较完善,认同程度高。
7、CentOS/RHEL的批量安装更加方便
在机房,使用kickstart+ PXE安装,给客户,使用定制的kickstart光盘,一键安装,一般在5分钟左右就可以安装完。
上述3,4,5,6几点中,都说明CentOS/RHEL相对于其他Linux操作系统,有相对完整的生态环境,很多公司在CentOS/RHEL投入了大量资源,积累了大量经验,绑定了自己的利益,这个是CentOS/RHEL得以长期良好发展的保证。
=============
补充对评论的一些回复
1.所谓的“centos稳定性非常差”,不知道你指的是什么?能否举一些CentOS不稳定的例子?至少我们用了这么多年CentOS,稳定性上可以说是坚如磐石的。如果是你说的由于yum升级造成的混乱,那只能说明你对centos不熟悉。
2、RHEL/centos对于一些新的软件的支持,采用 SCL的方式支持,比如ruby193,python27, python 33, PHP 54, nodejs 0.10, mariadb55, postgresql 9.2
AdditionalResources/Repositories/SCL
3、debian/ubuntu同样存在版本稳定和程序太老的矛盾,比如他们的LTS版本,一般是两年多更新一次。squeeze是2011年2月发布,wheezy是2013年5月发布,如果你在2013年4月使用Debian,你会发觉好多软件太老,比如:
内核:2.6.32,和Centos 6一样的
glibc还是使用的2.11.2
mysql使用的5.1.49
openjdk使用的是 6
php使用的是 5.3.3
python使用的是2.6.6
下一个版本的Deiban,至少要到 2015年下半年才能发布,而RHEL7/CentOS7的正式版发布在即,里面用到的不少软件,都比wheezy的要新。按照你的逻辑,在接下来较长的时间里,是否CentOS比起Debian更加前卫?
再看看Rio的回复:“之前我用了很长一段时间的 Debian,但它的更新实在太慢了(好几年啊有木有!)”,呵呵
4、“debian的支持时间也非常长期”,这个最近确实有了改善,Debian刚刚宣布对 Debian 6.0有了5年的LTS长期支持。可以这么说,Debian也看到了LTS的重要性,向CentOS学习了一把。
Debian-- News-- Long term support for Debian 6.0 Announced
但Debian做得还不够,因为Debian的LTS在后续版本,比如 Debian 7(wheezy), Debian 8(jessie)里的支持政策还不明朗:
Debian-- Security Information-- DSA-2907-1
Debian的LTS支持,也不是Debian官方安全团队维护的,而是由其他志愿者维护的,工作效率和质量是否有保证还不知道。相比RHEL明晰的发展策略和安全更新策略,有10年的安全补丁保证,还有不少差距。
5、“debian这个系列的软件包也比较新,debian和他儿子ubuntu很多软件包维护是共享的,更新速度非常快”,不知道你使用的是稳定版还是测试版。稳定版里面你是如何看到软件包“更新速度非常快”的。
CentOS下SWAP分区建立及释放内存详解
方法一:
一、查看系统当前的分区情况:
free-m
二、创建用于交换分区的文件:
dd if=/dev/zero of=/whatever/swap bs=block_size(10M)count=number_of_block(3000)
三、设置交换分区文件:
mkswap/export/swap/swapfile
四、立即启用交换分区文件:
swapon/whateever/swap
五、若要想使开机时自启用,则需修改文件/etc/fstab中的swap行:
/whatever/swap swap swap defaults 0 0
方法二
增加交换分区空间的方法:
1.查看一下/etc/fstab确定目前的分区
2.swapoff/dev/hd**
3.free看一下是不是停了.
4.fdisk删了停掉的swap分区
5.重新用FDISK建一个新的SWAP分区
6.mkswap/dev/hd**把新的分区做成swap
7.swapon/dev/hd**打开swap
8.修改/etc/fstab
操作实例:
1.查看系统Swap空间使用
# free
total used free shared buffers cached
Mem: 513980 493640 20340 0 143808 271780
-/+ buffers/cache: 78052 435928
Swap: 1052248 21256 1030992
2.在空间合适处创建swap文件
# mkdir swap
# cd swap
# dd if=/dev/zero of=swapfile bs=1024 count=10000
10000+0 records in
10000+0 records out
# ls-al
total 10024
drwxr-xr-x 2 root root 4096 7月 28 14:58.
drwxr-xr-x 19 root root 4096 7月 28 14:57..
-rw-r--r-- 1 root root 10240000 7月 28 14:58 swapfile
# mkswap swapfile
Setting up swapspace version 1, size= 9996 KiB
3.激活swap文件
# swapon swapfile
# ls-l
total 10016
-rw-r--r-- 1 root root 10240000 7月 28 14:58 swapfile
# free
total used free shared buffers cached
Mem: 513980 505052 8928 0 143900 282288
-/+ buffers/cache: 78864 435116
Swap: 1062240 21256 1040984
生成1G的文件
# dd if=/dev/zero of=swapfile bs=10M count=3000
创建为swap文件
#mkswap swapfile
让swap生效
#swapon swapfile
查看一下swap
#swapon-s
[root@cluster/]# swapon-sFilenameTypeSizeUsedPriority/dev/sda3 partition10201161728-1/state/partition1/swap/swapfile file307199920-2
加到fstab文件中让系统引导时自动启动
#vi/etc/fstab
/state/partition1/swap/swapfil swap swap defaults 0 0
完毕。
二,LINUX释放内存
细心的朋友会注意到,当你在linux下频繁存取文件后,物理内存会很快被用光,当程序结束后,内存不会被正常释放,而是一直作为caching.这个问题,貌似有不少人在问,不过都没有看到有什么很好解决的办法.那么我来谈谈这个问题.
先来说说free命令
[root@cluster/]# free-m
total used free shared buffers cached
Mem: 31730 31590 139 0 37 27537
-/+ buffers/cache: 4015 27714
Swap: 30996 1 30994
其中:
total内存总数
used已经使用的内存数
free空闲的内存数
shared多个进程共享的内存总额
buffers Buffer Cache和cached Page Cache磁盘缓存的大小
-buffers/cache的内存数:used- buffers- cached
+buffers/cache的内存数:free+ buffers+ cached
可用的memory=free memory+buffers+cached
有了这个基础后,可以得知,我现在used为163MB,free为86,buffer和cached分别为10,94
那么我们来看看,如果我执行复制文件,内存会发生什么变化.
[root@cluster/]# cp-r/etc~/test/
[root@cluster/]# free-m
total used free shared buffers cached
Mem: 31730 31590 139 0 37 27537
-/+ buffers/cache: 4015 27714
Swap: 30996 1 30994
在我命令执行结束后,used为244MB,free为4MB,buffers为8MB,cached为174MB,天呐都被cached吃掉了.别紧张,这是为了提高文件读取效率的做法.
引用[url][/url]为了提高磁盘存取效率, Linux做了一些精心的设计,除了对dentry进行缓存(用于VFS,加速文件路径名到inode的转换),还采取了两种主要Cache方式:Buffer Cache和Page Cache。前者针对磁盘块的读写,后者针对文件inode的读写。这些Cache有效缩短了 I/O系统调用(比如read,write,getdents)的时间。
那么有人说过段时间,linux会自动释放掉所用的内存,我们使用free再来试试,看看是否有释放?
[root@cluster/]# free-m
total used free shared buffers cached
Mem: 31730 31590 139 0 37 27537
-/+ buffers/cache: 4015 27714
Swap: 30996 1 30994
MS没有任何变化,那么我能否手动释放掉这些内存呢???回答是可以的!
/proc是一个虚拟文件系统,我们可以通过对它的读写操作做为与kernel实体间进行通信的一种手段.也就是说可以通过修改/proc中的文件,来对当前kernel的行为做出调整.那么我们可以通过调整/proc/sys/vm/drop_caches来释放内存.操作如下:
[root@cluster/]# cat/proc/sys/vm/drop_caches
0
首先,/proc/sys/vm/drop_caches的值,默认为0
[root@cluster/]# sync
手动执行sync命令(描述:sync命令运行 sync子例程。如果必须停止系统,则运行 sync命令以确保文件系统的完整性。sync命令将所有未写的系统缓冲区写到磁盘中,包含已修改的 i-node、已延迟的块 I/O和读写映射文件)
[root@server test]# echo 3/proc/sys/vm/drop_caches
[root@server test]# cat/proc/sys/vm/drop_caches
3
将/proc/sys/vm/drop_caches值设为3
[root@server test]# free-m
total used free shared buffers cached
Mem: 249 66 182 0 0 11
-/+ buffers/cache: 55 194
Swap: 511 0 511
再来运行free命令,发现现在的used为66MB,free为182MB,buffers为0MB,cached为11MB.那么有效的释放了buffer和cache.
有关/proc/sys/vm/drop_caches的用法在下面进行了说明
/proc/sys/vm/drop_caches(since Linux 2.6.16)
Writing to this file causes the kernel to drop clean caches,
dentries and inodes from memory, causing that memory to become free.
To free pagecache, use echo 1/proc/sys/vm/drop_caches;
to free dentries and inodes, use echo 2/proc/sys/vm/drop_caches;
to free pagecache, dentries and inodes, use echo 3/proc/sys/vm/drop_caches.
Because this is a non-destructive operation and dirty objects
这几天发现linux系统内存一直涨,即使把apache和mysql关闭了,内存也不释放,可以使用以下脚本来释放内存:
脚本内容:
#!/bin/sh
# cache释放:
# To free pagecache:
/bin/sync
/bin/sync
#echo 1/proc/sys/vm/drop_caches
# To free dentries and inodes:
#echo 2/proc/sys/vm/drop_caches
# To free pagecache, dentries and inodes:
echo 3/proc/sys/vm/drop_caches
利用系统crontab实现每天自动运行:
crontab-e
输入以下内容:
00 00***/root/Cached.sh
每天0点释放一次内存,这个时间可以根据自己需要修改设置
在运行./Cached.sh时如果提示错误:Permission denied权限的问题,可以运行