Linux命令运行监测和软件安装
$ time sleep 5
real 0m5.003s # 程序开始至结束的时间,包括其它进程占用的时间片和IO时间
user 0m0.001s # 进程真正执行占用CPU的时间
sys 0m0.002s # 进程在内核中调用所消耗的CPU时间

- 17:32:34:系统当前时间
- up 3 days, 8:04:主机已运行时间
- 5 users:用户连接数(不是用户数,who命令)
- load average: 0.09, 0.12, 0.19:系统平均负载,统计最近1,5,15分钟的系统平均负载
- Tasks: 287 total:进程总数
- 2 running:正在运行的进程数
- 285 sleeping:睡眠的进程数
- 0 stopped:停止的进程数
- 0 zombie:僵尸进程数
- 1.5 us:用户空间所占CPU百分比
- 0.9 sy:内核空间占用CPU百分比
- 0.0 ni:用户进程空间内改变过优先级的进程占用CPU百分比
- 97.5 id:空闲CPU百分比
- 0.2 wa:等待输入输出的CPU时间百分比
- 0.0 hi:硬件CPU中断占用百分比
- 0.0 si:软中断占用百分比
- 0.0 st:虚拟机占用百分比
- 8053444 total:物理内存总量
- 7779224 used:已使用的内存总量
- 274220 free:空闲的内存总量(free+used=total)
- 359212 buffers:用作内核缓存的内存量
第五行:swap信息
- 8265724 total:交换分区总量
- 33840 used:已使用的交换分区总量
- 8231884 free:空闲交换区总量
- 4358088 cached Mem:缓冲的交换区总量,内存中的内容被换出到交换区,然后又被换入到内存,但是使用过的交换区没有被覆盖,交换区的这些内容已存在于内存中的交换区的大小,相应的内存再次被换出时可不必再对交换区写入。
- PID:进程id
- PPID:父进程id
- RUSER:Real user name(看了好多,都是这样写,也不知道和user有什么区别,欢迎补充此处)
- UID:进程所有者的id
- USER:进程所有者的用户名
- GROUP:进程所有者的组名
- TTY:启动进程的终端名。不是从终端启动的进程则显示为?
- PR:优先级
- NI:nice值。负值表示高优先级,正值表示低优先级
- P:最后使用的CPU,仅在多CPU环境下有意义
- %CPU:上次更新到现在的CPU时间占用百分比
- TIME:进程使用的CPU时间总计,单位秒
- TIME+:进程所使用的CPU时间总计,单位1/100秒
- %MEM:进程使用的物理内存百分比
- VIRT:进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
- SWAP:进程使用的虚拟内存中被被换出的大小
- RES:进程使用的、未被换出的物理内存的大小
- CODE:可执行代码占用的物理内存大小
- DATA:可执行代码以外的部分(数据段+栈)占用的物理内存大小
- SHR:共享内存大小
- nFLT:页面错误次数
- nDRT:最后一次写入到现在,被修改过的页面数
- S:进程状态(D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程)
- COMMAND:命令名/行
- WCHAN:若该进程在睡眠,则显示睡眠中的系统函数名
- Flags:任务标志
df -h

du -sh *

