ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

第七篇:linux之基本权限、进程管理、系统服务

2021-08-07 14:35:51  阅读:196  来源: 互联网

标签:service nginx screen mynginx 第七篇 linux 进程 权限


第七篇:linux之基本权限、进程管理、系统服务

目录

一、基本权限

1、什么是权限?

我们可以把它理解为操作系统对用户能够执行的功能所设立的限制,主要用来约束用户能对系统所做的操作,以及内容访问的范围,或者说,权限是指某个特定的用户具有特定的系统资源的使用权力。

2、为什么要有权限?

因为系统中不可能只存在一个root用户,一定会存在多个用户,为保护每个登录用户的隐私和工作环境,所以便有了权限。

3、权限与用户之间的关系?

在linux系统中,针对文件定义了三种身份,分别是属主(owner)、属组(group)、其他人(others),每一种身份又对应三种权限,分别是可读(readable)、可写(writable)、可执行(excutable)。

rw- r-- r--
属主权限位(文件所有者) 属组权限位 其他人权限位
6 4 4

4、权限对应的数字含义

字母 含义 对应权限
r 读取权限 4
w 写入权限 2
x 执行权限 1
- 没有权限 0

5、使用chmod设定权限示例

"""我们可以根据数字的不同,来对文件或文件夹设置对应的权限"""
chmod 777 demo.py
-rwxrwxrwx. 1 root root   57 Aug  6 20:34 demo.py
chmod 754 demo.py  # 可以这么设置
# 删除其实是写的权限

二、进程管理

"""linux"""
ps -aux  【一般用的多】 [系统进程] /用户进程/
ps -ef
top  # 实时监控进程
kill -l  # 查看数字代表的含义【如: 9) SIGKILL】
kill -9 进程id号  # 清醒关闭进程
pkill -9 nginx  # 通过服务名称批量关闭nginx所有进程
killall nginx  # 同上

"""windows"""
tasklist  # 查看所有进程

"""screen的使用:管理进程"""
yum install screen -y  # 安装
1、创建一个窗口,就可以在窗口中执行耗时任务【相当于打开了一个bash】
screen -S myjobs
2、退出当前bash,但是耗时任务还在后台运行
ctrl+a+d
3、将bash中的后台耗时任务调到前台执行
screen -r myjobs
4、查看当前打开了多少个screen窗口
screen -list
5、可以使用exit退出screen(也就是bash)窗口
exit
状态 描述
USER 启动进程的用户
PID 进程运行的ID号
%CPU 进程占用CPU百分比
%MEM 进程占用的内存百分比
VSZ 进程占用虚拟内存大小(单位KB)
RSS 进程占用物理内存实际大小(单位KB)
TTY 进程是由那个终端启动的tty1、pts/0等?表示内核程序与终端无关(远程连接会通过tty打开一个bash: tty)
STAT 进程运行过程中的状态 man ps(/STATE)
START 进程的启动时间
TIME 进程占用cpu的总时间(0表示还没超过秒)
COMMAND 程序的运行指令,[中括号]属于内核态的进程,没有[]的是用户态进程
STAT基本状态 描述
R 进程运行
S 可中断睡眠
T 进程被暂停
D 不可中断睡眠
Z 僵尸进程
s 进程是控制进程,Ss进程的领导者、父进程
< 进程运行在高优先级上,S<优先级较高的进程
N 进程运行在低优先级上,SN优先级较低的进程
+ 当前进程运行在前台,R+表示该进程在前台运行(正在io操作,一旦停止,数据丢失)
I 进程是多线程的,SI表示进程是以线程方式运行
数字编号 信号含义 信号翻译
1 SIGHUP 通常用来重新加载配置件,重新读取一次参数的配置文件(类似reload)
9 SIGKILL 强制杀死进程【有状态的服务(如:mysql)强制停止,可能会导致下次无法正常启动】
15 SIGTERM 终止进程,默认kill使用该信息(比较平滑)

三、系统服务

"""centos6和centos7服务启动"""
service start network
systemctl start network

我们可以 cd /usr/lib/systemd/system/下,查看到相关的系统服务配置

"""如何制作系统服务?【以源码安装的nginx为例】"""
1、在/usr/lib/systemd/system/新建一个文件touch mynginx.service
2、在 vim mynginx.service 书写
[Unit]
Description=my nginx
After=network.target  #在哪个服务启动后启动
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecStop=/usr/local/nginx/sbin/nginx -s stop
ExecRestart=/usr/local/nginx/sbin/nginx -s restart
ExecReload=/usr/local/nginx/sbin/nginx -s reload
[Install]
WantedBy=multi-user.target
3、之后,就可以支持使用 systemctl start mynginx.service来启动mynginx服务【可以不加后缀.service】

"""查看服务状态"""
systemctl status mynginx.service
# disabled表示没有开机自启动
Loaded: loaded (/usr/lib/systemd/system/mynginx.service; disabled; vendor preset: disabled)
"""设置开机自启动""" 
systemctl enable mynginx.service
"""取消开机自启动"""
systemctl disable mynginx.service

标签:service,nginx,screen,mynginx,第七篇,linux,进程,权限
来源: https://www.cnblogs.com/yangyi215/p/15111832.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有