RELATEED CONSULTING
相关咨询
选择下列产品马上在线沟通
服务时间:8:30-17:00
你可能遇到了下面的问题
关闭右侧工具栏

新闻中心

这里有您想知道的互联网营销解决方案
linux运行命令慢,linux运行速度

Linux执行命令慢有啥原因

开机时间过长 或者用的服务器版 偶尔会卡一下 一般linux是比较效率的

十载的莘县网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。成都全网营销的优势是能够根据用户设备显示端的尺寸不同,自动调整莘县建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联公司从事“莘县网站设计”,“莘县网站推广”以来,每个客户项目都认真落实执行。

我用linux的时候为什么命令执行结果显示的那么慢呢?有什么办法能让文字界面变的跟gnome的终端一样迅速?

当你使用ctrl+alt+f1切换到文字界面时,这个动作只是在linux的多个终端中切换了到一个文字界面的终端,原来的图形界面并没有退出内存,所以很慢。(ctrl+alt+f7可以切换回来)

这种情况你还不如直接在图形界面开一个虚拟终端速度还快些。

当然你也可以关掉图形界面,但如果你是初学者,建议还是先了解一些linux图形界面的相关知识再做尝试。如果是学习linux,在图形界面的虚拟终端下也是一样。

linux系统优化。我用的是elementary os 系统。电脑运行好慢。怎样让系统变快。给个命令或优化软件

该命令可以显示关于系统各种资源之间相关性能的简要信息,这里我们主要用它来看CPU的一个负载情况。

下面是vmstat命令在某个系统的输出结果:

[root@node1 ~]# vmstat 2 3

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------

r b swpd free buff cache si so bi bo in cs us sy id wa st

0 0 0 162240 8304 67032 0 0 13 21 1007 23 0 1 98 0 0

0 0 0 162240 8304 67032 0 0 1 0 1010 20 0 1 100 0 0

0 0 0 162240 8304 67032 0 0 1 1 1009 18 0 1 99 0 0

对上面每项的输出解释如下:

? procs

? r列表示运行和等待cpu时间片的进程数,这个值如果长期大于系统CPU的个数,说明CPU不足,需要增加CPU。

? b列表示在等待资源的进程数,比如正在等待I/O、或者内存交换等。

? memory

? swpd列表示切换到内存交换区的内存数量(以k为单位)。如果swpd的值不为0,或者比较大,只要si、so的值长期为0,这种情况下一般不用担心,不会影响系统性能。

? free列表示当前空闲的物理内存数量(以k为单位)

? buff列表示buffers cache的内存数量,一般对块设备的读写才需要缓冲。

? cache列表示page cached的内存数量,一般作为文件系统cached,频繁访问的文件都会被cached,如果cache值较大,说明cached的文件数较多,如果此时IO中bi比较小,说明文件系统效率比较好。

? swap

? si列表示由磁盘调入内存,也就是内存进入内存交换区的数量。

? so列表示由内存调入磁盘,也就是内存交换区进入内存的数量。

一般情况下,si、so的值都为0,如果si、so的值长期不为0,则表示系统内存不足。需要增加系统内存。

? IO项显示磁盘读写状况

? Bi列表示从块设备读入数据的总量(即读磁盘)(每秒kb)。

? Bo列表示写入到块设备的数据总量(即写磁盘)(每秒kb)

这里我们设置的bi+bo参考值为1000,如果超过1000,而且wa值较大,则表示系统磁盘IO有问题,应该考虑提高磁盘的读写性能。

? system 显示采集间隔内发生的中断数

? in列表示在某一时间间隔中观测到的每秒设备中断数。

? cs列表示每秒产生的上下文切换次数。

上面这2个值越大,会看到由内核消耗的CPU时间会越多。

? CPU项显示了CPU的使用状态,此列是我们关注的重点。

? us列显示了用户进程消耗的CPU 时间百分比。us的值比较高时,说明用户进程消耗的cpu时间多,但是如果长期大于50%,就需要考虑优化程序或算法。

? sy列显示了内核进程消耗的CPU时间百分比。Sy的值较高时,说明内核消耗的CPU资源很多。

根据经验,us+sy的参考值为80%,如果us+sy大于 80%说明可能存在CPU资源不足。

? id 列显示了CPU处在空闲状态的时间百分比。

