linux添加服务的方法

1.按一定的规则编写服务脚本,比如:myserviced

#!/bin/sh  
#chkconfig: 2345 80 05   
#description: myservice   
  
case $1 in  
start)  
    echo "myservice startup" #将该行替换成你自己的服务启动命令  
    ;;  
stop)  
    echo "myservice stop" #将该行替换成你自己服务的启动命令  
    ;;  
restart)  
    echo "myservice stop" #...  
    echo "myservice startup" #...  
    ;;  
*)  
    ;;  
esac  

命令解析:
# chkconfig: 2345 80 5
2345表示服务的运行级别,80代表Start的顺序,05代表Kill(Stop)的顺序;
# description: service_description
该服务的描述

2.将编写的脚本放到/etc/init.d/,将myserviced的访问权限加上“可执行”

chmod +x myserviced  

这个时候就可以输入命令了 开启和关闭

service myserviced start  
service myserviced stop  

但是如果要开机自动启动 就要增加服务了

chkconfig --add myserviced  

服务添加完成
可以用:chkconfig –list查看当前系统的服务
可以用:chkconfig –del myserviced删除服务

linux iftop查看流量的方法

linux iftop查看流量的方法
iftop 默认是查看eth0网卡的流量 这个是内网
iftop -i eth1 检测eht1网卡的流量 eth1一般都是外网 具体可以iftop查看详细信息


TX:发送流量
RX:接收流量
TOTAL:总流量
Cumm:运行iftop到目前时间的总流量
peak:流量峰值
rates:分别表示过去 2s 10s 40s 的平均流量

看TX 的peak就行了 和rate第一个

linux ffmpeg 源码安装教程

AMR格式是智能手机上的常用音频文件格式,比MP3格式的压缩比大。同样时长的AMR文件大概是MP3的十分之一,所以在移动互联项目中应用比较广泛。但目前AMR格式在个人电脑上应用较少,所以目前大部门播放器都不支持AMR,为了解决这个问题我们打算在服务器端将AMR转成MP3,以便在个人电脑上通过浏览器的方式进行播放。最近公司一款基于移动互联网的产品有个短暂的录音(留言)功能,因为录音需要传输到服务器上,所以为了用户体验及节省用户流量,我们采用了AMR的语音格式。

目前并没有找到合适的支持AMR转MP3的java的开发包,服务器环境为CentOS 6.2,所以我们采用了ffmpeg。
FFmpeg是一个开源免费跨平台的视频和音频流方案,属于自由软件,采用LGPL或GPL许可证(依据你选择的组件)。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多codec都是从头开发的。其官方网址为:http://www.ffmpeg.org/

实现:
1. 首先安装系统基础环境

# yum install -y automake autoconf libtool gcc gcc-c++  //RHEL & CentOS 系列 # apt-get install automake autoconf libtool gcc gcc-c++  //Debian & Ubuntu 系列

2. 编译所需源码包


yasm:http://yasm.tortall.net/Download.html(汇编器,新版本的ffmpeg增加了汇编代码)  wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
lame:http://lame.sourceforge.net/download.php(Mp3音频解码) wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
OpenCore AMR:http://sourceforge.net/projects/opencore-amr  wget https://ncu.dl.sourceforge.net/project/opencore-amr/opencore-amr/opencore-amr-0.1.4.tar.gz
AmrNB:http://www.penguin.cz/~utx/amr 
AmrWB:http://www.penguin.cz/~utx/amr 
FFMpeg:http://ffmpeg.org/download.html  分别解压缩并编译上述源码包 
# tar xzvf *.tar.gz # tar xjvf *.tar.bz2  解压后直接使用 
# ./configure # make # make install 命令进行编译安装。
 编译FFMpef的时候稍微特殊一点: 
# ./configure --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-version3 --enable-shared # make # make install 
# ldconfig  最后写入config后,终端运行ffmpeg命令,出现success和已安装的扩展,则运行成功。
 

3.使用方法


