unix命令

计算机与操作系统

旧城冷巷雨未停 提交于 2020-01-13 04:05:50
概念 如图1-1给出了一个逻辑上的简化视图,图的底部是硬件,硬件包括芯片、电路板、磁盘、键盘、显示器以及类似的设备,在硬件的顶部是软件。 多数计算机有两种运行模式:内核态和用户态。软件中最基础也是最核心的部分是操作系统,它运行在内核态,在这个模式中,操作系统具有对所有硬件的安全访问权,可以执行机器能够运行的任 何指令;软件的其余部分运行在用户态下,只使用机器指令中的一个子集;用户接口程序如GUI处于用户态程序中最低层次,允许用户使用或运行其他程序,诸如web浏览器等。 如图1-1所示,操作系统运行在裸机之上,为所有软件提供基础的运行环境。 操作系统与普通软件区别 1、用户不喜欢某个普通软件,如XX阅读器,他可以换或者自己写一个;操作系统是很难编写的,操作系统源代码有500万行甚至更高数量级的。 2、操作系统更加大型、复杂、长寿;普通软件更加小型、简单、寿命周期短。 操作系统定义 操作系统定义:是一种运行在内核态的软件,是一组控制和管理计算机软硬件资源,同时为用户提供使用计算机应用程序的集合。 操作系统的两大基本职能:面向机器管理计算机;面向用户使用计算机。 主要两大作用:管理和使用计算机 主要特征:并发性;共享性;虚拟性和不确定性 操作系统的主要功能有:进程管理;存储管理;设备管理;文件管理,用户接口等等。 计算机与操作系统的发展史 第一台真正纯机械的数字计算机

Linux 交换空间管理和技巧

感情迁移 提交于 2020-01-11 20:50:23
UNIX 如何使用交换空间 所有 UNIX 操作系统都支持某种虚拟内存 (VM) 系统。 使用 VM 系统,您有两个主要区域来存储有关活动应用程序及其使用的数据的信息——物理随机访问存储器 (RAM) 和硬盘驱动器上分配的空间。 在具有 VM 的计算机中,可加载到内存中的应用程序和数据量可以大于物理 RAM,因为没有活动地使用的应用程序和信息被交换 到了磁盘上(交换空间 这个术语由此得名)。 VM 系统的优点在于,物理 RAM 得到了更有效的利用——这是因为它仅包含正在执行的应用程序和正在使用的数据。由于 RAM 比硬盘空间快,您从活动地加载的应用程序中获得了所需的性能,同时还得益于能够运行比通常所支持的更多的应用程序。 其结果是您获得了大得多的可寻址内存空间(在 32 为系统上为 4GB,在 64 位系统上则更大),从而使得应用程序开发更加容易,同时仍然提供高性能。 设置交换空间值 您在计算机上配置的交换空间量主要取决于应用程序和操作系统。如果交换空间太小,则可能无法运行您希望运行的所有应用程序,而如果交换空间太大,则可能在浪费那些从未使用的磁盘空间。您可能还会间接地使得系统过载,因为与太小的交换空间相比,太大的交换空间会导致糟糕的性能,这是由于与系统执行实际处理所花的时间相比,它在换入和换出页面上所花的时间更多。 不同的 UNIX 变体以不同的方式使用它们的交换空间

守护进程 ppid 1 https://unix.stackexchange.com/questions/240646/why-we-use-setsid-while-daemonizing-a-process nohup 修改ppid 为1

此生再无相见时 提交于 2020-01-11 18:38:04
守护进程 ppid 1 https://unix.stackexchange.com/questions/240646/why-we-use-setsid-while-daemonizing-a-process nohup 修改ppid 为1 https://pubs.opengroup.org/onlinepubs/7908799/xsh/setsid.html https://github.com/karelzak/util-linux/blob/master/sys-utils/setsid.c https://unix.stackexchange.com/questions/316186/how-does-nohup-work The act of using nohup simply changes the PPID of the spawned process to 1 (init) so that when the shell exits, it is no longer a child process of that shell and so therefor doesn't receive a HUP. EDIT: Should think more before I post sometimes. Leaving it here to remind me of

UNIX基础知识

