ubuntu 安装 php-v8js扩展

直接pecl install v8js……报错。。

root@ubuntu:/usr/local/src/v8js-1.3.5# ./configure --with-php-config=/usr/local/php7/bin/php-config 
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for a sed that does not truncate output... /bin/sed
checking for cc... cc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether cc accepts -g... yes
checking for cc option to accept ISO C89... none needed
checking how to run the C preprocessor... cc -E
checking for icc... no
checking for suncc... no
checking whether cc understands -c and -o together... yes
checking for system library directory... lib
checking if compiler supports -R... no
checking if compiler supports -Wl,-rpath,... yes
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking for PHP prefix... /usr/local/php7
checking for PHP includes... -I/usr/local/php7/include/php -I/usr/local/php7/include/php/main -I/usr/local/php7/include/php/TSRM -I/usr/local/php7/include/php/Zend -I/usr/local/php7/include/php/ext -I/usr/local/php7/include/php/ext/date/lib
checking for PHP extension directory... /usr/local/php7/lib/php/extensions/no-debug-non-zts-20160303
checking for PHP installed headers prefix... /usr/local/php7/include/php
checking if debug is enabled... no
checking if zts is enabled... no
checking for re2c... re2c
checking for re2c version... 0.13.5 (ok)
checking for gawk... gawk
checking for V8 javascript Engine... yes, shared
checking for V8 files in default path... found in /usr
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking how to run the C++ preprocessor... g++ -E
checking for C standard version... c++11
checking how to allow c++11 narrowing... 
checking for libv8_libplatform... checking for libv8_libplatform... configure: error: could not find libv8_libplatform library

 

系统自带的libv8版本太低了。

sudo add-apt-repository ppa:pinepain/libv8
sudo apt-get update

 

卸載原先的libv8-dev,執行apt-get install libv8-6.6-dev

nice

Build process completed successfully
Installing '/usr/lib/php5/20121212/v8js.so'
install ok: channel://pecl.php.net/v8js-0.6.4
configuration option "php_ini" is not set to php.ini location
You should add "extension=v8js.so" to php.ini

 

Centos 清理日志文件

使用CentOS系统的时候,经常会遇到系统日志文件非常大的情况,如果直接删除,会导致日志错误,不再生成日志,这时,我们可以使用下面的方法清空日志。

* [Centos6]
* [Centos7]

CentOS 6系统

cat /dev/null > /var/log/boot.log
cat /dev/null > /var/log/btmp
cat /dev/null > /var/log/cron
cat /dev/null > /var/log/dmesg
cat /dev/null > /var/log/dracut.log
cat /dev/null > /var/log/lastlog
cat /dev/null > /var/log/maillog
cat /dev/null > /var/log/messages
cat /dev/null > /var/log/secure
cat /dev/null > /var/log/spooler
cat /dev/null > /var/log/tallylog
cat /dev/null > /var/log/wtmp
cat /dev/null > /var/log/yum.log

CentOS 7系统

cat /dev/null > /var/log/boot.log
cat /dev/null > /var/log/btmp
cat /dev/null > /var/log/cron
cat /dev/null > /var/log/dmesg
cat /dev/null > /var/log/firewalld
cat /dev/null > /var/log/grubby
cat /dev/null > /var/log/lastlog
cat /dev/null > /var/log/mail.info
cat /dev/null > /var/log/maillog
cat /dev/null > /var/log/messages
cat /dev/null > /var/log/secure
cat /dev/null > /var/log/spooler
cat /dev/null > /var/log/syslog
cat /dev/null > /var/log/tallylog
cat /dev/null > /var/log/wpa_supplicant.log
cat /dev/null > /var/log/wtmp
cat /dev/null > /var/log/yum.log

 

 

mycloud搭建个人博客,官方自带80和443端口穿透【gen1】

一、首先,得去获取你自己的西数的专有穿透url地址。

1、打开域名:http://files.mycloud.com/ 。登录你的邮箱账号和密码。邮箱,就是原生UI里面账号绑定的邮箱。