? wa列显示了IO等待所占用的CPU时间百分比。wa值越高,说明IO等待越严重,根据经验,wa的参考值为20%,如果wa超过20%,说明IO等待严重,引起IO等待的原因可能是磁盘大量随机读写造成的,也可能是磁盘或者磁盘控制器的带宽瓶颈造成的(主要是块操作)。

综上所述,在对CPU的评估中,需要重点注意的是procs项r列的值和CPU项中us、sy和id列的值。

1.2 sar命令

检查CPU性能的第二个工具是sar,sar功能很强大,可以对系统的每个方面进行单独的统计,但是使用sar命令会增加系统开销,不过这些开销是可以评估的,对系统的统计结果不会有很大影响。

下面是sar命令对某个系统的CPU统计输出:

[root@webserver ~]# sar -u 3 5

Linux 2.6.9-42.ELsmp (webserver) 11/28/2008 _i686_ (8 CPU)

11:41:24 AM CPU %user %nice %system %iowait %steal %idle

11:41:27 AM all 0.88 0.00 0.29 0.00 0.00 98.83

11:41:30 AM all 0.13 0.00 0.17 0.21 0.00 99.50

11:41:33 AM all 0.04 0.00 0.04 0.00 0.00 99.92

11:41:36 AM all 0.29 0.00 0.13 0.00 0.00 99.58

11:41:39 AM all 0.38 0.00 0.17 0.04 0.00 99.41

Average: all 0.34 0.00 0.16 0.05 0.00 99.45

对上面每项的输出解释如下:

? %user列显示了用户进程消耗的CPU 时间百分比。

? %nice列显示了运行正常进程所消耗的CPU 时间百分比。

? %system列显示了系统进程消耗的CPU时间百分比。

? %iowait列显示了IO等待所占用的CPU时间百分比

? %steal列显示了在内存相对紧张的环境下pagein强制对不同的页面进行的steal操作 。

? %idle列显示了CPU处在空闲状态的时间百分比。

这个输出是对系统整体CPU使用状况的统计,每项的输出都非常直观,并且最后一行Average是个汇总行,是上面统计信息的一个平均值。

需要注意的一点是:第一行的统计信息中包含了sar本身的统计消耗,所以%user列的值会偏高一点,不过,这不会对统计结果产生多大影响。

在一个多CPU的系统中,如果程序使用了单线程,会出现这么一个现象,CPU的整体使用率不高,但是系统应用却响应缓慢,这可能是由于程序使用单线程的原因,单线程只使用一个CPU,导致这个CPU占用率为100%,无法处理其它请求,而其它的CPU却闲置,这就导致 了整体CPU使用率不高,而应用缓慢 现象的发生 。

针对这个问题,可以对系统的每个CPU分开查询,统计每个CPU的使用情况:

[root@webserver ~]# sar -P 0 3 5

Linux 2.6.9-42.ELsmp (webserver) 11/29/2008 _i686_ (8 CPU)

06:29:33 PM CPU %user %nice %system %iowait %steal %idle

06:29:36 PM 0 3.00 0.00 0.33 0.00 0.00 96.67

06:29:39 PM 0 0.67 0.00 0.33 0.00 0.00 99.00

06:29:42 PM 0 0.00 0.00 0.33 0.00 0.00 99.67

06:29:45 PM 0 0.67 0.00 0.33 0.00 0.00 99.00

06:29:48 PM 0 1.00 0.00 0.33 0.33 0.00 98.34

Average: 0 1.07 0.00 0.33 0.07 0.00 98.53

这个输出是对系统的第一颗CPU的信息统计,需要注意的是,sar中对CPU的计数是从0开始的,因此,“sar -P 0 3 5”表示对系统的第一颗CPU进行信息统计,“sar -P 4 3 5”则表示对系统的第五颗CPU进行统计。依次类推。可以看出,上面的系统有八颗CPU。

1.3 iostat命令

iostat指令主要用于统计磁盘IO状态,但是也能查看CPU的使用信息,它的局限性是只能显示系统所有CPU的平均信息,看下面的一个输出:

[root@webserver ~]# iostat -c

Linux 2.6.9-42.ELsmp (webserver) 11/29/2008 _i686_ (8 CPU)

avg-cpu: %user %nice %system %iowait %steal %idle

2.52 0.00 0.30 0.24 0.00 96.96

在这里,使用了“-c”参数,只显示系统CPU的统计信息,输出中每项代表的含义与sar命令的输出项完全相同,不再详述。

