一、命令格式

mkpasswd [ args ] [ user ]

二、 命令功能

mkpasswd命令是make password的简写。可以随机生成密码字符串。

三、 命令参数

-l 定义密码长度。默认为9。
-d 至少包含阿拉伯数字的个数。默认为2。
-c 至少包含的小写字母个数。默认为2。
-C 至少包含的大写字母个数。默认为2。
-s 至少包含的特殊字符个数。默认为1。
-p 设置密码的程序命名。 默认情况下,使用/etc/yppasswd(如果存在),否则使用/bin/passwd。

例子:

[root@myvps ~]# mkpasswd -l 20 -d 4 -c 6 -C 5 -s 5
uSp9,|Lp2'F8Ra8r!"zP

CentOS 7 源码安装 CMake 3.16.2 最新稳定版。解决 cmake: command not found 问题。

1、准备编译环境

yum -y install gcc gcc-c++ openssl openssl-devel tar

2、获取源码,并解压

wget https://github.com/Kitware/CMake/releases/download/v3.16.2/cmake-3.16.2.tar.gz
tar -zxf cmake-3.16.2.tar.gz
cd cmake-3.16.2

备用下载地址:https://down.24kplus.com/linux/cmake/cmake-3.16.2.tar.gz

3、编译安装

./bootstrap --prefix=/usr --datadir=share/cmake --docdir=doc/cmake && make
sudo make install

4、检查是否正确安装

cmake --version

cmake version 3.16.2

CMake suite maintained and supported by Kitware (kitware.com/cmake).

Linux 通过 traceroute 我们可以知道信息从你的计算机到互联网另一端的主机是走的什么路径。当然每次数据包由某一同样的出发点(source)到达某一同样的目的地(destination)走的路径可能会不一样,但基本上来说大部分时候所走的路由是相同的。 traceroute 通过发送小的数据包到目的设备直到其返回,来测量其需要多长时间。一条路径上的每个设备 traceroute 要测3次。输出结果中包括每次测试的时间(ms)和设备的名称(如有的话)及其IP地址。

在大多数情况下,我们会在linux主机系统下,直接执行命令行:

traceroute hostname

一、命令格式

traceroute [参数] [主机]

二、 命令功能

traceroute指令让你追踪网络数据包的路由途径,预设数据包大小是40Bytes,用户可另行设置。

具体参数格式:traceroute [-dFlnrvx][-f<存活数值>][-g<网关>…][-i<网络界面>][-m<存活数值>][-p<通信端口>][-s<来源地址>][-t<服务类型>][-w<超时秒数>][主机名称或IP地址][数据包大小]

三、 命令参数

-d 使用Socket层级的排错功能。
-f 设置第一个检测数据包的存活数值TTL的大小。
-F 设置勿离断位。
-g 设置来源路由网关,最多可设置8个。
-i 使用指定的网络界面送出数据包。
-I 使用ICMP回应取代UDP资料信息。
-m 设置检测数据包的最大存活数值TTL的大小。
-n 直接使用IP地址而非主机名称。
-p 设置UDP传输协议的通信端口。
-r 忽略普通的Routing Table,直接将数据包送到远端主机上。
-s 设置本地主机送出数据包的IP地址。
-t 设置检测数据包的TOS数值。
-v 详细显示指令的执行过程。
-w 设置等待远端主机回报的时间。
-x 开启或关闭数据包的正确性检验。

例子:

[root@myvps ~]# traceroute 67.229.29.200
traceroute to 67.229.29.200 (67.229.29.200), 30 hops max, 60 byte packets
 1  172.22.62.200 (172.22.62.200)  14.671 ms  14.597 ms  14.567 ms
 2  172.22.61.48 (172.22.61.48)  12.515 ms  12.500 ms  12.473 ms
 3  lax-dc6-1-1.it7.net (66.165.226.121)  13.803 ms  13.803 ms  13.782 ms
 4  10.253.1.1 (10.253.1.1)  0.241 ms  0.239 ms  0.213 ms
 5  10.254.0.101 (10.254.0.101)  0.319 ms  0.449 ms  0.546 ms
 6  vpls.as35908.any2ix.coresite.com (206.72.210.19)  0.300 ms  0.362 ms  0.234 ms
 7  vlan54.br08.lax10.vpls.net (184.164.193.61)  0.867 ms  0.851 ms vlan11.br7.lax10.vpls.net (184.164.193.237)  0.998 ms
 8  vlan4.hr9.lax10.vpls.net (184.164.197.141)  2.336 ms  2.351 ms  8.832 ms
 9  67.229.29.200 (67.229.29.200)  0.879 ms  0.933 ms  0.893 ms