ⅰ亾dé卋堺 提交于 2020-01-08 00:37:10
1 UNIX基础知识 1.1 UNIX体系结构 操作系统可定义为一种软件,它控制计算机硬件资源,提供程序运行环境,通常将这种软件称为内核(kernel)。UNIX操作系统的体系结构如下图所示,其中内核的接口被称为系统调用(system call图中阴影部分),公共函数库构建在系统调用接口之上,应用程序可调用公共函数库,也可以直接使用系统调用。shell是一种特殊的应用程序,为运行其他应用程序提供一个接口。 1.2 登录 (1) 登录名 用户在登录UNIX时,先键入登录名,然后键入口令。系统在其口令接口(Redhat 2.6.32-431.el6.x86_64在/etc/passwd下)中查看登录名。如下: 口令文件中的登录项是由7个以冒号分隔的字段组成,依次是:登录名、加密口令、数字用户ID、数字组ID、字段注释、起始目录以及shell程序。 (2)shell 用户登录后,系统通常先显示一些系统信息,然后用户可通过shell程序键入命令。shell是一个命令行解释器,可读取用户输入,然后执行命令。shell的用户输入通常来自于终端(交互式shell),有时则来自于文件(称为shell脚本)。UNIX系统中shell有多种,用得比较多的是Bash shell。 1.3 文件和目录 (1)文件系统 UNIX文件系统是目录和文件的一种层次结构,所有东西的起点是称为根(root)目录

Linux文件系统

