
📅 2015-01-03
编译安装
#
下载源码:
1wget http://nginx.org/download/nginx-<version>.tar.gz
2tar -zxvf nginx-1.10.3.tar.gz
3cd nginx-<version>
准备构建环境compiler,OpenSSL,PCRE(Perl Compatible Regular Expressions):
1yum install -y gcc
2yum install -y pcre-devel
3yum install -y openssl openssl-devel
编译安装:
1./configure \
2 --with-http_ssl_module \
3 --with-http_realip_module \
4 --user=www \
5 --group=www
6make
7make install
默认按在/usr/local/nginx目录下,可以使用configure参数--prefix
定制安装目录,
其他configure参数参考这里。
执行sbin/nginx -V
可以打印安装时的编译参数。
...📅 2015-01-02
jps
#
jps即JVM Process Status Tool,显示系统上所有的HotSpot虚拟机进程。
1jps -lmv
217015 org.apache.catalina.startup.Bootstrap start -Djava.util.logging.config.file=/home/tomcat/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Xms2048m -Xmx2048m -Xmn400m -XX:PermSize=512m -XX:ReservedCodeCacheSize=48M -XX:+UseConcMarkSweepGC -Djava.endorsed.dirs=/home/tomcat/tomcat/endorsed -Dcatalina.base=/home/tomcat/tomcat -Dcatalina.home=/home/tomcat/tomcat -Djava.io.tmpdir=/home/tomcat/tomcat/temp
- -l 输出main class全名
- -m 输出JVM启动时传递给main方法的参数args
- -v 输出JVM启动时指定的JVM参数
使用jps就可以获取到JVM进程的id,查看已经配置的JVM参数便于使用后边工具进一步分析。
...📅 2014-12-22
Linux的例行任务包含两种:一种是需要周期执行的任务其命令为cron;另外一种是在某个特定时间执行一次的任务,其命令为at。
使用at在特定时间执行一次任务
#
当前时间后多长时间执行一次任务:
1# at now + 3 minutes
2at> echo hello > hello.txt
3at> <EOT>
4job 1 at Mon Dec 22 18:29:00 2014
<EOT>
是输入组合键CTL+D
...
📅 2014-12-13
一般使用mii-tool可以设置以太网设备,使用它还可以显示当前的设置信息。
1mii-tool -v em1
2em1: negotiated 1000baseT-FD flow-control, link ok
3 product info: vendor 00:d8:97, model 54 rev 0
4 basic mode: autonegotiation enabled
5 basic status: autonegotiation complete, link ok
6 capabilities: 1000baseT-HD 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
7 advertising: 1000baseT-HD 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control
8 link partner: 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control
ethtool与mii-tool类似,可以提供更多的配置选线和设备统计信息显示。
...📅 2014-12-12
free
#
free显示系统内存整体使用情况。Linux内核可以将内存作为用于硬盘读取的高速缓存和作为用于硬盘写入的缓冲区。
free命令可以显示空闲内存加减这些cache和buffer。
1free -g
2 total used free shared buff/cache available
3Mem: 31 22 1 0 7 7
4Swap: 15 4 10
vmstat
#
vmstat即虚拟内存统计,使用它可以获取系统虚拟内存信息。
...📅 2014-12-11
vmstat
#
vmstat即虚拟内存统计,但用它不仅仅是可以获取系统的虚拟内存性能信息,还能获取整个系统性能的大概信息。
当我们用vmstat获取系统的CPU性能信息时命令格式如下:
vmstat [-n] [-s] [delay [count]]
-n
表示当按时间间隔采样显示的数据在初始显示行标题后,后边的数据行不再重复显示标题-s
汇总显示统计数据delay
采样的时间间隔,单位秒count
采样次数
例如:
...📅 2014-12-10

systemd
#
systemd是Linux系统的一套基础构建模块。它提供了一个系统和服务管理器,以PID 1运行并启动系统的其他部分。
systemd提供激进的并行化能力,使用套接字和D-Bus激活机制启动服务,支持按需启动守护进程,通过Linux控制组(control groups)跟踪进程,管理挂载点和自动挂载点,并通过事务性依赖关系实现复杂的服务控制逻辑。systemd支持SysV和LSB初始化脚本,可以替代传统的sysvinit。
...📅 2014-11-10
查看锁表线程
#
使用下面的命令查看哪个表被锁了:
1show open tables where in_use>0;
2+----------+-------+--------+-------------+
3| Database | Table | In_use | Name_locked |
4+------------------+--------+-------------+
5| test | t_user | 0 | 0 |
6| test | t_role | 4 | 0 |
In_use
表示有多少线程正在使用该表,这些线程有可能已经给该表加锁,或者正在等待或得锁给该表加锁Name_locked
是否表名称被锁定,表名称被锁定一般发生在rename table时。
结合show processlist
可查看哪个线程锁表了:
...📅 2014-03-07
1.理解文档流和定位(position)
#
文档流
是指文档中的盒子布局按html标签的顺序按从左到右、从上到下的顺序排列,其中每个块级元素独占一行,行内元素在一行之内按从左到右属性排列,每个盒子根据盒子模型都占据着自己的位置。
定位
是指可以使用css的position
属性来设置元素的定位类型,从而改变元素在文档流中的位置。
...📅 2014-02-03
磁盘的分区、格式化、挂载
#
使用fdisk -l
列出系统上所有的磁盘分区信息。它会显示您系统中的硬盘设备以及每个设备上的分区情况,包括分区的起始扇区、大小、文件系统类型等。
1fdisk -l
2Disk /dev/vda: 100 GiB, 107374182400 bytes, 209715200 sectors
3Units: sectors of 1 * 512 = 512 bytes
4Sector size (logical/physical): 512 bytes / 512 bytes
5I/O size (minimum/optimal): 512 bytes / 512 bytes
6Disklabel type: dos
7Disk identifier: 0xa26fc47b
8
9Device Boot Start End Sectors Size Id Type
10/dev/vda1 2048 4194303 4192256 2G e W95 FAT16 (LBA)
11/dev/vda2 4194304 83886079 79691776 38G 83 Linux
12
13
14Disk /dev/vdb: 8 GiB, 8589934592 bytes, 16777216 sectors
15Units: sectors of 1 * 512 = 512 bytes
16Sector size (logical/physical): 512 bytes / 512 bytes
17I/O size (minimum/optimal): 512 bytes / 512 bytes
使用df -h
命令显示系统上各个文件系统的磁盘使用情况和剩余空间。它会显示文件系统的挂载点、总容量、已用空间、剩余空间和使用率等信息。
...