2、登录后,用F12(开发者模式)或者鼠标右键-检查(N)。(我使用的是chrome浏览器)。

3、选择network,然后点击xhr。找到里面的链接, 浏览全部

Debian安装 aria2

为什么是Debian??因为我的树莓派用的是debian!23333~~~~

aria2 一个方便的下载工具,支持  HTTP/HTTPSFTPSFTPBitTorrent 和Metalink 。可以通过内置的 JSON-RPC 和XML-RPC 接口来使用。参考 github 项目aria2

注意这里使用 Debian进行搭建。不要使用 centos,为什么呢?因为centos 上好多对应的依赖包都找不到,软件版本过低等问题。如果你硬要搭建,可以参考 Centos6编译安装最新Aria2 1.27.1——带你临近网速极限浏览全部

linux crontab & 每隔10秒执行一次

linux下定时执行任务的方法 

在LINUX中你应该先输入crontab -e,然后就会有个vi编辑界面,再输入0 3 * * 1 /clearigame2内容到里面 :wq 保存退出。

 

在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron]。cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。

cron的配置文件称为“crontab”,是“cron table”的简写。

一、cron在3个地方查找配置文件:
1、/var/spool/cron/ 这个目录下存放的是每个用户包括root的crontab任务,每个任务以创建者的名字命名,比如tom建的crontab任务对应的文件就是/var/spool/cron/tom。
一般一个用户最多只有一个crontab文件。

二、/etc/crontab 这个文件负责安排由系统管理员制定的维护系统以及其他任务的crontab。

三、/etc/cron.d/ 这个目录用来存放任何要执行的crontab文件或脚本。

四、权限
crontab权限问题到/var/adm/cron/下一看,文件cron.allow和cron.deny是否存在
用法如下:
1、如果两个文件都不存在,则只有root用户才能使用crontab命令。
2、如果cron.allow存在但cron.deny不存在,则只有列在cron.allow文件里的用户才能使用crontab命令,如果root用户也不在里面,则root用户也不能使用crontab。
3、如果cron.allow不存在, cron.deny存在,则只有列在cron.deny文件里面的用户不能使用crontab命令,其它用户都能使用。
4、如果两个文件都存在,则列在cron.allow文件中而且没有列在cron.deny中的用户可以使用crontab,如果两个文件中都有同一个用户,
以cron.allow文件里面是否有该用户为准,如果cron.allow中有该用户,则可以使用crontab命令。

浏览全部

rc.local开机自动挂载samba无效问题

远程建立好了samba服务,并且手动挂载ok,但是把挂载命令放到/etc/rc.local里面不能实现开机自动挂载。而在开机后手动运行一下rc.local脚本是可以挂载的。

经过一些试验发现rc.local确实运行到了。但在运行到挂载samba命令时出错,然后直接退出了该脚本。而挂在命令确实是正确的。

原因应该是刚开机不久,运行到rc.local时samba服务还没有完全启动,导致挂载失败。(注意并不是没有启动,/etc/init.d/smb应该是在/etc/rc.local之前执行的。)

解决方法也很简单,就是把挂载命令前加个sleep,等samba服务完全启动ok后再挂载。需要注意的是由于用到了sleep,所以最好让该命令后台运行。如下:

sleep 10s && mount -t cifs //172.16.18.221/221-sdc-nicek /221 -o username=nicek.ni,password=,codepage=cp936 &

如何在Ubuntu 16.04上安装和配置Solr 6

什么是Apache Solr? Apache Solr是一个用Java编写的开源企业级搜索平台,可以让您创建自定义搜索引擎来索引数据库,文件和网站。 它具有Apache Lucene的后端支持。 它可以例如用于在多个网站中进行搜索,并可以显示搜索内容的建议。 Solr使用基于XML(可扩展标记语言)的查询和结果语言。 有可用于Python,Ruby和JSON(Javascript对象符号)的API(应用程序接口)。

Solr提供的其他一些功能包括:

  • 全文检索。
  • 代码段生成和突出显示。
  • 自定义文件订购/排名。
  • 拼写建议

