我最近安装了一台全新的CentOS 7.1服务器。 我注意到CentOS 6.7的一些不同之处,我希望有一种方法可以恢复到某些事物的旧观点。
例如:
top Top命令以不同的方式显示数据。 例如:
新的顶视图:
top - 00:27:45 up 4:58, 1 user, load average: 0.08, 0.50, 0.89 Tasks: 155 total, 2 running, 153 sleeping, 0 stopped, 0 zombie %Cpu(s): 0.0 us, 1.1 sy, 0.0 ni, 98.9 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 4047624 total, 1938600 free, 853888 used, 1255136 buff/cache KiB Swap: 4194300 total, 4194300 free, 0 used. 2860704 avail Mem
老顶视图:
top - 00:28:59 up 22:49, 1 user, load average: 0.19, 0.21, 0.24 Tasks: 157 total, 1 running, 156 sleeping, 0 stopped, 0 zombie Cpu(s): 17.9%us, 1.0%sy, 0.0%ni, 80.9%id, 0.2%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 4055052k total, 3456240k used, 598812k free, 584160k buffers Swap: 4194296k total, 191184k used, 4003112k free, 1076124k cached
有没有什么办法来显示内存和统计使用旧的格式?
service命令 使用Centos 6.7,如果我做了一些类似service httpd restart ,它会给我一个OK或者Failure信息。 CentOS 7.1似乎没有这样做。
旧的看法:
# service httpd restart Stopping httpd: [ OK ] Starting httpd: [ OK ]
新观点:
# service httpd restart Redirecting to /bin/systemctl restart httpd.service
有没有办法回到旧的观点? 我意识到这是有点微不足道的,但有很多次服务还没有开始,或不会因为某种原因而停止。 消息状态是一个很好的方式来看到这一点。
尝试使用top -M代替。
-M : Detect memory units Show memory units (k/M/G) and display floating point values in the memory summary.
KiB是代表1000个字节的SI单位,其中KB代表1024个字节。
就我个人而言,我总是只安装htop并使用它,因为我发现它更具可读性,信息量更大,function更强大。
此外, free -k (千字节), free -m (兆字节)或free -g (千兆字节)也将提供您正在查找的内存使用信息。
编辑:在进一步的调查中, top -M可能无法在CentOS 7上运行。 下面是一些其他方法的一个很好的答案 ,以及top和htop替代scheme。
CentOS 7用systemd replace了传统的sysvinit 。 这是一个重要但必要的改变,因为sysvinit已经过时了,而解决它的缺陷可能是开发者和pipe理员的一个难题。 Ubuntu,Debian,RHEL,SUSE和几乎所有其他主要的Linux发行版也都转向了systemd 。
与这些发行systemd上的systemd服务交互的正确方法是使用systemctl命令:
restart NAME... Restart one or more units specified on the command line. If the units are not running yet, they will be started.
所以,在你的情况下:
systemctl restart httpd
使用systemctl会显示您正在查找的成功或失败的指示(并返回适当的退出代码)。
正如@Iian所说,接受这些改变,因为在每一个主要的Linux发行版上都发生了同样的改变。
CentOS 7与CentOS 6的操作系统是完全不同的,而不是想要倒退,你应该接受这个改变并向前迈进。 这些命令(或任何其他的命令)不能退回C6。
学习使用systemctl而不是service ; 一旦肌肉记忆被重新学习,一样容易。 等到你必须和firewalld一起工作,那很有趣。
其他的东西,你会发现不同的。
提供netstat , ifconfig等的net-tools软件包默认没有安装,它已被iproute ss , ip等工具所取代。
您用来检查的许多日志不在/ var / log中,您需要启用rsyslog来访问它们或使用journalctl。
哦,有hostnamectl和…和…
关于重启httpd服务时缺less状态的第二个问题是完全合理的。
service命令被弃用,您将需要习惯systemctl命令。
但是你也需要习惯systemctl status命令。
代替
#service httpd restart
你将不得不打字
#systemctl restart httpd
#systemctl status httpd
#systemctl status httpd
●httpd.service - Apache HTTP服务器
加载:加载(/usr/lib/systemd/system/httpd.service;禁用;供应商预设:禁用)
积极:积极(运行),因为星期六2016-01-02 11:45:01 CET; 8s前
文档:man:httpd(8)
男人:的apachectl(8)
主PID:29795(httpd)
状态:“处理请求...”
CGroup:/system.slice/httpd.service
├─29795/ usr / sbin / httpd -DFOREGROUND
├─29796/ usr / sbin / httpd -DFOREGROUND
├─29797/ usr / sbin / httpd -DFOREGROUND
├─29798/ usr / sbin / httpd -DFOREGROUND
├─29799/ usr / sbin / httpd -DFOREGROUND
└─29800/ usr / sbin / httpd -DFOREGROUND
Jan 02 11:45:01 vm.certdepot.net systemd [1]:启动Apache HTTP Ser ...
Jan 02 11:45:01 vm.certdepot.net systemd [1]:启动Apache HTTP Server。
提示:有些行被省略,使用-l来显示。
很明显,你将需要input两个命令,而不是一个,这是不是一个明确的进展。
但是,您将会对当前configuration有更好的了解: