#lsof -p 2072  #PID
php-fpm 2072 root  DEL       REG                0,5               22380 /dev/zero
php-fpm 2072 root    0u      CHR                1,3       0t0      7732 /dev/null
php-fpm 2072 root    1u      CHR                1,3       0t0      7732 /dev/null

查看:



ps -o 'pid,ppid,pgid,sid,comm' -C nohup
  PID  PPID  PGID   SID COMMAND
7478 32279  7478 32251 nohup

cat nohup.c

make nohup
cc     nohup.c   -o nohup


#ps -C nohup s
  UID   PID          PENDING          BLOCKED          IGNORED           CAUGHT STAT TTY        TIME COMMAND
    0  2072 0000000000000000 0000000000000000 00000000000000001 0000000180014a06 Ss   ?          0:07 php-fpm: master process (

屏蔽了SIGHUP,终端关闭的时候,会忽略终端发送的SIGHUP信号,继续运行服务。

#kill -l
1) SIGHUP       2) SIGINT       3) SIGQUIT      4) SIGILL       5) SIGTRAP
6) SIGABRT      7) SIGBUS       8) SIGFPE       9) SIGKILL     10) SIGUSR1
11) SIGSEGV     12) SIGUSR2     13) SIGPIPE     14) SIGALRM     15) SIGTERM
16) SIGSTKFLT   17) SIGCHLD     18) SIGCONT     19) SIGSTOP     20) SIGTSTP
21) SIGTTIN     22) SIGTTOU     23) SIGURG      24) SIGXCPU     25) SIGXFSZ
26) SIGVTALRM   27) SIGPROF     28) SIGWINCH    29) SIGIO       30) SIGPWR
31) SIGSYS      34) SIGRTMIN    35) SIGRTMIN+1  36) SIGRTMIN+2  37) SIGRTMIN+3
38) SIGRTMIN+4  39) SIGRTMIN+5  40) SIGRTMIN+6  41) SIGRTMIN+7  42) SIGRTMIN+8
43) SIGRTMIN+9  44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13
48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12
53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9  56) SIGRTMAX-8  57) SIGRTMAX-7
58) SIGRTMAX-6  59) SIGRTMAX-5  60) SIGRTMAX-4  61) SIGRTMAX-3  62) SIGRTMAX-2
63) SIGRTMAX-1  64) SIGRTMAX

IGNORED           0000000000001000

来自:https://mp.weixin.qq.com/s/hMXwg9yUSN8rC12HeVp2RA
看了网上有同学回复,说是SecureCRT 8.7beat版本是可以使用rz 的,我就去官网下载试了试。发现确实好用。只不过在网上找了好久的破解方式都没有发现,^_^,看谁那有破解方式,来分享一下。

8.7beat版本下载:

链接: https://pan.baidu.com/s/1U5InEgq_WZLueybMqH3GmA 提取码: umt6 复制这段内容后打开百度网盘手机App,操作更方便哦

实践发现,secureCRT 8.7beta的确是可用的,来自:https://blog.dvapi.com/?post=109
https://discussionschinese.apple.com/thread/250753320
MacBook Pro风扇狂转可能是有恶意插件作祟了,软件Macs fan control mac版本下载地址:
https://www.crystalidea.com/macs-fan-control/download



来自:http://blog.hudongdong.com/skill/907.html
解决方法有三种:

1、当CPU数超出终端大小不多时,可以通过ALT + Enter 最大化当前窗口(SecureCRT客户端时);

2、mpstat -P ALL

3、sar -P ALL

方法1一般不会有效果。这里主要说要方法2和方法3。
接下来我要说的是用top命令,按数字1键,查看CPU各个核心使用情况,提示:Sorry, terminal is not big enough。
在此之前的服务器2颗6核CPU,开启超线程24。当我们遇到这个情况的时候,用Alt +Enter最大化终端窗口就Ok了[SecureCRT软件]。
现在的服务器2颗8核,超线程32核,此时,再用Alt +Enter最大化终端窗口[SecureCRT软件],Sorry, terminal is not big enough
没办法了吗?网上说用putty,上次我匆匆试了一下,没有搞定,就另想它法了,linux系统的开源人,为我提供了许多好用的命令,