CentOS 7 源码安装 PHP 7.4 正式版教程

1、准备编译环境

yum -y install gcc gcc-c++ autoconf bzip2 bzip2-devel libpng libpng-devel freetype-devel gmp-devel readline-devel curl-devel libxml2-devel libjpeg-devel bison openssl-devel uw-imap-devel libc-client sqlite-devel libicu-devel libedit-devel libxslt-devel
yum -y install http://mirror.centos.org/centos-7/7.7.1908/cloud/x86_64/openstack-queens/oniguruma-6.7.0-1.el7.x86_64.rpm
yum -y install http://mirror.centos.org/centos-7/7.7.1908/cloud/x86_64/openstack-queens/oniguruma-devel-6.7.0-1.el7.x86_64.rpm

以及 libzip

2、下载并解压

wget https://www.php.net/distributions/php-7.4.0.tar.bz2
tar -jxf php-7.4.0.tar.bz2
cd php-7.4.0

3、配置并构建 PHP。在此步骤您可以使用很多选项自定义 PHP,例如启用某些扩展等。 运行 ./configure –help 命令来获得完整的可用选项清单。 在本示例中,我们仅进行包含 PHP-FPM 和 MySQL 支持的简单配置。

./configure --prefix=/usr \
   --sysconfdir=/etc/php \
   --with-config-file-path=/etc/php \
   --with-config-file-scan-dir=/etc/php/php.d \
   --bindir=/usr/bin \
   --docdir=/usr/share/doc \
   --sbindir=/usr/sbin \
   --libdir=/usr/lib64/php \
   --with-libdir=/usr/lib64/php \
   --libexecdir=/usr/libexec \
   --localstatedir=/var \
   --includedir=/usr/include \
   --localedir=/usr/local \
   --datarootdir=/usr/share \
   --datadir=/usr/share/php \
   --mandir=/usr/share/man \
   --infodir=/usr/share/info \
   --enable-fpm \
   --with-fpm-user=www-data \
   --with-fpm-group=www-data \
   --enable-mysqlnd \
   --enable-mysqlnd-compression-support \
   --enable-json \
   --with-openssl-dir \
   --with-zlib-dir \
   --with-freetype \
   --enable-gd-jis-conv \
   --enable-ftp \
   --enable-filter \
   --enable-fileinfo \
   --with-curl \
   --with-iconv \
   --with-bz2 \
   --with-zlib \
   --with-zip \
   --with-xsl \
   --with-jpeg \
   --with-webp \
   --with-xpm \
   --without-iconv \
   --with-kerberos \
   --with-imap-ssl \
   --with-openssl \
   --enable-dom \
   --with-gettext \
   --with-mysqli=mysqlnd \
   --enable-pdo \
   --with-pdo-mysql=mysqlnd \
   --enable-simplexml \
   --enable-session \
   --enable-sysvsem \
   --enable-sysvmsg \
   --enable-sockets \
   --with-pear \
   --with-xmlrpc \
   --with-mhash \
   --enable-bcmath \
   --with-cdb \
   --enable-exif \
   --with-gmp \
   --enable-mbstring \
   --enable-mbregex \
   --with-readline \
   --enable-shmop \
   --enable-soap \
   --enable-sockets \
   --enable-pcntl \
   --enable-intl \
   --enable-re2c-cgoto \
   --with-libedit

4、创建配置文件,并将其复制到正确的位置。

cp php.ini-production /etc/php/php.ini
cp sapi/fpm/php-fpm.conf /etc/php/php-fpm.conf
cp sapi/fpm/www.conf /etc/php/php-fpm.d/www.conf
cp sapi/fpm/php-fpm.service /etc/systemd/system/php-fpm.service

5、需要着重提醒的是,如果文件不存在,则阻止 Nginx 将请求发送到后端的 PHP-FPM 模块, 以避免遭受恶意脚本注入的攻击。
将 php.ini 文件中的配置项 cgi.fix_pathinfo 设置为 0 。
打开 php.ini:

vi /etc/php/php.ini

定位到 cgi.fix_pathinfo= 并将其修改为如下所示:

cgi.fix_pathinfo=0