# ffmpeg -i 1.mp3 -ac 1 -ar 8000 1.amr  //MP3转换AMR 
# ffmpeg -i 1.amr 1.mp3                 //AMR转换MP3

附录:
附录1. ffmpeg默认安装目录为“/usr/local/lib”,有些64位系统下软件目录则为“/usr/lib64”,编译过程中可能会出现

“ffmpeg: error while loading shared libraries: libmp3lame.so.0: cannot open shared object file: No such file or directory”等类似的错误,解决办法是建立软链接:
# ln -s /usr/local/lib/libmp3lame.so.0.0.0 /usr/lib64/libmp3lame.so.0

附录2. 如果出现以下提示:ffmpeg: error while loading shared libraries: libavdevice.so.54: cannot open shared object file: No such file or directory
可以通过如下方式查看ffmpeg的动态链接库哪些没有找到:

vi /etc/ld.so.conf

加入:/usr/local/lib

执行ldconfig
[root@iZ238qupob7Z ffmpeg-3.2.2]# ffmpeg -i 22.amr 22.mp3
ffmpeg version 3.2.2 Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-17)
  configuration: --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-version3 --enable-shared
  libavutil      55. 34.100 / 55. 34.100
  libavcodec     57. 64.101 / 57. 64.101
  libavformat    57. 56.100 / 57. 56.100
  libavdevice    57.  1.100 / 57.  1.100
  libavfilter     6. 65.100 /  6. 65.100
  libswscale      4.  2.100 /  4.  2.100
  libswresample   2.  3.100 /  2.  3.100
[amr @ 0xfde360] Estimating duration from bitrate, this may be inaccurate
Input #0, amr, from '22.amr':
  Duration: 00:00:08.90, bitrate: 5 kb/s
    Stream #0:0: Audio: amr_nb (samr / 0x726D6173), 8000 Hz, mono, flt
Output #0, mp3, to '22.mp3':
  Metadata:
    TSSE            : Lavf57.56.100
    Stream #0:0: Audio: mp3 (libmp3lame), 8000 Hz, mono, fltp
    Metadata:
      encoder         : Lavc57.64.101 libmp3lame
Stream mapping:
  Stream #0:0 -> #0:0 (amr_nb (amrnb) -> mp3 (libmp3lame))
Press [q] to stop, [?] for help
22.amr: Input/output error
size=       9kB time=00:00:08.93 bitrate=   8.4kbits/s speed= 174x    

linux alias写快捷键笔记

linux alias写快捷键笔记

#vi ~/.bashrc   ps:~找个代表当前登录用户的用户目录  pwd就知道了
alias phpfpmrestart='/usr/local/php/sbin/php-fpm -y /usr/local/php/etc/php-fpm.conf -c /usr/local/php/etc/php.ini'
alias phpfpmsocket='chmod -R 777 /dev/shm'
alias phpfpm7016restart='/usr/local/php7016/sbin/php-fpm -y /usr/local/php7016/etc/php-fpm.conf -c /usr/local/php7016/etc/php.ini'
alias netstatusls='netstat -ntlp'
alias nginxerrorlog='tail -n 10 /usr/local/nginx/logs/error.log'
alias nginxaccesslog='tail -n 10 /usr/local/nginx/logs/access.log'
alias nginxconf='vi /usr/local/nginx/conf/nginx.conf'
#写完保存后执行命令
source .bashrc

有没有很方便??

linux免费https证书申请教程

linux免费https证书申请教程
直接去阿里云 菜单有个证书服务
进去有个购买证书菜单 选择免费的 然后会提示写个人资料 然后系统生成csr 然后提交审核
这个时候会有份邮件 文件下载上传到你的服务器 验证 (因为我用的是文件验证方式)

审核通过后 阿里云后台证书服务 里可以下载证书啦
解压上传到nginx目录conf mkdir cert 证书文件上传上去 如图下

QQ截图20170112135059