mpstat命令,结合一些参数,如下:

mpstat命令详解:
http://www.bdkyr.com/view.php?id=73

mpstat -P ALL
#执行结果如图


有人问了,可以看,但是不实时呀。别急,还有呢,再加点参数:

mpstat -P ALL 2 1000

这样就可以搞定了,不信你找一台2路8核的服务器,试试,很有效果的,shell搞的话,可以自己弄个更强大,更人性化的实时查看工具。

来自:http://www.361way.com/terminal-big-enough/4514.html
git add rsynctimer
fatal: playbook/bc.qr.*.cn/files/rsynctimer 中的 CRLF 将被 LF 替换

注意顺序,别搞反了:

上面这样修改后,git diff *.yml也认为是binary,无法git diff,还得这样,
让.out是可执行程序,因为gcc hello.c -o hello.out
于是 .out是可执行的二进制文件得了,作如下修改,正确如下:




it add playbook/bc.qr.*.cn/files/rsynctimer/rsynctimer.out
fatal: playbook/bc.qr.*.cn/files/rsynctimer/rsynctimer.out 中的 CRLF 将被 LF 替换

git diff  playbook/bc.qr.*.cn/bc_web.yml   #正常git diff

以上实践来自:http://www.it1352.com/798609.html
更多配置上的原理:https://www.jianshu.com/p/2a46dfd3705a
使用安装包安装的phpstrom无法正常启动,原因是原默认wwwroot是 /data/www,现在系统禁用了对根目录的使用所以只能将dbpath指向到自定义目录,如
将原来的目录迁移到/var/data,在/data下面做软链接即可,原来的升级备份位置在哪儿?
系统升级完成后桌面会出现一个目录 迁移的项目 将这个目录下的/data/db 下的文件拷贝到新的dbpath就可以了。
原文链接:https://blog.csdn.net/StillCity/article/details/102562281


二)如何做软链接?ln -sf /var/data /data
在这次mac升级系统后,我发现我的/data目录消失了,于是我执行了命令:

mkdir /data
结果发现居然提示我Read-Only filesystem,即使加上了sudo也没用

在我查阅相关资料后找到了解决办法(关闭SIP,然后输入sudo mount -uw /,创建文件夹添加权限,最后启用SIP),具体步骤如下:

1、重启mac,按住Command+R,等到系统进入安全模式。

2、选择一个账户,然后点击屏幕上方的工具栏找到命令行工具。

3、执行,命令 csrutil disable

4、重启电脑后,不要进入安全模式,执行命令sudo mount -uw /

5、执行命令sudo mkdir /data

6、执行命令sudo chmod 777 /data

7、重启电脑,进入安全模式,执行命令csrutil enable (开启SIP)
原文链接:https://blog.csdn.net/weiyoushi4001/article/details/102928575

大体运行命令:



最开始编辑器是用的sublime的,后来因为phpstome的强大功能换用的phpstome,但带的主题实在看不惯,就有了这片文章。

闲话少说,开始正文。

一、先要下载Monokai-Sublime主题文件,如下网盘链接。
https://pan.baidu.com/s/1jPDYISHdQmwSkdoRmOSbAQ

PhpStorm ,找到 file,setting,Color Scheme(快捷键 Ctrl+Alt+S)
Import Scheme。。。导入:Monokai_Sublime.icls,选:Monokai-Sublime Copy。



MacOS系统上,JetBrains诸如PhpStorm、IntelliJ IDEA、PyCharm等各种IDE在编辑器上默认不显示横向滚动条。当设置的字体比较大,需要向右滑动时很可能因为没有横向滚动条而大为恼火。

解决方法有两个:

