Linux基本配置和管理 8 程序管理与SELinux初探

一 什么是进程

1 在Linux系统当中,触发任何一个事件时,系统都会将它定义成为一个进程,并且给予这个进程一 个ID,称为PID,同时依据触发这个进程的用户与相关属性关系,给予这个PID一组有效的权限设置

2 我们说过,系统应该是仅认识二进制文件的,那么当我们要让系统工作的时候,当然就需要启动一 个二进制文件,那个二进制文件就是程序

3 程序:通常为二进制程序放置在存储媒介中(如硬盘,光盘,软盘,磁带等),以物理文件的形式 存在

进程:程序被触发后,执行者的权限与属性,程序的程序代码与所需数据等都会被加载到内存中,操 作系统并给予这个内存中的单元一个标识符PID,可以说,进程就是一个正在运行中的程序

4 连续执行两个bash后,第二个bash的父进程就是前一个bash,因为每个进程都有一个PID,那某个 进程的父进程可以通过PPID来判断

5 在Linux的过程调用中通常称为fork-and-exec的流程:进程都会通过父进程以复制fork的方式产生 一个一模一样的进程,然后被复制出来的子进程再以exec的方式来执行实际要进行的进程,最终就成为 一个子进程的存在

6 系统先以fork的方式复制一个与父进程一模一样暂存进程,这个进程与父进程唯一的区别就是PID 不同,但是这个暂存进程还会多一个PPID参数,然后暂存进程开始以exec的方式加载实际要执行的程序 ,最终成为子进程

二 工作管理

1 在进行工作管理的行为中,其实每个工作都是目前bash的子进程,即彼此之间是有相关性的。即我 们无法以工作管理的方式从tty1的环境去管理tty2的bash

2 假设我只有一个终端,因此在可以出现提示符让你操作的环境就称为前台,至于其他工作就可以让 你放入后台去暂停或运行。要注意的是,放入后台的工作想要运行时,它必须不能够与用户互动。

3 总之要进行工作管理的限制是:

1 这些工作所触发的进程必须来自于你shell的子进程

2 前台:你可以控制与执行命令的这个环境称为前台工作

3 后台:可以自行运行的工作,你无法使用Ctrl+c终止它,可使用bg/fg调用该工作

4 后台中“执行”的进程不能等待终端的输入

4 直接将命令丢到后台中“执行”的&,这个&代表的是“将工作丢到后台 中,不怕被Ctrl+c中断

5 将目前的工作丢到后台中“暂停”,Ctrl+z

6 在vi的一般模式下,按下Ctrl+z这两个按键,屏幕上面会出现[1],表示这是第一个工作,而那个+ 代表最近一个被丢进后台的工作,且目前在后台下默认会被取用的那个工作。而Stopped表示的是这个工 作是暂停的

7 其实后台的工作+代表的是最近被放到后台的工作号码,-代表最近最后第二个被放置到后台的工作 号码,而超过最后三个以上的工作,就不会有+/-符号存在了

8 将后台的工作拿到前台来处理fg,fg %jobnumber,jobnumber是工作号码

9 让工作在后台下的状态变成运行中bg,bg %jobnumber,jobnumber是工作号码

10 管理后台的工作kill

kill -signal %jobnumber

-1,重新读取一次参数的配置文件

-2,代表由键盘输入Ctrl+c同样的操作

-9,立刻强制删除一个工作

-15,以正常的程序终止一个工作,并将该工作强制删除

11 kill后面接的数字默认会是PID,如果想要管理bash的工作控制,就得要加上%数字了

12 脱机管理问题

1 我们在工作管理中所提到的“后台”指的是在终端机模式下可以避免Ctrl+c中断的一 个情境,并不是放到系统的后台中

2 我们可以使用nohup命令实现真正的放到系统后台来运行

nohup 命令与参数       -->在终端机的前台工作

nohup 命令与参数  &  -->在系统的后台工作

3 nohup并不支持bash内置的命令,因此你的命令必须要是外部命令才行

4 如果我们想要让在后台的工作在你注销后还能够继续执行,可以使用nohup命令

时间: 2024-12-19 15:01:10

Linux基本配置和管理 8 程序管理与SELinux初探的相关文章

linux下配置ExtMail邮件使用及管理平台

一.配置ExtMail邮件使用及管理平台 1.部署ExtMail邮件使用界面: 1>.解包:[root@mail ~]# tar zxvf Unix-Syslog-1.1.tar.gz [root@mail ~]# tar zxvf DBI-1.607.tar.gz [root@mail ~]# tar zxvf DBD-mysql-4.011.tar.gz 安装Unix-Syslog包: [root@mail ~]# cd Unix-Syslog-1.1 [root@mail Unix-Sys