1.4 uptime

命令

uptime是监控系统性能最常用的一个命令,主要用来统计系统当前的运行状况,输出的信息依次为:系统现在的时间、系统从上次开机到现在运行了多长时间、系统目前有多少登陆用户、系统在一分钟内、五分钟内、十五分钟内的平均负载。看下面的一个输出:

[root@webserver ~]# uptime

18:52:11 up 27 days, 19:44, 2 users, load average: 0.12, 0.08, 0.08

这里需要注意的是load average这个输出值,这三个值的大小一般不能大于系统CPU的个数,例如,本输出中系统有8个CPU,如果load average的三个值长期大于8时,说明CPU很繁忙,负载很高,可能会影响系统性能,但是偶尔大于8时,倒不用担心,一般不会影响系统性能。相反,如果load average的输出值小于CPU的个数,则表示CPU还有空闲的时间片,比如本例中的输出,CPU是非常空闲的。

1.5

本节小结

上面介绍了检查CPU使用状况的四个命令,通过这些命令需要了解的是:系统CPU是否出现性能瓶颈,也就是说,以上这些命令只能查看CPU是否繁忙,负载是否过大,但是无法知道CPU为何负载过大,因而,判断系统CPU出现问题后,要结合top、ps等命令进一步检查是由那些进程导致CPU负载过大的。引起CPU资源紧缺的原因可能是应用程序不合理造成的,也可能是硬件资源匮乏引起的,所以,要具体问题具体分析,或者优化应用程序,或者增加系统CPU资源。

2 内存性能评估

内存的管理和优化是系统性能优化的一个重要部分,内存资源的充足与否直接影响应用系统的使用性能,在进行内存优化之前,一定要熟悉linux的内存管理机制,这一点我们在前面的章节已经有深入讲述,本节的重点是如何通过系统命令监控linux系统的内存使用状况。

2.1 free 命令

free是监控linux内存使用状况最常用的指令,看下面的一个输出:

[root@webserver ~]# free -m

total used free shared buffers cached

Mem: 8111 7185 925 0 243 6299

-/+ buffers/cache: 643 7468

Swap: 8189 0 8189

“free –m”表示以M为单位查看内存使用情况,在这个输出中,重点关注的应该是free列与cached列的输出值,由输出可知,此系统共8G内存,系统空闲内存还有925M,其中,Buffer Cache占用了243M,Page Cache占用了6299M,由此可知系统缓存了很多的文件和目录,而对于应用程序来说,可以使用的内存还有7468M,当然这个7468M包含了Buffer Cache和Page Cache的值。在swap项可以看出,交换分区还未使用。所以从应用的角度来说,此系统内存资源还非常充足。

一般有这样一个经验公式:应用程序可用内存/系统物理内存70%时,表示系统内存资源非常充足,不影响系统性能,应用程序可用内存/系统物理内存20%时,表示系统内存资源紧缺,需要增加系统内存,20%应用程序可用内存/系统物理内存70%时,表示系统内存资源基本能满足应用需求,暂时不影响系统性能。

free命令还可以适时的监控内存的使用状况,使用“-s”参数可以在指定的时间段内不间断的监控内存的使用情况:

[root@webserver ~]# free -b -s 5

total used free shared buffers cached

Mem: 8505901056 7528706048 977195008 0 260112384 6601158656

-/+ buffers/cache: 667435008 7838466048

Swap: 8587149312 163840 8586985472

total used free shared buffers cached

Mem: 8505901056 7526936576 978964480 0 260128768 6601142272

-/+ buffers/cache: 665665536 7840235520

Swap: 8587149312 163840 8586985472

total used free shared buffers cached

Mem: 8505901056 7523987456 981913600 0 260141056 6601129984

-/+ buffers/cache: 662716416 7843184640

Swap: 8587149312 163840 8586985472

其中,“-b”表示以千字节(也就是1024字节为单位)来显示内存使用情况。

linux下 命令行执行matlab速度很慢

首先介绍一下我自己使用的有效方法,一般matlab启动初始化很慢主要的原因是在找注册文件,一般是由于安装了MAC类的软件引起的,所以我按照下文提供的方法“在【目标】中,键入如下内容”$MATLAB\bin\win32\MATLAB.exe” -c “Full Path to the MATLAB license file including file name””,我在快捷方式里面目标路径中键入:"C:\Program Files\MATLAB\R2009b\bin\win32\MATLAB.exe" -c "C:\Program Files\MATLAB\R2009b\bin\win32\lic_standalone.dat",即解决了这个问题,感谢网友无私的分享精神。注意上面路径中lic_standalone.dat是自己的许可文件,换换就可以了!