接下来改nginx.conf配置
添加个443端口 因为https是443端口 然后证书路径改下就Ok nginx -s reload重启

 server {
    listen 443;
    server_name www.newmiracle.cn newmiracle.cn;
    ssl on;
    charset utf-8;

    index index.html index.htm;
    ssl_certificate   cert/213996993440360.pem;
    ssl_certificate_key  cert/213996993440360.key;
    ssl_session_timeout 5m;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    location / {
            root   /home/www/wordpress;
            index  index.php index.html index.htm;
    }
     location ~ \.php$ {
            root           /home/www/wordpress;
            #fastcgi_pass   127.0.0.1:9000;
            #fastcgi_pass   127.0.0.1:9001;
            fastcgi_pass unix:/dev/shm/php-cgi.sock;
            fastcgi_index  index.php;
            #try_files $uri =404;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }

}

然后https://newmiracle.cn可以访问啦 ps:如果访问是直接下载 那过几个小时看看吧 可能没更新

linux阿里云服务器更换镜像的方法

linux阿里云服务器更换镜像的方法

1 先进入硬盘创建快照 生成自定义镜像 ps:他可以在阿里云各个服务器上共享 再左侧镜像 点击去可以看到共享

直接进ecs 关闭服务器 重新初始化硬盘 然后主界面有更换系统盘 选择自定义镜像 确定就好了

linux lnmp环境下 安装apache教程

linux lnmp环境下 安装apache教程

源码安装 apr ,apr-util 安装apache要用

wget http://mirrors.cnnic.cn/apache/apr/apr-1.5.2.tar.gz
tar zxvf apr-1.5.2.tar.gz
cd apr-1.5.2
./configure --prefix=/usr/local/apr
make & make install


wget http://mirrors.cnnic.cn/apache/apr/apr-util-1.5.4.tar.gz
tar zxvf apr-util-1.5.4.tar.gz
cd apr-util-1.5.4
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make & make install

安装apache了

wget http://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.25.tar.gz
tar zxvf httpd-2.4.25.tar.gz
cd httpd-2.4.25
./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
make & make install
修改apache配置 cd conf/ vi httpd.conf 把80端口改成其他端口 避免冲突
Listen 8008
ServerName 127.0.0.1:8008
#启动
Apache:/usr/local/apache/bin/apachectl start
    #设置默认首页
    DirectoryIndex  index.php  index.html

现在PHP是解析不了所以要进行如下操作 这里我不用mod_php 用他到时候还得重新解析PHP 所以采用php-fpm 简单快捷 更重要性能更优越!

再说说apache这边需要的一点设置。由于我是从mod_php到php-fpm的,所以之前httpd.conf中的这几行需要注解掉:

LoadModule php5_module modules/libphp5.so
<FilesMatch \.php$>
    SetHandler application/x-httpd-php
</FilesMatch>

然后去掉mod_proxy.so和mod_proxy_fcgi.so之前的注解,确保他们被apache加载。

另外设置下根目录

DocumentRoot "/usr/local/apache/htdocs"
<Directory "/usr/local/apache/htdocs">

在Apache httpd 2.4以后已经专门有一个模块针对FastCGI的实现,此模块为mod_proxy_fcgi.so,它其实是作为mod_proxy.so模块的扩充,因此,这两个模块都要加载
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so

如果php-fpm使用的是TCP socket,那么在httpd.conf末尾加上:

#9000端口号别写错了
<FilesMatch \.php$>
         SetHandler "proxy:fcgi://127.0.0.1:9000"
</FilesMatch>

如果用的是unix socket,那么httpd.conf末尾加上:

#/dev/shm/php-cgi.sock路径别写错了
<Proxy "unix:/dev/shm/php-cgi.sock|fcgi://php-fpm">
    ProxySet disablereuse=off
</Proxy>

<FilesMatch \.php$>
    SetHandler proxy:fcgi://php-fpm
</FilesMatch>
至此在apapche上
#重启apache
/usr/local/apache/bin/apachectl restart
#看phpinfo
$_SERVER['SERVER_SOFTWARE']	Apache/2.4.25 (Unix)