Write the Code. Change the World.

分类目录
3月 08

centos 使用 yum 安装的时候,很多程序不是最新的。这个时候,就得下载源码包进行安装。 libzip 就是这样的。下边进行操作。

# 先卸载旧的
yum -y remove libzip-devel

# 找到最新版本的,并下载
# https://libzip.org/ 官网

wget https://libzip.org/download/libzip-1.5.1.tar.gz

tar -zxvf libzip-1.5.1.tar.gz

cd libzip-1.5.1

mkdir build

cd build

cmake ..

make && make install

如果安装过程中,出现 cmake 版本过低 ,请参考:
centos 安装最新版本的 camke

当然,安装旧版本的 libzip可能不这样。请参考下边的链接:
https://www.cnblogs.com/itbsl/p/10208926.html

3月 08

找到最新版本的 cmake

https://cmake.org

进 cmake 官网,找到最新版本的下载地址。当前最新版本是 3.14.0

下载安装

在做安装之前,可以先卸载之前旧版本

yum -y remove cmake

按照以下操作:

wget https://cmake.org/files/v3.6/cmake-3.14.0.tar.gz

tar -xzvf cmake-3.14.0.tar.gz

cd cmake-3.14.0 

./bootstrap

gmake

gmake install

2023年1月30日,另外编辑。cmake 后边的版本不需要 ./bootstrap 和 install。直接将解压的文件夹复制过去就可以。下边以分割线来描述这一整个过程。


CMake 官方下载页面:https://cmake.org/download/ 选择对应的版本,最好是最新的稳定下载。

cd /usr/local/src/

wget https://github.com/Kitware/CMake/releases/download/v3.25.2/cmake-3.25.2-linux-x86_64.tar.gz

tar -xzvf cmake-3.25.2-linux-x86_64.tar.gz

mv cmake-3.25.2-linux-x86_64 /usr/local/cmake

然后将 cmake的可执行文件目录添加到系统环境变量中。

# 添加
echo 'export PATH="/usr/local/cmake/bin:$PATH"' >> ~/.bashrc

# 生效
source ~/.bashrc

这样就完成了。如果后边想升级。还是这样来一遍就可以。

https://osfere.com/linux/how-to-install-latest-cmake-on-centos#comment-68

如果在 bootstrap 的时候,出现下边这样的错误:

Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR (missing: OPENSSL_CRYPTO_LIBRARY OPENSSL_INCLUDE_DIR)

而你 openssl 明明已经装了,并且也有软链,为什么还是不行呢。上边也提到了报错的行数,找到函数位置是 find_package(OPENSSL),还是没找到这玩意。于是尝试将package以及lib添加到环境变量中试试看,并使环境变量生效看看,竟然好了。

vim /etc/profile

# 添加

export OPENSSL_ROOT_DIR=/usr/local/openssl


export OPENSSL_LIBRARIES=/usr/local/openssl/lib/


# 生效

source /etc/profile

然后继续后边的操作了

参考:https://hant-kb.kutu66.com/openssl/post_12667981

查看编译后的cmake版本

/usr/local/bin/cmake --version

新建软连接

ln -s /usr/local/bin/cmake /usr/bin/

终端查看版本

cmake --version
11月 05

操作步骤

  1. 将 .pem 文件保存到本地磁盘中。
  2. 添加命令。
ssh-add -K /path/to/private_key
  1. 运行 ForkLift,增加一个配置。选择使用 FTPS,在密码处选择 .pem 文件即可。

https://binarynights.com/support

终端中使用命令登录服务器

sudo ssh -i key.pem root@ip

权限不够,带上 sudo

也可以这样使用

ssh-add -K /path/to/private_key
ssh root@ip
9月 18

文档

官方文档:https://laravel.com/docs/5.7/scheduling

中文文档:https://laravel-china.org/docs/laravel/5.6/scheduling/1396

在 Larave 中定义任务,在 crontab 中配置任务

先配置吧

vim /etc/crontab 

# 在末尾添加
* * * * * root cd /alidata/www/mlxiu/ && php artisan schedule:run >> /dev/null 2>&I1

/sbin/service crond start

如果不行,需要再crontab中配置环境变量,或者命令直接写绝对路径。
crontab 参考:https://www.cnblogs.com/intval/p/5763929.html

