1 记录history时间和用户:
export HISTTIMEFORMAT="%F %T `whoami`"
2 把history命令记录到message日志:
export PROMPT_COMMAND='{ msg=$(history 1 | { read x y; echo $y; });logger "[euid=$(whoami)]":$(who am i):[`pwd`]"$msg"; }'
3 ethtool:查询及设置网卡参数
ethtool -P eth0 #查询网络端口的位置
ethtool eth0 #查看eth0的基本属性
4 探测服务是否存活:killall -0 sshd
[root@slave02 ~]# killall -0 sshd
[root@slave02 ~]# echo $?
0
[root@slave02 ~]# killall -0 nginx
nginx: no process killed
[root@slave02 ~]# echo $?
1
5 查询提供某个文件(或程序)的软件包
[root@localhost ~]# yum provides lrzsz
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
* epel: mirror01.idc.hinet.net
lrzsz-0.12.20-27.1.el6.i686 : The lrz and lsz modem communications programs
Repo : base
Matched from:
查询提供某个命令的软件包
[root@test ~]# yum provides */lspci
6 关于库:库是其它程序员写好的现有的、成熟的、可以复用的代码(即各种功能模块),现实中每个程序都要依赖很多基础的底层库,当程序需要时可以随时从动态库(共享库)中进行调用。
-
静态库:.a
-
动态库:.so(由gcc加特定参数编译时产生)
通常情况下:在Linux中,库文件一般放在/usr/lib和/lib目录下,静态库的名字一般为libxxx.a,其中xxx是lib的名称。动态库的名字一般是libxxx.so.major.minor,xxx是lib的名称,major是主版本号,minor是副版本号。
查看库文件是由哪个安装包提供的,如:
[root@localhost lib]# yum whatprovides /lib/libpthread.so.0
ldd命令可以查看一个程序所依赖的共享库,如:ldd /bin/cp
默认的库文件路径:/lib /usr/lib
如果库文件安装在其它目录,需要将其添加到/etc/ld.so.cache文件中,步骤如下:
1) 编辑/etc/ld.so.conf文件,加入库文件所在目录的路径;
echo "/usr/local/mysql/lib" >>/etc/ld.so.conf
2) 运行ldconfig,重建/etc/ld.so.cache文件;
备注:ldconfig命令需要root权限;
7 Linux系统获取公网IP:
curl ifconfig.me
或 curl ifconfig.me/ip
脚本如下:
#!/bin/bash
#Author: zwj
#Date: 2017-06-28
#Function: outip
#Version: 1.1
IP1=`/usr/bin/curl ifconfig.me/ip`
sleep 20
IP2=`/usr/bin/curl ifconfig.me/ip`
sleep 10
if [ $IP1 != $IP2 ]
then
echo "$IP2" | mail -s "outip" 22222361@qq.com
fi
8 在CentOS 7中,使程序开机执行:下面以nginx为例
1)echo "/usr/local/nginx/sbin/nginx" >> /etc/rc.d/rc.local
2)chmod +x /etc/rc.d/rc.local
9 设置用户打开的最大进程数和最大文件数,在配置文件中追加以下字段
vim /etc/profile
ulimit -n 65535
ulimit -u 20000
本文转自 zengwj1949 51CTO博客,原文链接:http://blog.51cto.com/zengwj1949/1915067