本教程将向您展示如何在Ubuntu 16.04 LTS上安装最新的Solr版本。 这些步骤很可能与以后的Ubuntu版本一起使用。

更新系统

浏览全部

在dokcer中安装Phpmyadmin并与mysql容器连接

首先在docker中搜索可用的镜像

$sudo docker search phpmyadmin

发现镜像后使用docker pull将镜像拉取下来
先建立mysql容器,再建立phpmyadmin容器

$sudo docker run -d -h mysql -v /data/mysql:/var/lib/mysql -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=root mysql 
// -h 设定主机名

$sudo docker run --name phpadmin --link mysql:db -p 9998:80 -d phpmyadmin/phpmyadmin
// --link代表容器本容器与mysql连接,并起一个别名为db

访问宿主机的9998端口即可出现phpmyadmin登录界面

若要修改phpadmin的配置文件,默认目录为/www

$sudo docker exec -it phpadmin vi /www/libraries/config.default.php
或者
$sudo docker exec -it phpadmin vi /www/config.inc.php

若需要将phpmyadmin嵌入其他页面,可能需要修改config.default.php中的

$cfg['AllowThirdPartyFraming'] = true; 

 

再用五分钟利用docker升级搭建好php7.0.10服务环境(添加扩展mysql、gd、phalcon)

本文基于《 五分钟利用docker搭建好php7.0.10+nginx服务环境》
对PHP进行扩展升级!

将以下代码保存为一份xxx.sh 并执行,即可扩展mysql、gd、phalcon

#! /usr/bin

PHP_VERSION=7.0.10

docker run --name php \
-v /home/wwwroot:/home/wwwroot \
-v ~/php_config/php.ini:/usr/local/etc/php/php.ini \
-p 9000:9000 \
-d php:{PHP_VERSION}-fpm

docker exec -it php sed -i "s/33/2016/g" /etc/passwd
docker exec -it php sed -i "s/33/2016/g" /etc/group

docker exec -it php bash -c "set -ex \
&& cd ~ \
&& mv /etc/apt/sources.list /etc/apt/sources.list.bak \
&& { \
echo deb http://mirrors.aliyun.com/debian/ jessie main non-free contrib; \
echo deb http://mirrors.aliyun.com/debian/ jessie-proposed-updates main non-free contrib; \
echo deb-src http://mirrors.aliyun.com/debian/ jessie main non-free contrib; \
echo deb-src http://mirrors.aliyun.com/debian/ jessie-proposed-updates main non-free contrib; \
} | tee /etc/apt/sources.list \
&& apt-get update \
&& apt-get install -y git \
libpcre3-dev \
libfreetype6-dev \
libjpeg62-turbo-dev \
libmcrypt-dev \
libpng12-dev \
&& docker-php-ext-install -j(nproc) iconv mcrypt \
&& docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \
&& docker-php-ext-install -j(nproc) gd \
&& docker-php-ext-install mysql \
&& docker-php-ext-install pdo_mysql \
&& curl -o /usr/local/etc/php/php.ini https://raw.githubusercontent.com/php/php-src/PHP-{PHP_VERSION}/php.ini-production \
&& git clone -b 2.1.x --depth=1 git://github.com/phalcon/cphalcon.git ~/cphalcon \
&& cd ~/cphalcon/ext \
&& export CFLAGS=\"-O2 -finline-functions -fvisibility=hidden\" \
&& phpize \
&& ./configure --enable-phalcon \
&& make \
&& make install \
&& docker-php-ext-enable phalcon \
&& rm -rf ~/cphalcon"

docker commit -a "technofiend <[email protected]>" -m "install gd、 phalcon、pdo_mysql、mysql extsions" php phalcon:{PHP_VERSION}-fpm

docker rm -f php
docker run --name php \
-v /home/wwwroot:/home/wwwroot \
-v ~/php_config/php.ini:/usr/local/etc/php/php.ini \
-p 9000:9000 \
-d phalcon:{PHP_VERSION}-fpm

docker exec -it php sed -i "s/33/2016/g" /etc/passwd
docker exec -it php sed -i "s/33/2016/g" /etc/group