- 需要根用户的权限。
- 如果系统版本老,安装的软件版本也会比较老。使用新版本有时又会发生冲突。
- 生物信息学中不少软件不在系统的安装源里面。
# 假设当前文件夹下Makefile文件中内容如下
# first: target名字
# echo "compile first": target对应的命令,任何Linux命令都可以
$ cat Makefile
first:
echo "compile first"
all: first second
echo "compile all"
second:
echo "compile second" # 直接运行make,会make第一个出现的target
$ make
echo "compile first"
compile first
# make first与直接make相同,因为它出现在第一个
$ make first
echo "compile first"
compile first
# all依赖于first, second,因此make all会先执行make first, make second
# 然后才是自己所代表的命令
$ make all
echo "compile first"
compile first
echo "compile second"
compile second
echo "compile all"
compile all
- make install通常是拷贝make编译出来的可执行文件或者依赖的库文件(如果有的话)到configure时的--prefix指定的目录下。
- 安装好的软件放入环境变量, 就可以快乐的运行了。
- 从源码编译最难解决的问题就是依赖的库文件、头文件、依赖软件的缺失或版本不匹配,没有统一的解决办法,原则就是缺啥补啥。后面提到的Anaconda,会对库文件的依赖提供一个简便的解决办法。
- 三部曲每一步的执行,屏幕上都会输出比较多的信息,一定仔细看最后有没有ERROR类的字样,对判断软件有无安装成功和下一步要怎么解决问题会很有帮助。
- 首先下载Anaconda的安装包 https://www.continuum.io/downloads。
- Anaconda的安装包做的很人性化,一个bash脚本,只要运行bash Anacond*x86_64.sh,然后按照提示操作就可以了。
- 安装好后,设置或刷新下环境变量就可以使用了。
- 此后再安装python的包只需要执行pip install pakcage_name或conda install pakckage_name就可以了。
- 这里唯一需要注意的就是确认使用的python或pip确实是Anaconda安装的python或pip。
- which python查看使用的python命令。
- 如果使用的还是系统默认的python,则需要检查下环境变量的设置。
bin envs Examples imports lib LICENSE.txt pkgs share varconda-meta etc gcc include lib64 mkspecsplugins ssl
cairo libitm.a libQtScript.so.4cmake libitm.la libQtScript.so.4.8engines libitm.so libQtScript.so.4.8.7gcc libitm.so.1 libQtScriptTools.lagcj-4.8.5-14 libitm.so.1.0.0 libQtScriptTools.prlglib-2.0 libitm.spec libQtScriptTools.solibargtable2.a libjpeg.a libQtScriptTools.so.4libargtable2.la libjpeg.la libQtScriptTools.so.4.8libargtable2.so libjpeg.so libQtScriptTools.so.4.8.7libargtable2.so.0 libjpeg.so.8 libQtSql.lalibargtable2.so.0.1.8 libjpeg.so.8.4.0 libQtSql.prllibasan.a libmkl_avx2.so libQtSql.solibasan.la libmkl_avx512_mic.so libQtSql.so.4libasan_preinit.o libmkl_avx512.so libQtSql.so.4.8libasan.so libmkl_avx.so libQtSql.so.4.8.7
Linux命令运行监测和软件安装的更多相关文章
- Linux基础知识第九讲,linux中的解压缩,以及软件安装命令
目录 Linux基础知识第九讲,linux中的解压缩,以及软件安装命令 一丶Linux Mac Windows下的压缩格式简介 2.压缩以及解压缩 3.linux中的软件安装以及卸载 1.apt进行安 ...
- cv:显示Linux命令运行进度
cv: 显示 cp.mv 等命令的进度 2014-07-14 By toy Posted in Apps Edit on GitHub 在 Linux 系统中 , 大多数命令从来都是信奉 “ 沉默是金 ...
- 【转载】基于Linux命令行KVM虚拟机的安装配置与基本使用
基于Linux命令行KVM虚拟机的安装配置与基本使用 https://alex0227.github.io/2018/06/06/%E5%9F%BA%E4%BA%8ELinux%E5%91%BD%E4 ...
- Linux 命令 watch 监测命令的运行结果
watch 命令周期性地执行命令,全屏显示输出命令.watch命令可以监测一个命令的运行结果 命令参数 -n, --interval 设置间隔时间.默认情况下,watch 每隔 2 秒执行一次命令. ...
- linux命名详解及其软件安装实例
始于cd,ls命令 好啦,步入正题,我使用的linux连接工具为xshell,mRemoteNG,对两款工具不做介绍啦,你可以百度一下,实在不会入左上方群. 进入之后,便是上面的界面黑乎乎一片,对于初 ...
- linux网络基础设置 以及 软件安装
ifconfig #查看所有已激活的网卡信息 临时配置 #yum install net-tools -y 默认ifconfig是没有安装的,可能需要安装 ifconfig eth0 #查看单独一块网 ...
- linux deb及rpm格式软件安装
deb格式软件安装 deb包是debian,ubuntu等LINUX发行版的软件安装包,是类似于rpm的软件包,而非debian,ubuntu系统不推荐使用deb软件包,因为要解决软件包依赖问题,安装 ...
- Mint(Linux)系统设置优化及其常用软件安装笔记
LInux /home下中文目录如何修改成英文? 打开终端,在终端中输入命令: export LANG=en_US xdg-user-dirs-gtk-update 跳出对话框询问是否将目录转化为英文 ...
- Linux常用的三种软件安装方式
一:Linux源码安装 1.解压源码包文件 源码包通常会使用tar工具归档然后使用gunzip或bzip2进行压缩,后缀格式会分别为.tar.gz与.tar.bz2,分别的解压方式: ...
随机推荐
- web面试集合
在JavaScript中,添加到页面上的事件处理程序数量将直接关系到页面的整体运行性能.导致这一问题的原因是多方面的.首先,每个函数都是对象,都会占用内存:内存中的对象越多,性能就越差.其次,必须事先 ...
- distcp导致个别datanode节点数据存储严重不均衡分析
hadoop2.4生产集群已经执行一段时间了.因为大量的hadoop1.0上面的应用不断迁移过来.刚開始事hdfs这边还没有出现多少问题.随着时间的推移,近期发现个别的datanode节点上面的磁盘空 ...
- HDU Today HDU杭电2112【Dijkstra || SPFA】
http://acm.hdu.edu.cn/showproblem.php?pid=2112 Problem Description 经过锦囊相助,海东集团最终度过了危机,从此.HDU的发展就一直顺风 ...
- 浅析java(多方面解读)
昨天我简单的说了一下我的编程学习之路.假设你热爱编程.而不是仅为了赚钱,我想我的经历或许会给你带来一定的启示,假设你还没有看.请先慢慢读完我的编程学习之路,您肯定会有还有一番体会的.. 好了.废话不多 ...
- Android 4.4.2 动态加入JNI库方法记录 (一 JNI库层)
欢迎转载,务必注明出处.http://blog.csdn.net/wang_shuai_ww/article/details/44456755 本篇是继<s5p4418 Android 4.4. ...
- 什么是sibling and tail recursive calls
1 tail call 在函数f中调用函数b,如果这个调用是函数f中执行的最后一条指令,那么这个调用就称为tail call. 例子: int foo(float a, float b) { ... ...
- FFmpeg解码视频帧为jpg图片保存到本地
FFmpeg解码视频帧为jpg图片保存到本地 - CSDN博客 https://blog.csdn.net/qq_28284547/article/details/78151635
- Unicode and .NET
http://csharpindepth.com/Articles/General/Unicode.aspx Scope of this page This is a big topic. Don't ...
- 服务器端解决ajax跨域问题
这里描述以Tomcat为Web服务器情况下的解决办法,在Java Web程序的WEB-INF下的web.xml文件中加入如下配置即可. <!--cors filter--> <fil ...
- bzoj 1783: [Usaco2010 Jan]Taking Turns【贪心+dp】
不知道该叫贪心还是dp 倒着来,记f[0][i],f[1][i]分别为先手和后手从n走到i的最大值.先手显然是取最大的,当后手取到比先手大的时候就交换 #include<iostream> ...