centos7 有没有synaptic
安装:
1。安装介质:
FC 7: 3张cd或1张DVD
Ubuntu 7.1: 1张cd
FC7的安装介质里包含了诸多可选软件包,而Ubuntu安装盘仅提供基本系统及一些核心应用程序。此外,Ubuntu安装盘内提供了可在windows下运行的一个演示界面和win版firefox,让用户可以在windows下窥探一下ubuntu的容颜。
2。安装过程:
亲和性:
FC7:直接安装
Ubuntu: 先进入live系统然后安装
Ubuntu的安装让人更有胆量尝试。以安装盘引导后,首先进入的是Ubuntu live cd的界面,即在cd上运行的ubuntu。在用户桌面上有个“安装”图标,双击之后开始安装。
Fedora 7尽管也开始有了live cd,但安装盘依然是安装盘,对新手来说,引导后便要壮着胆子敲个回车 ,开始安装。
分区
对新手来说,磁盘分区往往是linux安装过程中的一个头大问题。 FC7和Ubuntu都可以选择默认的自动分区。FC7的自动分区高级一些,会使用LVM,Ubuntu似乎就全部塞到一个根分区内。不过Ubuntu在分区界面有几行提示:如果你要手动分区,那么至少需要一个swap,一个根分区。这就保险多了。
系统定制
Fedora的安装时可以选择“定制软件包”,Ubuntu没有,因为它只有一张cd,没带那么多可选应用软件。当然你可以安装之后在到系统内synaptic或者ap-get。不过说实话,在安装时就“定制”软件包还是比较累的,而且影响安装速度。如果网络够好,那么装好系统后再在线安装其他所需软件会更舒服一些。
3。软件管理
管理工具:
Ubuntu采用dpkg和apt-get来管理软件包,而Fedora有对应的rpm和yum。不过Ubuntu默认安装了apt-get的图形界面:新立得软件包管理(synaptic),对新手来说还是更友善些的。当然Fedora下面有个对应的东西yumex (Yum Extender),但并非默认安装的。
软件搜索
Ubuntu在Firefox的搜索引擎框内添加了Ubuntu软件搜索,可以很方便的查找所需软件的deb包。其实Fedora也可以做到这点,但他没有。
手动下载安装vs.自动下载安装
也许你会说,直接apt-get或者yum之,哪里用的着firefox来搜。但毕竟apt和yum都是单线程,下载速度有限。在下载比较大的软件包时,使用下载工具会更方便 些。 但是如果手动下载的话,各种软件依赖关系又成了头大的问题了。但在Ubuntu下,这个不成问题。比如我要装的某个软件如openarena假设有150MB,而这个软件又依赖5个几十kB的库函数。在Ubuntu下,我可以先手动下载这个150M的文件,用dpkg安装这个openarena。安装时会报错,说缺少某某某库函数。没关系,这时使用
[bashcode]apt-get -f install openarena[/bashcode]
即可轻松修复所缺的5个几十k的库文件。这时apt只需要下载这几个依赖的小文件就行了。
4.软件源
来源
Ubuntu作为全球用户最多的linux,其软件源自然十分广泛,除了官方提供的强大deb源,很多软件都有相应的deb安装包。当然,Fedora源出名门redhat,其软件源支持也不 落下风,livna, atrpm等很多repository都是为Fedora而生的。
但毕竟ubuntu用户更多,所以很多实用但流行未必很广的小软件都有现成的deb安装包。当然,fedora下可以用个小程序把deb转成rpm安装包。
商业软件
此外,ubuntu的口号一直是强调人性化linux (linux for human beings) 。我们的生活中,windows和商业软件的影响是无法摆脱的。所以真正实用的linux自然缺不了mp3支持,缺不了flash插件,还会需要windows字体以免尴尬的.doc乱码等等。ubuntu把这些常用的非开源软件打进了一个安装包,包括mp3, flash, java jre, windows font等等,只需要装一个包(ubuntu-restricted-extras),这些全部搞定。Fedora下,这些问题似乎只能各个击破,自己还没有发现有这么一个实用的软件包可以安装。
ubuntu还提供propriety 驱动的管理,自动提供并且提示各种硬件的官方非开源驱动的安装和使用。
中国镜像
还有一点,ubuntu的国内镜像很快。在官方的镜像列表里,似乎至少有archive.unbuntu.cn和cn99两个镜像服务器。帮同学下软件,速度竟然达到9M/s!Fedora的中国大陆镜像似乎没有,就近一些的似乎只有港台和日本的服务器,其他会有不少民间镜像,毕竟不再repository的列表里,很难受益阿。
5。其他
用户界面
FC7开始,Fedora的美工才算可以。而Ubuntu的橘黄色界面一直觉得挺耐看。
硬盘管理
Ubuntu会在安装过程中就自动侦测系统磁盘,安装好之后会自动挂载硬盘上的非linux分区,而无需用户自己配置。这又为windows用户转移linux垫平了一道坎。
桌面
Fedora下可以添加一个命令行到面板上,而Ubuntu下默认并没有这个小程序,有些遗憾。
相关文章:
比ubuntu还要易用?--当Linux Mint进军个人桌面
centos7 安装好了需要哪些基本的工具
1,centos默认不支持ntfs格式的文件系统,需要安装ntfs-3g软件包,安装后,在电脑上插入U盘或移动硬盘,当可以看到新加入的盘后,需要使用命令将U盘进行挂载。
2,在centos中安装rar软件,centos默认不能解压rar后缀格式的压缩包,但可以解压zip压缩包,所以建议以后在windows中建立压缩文件时,最后生成zip格式的压缩文件,
3,安装djpeg
djpeg是对jpg格式的图像进行读取处理必需的软件,本人需要使用inria实验室提供的sift特征提取工具提取图像的特征,所以必需安装它。
4, 安装numpy
numpy是Python中重要的科学计算基础软件包,本人在使用INIRA发布的Yael软件包中需要使用numpy,安装过程如下,比较麻烦的是包之间的依赖关系
怎么利用centos中的mssql进行渗透攻击
最简单的是 在windows上开启共享,然后在centos上进行挂载就可以了。 mount //windows的ip/share /mnt -o user=administrator,pass=密码
如何通过自带工具为CentOS-7配置网络
前置条件
首先,你要具备一定的网络基础知识,比如什么是IP地址、掩码、网关地址、DNS、DHCP、路由器、有线连接、无线连接、网络设备等。由于篇幅有限,本文不再赘述这些基础知识,如需了解,请移步baidu百科自行查阅。
其次,你已经安装好了CentOS-7 minimal系统。
最后,确定CentOS-7可以识别到你的网卡设备。在你安装CentOS-7时就可以确认是否CentOS-7可以识别你的网卡设备。图中展示了在安装过程中可以确认网络设备的位置。
查看网卡、网络配置信息
一般情况下,在安装CentOS-7后网卡设备是被默认关闭的,这一点你可以去CentOS的官网查看具体原因(也就是因为安全之类云云)。另外,你可以使用ip addr命令来查看你的网卡状态以及网络配置信息。在CentOS-7中,替代了ifconfig工具的,正是这个ip工具(其具体用法不在本文范畴之内,此处不再赘述)。
从图中结果看到我的网卡没有获得任何网络配置信息,我们需要先激活它。
使用nmtui激活网卡
CentOS-7中自带了一个非常好用的工具nmtui(network manager text user interface)。在命令行中键入nmtui来启动这个工具。
在界面中选择Activate a connection并回车。
进入网卡激活界面后选择你的网卡,用方向键将高亮红色框移至Activate按钮处,回车。如果成功激活后,你会看到Activate按钮变为Deactivate。
使用ip addr再次查看网卡及网络配置信息
按键盘ESC键退出nmtui工具界面。
输入ip addr并回车,再次查看网卡的网络信息。因为我这台机器连接的网络路由器上已经启用了DHCP服务,所以当我激活网卡时,CentOS-7系统自动获取到了路由器为我分配的IP地址、子网掩码和网关地址。如果您的网络中没有启用DHCP服务,请继续看下一步。
手动配置网络信息
再次输入nmtui命令,进入网络管理器用户界面。直接回车,进入Edit a connection界面。从网卡设备列表中选择你要进行手动配置的网卡设备,然后点击Edit按钮(移动高亮红色选择框至Edit按钮处,回车)。
按图所示,将IPv4的Automatic模式设置为Manual。然后点击Show按钮,将IPv4的详细信息显示出来。之后,填入相应的IP地址(addresses)、Gateway、DNS servers等信息,并点击OK按钮返回nmtui的设备列表。
点击Quit按钮退出nmtui工具界面。
最后,让我们使用ping命令来确认一下网络是否已经配置妥当。
Okay,至此,您已经成功激活网卡并完成了CentOS-7上的网络配置。
centos7 root登录后 所有的命令都失效,请问有人知道是怎么回事吗?
本节所讲内容:
10.1 进程概述和ps查看进程工具
10.2 uptime查看系统负载-top动态管理进程
10.3 前后台进程切换-nice进程优先级-screen后台执行命令
安装包地址:渗透测试实战:内网渗透之域渗透
10.1 进程概述和ps管理进程 10.1.1 什么是进程?
进程: 是程序运行的过程, 动态,有生命周期及运行状态,是已启动的可执行程序的运行实例。
进程有以下组成部分:
• 已分配内存的地址空间;
• 安全属性,包括所有权凭据和特权;
• 程序代码的一个或多个执行线程;
• 进程状态
线程:进程和线程都是由操作系统所体现的程序运行的基本单元,系统利用该基本单元实现系统对应用的并发性。进程和线程的区别在于:简而言之,一个程序至少有一个进程,一个进程至少有一个线程。
程序: 二进制文件(程序即二进制文件),静态实体 /bin/date,/usr/sbin/sshd
下图所示的是进程的生命周期:
父进程复制自己的地址空间(fork [fɔ:k] 分叉)创建一个新的(子)进程结构。每个新进程分配一个唯一的进程 ID (PID),满足跟踪安全性之需。PID 和 父进程 ID (PPID)是子进程环境的元素,任何进程都可以创建子进程,所有进程都是第一个系统进程的后代。
centos5或6PID为1的进程是: init
centos7 PID为1的进程是: systemd
centso8 PID为1的进程是: systemd
僵尸进程:一个进程使用fork创建子进程,如果子进程退出,而父进程并没有调用wait或waitpid获取子进程的状态信息,那么子进程的进程描述符仍然保存在系统中。这种进程称之为僵尸进程。
父进程退出了, 子进程没有退出, 那么这些子进程就没有父进程来管理,就变成僵尸进程。
10.1.2 进程的属性
进程ID(PID):是唯一的数值,用来区分进程
父进程的ID(PPID)
启动进程的用户ID(UID)和所归属的组(GID)
进程状态:状态分为运行R(running)、休眠S(sleep)、僵尸Z(zombie)
进程执行的优先级
进程所连接的终端名
进程资源占用:比如占用资源大小(内存、CPU占用量)
10.1.3 使用ps查看进程工具
1、ps查看进程工具
例1:常用的参数:
a: 显示跟当前终端关联的所有进程
u: 基于用户的格式显示(U: 显示某用户ID所有的进程)
x: 显示所有进程,不以终端机来区分
例2:常用的选项组合是 ps -aux
[root@xuegod63 ~]# ps -axu | more
注: 最后一列[xxxx] 使用方括号括起来的进程是内核态的进程。 没有括起来的是用户态进程。
上面的参数输出每列含意:
USER: 启动这些进程的用户
PID: 进程的ID
%CPU 进程占用的CPU百分比;
%MEM 占用内存的百分比;
VSZ:进程占用的虚拟内存大小(单位:KB)
RSS:进程占用的物理内存大小(单位:KB)
STAT:该程序目前的状态,Linux进程有5种基本状态:
R :该程序目前正在运行,或者是可被运行;
S :该程序目前正在睡眠当中 (可说是 idle 状态啦!),但可被某些讯号(signal) 唤醒。
T :该程序目前正在侦测或者是停止了;
Z :该程序应该已经终止,但是其父程序却无法正常的终止他,造成 zombie (疆尸) 程序的状态
D 不可中断状态.
5个基本状态后,还可以加一些字母,比如:Ss、R+,如下图:
它们含意如下::
: 表示进程运行在高优先级上
N: 表示进程运行在低优先级上
L: 表示进程有页面锁定在内存中
s: 表示进程是控制进程
l: 表示进程是多线程的
+: 表示当前进程运行在前台
START:该 process 被触发启动的时间;
TIME :该 process 实际使用 CPU 运作的时间。
COMMAND:该程序的实际指令
例1: 查看进程状态
[root@xuegod63 ~]# vim a.txt
在另一个终端执行:
[root@xuegod63 ~]# ps -aux | grep a.txt #查看状态 S表示睡眠状态, + 表示前台
root 4435 0.0 0.2 151752 5292 pts/1 S+ 20:52 0:00 vim a.txt
root 4661 0.0 0.0 112676 996 pts/0 S+ 21:05 0:00 grep --color=auto a.txt
在vim a.txt 这个终端上 按下: ctrl+z
[1]+ 已停止 vim a.txt
在另一个终端执行:
[root@xuegod63 ~]# ps -aux | grep a.txt #查看状态 T表示停止状态
root 4435 0.0 0.2 151752 5292 pts/1 T 20:52 0:00 vim a.txt
root 4675 0.0 0.0 112676 996 pts/0 S+ 21:05 0:00 grep --color=auto a.txt
注:
ctrl-c 是发送 SIGINT 信号,终止一个进程
ctrl-z 是发送 SIGSTOP信号,挂起一个进程。将作业放置到后台(暂停) 前台进程收到这些信号,就会采取相应动作。
ctrl-d 不是发送信号,而是表示一个特殊的二进制值,表示 EOF。代表输入完成或者注销
在shell中,ctrl-d表示退出当前shell.
例2: D 不可中断状态
[root@xuegod63 ~]# tar -zcvf usr-tar.gz /usr/
#然后在另一个终端不断查看状态,由S+,R+变为D+
2、ps常用的参数: ps -ef
-e 显示所有进程
-f 显示完整格式输出
我们常用的组合: ps -ef
包含的信息如下
UID: 启动这些进程的用户,程序被该UID所拥有
PID: 该进程的ID
PPID: 该进程的父进程的ID
C: 该进程生命周期中的CPU 使用资源百分比
STIME: 进程启动时的系统时间
TTY: 表明进程在哪个终端设备上运行。如果显示 ?表示与终端无关,这种进程一般是内核态进程。另外, tty1-tty6 是本机上面的登入者程序,若为 pts/0 等,则表示运行在虚拟终端上的进程。
TIME: 运行进程一共累计占用的CPU时间
CMD: 启动的程序名称
例1:测试CPU使用时间。
dd if=/dev/zero of=~/zero.txt count=10 bs=100M
[root@localhost ~]# ps -axu | grep dd
注:
ps aux 是用BSD的格式来显示进程。
ps -ef 是用标准的Unix格式显示进程
10.2 uptime查看系统负载-top动态管理进程 10.2.1 uptime查看CPU负载工具
[root@localhost ~]# uptime
13:22:30 up 20days, 2 users, load average: 0.06, 0.60, 0.48
弹出消息含意如下:
13:22:30
当前时间
up 20days
系统运行时间 ,说明此服务器连续运行20天了
2 user
当前登录用户数
load average: 0.06, 0.60, 0.48
系统负载,即任务队列的平均长度。 三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值。
任务队列的平均长度是什么?
大厅排队买票:
这时队列是4:
cpu队列数为3时,如图:
互动:例1:找出前当系统中,CPU负载过高的服务器?
服务器1: load average: 0.15, 0.08, 0.01 1核
服务器2: load average: 4.15, 6.08, 6.01 1核
服务器3: load average: 10.15, 10.08, 10.01 4核
答案:服务器2
如果服务器的CPU为1核心,则load average中的数字 =3 负载过高,如果服务器的CPU为4核心,则load average中的数字 =12 负载过高。
经验:单核心,1分钟的系统平均负载不要超过3,就可以,这是个经验值。
如下图: 1人只能买1张票,排第四的人可能会急。 所以我们认为超过3就升级CPU
10.2.2 top命令
[root@xuegod63 ~]# top #top弹出的每行信息含意如下:
第一行内容和uptime弹出的信息一样
进程和CPU的信息( 第二、三行)
当有多个CPU时,这些内容可能会超过两行。内容如下:
Tasks: 481 total
进程总数
1 running
正在运行的进程数
480 sleeping
睡眠的进程数
0 stopped
停止的进程数
0 zombie
僵尸进程数
Cpu(s): 0.0% us
系统用户进程使用CPU百分比。
0.0% sy
内核中的进程占用CPU百分比
0.0% ni
用户进程空间内改变过优先级的进程占用CPU百分比
98.7% id
空闲CPU百分比
0.0% wa
cpu等待I/0完成的时间总量。
测试:
终端1:执行:top
终端2:dd if=/dev/zero of=/a.txt count=10 bs=100M
终端3:dd if=/dev/zero of=/a.txt count=10 bs=100M
正常读写时,如果wa占用较多CPU,那么就是磁盘性能问题,建议更换磁盘。
如下:
0.0% hi(了解)
硬中断消耗时间
硬中断,占用CPU百分比。1. 硬中断是由硬件产生的,比如,像磁盘,网卡,键盘,时钟等。每个设备或设备集都有它自己的IRQ(中断请求)。基于IRQ(Interrupt Request),CPU可以将相应的请求分发到对应的硬件驱动上(注:硬件驱动通常是内核中的一个子程序,而不是一个独立的进程)。# hi - Hardware IRQ: The amount of time the CPU has been servicing hardware interrupts.
0.0% si(了解)
软中断消耗时间
软中断,占用CPU百分比。1. 通常,软中断是一些对I/O的请求。这些请求会调用内核中可以调度I/O发生的程序。对于某些设备,I/O请求需要被立即处理,而磁盘I/O请求通常可以排队并且可以稍后处理。根据I/O模型的不同,进程或许会被挂起直到I/O完成,此时内核调度器就会选择另一个进程去运行。I/O可以在进程之间产生并且调度过程通常和磁盘I/O的方式是相同。# si - Software Interrupts.: The amount of time the CPU has been servicingsoftware interrupts.
0.0 st (steal 偷)
st:虚拟机偷取物理的时间。比如:物理机已经运行了KVM虚拟机。KVM虚拟机占用物理机的cpu时间
内存信息(第四五行)
内容如下:
Mem: 2033552k total
物理内存总量
340392k used
使用的物理内存总量
1376636k free
空闲内存总量
316524k buff/cache
用作内核缓存的内存量。
和free -k 一个意思
Swap: 2017948k total
交换区总量
0k used
使用的交换区总量
192772k free
空闲交换区总量
1518148 avail Mem
总的可利用内存是多少
注:如果swap分区,被使用,那么你的内存不够用了。
第7行进程信息
列名
含义
PID
进程id
USER
进程所有者的用户名
PR
优先级(由内核动态调整),用户不能
NI
进程优先级。 nice值。负值表示高优先级,正值表示低优先级,用户可以自己调整
VIRT(virtual memory usage)
虚拟内存,是进程正在使用的所有内存(ps中标为VSZ)
VIRT:virtual memory usage 虚拟内存
1、进程“需要的”虚拟内存大小,包括进程使用的库、代码、数据等
2、假如进程申请100m的内存,但实际只使用了10m,那么它会增长100m,而不是实际的使用量
RES(resident memory usage)
是进程所使用的物理内存。实际实用内存(ps中标为RSS)
RES:resident memory usage 常驻内存
1、进程当前使用的内存大小,但不包括swap out
2、包含其他进程的共享
3、如果申请100m的内存,实际使用10m,它只增长10m,与VIRT相反
4、关于库占用内存的情况,它只统计加载的库文件所占内存大小
SHR
共享内存大小,单位kb
SHR:shared memory 共享内存
1、除了自身进程的共享内存,也包括其他进程的共享内存
2、虽然进程只使用了几个共享库的函数,但它包含了整个共享库的大小
3、计算某个进程所占的物理内存大小公式:RES – SHR
4、swap out后,它将会降下来
S
进程状态。
D=不可中断的睡眠状态
R=运行中或可运行
S=睡眠中
T=已跟踪/已停止
Z=僵停
%CPU
上次更新到现在的CPU时间占用百分比
%MEM
进程使用的物理内存百分比
TIME+
进程使用的CPU时间总计,单位1/100秒
COMMAND
命令名/命令行
top快捷键:
默认3s刷新一次,按s修改刷新时间
按空格 :立即刷新。
q退出
P:按CPU排序
M:按内存排序
T按时间排序
p: 进程pid,查看某个进程状态
数字键1:显示每个内核的CPU使用率,展示cpu数量,再按下,就收起来了
u/U:指定显示的用户
h:帮助
例1:运行top,依次演示一下top的快捷键,让大家看一下效果
例2:使用TOP动态只查看某个或某些进程的信息
找到进程PID
[root@localhost ~]# vim a.txt
[root@localhost ~]# ps axu | grep vim
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
root 9667 0.0 0.2 143620 3344 pts/1 S+ 19:15 0:00 vim a.txt
[root@localhost ~]# top -p 9667
10.2.3 实战1:找出系统中使用CPU最多的进程
运行top , 找出使用CPU最多的进程 ,按大写的P,可以按CPU使用率来排序显示
互动:在linux系统中一个进程,最多可以使用100%cpu对吗?
如下图,可以看到dirtycow(脏牛漏洞,用于提权) 进程使用196.8%
这是你第一次看见: 1
如果你的4核心的cpu,你可以运行400%
64核心的cpu,可以运行到6400%
10.2.4 lsof命令
lsof命令用于查看你进程打开的文件,打开文件的进程,进程打开的端口(TCP、UDP)
-i条件:列出符合条件的进程。(ipv4、ipv6、协议、:端口、 @ip )
-p进程号:列出指定进程号所打开的文件;
例:
[root@xuegod63 ~]# vim a.txt
[root@xuegod63 ~]# ps -axu | grep a.txt
root 43641 0.8 0.2 151744 5280 pts/3 S+ 18:19 0:00 vim a.txt
root 43652 0.0 0.0 112676 996 pts/1 S+ 18:19 0:00 grep --color=auto a.txt
[root@xuegod63 ~]# yum -y install lsof
[root@xuegod63 ~]# lsof -p 65641 #进程pid一般用于查看木马进程,在读哪些文件
[root@xuegod63 ~]# lsof -i :22 #查看端口,或查看黑客开启的后门端口是哪个进程在用
[root@xuegod63 ~]# lsof -c vim #进程名,显示vim进程现在打开的文件
[root@xuegod63 ~]# lsof /test/.abc.txt.swp #显示占用文件.abc.txt.swp的进程
在这个示例中,用户root正在其/test目录中进行一些操作。一个 bash是实例正在运行,并且它当前的目录为/test,另一个则显示的是vim正在编辑/test下的文件。要成功地卸载/test,应该在通知用户以确保情况正常之后,中止这些进程。 这个示例说明了应用程序的当前工作目录非常重要,因为它仍保持着文件资源,并且可以防止文件系统被卸载。这就是为什么大部分守护进程(后台进程)将它们的目录更改为根目录、或服务特定的目录的原因,以避免该守护进程阻止卸载不相关的文件系统。
10.2.5 free显示系统中可用内存和已用内存的数量
free命令查看内存使用状态
子选项:
-b:以字节为单位表示。
-k:以KB为单位显示,默认是以KB为单位显示。
-m:以MB为单位显示。
-g:以GB为单位显示。
[root@localhost ~]# free -m
total used free shared buff/cache available
Mem: 972 603 69 24 299 123
Swap: 2047 69 1978
其中:
第一行:total是总内存量,used是已经使用的内存量,free是空闲的内存,shared是多个进程共享的内存总数,buffers是缓冲内存数,cache是缓存内存数。默认单位是KB。available 实际可用
(case 加速读,buffers加速写。)
第二行开始:total系统中有972MB的物理内存,used是已经使用的内存数量。free是空闲的内存数量。shared是多个进程共享的内存数量。buff/cache用来作为缓冲和缓存的空间,内核会在内存将要耗尽时释放这部分内存给其他进程使用。availble:可使用空间,评估有多少内存可用于启动新应用程序,不包括swap,不同于free和cache字段。available字段考虑了页缓存,而不是所有可回收的内存。正因为这个原因所以通常free+buff/cache的数值要比available的数值大。
互动:执行free命令查看系统状态,这一瞬间,当前系统,真正,还有多少M 内存可以使用?
答案1:free+ buff/cache=69 +299=368M
答案2:available=123M
10.3 前后台进程切换- nice进程优先级-screen后台执行命令 10.3.1 Linux后台进程与前台进程的区别
前台进程:是在终端中运行的命令,那么该终端就为进程的控制终端,一旦这个终端关闭,这个进程也随着消失
后台进程: 也叫守护进程(Daemon),是运行在后台的一种特殊进程,不受终端控制,它不需要终端的交互;Linux的大多数服务器就是用守护进程实现的。比如,Web服务器httpd等。
10.3.2 进程的前台与后台运行
跟系统任务相关的几个命令(了解):
#用在一个命令的最后,可以把这个命令放到后台执行.
ctrl + z #将一个正在前台执行的命令放到后台,并且暂停.
jobs #查看当前有多少在后台运行的进程.它是一个作业控制命令
fg(foreground process) #将后台中的命令调至前台继续运行, 如果后台中有多个命令,可以用 fg %jobnumber将选中的命令调出,%jobnumber是通过jobs命令查到的后台正在执行的命令的序号(不是pid)
bg(background process) #将一个在后台暂停的命令,变成继续执行; 如果后台中有多个命令,可以用bg %jobnumber将选中的命令调出,%jobnumber是通过jobs命令查到的后台正在执行的命令的序号(不是pid)
实战恢复被挂起的进程(了解)
例: vim a.txt 按下: ctrl+z
[root@xuegod63 ~]# vim a.txt #打开后,然后执行 ctrl+z
[1]+ 已停止 vim a.txt
[root@xuegod63 ~]# ps -axu | grep vim
root 43710 0.8 0.2 151744 5304 pts/3 T 18:26 0:00 vim a.txt
root 43720 0.0 0.0 112676 984 pts/3 S+ 18:26 0:00 grep --color=auto vim
[root@xuegod63 ~]# jobs #查看当前有多少在后台运行的进程
[1]+ 已停止 vim a.txt
[root@xuegod63 ~]# fg 1 #将后台挂起的进程恢复到前台运行
10.3.3 kill关闭进程
关闭进程3个命令:kill killall pkill
kill关闭进程:kill 进程号 关闭单个进程
killall和pkill 命令用于杀死指定名字的进程
通过信号的方式来控制进程的
kill -l ===== 列出所有支持的信号(了解) 用最多的是: 9 信号
信号编号 信号名
1) SIGHUP 重新加载配置
2) SIGINT 键盘中断 crtl+c
3) SIGQUIT 退出
9) SIGKILL 强制终止
15) SIGTERM 终止(正常结束),缺省信号
18) SIGCONT 继续
19) SIGSTOP 停止
20) SIGTSTP 暂停 crtl+z
例1: kill和killall终止进程
[root@xuegod63 ~]# yum -y install psmisc
[root@xuegod63 ~]# kill -9 pid
[root@xuegod63 ~]# killall vim
[root@xuegod63 ~]# pkill vim
10.3.4 进程的优先级管理
优先级取值范围为(-20,19),值越小优先级越高, 默认优先级是0
优先级越高占用的CPU值就越高
命令1:nice 指定程序的运行优先级
格式:nice n command
命令2:renice 改变程序的运行优先级
格式:renice -n pid
例1:指定运行vim的优先级为5
[root@xuegod63 ~]# nice -n 5 vim a.txt
输入内容,然后ctrl+z 挂起
通过ps查看这个文件的PID号
[root@xuegod63 ~]# ps -aux|grep vim
通过top命令查看优先级
[root@xuegod63 ~]# top -p 26154
改变正在运行的进程的优先级
10.3.5 使用screen后台实时执行备份命令
实战场景:公司晚上需要备份1T数据,我在xshell上直接执行备份脚本back.sh可以吗? 或直接运行back.sh 放到后台运行可以吗? 当关了xshell后,back.sh 还在后台执行吗?
答:xshell长时间连接,如果本地网络偶尔断开或xshell不小心关闭,都会让后台运行的备份命令停止运行的。正确做法使用: srceen
10.3.6 screen概述和安装
Screen中有会话的概念,,用户可以在一个screen会话中创建多个screen窗口,在每一个screen窗口中就像操作一个真实的telnet/SSH连接窗口那样。
安装screen软件包
# rpm -ivh /mnt/Packages/screen-4.1.0-0.23.20120314git3c2946.el7_2.x86_64.rpm
或者
[root@xuegod63 ~]# yum -y install screen
10.3.7 screen使用方法
直接在命令行键入screen命令回车,如下图
[root@xuegod63 ~]# screen
Screen将创建一个执行shell的全屏窗口。你可以执行任意shell程序,就像在ssh窗口中那样
例如,我们在做某个大型的操作但是突然之间断开:
实战:使用screen后台实时执行命令备份命令
[root@xuegod63 ~]# screen #进入
[root@xuegod63 ~]# vim a.txt #执行命令, 或执行你自己需要运行的备份命令
此时想离开一段时间,但还想让这个命令继续运行
[root@xuegod63 ~]# #在screen当前窗口键入快捷键Ctrl+a+d
[detached from 44074.pts-3.xuegod63] #分离出来独立的一个会话
detached [dɪˈtætʃt] 分离,独立
半个小时之后回来了,找到该screen会话:
[root@tivf06 ~]# screen -ls #查看已经建立的会话ID
There is a screen on:
44074.pts-1.tivf06 (Detached)
1 Socket in /tmp/screens/S-root.
重新连接会话:
[root@xuegod63 ~]# screen -r 44074
root@xuegod63 ~]# exit #不想使用screen 会话了,执行:exit退出。
附:常用screen参数
screen -S test - 新建一个叫test的会话
screen -ls - 列出当前所有的会话
screen -r test - 回到test会话
screen -S 会话id -X quit - 删除会话
screen -S 会话名 -X quit - 删除会话
总结:
10.1 进程概述和ps查看进程工具
10.2 uptime查看系统负载-top动态管理进程
10.3 前后台进程切换- nice进程优先级-screen后台执行命
centos7和低版本的破密方法不一样,如何破密?求教程
没装过7的,使用的都是6以下
估计是一样的,你有没有哪里弄错了?带图及简单地说明看下
centos7实现内网穿透的方法有哪些?
利用网云穿内网穿透实现端口映射 内网穿透,反向隧道代理
无需公网ip,无需部署服务器,本机运行项目回调直接进入本机,方便调试 无需设置路由器无论是公网还是内网,都可以直接访问,简单快捷。