MintMenu一个Linux Mint的应用程序管理菜单

MintMenu是Linux http://www.aliyun.com/zixun/aggregation/16786.html">Mint的应用程序管理菜单,最新版本兼容了Ubuntu 11.04的Classic环境. 你可以通过添加它的PPA来进行安装: sudo add-apt-repository ppa:webupd8team/mintmenu sudo apt-get update sudo apt-get install mintmenu 安装后,右键Gnome面板,然后找

Fedora linux中管理xinetd程序

许多linux网络应用程序并不依靠它们自己向特定tcp端口提供访问限制或绑定:取而代之的是它们经常将大量的这种任务交给一个专门为这种目的而生的程序套件来负责:这个套件就是xinetd. Fedora linux默然下已安装xinetd并将/etc/xinetd.conf作为它的主配置文件.幸运的是你不必经常编辑此文件,这样xinetd每天的工作就是启动和停止xinetd管理的程序. 控制 xinetd 启动和停止xinetd守护进程由/etc/init.d目录下的脚本控制.在启动时的行为由chk

Linux进程和线程的基础与管理

  一.进程的基本概念 程序是为了完成某种任务而设计的软件,比如vi是程序.什么是进程呢? 进程就是运行中的程序.一个运行着程序,可能有多个进程.比如Web服务器是Apache服务器,当管理员启动服务后,可能会有好多人来访问,也就是说许多用户同时请求httpd,Apache服务器将会创建多个httpd进程来对其进行服务. 首先我们看看进程的定义.进程是一个具有独立功能的程序关于某个数据集合的一次可以并发执行的运行活动,是处于活动状态的计算机程序.进程作为构成系统的基本细胞,不仅是系统内部独立运行

Windows搭建ngrok服务器、Linux搭建ngrok服务器、支持用户管理

                           Windows搭建ngrok服务器.Linux搭建ngrok服务器.支持用户管理 阿里云双11领代金券啦 https://m.aliyun.com/act/activity2017h5?userCode=vc31fdqr&utm_source=vc31fdqr           微信公众号.支付宝支付等开发要求有公网(外网)服务器.每次调试时,上传代码到服务器很不方便.ngrok很好的解决了这一问题.网上的文章大多是讲实通过阿里怎么在Lin

解析Linux内核的基本的模块管理与时间管理操作---超时处理【转】

转自:http://www.jb51.net/article/79960.htm 这篇文章主要介绍了Linux内核的基本的模块管理与时间管理操作,包括模块加载卸载函数的使用和定时器的用法等知识,需要的朋友可以参考下   内核模块管理Linux设备驱动会以内核模块的形式出现,因此学会编写Linux内核模块编程是学习linux设备驱动的先决条件. Linux内核的整体结构非常庞大,其包含的组件非常多.我们把需要的功能都编译到linux内核,以模块方式扩展内核功能. 先来看下最简单的内核模块 ? 1

云计算应用程序管理的任务清单

把应用程序迁往云计算并不是最后的大功告成.有时候会发生一些迫使你不得不重新设计应用程序的突发事件,合规性需求可能会带来发展障碍,而如果你的云计算供应商不支持诸如组播的低层次网络服务,那么就可能带来带宽问题. 在你评估哪一个应用程序可以在公共云中运行之后,还有其他需要考虑的因素,如配置.数据迁移和监控等.当把一个应用程序迁往云计算时,有哪些最常见的配置任务是需要你牢牢记住的?下面的清单列出了其中的若干关键点: • 服务目录可能包括了老版本的虚拟机(VM),这些虚拟机由于没有升级打补丁而无法满足你的

ubunut如何管理开机程序

安装 sysv-rc-conf sudo apt-get install sysv-rc-conf 安装完成后输入命令,可以管理开机程序. sudo sysv-rc-conf 带 X 的都是开机启动,移动到要修改的位置,按空格可以取消/加上 X,修改完后按Esc,再按q 退出. 本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/OS/Linux/

RapidWebDev框架 - 快速开发产品管理示例程序

首先,我们按照以往的思路,先将上一章中的t_product进行一定的扩展,如下图: 开发产品管理示例程序-net快速开发框架">在这里,我增加了一张T_PRODUCT_CATEGORY表,用于存放产品分类信息,分类为树型结构,另外增加了一个T_WAREHOUSE表,用于存放仓库信信息,然后在T_PRODUCT增加了相应的外键和一些扩展字段.有了数据表,就开始分别对分类和仓库建了对应的管理代码(CRUD, UI等),然后在产品页面对其调用.为了节约篇幅,这里就不贴这些代码了,反正是一大堆.