你说的曾经没有我的故事 提交于 2020-01-07 20:42:03
Linux的文件目录等 目录 目录是一组相关文件的集合 一个目录下面除了可以存放文件之外还可以存放其他目录,即可包含子目录 在确定文件、目录位置时,DOS和Unix/Linux都采用“路径名+文件名”的方式。路径反映的是目录与目录之间的关系 路径 Unix/Linux路径由到达定位文件的目录组成。在Unix/Linux系统中组成路径的目录分割符为斜杠“/”,而DOS则用反斜杠“”来分割各个目录 绝对路径 绝对路径是从目录树的树根“/”目录开始往下直至到达文件所经过的所有节点目录 下级目录接在上级目录后面用“/”隔开 注意:绝对路径都是从“/”开始的,所以第一个字符一定是“/” 相对路径 相对路径是指目标目录相对于当前目录的位置 如果不在当前目录下,则需要使用两个特殊目录“.”和“”了。目录“.”指向当前目录,而目录“..”指向上级目录 Linux目录结构 在 windows 平台下,打开“计算机”,我们看到的是一个个的驱动器盘符,每个驱动器都有自己的根目录结构,这样形成了多个树并列的情形. 如图所示: 在 Linux 下,我们是看不到这些驱动器盘符,我们看到的是文件夹(目录): 在早期的 UNIX 系统中,各个厂家各自定义了自己的 UNIX 系统文件目录,比较混乱。Linux 面世不久后,对文件目录进行了标准化,于1994年对根文件目录做了统一的规范,推出 FHS (

python supervisor使用

橙三吉。 提交于 2020-01-07 16:44:51
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> Supervisor 是基于 Python 的进程管理工具,只能运行在 Unix-Like 的系统上,也就是无法运行在 Windows 上。Supervisor 官方版目前只能运行在 Python 2.4 以上版本,但是还无法运行在 Python 3 上,不过已经有一个 Python 3 的移植版 supervisor-py3k 。 什么情况下我们需要进程管理呢?就是执行一些需要以守护进程方式执行的程序,比如一个后台任务,我最常用的是用来启动和管理基于 Tornado 写的 Web 程序。 除此之外,Supervisor 还能很友好的管理程序在命令行上输出的日志,可以将日志重定向到自定义的日志文件中,还能按文件大小对日志进行分割。 Supervisor 有两个主要的组成部分: supervisord ,运行 Supervisor 时会启动一个进程 supervisord,它负责启动所管理的进程,并将所管理的进程作为自己的子进程来启动,而且可以在所管理的进程出现崩溃时自动重启。 supervisorctl ,是命令行管理工具,可以用来执行 stop、start、restart 等命令,来对这些子进程进行管理。 安装 sudo pip install supervisor 创建配置文件 echo

操作系统发展史

假如想象 提交于 2020-01-05 07:39:33
什么是操作系统? 操作系统(Operating System, OS)是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境的程序集合。 计算机操作系统是随着计算机研究和应用的发展逐步形成并发展起来的,它是计算机系统中最基本的系统软件。 我们通过操作系统来使用计算机。 知道了系统是用来做什么的,我们来了解一下系统的发展历史。 (操作系统工作方式的演变——20世纪五六十年代) 手工操作(无操作系统) 人们先把程序纸带(或卡片)装上计算机,然后启动输入机把程序和送入计算机,接着通过控制台开关启动程序运行。计算完毕,打印机输出计算结果,用户卸下并取走纸带(或卡片)。第二个用户上机,重复同样的步骤。 特点: 用户独占机器,CPU等待手工操作,CPU利用不充分 由于手工操作的满速度和计算机的高速度之间形成了尖锐矛盾,手工操作的方式是计算机的资源利用率极低,唯一的解决办法只有摆脱手工操作,实现作业的自动过渡。 批处理系统 批处理系统: 加载计算机上的一个监督软件,在监督程序的控制下,计算机能够自动的、成批的处理一个或多个用户的作业(作业包括程序、数据、命令)。 首先出现的是联机批处理系统,即作业的输入输出由CPU来处理。 联机批处理系统 : 在主机和输入机之间增加两个存储设备——磁带机,在监督程序的自动控制下

Linux文件系统

萝らか妹 提交于 2020-01-04 00:13:17
Linux的文件目录等 目录 目录是一组相关文件的集合 一个目录下面除了可以存放文件之外还可以存放其他目录,即可包含子目录 在确定文件、目录位置时,DOS和Unix/Linux都采用“路径名+文件名”的方式。路径反映的是目录与目录之间的关系 路径 Unix/Linux路径由到达定位文件的目录组成。在Unix/Linux系统中组成路径的目录分割符为斜杠“/”,而DOS则用反斜杠“”来分割各个目录 绝对路径 绝对路径是从目录树的树根“/”目录开始往下直至到达文件所经过的所有节点目录 下级目录接在上级目录后面用“/”隔开 注意:绝对路径都是从“/”开始的,所以第一个字符一定是“/” 相对路径 相对路径是指目标目录相对于当前目录的位置 如果不在当前目录下,则需要使用两个特殊目录“.”和“”了。目录“.”指向当前目录,而目录“..”指向上级目录 Linux目录结构 在 windows 平台下,打开“计算机”,我们看到的是一个个的驱动器盘符,每个驱动器都有自己的根目录结构,这样形成了多个树并列的情形. 如图所示: 在 Linux 下,我们是看不到这些驱动器盘符,我们看到的是文件夹(目录): 在早期的 UNIX 系统中,各个厂家各自定义了自己的 UNIX 系统文件目录,比较混乱。Linux 面世不久后,对文件目录进行了标准化,于1994年对根文件目录做了统一的规范,推出 FHS (

su安装

和自甴很熟 提交于 2020-01-03 08:24:20
SU 的安装( Ubuntu 下) SU 是科罗拉多州矿业学院开发的一个免费地震处理软件。国内外很多科研人员及学生都借助于他来进行创作,和其他天价的处理软件相比, SU 对学生就显得尤为珍贵了,更何况他开放源代码,可以方便地在其基础上进行再创作。 但是对于不是很熟悉 LINUX 的人来说,能把它安装上也需要花不少功夫,下面就把我的体会写出来,以供大家参考。 注:我把从网上下载的su的安装包cwp_su_all_42.系列放在我建造的目录/home/guosj/seismic_unix下 所以 下面的CWPROOT路径都是/home/guosj/seismic_unix 1. 前期准备 1.1 刚装上 ubuntu 后,首先需要将网络设置好,并选择合适的软件源。 sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup (备份当前的源列表,以便日後需要时恢复) sudo gedit /etc/apt/sources.list (修改 sources.list 文件中源的列表) sudo apt-get update 1.2 预装 7 个软件包,即在终端中输入如下命令:(下面的操作可能会引进一些过期的软件,如老版本的 gcc ,但不知道怎么避免这一问题) sudo apt-get install build-essential

UNIX 系统

青春壹個敷衍的年華 提交于 2020-01-01 14:26:06
1 UNIX操作系统 UNIX系统是一个交互式的分时操作系统 1974年《ACM通信》上发表了K. Thompson 和 D. Ritchie的论文“The UNIX Time-Sharing System”,UNIX系统公布于世。 作者:美国BELL实验室 Ken Thompson(K.汤普逊)Dennis Ritchie (D.里奇)(C语言的创始人) 1.1 UNIX操作系统的发展 1965年:麻省理工大学、BELL实验室、通用电器公司组成MAC课题组联合研制Multics操作系统。 Multics操作系统设计目标是要向大的用户团体提供对计算机的同时访问,支持强大的计算能力与数据存储,以及允许用户带需要的时候容易共享他们的数据。 1969年Multics在GE645计算机上运行了,但它既没有能提供预定的综合计算服务,而且连它自己究竟什么时候算达到开发的目标。 BELL实验室退出了该课题组。 Multics操作系统开发失败的原因是当时操作系统设计的指导思想所导致的。 当时操作系统设计的指导思想是“满足所有用户的所有要求”。 UNIX系统的作者认为:操作系统的设计不应也不可能做到“满足所有用户的所有要求”,而应为广大的计算机用户提供一种良好的程序设计环境。 1969年K. Thompson和 D. Ritchie 为了改善他们的程序设计环境,设计了一个纸面的文件系统设计