滚动条受系统全局设置影响,因此我们可以设置总是显示滚动条。操作方法如下:打开系统设置-》通用,“显示滚动条”选项选“始终”;
滚动鼠标滑轮时按shift,此时是滚动横向滚动条。
注意::IDE中的"wrap on typing"指的是超过多少个字符自动换行,与横向滚动条不冲突。例如设置大号字体,60个字符横向显示不了,故而需要滚动条;但此时一行未超过80(或120)个字符,不会自动换行。
背景:我一看这文章就知道是架构平台部的兄弟的操作性更大一些,谁投的稿不清楚,但这个操作能感受到浓浓的鹅厂气息,这些年过去了,系统底层依然没有大变化,估计这些操作还能再用上十年,特梳理总结,以便“后来人”,也包括自己备忘。女程序员少,会写VIM、GDB、Linux命令、正则表达式、Makefile的女程序员妹子简直就是至宝啊,尽管ls –lhS ,中间横写得不对,但这不是重点,正是留言的好机会,请年轻程序员男好生把握,哥也年轻过,别后悔莫及,机会就让给你们了,哈哈。

1)磁盘满了查看/一级目录的报警:
du -h --max-depth=1


2)将当前目录下各文件以从大到小的顺序进行展示:
ls -lhS


3)查看日志最近200行:
history | tail -n 200


4)top cpu内存排序:
top 命令的基本视图中,按数字 1 监控每个逻辑 CPU 的使用情况;按 P 实现按 CPU 降序排列,按 M 按内存降序排列。

5)编写的二进制代码推到后台监听端口9999:
nohup xxx 9999

6)查看程序开启的端口:
netstat -anp | grep -w 9999

7)tcpdump抓自己开发的服务器server并调试,学后面的正则匹配:
tcpdump -s 0 -A 'tcp dst port 80 and (tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x504f5354)'

8)对日志某些列判断性打印:
awk '-F,' '{if ($666==110) print $999}' xxx.log.20191212

9)动态链接没有加载文件:
lsof xxx.so  #进程加载的一个外部 so 动态库对应功能并没有生效
GDB 调试时发现,该 so 并没有导出函数 fffff 。
nm -D xxx.so | grep fffff

10)停掉了测试进程 xxx:
ps aux | grep -w xxx| grep -v grep | awk '{print $2}' | xargs kill -9

11)并没有导出函数 fffff ,证实了该 so 确实没有导出该函数。
nm -D xxx.so | grep fffff

来源自vimer、女程序员说:https://mp.weixin.qq.com/s/WsWFcw-xoRTFOcz1TQqDBw
yum localinstall influxdb-1.7.9.x86_64.rpm -y
vim /etc/influxdb/influxdb.conf

systemctl start influxdb
netstat -nlpt
ps -ef | grep influxdb
netstat -nlpt

influx -precision rfc3339 # connect to http://localhost:8086: Get http://localhost:8086/ping: dial tcp 127.0.0.1:8086: connect
influx -precision rfc3339
Connected to http://localhost:8086 version 1.7.9
InfluxDB shell version: 1.7.9

显示数据库
show databases

新建数据库
create database jidan

删除数据库
drop database jidan

使用指定数据库
use jidan

2、InfluxDB数据表操作
在InfluxDB当中,并没有表(table)这个概念,取而代之的是MEASUREMENTS,MEASUREMENTS的功能与传统数据库中的表一致,因此我们也可以将MEASUREMENTS称为InfluxDB中的表。

显示所有表
SHOW MEASUREMENTS
新建表
InfluxDB中没有显式的新建表的语句,只能通过insert数据的方式来建立新表。

insert jidanwendu,hostname=jidanindex value=442221834240i
其中 jidanwendu 就是表名,hostname是索引(tag),value=xx是记录值(field),记录值可以有多个,系统自带追加时间戳
> use jidan
Using database jidan
> insert jidanwendu,hostname=jidanindex value=442221834240i
>多个记录值:https://www.cnblogs.com/bonelee/p/6811728.html

> use jidan
Using database jidan
> INSERT jidanwendu,host=serverA,region=us_west value=0.64