6、配置 php-fpm 服务

sudo systemctl start php-fpm

检查是否启动成功

sudo systemctl status php-fpm

如果出现错误:ERROR: [pool www] cannot get uid for user 'www-data'
则新建www-data 用户组:

groupadd www-data
useradd -g www-data www-data

设置服务自启动

sudo systemctl enable php-fpm

本文档未涵盖对 php-fpm 进行进一步配置的信息,如果您需要更多信息,请查阅相关文档。

CentOS 源码安装 icu4c 65.1 最新版。解决报错问题:

checking for icu-uc >= 50.1 icu-io icu-i18n... no
configure: error: Package requirements (icu-uc >= 50.1 icu-io icu-i18n) were not met:

Package 'icu-uc', required by 'virtual:world', not found
Package 'icu-io', required by 'virtual:world', not found
Package 'icu-i18n', required by 'virtual:world', not found

1、下载并解压

wget https://github.com/unicode-org/icu/releases/download/release-65-1/icu4c-65_1-src.tgz
tar -xf icu4c-65_1-src.tgz
cd icu/source

2、编译安装

./configure --prefix=/usr
make
make install

CentOS 源码安装 sqlite3 3.30.1 最新版。

1、下载并解压

wget https://www.sqlite.org/2019/sqlite-autoconf-3300100.tar.gz
tar -xf sqlite-autoconf-3300100.tar.gz
cd sqlite-autoconf-3300100

备用下载地址: https://down.24kplus.com/linux/sqlite/sqlite-autoconf-3300100.tar.gz

2、编译安装

./configure --prefix=/usr
make
sudo make install

3、查看已安装版本(可选)

sqlite3 --version

3.30.1 2019-10-10 20:19:45 18db032d058f1436ce3dea84081f4ee5a0f2259ad97301d43c426bc7f3df1b0b

CentOS 一键搭建 WordPress 中文最新版, 本教程仅提供学习,请勿用于商业用途和不法行为。

一键搭建脚本仅适用于CentOS 7新服务器,不支持已安装MySQL、 Nginx 、PHP的服务器。

脚本已多次通过CentOS 7系统搭建测试,暂未发现问题。如有疑问请发邮件联系我:lixiaoting0405@163.com

一键脚本会自动安装以下主要组件或软件:

  • MySQL 8.x 最新稳定版
  • Nginx 最新稳定版
  • PHP 7.3.x 最新稳定版
  • WordPress 中文最新稳定版

建议最低硬件配置:1核/1G内存/10G硬盘/1M公网带宽/1个固定公网IPV4

1、下载脚本

wget https://down.24kplus.com/linux/wordpress/wordpress-install.sh

2、执行脚本进行搭建

chmod +x wordpress-install.sh && ./wordpress-install.sh

3、根据shell脚本提示输入相关信息

1、提示设置您要绑定的域名,输入域名后按回车,也可以直接按回车使用IP地址作为WordPress访问地址

一键安装  WordPress 步骤一
一键搭建 WordPress 步骤一

2、接下来选择输入MySQL数据库root用户密码,如果不知道密码规则建议使用默认密码,否者可能导致由于密码不符合MySQL密码强度要求安装失败

 一键安装  WordPress 步骤二
一键 搭建 WordPress 步骤二

4、 耐心等待安装完成,会有如下图安装成功的提示,包含访问地址,数据库端口,数据库密码等信息

一键搭建WordPress已完成
一键搭建WordPress已完成

如果你没有记住配置信息也不要紧,一键脚本早已帮您记录到当前目录下mysql-config.txt文件。

至此已安装完毕

WordPress
WordPress

之前发过 gcc 9.2.0 的安装教程,安装过程并不复杂,但为了进一步简化,本站编写了一键安装脚本。

因 gnu.org 国内访问不稳定,或者网速慢, 安装脚本中自动下载的文件均从本站下载,如有顾虑请移步 gcc 9.2.0 的完整安装教程 自行手动安装。

一键安装脚本仅适合 CentOS 7或者CentOS 8。

安装耗时非常大,需要耐心等待、 耐心等待 、 耐心等待 ,重要的说三遍!

单核大约需要3~4个小时,如果内存低于2G需要更长时间,4核大约40分。

1、下载脚本

wget https://down.24kplus.com/linux/gcc/gcc-install.sh

2、执行脚本进行安装

安装过程中,如果 服务器 内存低于2G会自动创建一个临时的swap,安装结束后会自动删除。

