Linux 中 bash 和 sh 的区别

使用 docker-compose,有的容器是 docker-compose exec workspace bash 进入,有的容器是 docker-compose exec php-worker sh 进入,bash 和 sh 是什么?有什么区别?

sh 和 bash 都是 Linux Shell 命令行语言,其中 sh 遵循 POSIX 标准。什么是 POSIX 标准?

Stack Overflow 上一篇答案讲的很详细,英文的慢慢看:

https://stackoverflow.com/questions/5725296/difference-between-sh-and-bash

Linux 中执行命令 ; 和 && 的区别

在 Linux 中经常使用到一个命令,如 make && make install,这里也可以使用 make ; make install,那么在 Linux 中执行命令 ; 和 && 有何区别?

&& 表示第一个命令执行成功才能执行后面的命令;

; 表示无论第一个命令执行是否成功都执行后面的命令;

还有 ||,cmd a || cmd b,表示前者执行失败了,再执行后者;

PHP 进程用户建立 ssh 信任

在 Gitlab 上的代码仓库,如果是通过 ssh 方式拉取代码,需要在两台机器之间建立ssh信任,而通过 WEB 系统(基于 PHP)操作 git,也要建立 PHP 进程用户和 Gitlab 机器的 ssh 信任。简而言之,就是两台机器用户之间建立信任很简单,但是PHP进程用户也要建立 ssh 信任,这里面遇到一些问题。这涉及到 Linux 用户的概念和权限问题,其实还是对 Linux 不够了解。

继续阅读“PHP 进程用户建立 ssh 信任”

php-fpm服务挂掉

今天发了个链接,可能同时在线的人瞬间比较多,结果网站报503错误,回去打开php-fpm错误日志一看,php-fpm服务挂掉了,报如下错误:

继续阅读“php-fpm服务挂掉”