进程,顾名思义,运行中的程序,进程作为操作系统的基本运作单位,每一个进程都有唯一的进程号ID,而我们管理进程就是通过这个ID。 ps 如何查看每个程序的运行状态,就使用ps命令。这里说下父进程和子进程的概念,子进程是通过父进程衍生出来的,没有父进程的进程我们称之为孤儿进程。 查看当前bash环境的进程情况: # ps -l F S UID PID PPID C PRI NI ADDR SZ WCH…
之前的一篇文章介绍了三个和用户、组相关的配置文件。今天来和大家说说怎么样管理linux下的用户和组。 账号管理 首先,我们来看看如何对账号进行管理。linux系统提供了一个命令,专门用来新增账号的——useradd。这个命令的参数较多,下面一一介绍。 基本用法:useradd 用户名 常用选项如下: -G:后面可以接多个组名,表示该用户的附加组 -M:不建立用户家目录 -d:指定家目录,默认家目录…
之前有遍文章介绍过了at这个命令,它用来设置只执行一次的定时任务。今天,和大家看看周期性执行的定时任务。工作中,周期性的定时任务会经常用到,比如系统文件的定时备份、数据库文件的定时备份、处理那些长时间没付款的订单等等。 用户设置周期性计划任务crontab 一般用户想要设置周期性计划任务的话,需要使用crontab这个命令。和at一样,crontab也有黑白名单,对于的配置文件分别是——/etc/…
定时任务是操作系统提供给我们的一个非常好的功能,我们经常用定时任务来处理一些事情,比如每天定时备份网站数据、每个月执行下数据统计程序、监控服务器的运行情况(发生错误时给管理员发消息通知)等等,这些都需要定时任务来完成。 linux下的定时任务分为两大类:只执行一次的定时任务,周期性执行的定时任务。今天,我们一起来看看只执行一次的定时任务,关于周期性执行的定时任务,将会在接下来的一篇文章中表述。 a…
接触过linux的都知道,linux下所有文件都有对应的用户和群组。用户和群组是linux系统中非常重要的一个概念。今天,我们一起来看看linux下的用户和群组。 用户ID查看 首先,linux系统会为每个用户都分配一个用户ID以及组ID,linux是以这个ID号为唯一标识符。那么,如何查看用户的ID号呢?非常简单:使用id命令即可。直接输入id表示查看当前用户的,后接用户名则表示查看该用户的ID…
经常在部署一个网站的时候,已将代码上传了,数据库也导入了,配置文件也改动了。但输入域名一看,还是报错了,原因很可能就是因为文件权限导致的。今天一起来看看linux下文件权限 用户、组 linux哲学一切皆文件,所有文件都会有自己的所有者、所属组。另外,任何用户肯定必须属于一个组。除开文件的所有者和所在组的用户外,系统的其它用户都是文件的其它人。如何查看linux下的用户,可以通过查看/etc/pa…
一般我们都会建议不要直接使用root账号登陆服务器,建议使用普通账号来登陆,等到必须使用root用户来操作时,才进行身份切换。下面,就来讲讲两个身份切换的命令su与sudo。 su su命令用于从当前用户切换到新的用户,切换到新用户身份时,需要输入切换用户的密码。 一般用法:su – 用户名 -或-l:改变身份时,也同时变更工作目录,以及HOME,SHELL,USER,logname。…
去年自己参与的一个项目中,有这样的一个需求:在多个目录下都有php脚本,需要去执行这行目录下的所有php脚本。 拿个这个需求,我的考虑是,将目录作为参数传递给shell脚本而不是写死在程序中。这里需要补充个知识点:shell脚本程序的预定义变量 /path/to/scriptname opt1 opt2 opt3 opt4 $0 $1 $2 $3 $4 $0表示脚本文件名,$1表示第一个参数,依次…
公司之前购买过一个源码,写这个源码的工程师当时没有考虑全面,设计数据库表结构有点问题,当公司的数据达到几十万级别的时候,该网站基本就跑不动了。原因是查询的时候没有使用索引,造成了大量的数据库慢查询,服务器同时存在许多php-fpm进程运行。几乎耗尽了服务器cpu和内存。 当定位到问题后,重新设计了表结构,给对应的几个字段加上了索引。加上索引之后,还是偶尔会出现cpu、内存快耗尽的情况。对于这种情况…
最近客户的网站出现卡慢现象,通过检查,出问题是原因是因为带宽吃紧,所以让客户将服务器带宽从原本的2M增加到4M的带宽,网站速度一下就提升了。那么如何监控网卡流量情况,linux有许多命令可以查看。比如iftop,sar等等。 这里,我想写一个监控网卡流量情况的脚本。统计每一分钟的网卡流量情况,输入到指定文件中。可以使用sar -n DEV 1 59查看一分钟内网卡平均流量。 此脚本的核心是获取1分…