chmod +x gcc-install.sh && ./gcc-install.sh

接下来就是耐心等待漫长的安装过程……

安装完成后会打印出当前gcc版本信息。

Best Trace 是 IPIP 推出的一款路由追踪器,目前有 windows,linux,mac,android,ios 共五个版本,其中 Linux 版本最为简洁,既没有网络表格化更没有地图连线,只有简单的排版打印。 此次介绍的 Best Trace 是在 linux 命令行界面下使用的工具。

在这里介绍 BestTrace 的 Linux 版本使用方式

1、下载并解压

wget https://down.24kplus.com/linux/besttrace4linux.zip
unzip besttrace4linux.zip -d besttrace4
cd besttrace4

因为官网 CDN 经常抽风,所以改为从我个人服务器下载,如果担心不安全,可以从官网下载: https://cdn.ipip.net/17mon/besttrace4linux.zip

如果出现 -bash: unzip: command not found 错误,执行:

#CentOS
yum install unzip zip -y
#Ubuntu
apt-get install unzip zip -y

更多 CentOS 错误解决方法:点击查看

2、赋予执行权

chmod +x besttrace

3、进行路由追踪

./besttrace -q1 -g cn IP

例如:

$ ./besttrace -q1 -g cn 183.56.167.125
traceroute to 183.56.167.125 (183.56.167.125), 30 hops max, 60 byte packets
  1  103.102.5.1  0.40 ms  AS131477  美国 加利福尼亚州 洛杉矶 rixcloud.com
  2  *
  3  59.43.182.78  155.69 ms  AS4809  中国 广东 广州 电信
  4  59.43.187.141  186.04 ms  AS4809  中国 广东 广州 电信
  5  59.43.130.113  191.66 ms  AS4809  中国 广东 广州 电信
  6  202.97.70.14  186.64 ms  *  中国 广东 广州 电信
  7  *
  8  121.14.112.234  159.83 ms  AS4816  中国 广东 深圳 电信
  9  183.60.20.134  191.64 ms  AS4816  中国 广东 深圳 电信
 10  183.56.167.125  160.32 ms  AS4816  中国 广东 深圳 电信

电信:其中 AS4809 就是电信CN2网络,CN2一般59开头IP段,而 AS4134 则是我们说的163网络(也有小营运商称为CN1),全称没有 AS4134 节点称为CN2 GIA,如果中间经过 AS4134 则为CN2 GT。

联通:联通出口网络一般为 AS4837,好于电信的AS4134,比 AS4809 要差一些,高峰期存在丢包现象,联通的出口带宽并不是完全没有亮点,不管是香港还是美国,联通 AS4837 几乎都能直连,很少绕路。也有部分商家为了优化联通的进出口网络,增强用户体验,在国内中转CN2网络后再出口连接到其他国家,这种也可以貌美电信CN2 GIA。

参数说明

-6, - ipv6
使用ipv6。
-J, - json
使用JSON格式打印traceroute结果。
-g, - lang string
语言现在仅支持cn和en。
-m, - maxhop int
指定traceroute将探测的最大跳数(最大生存时间值)。默认值为30.(默认为30)
-a, - noas
显示时,请勿尝试将IP地址映射到AS。
-n, - nodomain
显示时,请勿尝试将IP地址映射到主机名。
-l, - location
显示时,请勿尝试将IP地址映射到位置。
-q, - query int
设置每跳的探测包数。默认值为3.(默认值为3)
-z, - sendtime int
探针之间的最小时间间隔(默认为0)。
如果该值大于10,则它指定一个以毫秒为单位的数字,否则它是一个秒数(也允许浮点值)。
当某些路由器对ICMP消息使用速率限制时很有用。
-f, - stopop int
指定要启动的TTL。默认为1.(默认值为1)
- 同步
通过同步发送icmp包。
-T, - tcp
使用TCP SYN进行探测。
-V, - 版本
打印版本并退出。
-w, - waittime int
设置等待探测响应的时间(以秒为单位)。 (默认3)

其他平台

支持 windows,linux,mac,android,ios 共5个平台。

官方下载: https://www.ipip.net/product/client.html

linux 系统没有自带 wget 工具。当用到 wget 如果没有安装就会出现 --bash: wget: command not found,需要我们自己安装。

CentOS 安装

yum install wget -y

Ubuntu 安装

apt install wget -y