本文中大部分内容来自 IBM 开发者社区中的文章,并且会用【IBM】这样的符号标识。
- systemctl
arch 默认用的就是 systemd 那一套,执行
top
命令就可以看到,在系统的最底层只运行着两个进程(其实现在还不怎么明白进程和线程什么区别,就像在 arch 中,所有的上层应用都是 systemd 这个进程的线程,而当前用户启动的应用程序则都属于当前 sh(bash,dashi,zsh) 下的子线程;也像系统一样,大倒整个宇宙,地球,生物圈,小到计算机软件平台,某个应用软件。生么东西,归为了一类,互相联系,互相影响,似乎就可以谓之曰系统),按照每天处理一张以前的笔记的心态,今天轮到它了(systemctl)。平时用得最多的应该是用之管理服务的启动,重载,关闭,以及查询了吧,下面是一些基本的用法:(以下,service_name 代指服务的名称,其中 service 可是是具体的 demon(*.service)
,也可以是挂载点(*.mount)
,套接口(*.socket)
)systemctl start service_name
--> 开启服务systemctl stop service_name
--> 关闭服务systemctl restart service_name
--> 重启服务systemctl status service_name
--> 查看服务的运行状态systemctl enable service_name
--> 将服务设置为启动systemctl disable service_name
--> 将服务取消开机启动systemctl is-enabled( is-active, is-failed ) service_name
--> 查看服务是否启用(是否为激活/运行状态,是否出现错误)systemctl show service_name
--> 查看服务的配置详细信息systemctl list-units
--> 列出所有运行中单元systemctl list-unit-files
--> 列举所有(包括运行和未运行的)的单元systemctl --failed
--> 列举所有运行失败的单元systemctl mask( unmask ) service_name
--> 屏蔽(显示)服务systemctl kill service_name
--> 杀死服务systemctl show -p CPUShares service_name
--> 获取当前服务的 cpu 分配额systemctl set-property service_name CPUShares=2000
--> 将某个服务的 CPU 分配额设置成 2000 (一般默认是 1024)systemctl list-dependencies service_name
--> 查看某个服务的依赖性systemd-analyze critical-chain sevice_name
--> 查看某个服务的关键链(如果不知道这是什么最好的办法就是动手测试,并 google )systemd-cgls
--> 按照等级,列举出控制组systemd-cgtop
--> 按CPU、内存、输入和输出列出控制组systemctl rescue
--> 进入系统救援模式systemctl emergency
--> 进入系统紧急模式systemctl get-default
--> 列举出当前的运行等级systemctl isolate runlevel5.target
--> 启动运行等级(5,图形模式)(PS:以此类推)systemctl set-default runlevel(x:3,5...).target
--> 设置默认运行等级systemctl reboot
--> 重启systemctl halt
--> 停止systemctl suspend
--> 挂起systemctl hibernate
--> 休眠(PS:休眠和混合睡眠都要求系统拥有 swap 分区,而且大小与内存一样大)systemctl hybrid-sleep
--> 混合睡眠
涉及到的命令 df du /proc 目录介绍
- 被用到判断中的特殊参数
-e
判断文件是否存在-d
判断文件类型是否为目录类型-f
判断文件类型是否为普通类型-L
判断文件类型是否为链接类型-r
判断文件是否可读-w
判断文件是否可些-x
判断文件是否可执行-nt
判断前文件是否比后文件新-ot
判断前文件是否比后文件旧-z
判断是否为空串-n
判断是否为非空串=
判断前后比较对象是否一致!=
判断前后对象是否不一致-eq
判断前后数字是否相等-ne
判断前后数字是否不相等-lt
判断前数字是否小于后数字-le
判断前数字是否小于等于后数字-gt
判断前数字是否大于后数字-ge
判断前数字是否大于等于后数字
请等待更新...
- 应用层不活信号的两种方法:
通常 linux 在应用层捕捉信号有两种机制,第一种是利用 `signal` 函数注册,但是这种处理方式只会在第一次捕捉到该信号的时候响应一次,随后系统会恢复成默认的处理方式。如果想要一次注册之后永久生效就需要用到 `sigaction` 这个机制了。下面给出两种机制的使用方法:
// signal 使用方法 #include typedef void (*sighandler_t)(int); sighandler_t signal(int signum, sighandler_t handler);
// sigaction 使用方法 #include int sigaction(int signum, const struct sigaction *act, struct sigaction *oldact); struct sigaction { void (*sa_handler)(int); void (*sa_sigaction)(int, siginfo_t *, void *); sigset_t sa_mask; //额外屏蔽的信号 int sa_flags; void (*sa_restorer)(void); };
第一个参考文档中有更加详细的例子。
- Linux 系统信号机制处理流程:
a.用户为某信号注册一个信号处理函数sighandler。
b.当前正在执行主程序,这时候因为中断、异常或系统调用进入内核态。
c.在处理完异常要返回用户态的主程序之前,检查到有信号未处理,并发现该信号需要按照用户自定义的函数来处理。
d.内核决定返回用户态执行sighandler函数,而不是恢复main函数的上下文继续执行!(sighandler和main函数使用的是不同的堆栈空间,它们之间不存在调用和被调用的关系,是两个独立的控制流程)
e.sighandler函数返回后,执行特殊的系统调用sigreturn从用户态回到内核态。
f.检查是否还有其它信号需要递达,如果没有 则返回用户态并恢复主程序的上下文信息继续执行。
- apache2
- 监听端口
如需要修改 apache 的监听端口,可在
/etc/apache2/ports.conf
中配置,语法为Listen port_num (such as: Listen 8080)
。 - IfDefine & IfModule
Apache 允许使用 IfDefine 以及 IfModule 指令来快速而且更容易的更改配置。IfDefine 标签允许在命令行中使用某个标志来指定 IfDefine 内的配置选项否出于启用状态, IfModuole 标签具有类似的效果,其作用是先检查当前模块是否已经加载,若已经加载,则标签中的配置有效,若没有加载,则标签中的配置无效。
- 监听端口
- ngnix
- 反向代理
个人理解反向代理及将接收到的请求分发给在其他可访问到的服务器,方便实现服务器的负载均衡,也可减少主服务器的压力。详细概念在这里就不再赘述了,请参考参考文档。这里只是记录一下自己在搭建反向代理中需要主要的一些问题。1. 以集群域名创建的 upstream 对象应该放在 html 对象下; 2. 在 server 对象中设置目录反向代理的 proxy_pass 成员时,一个目录只能设置一个 proxy_pass;3. proxy_pass 的参数为 upstream 对象的名字;4. 如果你为 /abc/ 目录指定了反向代理服务器 www.test.com ,那么在 www.test.com 这个服务器集群的跟目录下一定要有 abc 这个文件夹。5. /etc/nginx/site-avaliable 目录下只是可以用来配置的服务,启动 nginx 时真正引用的是 /etc/nginx/site-enabled 目录下的配置文件(apache2 也一样)。
- 反向代理
待更新:du df 文件系统目录说明 信号处理 vim 编辑器使用
请等待更新...
- 【IBM】学习 Linux,101 课程汇总
- 【IBM】学习 Linux,302 课程汇总
- linux professional institution --> certification
- 学习 Linux,101: LPIC-1 学习路线图
- Hard disk layout
- asdasasdasdasdasdasdasasdasdasdasd
- 学习 Linux, 302(混合环境): LPI-302 路线图
- 使用 D-BUS 连接桌面应用程序
- 使用正则表达式搜索文本文件
- 文本流和过滤器
- asdasasdasdasdasdasdasasdasdasdasd
© 著作权归作者所有
相关热门文章
发表评论