在 laravel 中定义任务

看文档吧。

9月 17

安装 imagick

PHP建图通常都用GD库,因为是内置的不需要在服务器上额外安装插件,所以用起来比较省心,但是如果你的程序主要的功能就是处理图像,那麼就不建议用GD了,因为GD不但低效能而且能力也比较弱,佔用的系统资源也颇多,另外GD的creatfrom也有bug,而imagick却是一个很好的替代品,为此最近把我的一个项目由GD改成了imagick

官网: https://www.imagemagick.org/script/install-source.php

# 没权限的加上sodu
wget https://imagemagick.org/download/ImageMagick.tar.gz

tar xzvf ImageMagick.tar.gz

cd cd ImageMagick-7.0.8-11

./configure -prefix=/usr/local/imagemagick -enable-lzw -with-modules 

#如果报错:如果configure提示“configure: error: libltdl is required for modules build”,则yum install libtool-ltdl libtool-ltdl-devel

make 

make install

make check

安装 imagick php 扩展

插件地址:http://pecl.php.net/package/imagick

wget http://pecl.php.net/get/imagick-3.4.3.tgz
tar -xzvf imagick-3.4.3.tgz
cd imagick-3.4.3
phpize
./configure --with-php-config=/usr/bin/php-config --with-imagick=/usr/local/imagemagick
# 根据php-config 目录有所不同。这里是 Homestead环境

# 如果提示没有 pkg-config,请先安装
#  apt-get install pkg-config (unbuntu)
# yum install pkg-config (centos)

make test
make
make install

cp /usr/src/imagick-3.4.3/modules/imagick.so /usr/lib/php/20160303/imagick.so
# 这里是 homestead 的配置。

sudo vim /etc/php/7.1/fpm/conf.d/20-imagick.ini
# 添加 extension=imagick.so 保存

参考

https://blog.csdn.net/m0_38004619/article/details/77897406

7月 16

unbuntu 安装 php mongo 扩展的时候,遇到了 configure: error: Cannot find OpenSSL's libraries 这个错误。

怎么解决了,冥冥已经安装了呀。

sudo apt-get install openssl

可以找找看。

sudo find / -name libssl.so
# 你会发现存在 /usr/lib/x86_64-linux-gnu/libssl.so
# 初步判断它可能只会在 /usr/lib/ 下寻找 libssl.so 文件
sudo ln -s /usr/lib/x86_64-linux-gnu/libssl.so /usr/lib 
# 重新编译过

其他方法

https://stackoverflow.com/questions/40359817/litespeed-web-server-and-error-cannot-find-openssls-libraries

5月 17

随着互联网的普及,人们的上网行为每天都产生着海量的数据,这些数据蕴含着巨大的价值,清楚的刻画着社会的方方面面,现如今,数据已经成为一种商业资本,一项经济投入,政府和企业都在研究如何从海量数据中获得新的认知、新的方法和创造新的价值,这就促进了大数据的发展,企业用大数据技术往往运行在Linux环境下,大数据工程师需要掌握一定的Linux技术,以下是老男孩教育归纳的大数据工程师需要掌握的Linux技术

一、VMware Workstation

  1. VMware软件安装与配置,网络连接模式,NAT、桥接、OnlyHost
  2. 宿主机、虚拟机、客户机异同,虚拟机完全克隆、虚拟机链接克隆

  3. mac地址修改,虚拟网卡设置,虚拟网络编辑器,虚拟机移除

二、CentOS

  1. Linux系统简介,CentOS,Ubuntu,Windows

  2. CentOS下载、安装与配置
    继续阅读

5月 02

linux 执行定时任务的软件很多。如cron、anacron、at和batch,其中cron和anacron用来定期重复执行指令,At和batch则用来在特定时间执行一次性的指令。这里使用 cron来操作定时任务。

假如我们想每个月更新一下yum包。就可以刚好用到 cron 。

https://blog.csdn.net/chichuduxing/article/details/68491023
https://www.cnblogs.com/shuaiqing/p/7742382.html
https://blog.csdn.net/ggxiaobai/article/details/53505195
https://blog.csdn.net/u010170644/article/details/53408231
继续阅读