或者添加数据时,自己写入时间戳
insert jidanwendu,hostname=jidanindex value=442221834240i 1435362189575692182


删除表
drop measurement jidanwendu

3、数据保存策略(Retention Policies)

influxDB是没有提供直接删除数据记录的方法,但是提供数据保存策略,主要用于指定数据保留时间,超过指定时间,就删除这部分数据。

查看当前数据库Retention Policies
show retention policies on "db_name"

创建新的Retention Policies
create retention policy "rp_name" on "jidan" duration 3w replication 1 default
rp_name:策略名;
db_name:具体的数据库名;
3w:保存3周,3周之前的数据将被删除,influxdb具有各种事件参数,比如:h(小时),d(天),w(星期);
replication 1:副本个数,一般为1就可以了;
default:设置为默认策略
修改Retention Policies
alter retention policy "rp_name" on "jidan" duration 30d default
删除Retention Policies
drop retention policy "rp_name" on "jidan"
> create retention policy "rp_name" on "jidan" duration 3w replication 1 default
> alter retention policy "rp_name" on "jidan" duration 30d default
> drop retention policy "rp_name" on "jidan"

4、连续查询(Continuous Queries)
InfluxDB的连续查询是在数据库中自动定时启动的一组语句,语句中必须包含 SELECT 关键词和 GROUP BY time() 关键词。

InfluxDB会将查询结果放在指定的数据表中。
目的:使用连续查询是最优的降低采样率的方式,连续查询和存储策略搭配使用将会大大降低InfluxDB的系统占用量。而且使用连续查询后,数据会存放到指定的数据表中,这样就为以后统计不同精度的数据提供了方便。

新建连续查询
CREATE CONTINUOUS QUERY <cq_name> ON <database_name>
[RESAMPLE [EVERY <interval>] [FOR <interval>]]
BEGIN SELECT <function>(<stuff>)[,<function>(<stuff>)] INTO <different_measurement>
FROM <current_measurement> [WHERE <stuff>] GROUP BY time(<interval>)[,<stuff>]
END
样例:
CREATE CONTINUOUS QUERY rp_name ON jidan BEGIN SELECT mean(connected_clients), MEDIAN(connected_clients), MAX(connected_clients), MIN(connected_clients) INTO redis_clients_30m FROM redis_clients GROUP BY ip,port,time(30m) END
在jidan库中新建了一个名为 wj_30m 的连续查询,每三十分钟取一个connected_clients字段的平均值、中位值、最大值、最小值 redis_clients_30m 表中。使用的数据保留策略都是 default。

不同database样例:
CREATE CONTINUOUS QUERY rp_name ON jidan BEGIN SELECT mean(connected_clients), MEDIAN(connected_clients), MAX(connected_clients), MIN(connected_clients) INTO jidan_30.autogen.redis_clients_30m FROM jidan.autogen.redis_clients GROUP BY ip,port,time(30m) END
实践:
> CREATE CONTINUOUS QUERY rp_name ON jidan BEGIN SELECT mean(connected_clients), MEDIAN(connected_clients), MAX(connected_clients), MIN(connected_clients) INTO redis_clients_30m FROM redis_clients GROUP BY ip,port,time(30m) END
ERR: retention policy not found: jidan.rp_name  #刚删了策略
> create retention policy "rp_name" on "jidan" duration 3w replication 1 default
> CREATE CONTINUOUS QUERY rp_name ON jidan BEGIN SELECT mean(connected_clients), MEDIAN(connected_clients), MAX(connected_clients), MIN(connected_clients) INTO redis_clients_30m FROM redis_clients GROUP BY ip,port,time(30m) END

显示所有已存在的连续查询
SHOW CONTINUOUS QUERIES


删除Continuous Queries
DROP CONTINUOUS QUERY <cq_name> ON <database_name>

将influxdb中的所有的数据库都备份下来,不加任何的参数
influxd backup -portable /tmp/data/total