Matlab随着版本的升级体积越来越大,带来的问题就是启动速度也越来越慢,下面就我注意到的几个影响MATLAB启动速度的问题集中和大家分析下解决办法。

一、preferences方面原因

问题产生原因:

大家都知道,preferences参数很多,如果首选参数设置的不得当,或者文件太大,Matlab启动的时候加载preferences设置就需要较长时间

问题解决方法:

以管理员权限登录,以保证自己有查看隐藏文件的权限。

windows

(1)退出Matlab,一定要确保Matlab不再运行

(2)进入c:\Documents and Settings\ your username\Application Data\MathWorks\MATLAB\ 复制代码真实该路径可以在Matlab中键入prefdir得到

(3)将上述路径中,以Matlab版本号为文件名(比如R2009a)的文件夹,重命名为R2009a_old(其实这一步是在备份preferences文件)

(4)重启Matlab,此时predir下会重新创建一个R2009a文件夹,里面包含了所有的preferences设置,只是属性值都是默认的,当然以前对Matlab的设置全部没有了

(5)如果觉得不满意,那么将新生成的R2009a删除,将R2009a_old重新改为R2009a就可以恢复以前的设置了。

Linux, Unix, or Mac

1) Quit MATLAB. Ensure that MATLAB is no longer running.

2) Rename the “.matlab/” directory in the users home directory, to “.matlab_old/”.

3) Restart MATLAB.

二、License方面原因

问题产生原因:

每次Matlab启动的时候会自动搜索Matlab的License文件,而计算机系统变量LM_LICENSE_FILE,则是用来告诉所有的应用程序从哪里找到对应的License文件

另外系统变量LM_LICENSE_FILE也可能导致初始化很慢,但是该变量只对Matlab负责,LM_LICENSE_FILE是对所有的程序负责

但是假如你的Matlab使用的是网络版的License,你计算机没有联网就会导致无法找到network license

解决方法:

方法一

windows

(1)右击【我的电脑】选择【属性】

(2)在【高级】选项卡中,点击【环境变量】

(3)在下面的【系统变量】找到【LM_LICENSE_FILE】,如果没有,点击【新建】创建一个变量名为LM_LICENSE_FILE的变量

(4)将LM_LICENSE_FILE的属性值设置为Maltab的License文件的绝对路径

(5)重启Matlab

Unix,Linux,or Mac

Check to see if there is an environment variable set. Where this is located depends on the shell you are using. Look in your home folder. This file may be called: .cshrc (c-shell), .profile (bash), or .bashrc (bash)

You can also create an environment variable for that shell session from the command line using export or setenv (depending on your shell), but the above file needs to be edited for a permanent change.

For example:export MLM_LICENSE_FILE /usr/bin/matlab/license.dat

如果你只有一个License,那么你可以当Matlab启动的时候,在Maltab快捷方式或者命令行中指定License路径

windows

(1)右击Matlab快捷方式,选择【属性】

(2)在【目标】中,键入如下内容”$MATLAB\bin\win32\MATLAB.exe” -c “Full Path to the MATLAB license file including file name”

复制代码其中$MATLAB是Matlab安装根目录,可以在Matlab中键入matlabroot得到,Path to the MATLAB license file是License文件的绝对路径

(3)重启Matlab

Unix,Linux,or Mac

Use a -c switch to point directly at the license file when launching.

If the MATLAB installer has created symbolic links, runmatlab -c Full Path to the MATLAB license file including file name

If symbolic links were not created, run from $MATLAB/bin/./matlab -c Full Path to the MATLAB license file including file name

Where $MATLAB is the root MATLAB directory and Path to the MATLAB license file is the absolute path to your license file, likely in your $MATLAB/licenses directory.

linux route命令反应很慢是什么原因?

主要是域名解析影响了route

ssh

的速度,可能是域名解析用的时间太长,如果你没有需要可以把dns服务器删除掉。修改/etc/resolv.conf

就可以了


本文名称:linux运行命令慢,linux运行速度
本文来源:http://lswzjz.com/article/hcdhgj.html