更多查询条件:https://www.jianshu.com/p/a1344ca86e9b
来自:https://www.cnblogs.com/shhnwangjian/p/6897216.html?utm_source=itdadao&utm_medium=referral
PHP调用查询:https://blog.csdn.net/weixin_41621706/article/details/100630332
#ls -i
24229218 go  805308641 -w,

这样删不掉:
#rm -i 805308641
rm: cannot remove ‘805308641’: No such file or directory


这样删才行:
find ./* -inum 805308641 -delete


来自:https://blog.csdn.net/wb736/article/details/79756956

Macbook:
find ./* -inum 1442584 |xargs rm -f #样例,使用find和xargs结合删除ddd文件(无法使用-i参数进行删除确认)
mac本下实践Ok如下:
echo  `find ./* -inum 22266353 `
./-p
rm -f  `find ./* -inum 22266353 `   #成功删除

find ./* -inum 22266353 -exec rm -i {} \;
rm: ./-p: is a directory
find ./* -inum 13287477 -exec rm -r -i {} \;   #成功删除
remove ./~? y
现象:init 0 关闭系统 出现错误提示,阿里专有云的运维兄弟反馈说是没有完全关闭:
再登录下:runlevel  ,说是操作系统bug。
来自:https://developer.aliyun.com/ask/107789?spm=a2c6h.13159736
PHP旧版本,我这编译php55/   php56/   php7/   php71/  php72/ 都没有出现这个问题,php73出现了这个问题。


configure: error: Please reinstall the libzip distribution
rpm -ql libzip-devel|grep -v man
/usr/include/zip.h
/usr/include/zipconf-64.h
/usr/include/zipconf.h
/usr/lib64/libzip
/usr/lib64/libzip.so
/usr/lib64/libzip/include
/usr/lib64/libzip/include/zipconf.h
/usr/lib64/pkgconfig/libzip.pc
出现:
configure: error: Please reinstall the libzip distribution

于是:
yum install -y libzip-devel

编译PHP时出现新问题:
checking for libzip... configure: error: system libzip must be upgraded to version >= 0.11
error: Bad exit status from /root/rpmbuild/tmp/rpm-tmp.gsrSs0 (%build)
经过源码安装是最新的版本,解决办法:


再重新编译PHP7.3,后终于成功完成编译。


cat /usr/local/lib/pkgconfig/libzip.pc


find /usr/local/include/ -name "zip.h"
/usr/local/include/zip.h

rpm -qf /usr/local/include/zip.h
file /usr/local/include/zip.h is not owned by any package

rpm -qf /usr/local/include/zipconf.h
file /usr/local/include/zipconf.h is not owned by any package


ldd /usr/local/php/bin/php |grep libzip   #php 7.3.12
        libzip.so.5 => /usr/local/lib/libzip.so.5 (0x00007f3be1b38000)

旧的php,PHP 7.1.6,无任何返回:ldd /usr/local/php/bin/php |grep libzip


以上实践摘取自 :https://www.php.cn/php-weizijiaocheng-414091.html
https://blog.csdn.net/liuyeluoqing/article/details/81697954
https://blog.qzze.com/820.html


CentOS6.X上rpmbuild  -ba memcache-php73-4.0.5.el6.x86_64.spec
出现error: Autoconf version 2.64 or higher is required  :
https://blog.51cto.com/11736068/2110670
yum install xsel
=================================================================================================================================================================================
Package                                 Arch                                      Version                                         Repository                               Size
=================================================================================================================================================================================
Installing:
xsel                                    x86_64                                    1.2.0-15.el7                                    epel                                     24 k

Transaction Summary
==================================================================================================
Install  1 Package

Total download size: 24 k
Installed size: 39 k
ls ~+/php-7.3.12.tar.gz |xsel
xsel: Can't open display: (null)
: Inappropriate ioctl for device


实践来源:https://blog.csdn.net/qwfys200/article/details/82624336
背景:做开发时经常会遇到在当前目录打开终端的情况,一直都是先启动终端,然后再切换到当前目录,今天发现了一个新的方法,虽然不是一步到位,但比以前快多了。

打开finder,在屏幕的左上角菜单里:访达、服务、服务偏好设置...、快捷键Tab里:
选择其中的“新建位于文件夹位置的终端窗口”菜单项就会打开终端,打开后终端的当前工作目录就是文件夹的路径。一定要点中文件夹,右击空白地方弹出的右键菜单是不会有“服务”项的。

点击该项还可以为该操作设置快捷键:
点击弹出的服务偏好设置窗口中的“服务”并勾选“新建位于文件夹位置的终端窗口”;点击该项还可以为该操作设置快捷键。

使用:control+option+command+.  #打开iterm终端,这个没有go2shell图标那个好用在只能在文件夹上使用,往往我们所谓的开发人员都是在文件夹里面想打开命令行。go2shell新版本使用不了了哟 https://jackxiang.com/post/10365/


来自:https://www.cnblogs.com/xqnq2007/p/7258428.html
解决Tomcat catalina.out 不断成长导致档案过大的问题:https://www.cnblogs.com/zhuawang/p/5053537.html

tomcat修改默认日志catalina.out的路径,来自:https://www.cnblogs.com/galsnag/p/11172002.html
用法
安装go2shell后,打开finder的application文件夹,找到go2shell
按住command,用鼠标将go2shell拖到finder的toolbar上(一定要按住command,否则无法拖到上面去的。)
到这里安装设置完成。
如果要修改默认terminal,比如你想要在finder上点击go2shell,打开的是iterm2 而不是默认的terminal。

打开finder , 点击go2shell,设置默认iterm
而Go2Shell默认没有设置界面,需要用命令行打开(隐藏得真深啊!)
在打开的terminal中,输入: open -a Go2Shell —args config
在弹出框中选择 iterm2

吐槽一下:
推荐在App Store下载旧版本,因为官方网站最新版本已经变了,打开Go2Shell变成了设置界面,虽然不用再输入命令打开设置界面了,但是,事实上这变得更加坑了!
因为不能配合Alfred 和 Manico了!!!那还有个软用?

实践结果: 新的Mac版本用旧的go2shell图标上有一个横杠还是不能用,估计苹果自己想做到OS里去吧?譬如,mac 当前位置打开终端 :https://jackxiang.com/post/10367/


链接:https://www.jianshu.com/p/88c6e68645c4
更多:https://www.cnblogs.com/juking/p/7257251.html
下载:https://zipzapmac.com/Go2Shell



Go2Shell 没有升级,没有办法,就直接找来了一个替代品。cd to, 下载入口如下:https://mac.softpedia.com/get/System-Utilities/cdto.shtml  ,安装方法一样,选iterm2那个放到程序目录里,按下command拖动到finder上成后即可使用。

Download:  https://us.softpedia-secure-download.com/dl/beb0c85587fe7d89c69546c8234ab4b3/5df849aa/400023757/mac/System-Utilities/cdto_2_6.zip

以上来自:https://juejin.im/post/5cfe82e15188252b1b0366e6
macOS 升级到 Catalina之后,使用SecureCRT报如下错误

The permissions on the "/cores" directory need to be changed to
include write permission for "other".

Please execute (or ask an admin to execute) the following from a
terminal window:

sudo chmod go+w /cores

If you would prefer not to change the permissions on the /cores
folder, you can turn off the Global option "Create core file when
application crashes".



应该是macOS的权限控制严格了,导致CRT没有权限访问/cores文件夹,这里关掉CRT崩溃时创建core转储文件即可(实践发现:这个项是没有 checked的,还是老老实实的执行sudo chmod o+w /cores命令后重启后secureCRT就好了。)

Option --> Global Options 取消 Create core file when application crashes 前面的复选框选择即可

来自:https://blog.90.vc/archives/93.html
分页: 2/336 第一页 上页 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 下页 最后页 [ 显示模式: 摘要 | 列表 ]