linux ubuntu安装字体

首先安装字体管理工具:

sudo apt update
sudo apt -y install font-manager

然后下载ttf格式的字体

最后通过application 菜单,搜索font-manager。打开字体管理器后,点击“+”号按钮,选择ttf字体文件
reboot重启一下,就好了。

ubuntu mysql5.7升级8.0失败之后回退到5.7,看了很多篇只有一篇有用,摘录下来了

首先,告诫,如果不到万不得已,千万别去升级到mysql8,升级不成功的话,就卡在那里了,进不能进,退不能退的,很难受,搜了很多文章都没法解决,
遇到的错误就是:mysql community server is not configured yet
无论做什么操作,都是这个提示
最后终于找到一个能解决的,退回到5.7了

命令如下: 继续阅读“ubuntu mysql5.7升级8.0失败之后回退到5.7,看了很多篇只有一篇有用,摘录下来了”

windows mysql数据库迁移到linux后发现缺了几张表

到处找原因找解决方案,都没有找到,用source多次导入,最终发现导入过程的报错一闪而过,仔细翻找后发现
Unknown collation: utf8mb4_0900_ai_ci
这个情况,不晓得什么情况,我明明使用的utf8mb4_general_ci,为何到了服务器上变成utf8mb4_0900_ai_ci了。
于是将原始数据库里涉及到utf8mb4_0900_ai_ci的地方全部改成utf8mb4_general_ci,然后重新到linux服务器上source就好了
折腾了一天,就这样解决了。
注:我开发机windows+mysql5.6
源服务器:windows+mysql8
新服务器:linux+mysql5.7

同一个htaccess文件迁移服务器之后部分rewrite规则不生效的问题

之前一直好好的,最近从windows迁移到了linux服务器上,同样用apache,但是部分rewrite规则不生效。
经过对比发现apache的conf中有个这个MultiViews的差异
windows上的apache的vhost conf中没有这个MultiViews。
新安装的linux apache的enable site conf 中有这个MultiViews,删掉MultiViews之后,只保留

Options FollowSymLinks
AllowOverride All
#Require all granted

即可,其中Require all granted目前不写也可以正常rewrite,不晓得有其他什么作用。

linux certbot 给不同的网站域名使用不同的证书

linux安装配置好certbot之后,使用下面命令即可给指定的那几个域名使用同一个证书

certbot -d www.web1.com,www.web2.com --expand

如果使用下面的命令,则会对当前服务器上所有域名使用同一个证书

sudo certbot certonly --apache

每次新增了网站之后,可以单独执行-d的那条命令
如果同一台服务器配置不同的网站,也应该执行-d的那条命令
–apache的那条命令只在服务器上只安装了一个网站,或者所有网站都属于同一个网站的子域名的情况,或者你想让不同网站公用证书的情况,否则基本用不到

在Linux环境命令行中实现Wifi 连接的方法_Linux教程_Linux公社-Linux系统门户网站

无论何时要安装一款新的 Linux 发行系统,一般的建议都是让您通过有线连接来接到互联网的。

这主要的原因有两条:第一,您的无线网卡也许安装的驱动不正确而不能用;第二,如果您是从命令行中来安装系统的,管理 WiFi 就非常可怕。我总是试图避免在命令行中处理 WiFi 。但 Linux 的世界,应具有无所畏惧的精神。如果您不知道怎样操作,您需要继续往下来学习之,这就是写这篇文章的唯一原因。所以我迫使自己学习如何在命令行中管理 WiFi 连接。 继续阅读“在Linux环境命令行中实现Wifi 连接的方法_Linux教程_Linux公社-Linux系统门户网站”

CentOS 命令行下连接加密模式为 WPA/WPA2-PSK 的无线网络 – 周丕中的生活技术博客

记录了 CentOS 最小化安装后如何配置和连接无线网络,当时的情况是路由器使用的 WEP 加密方式,所以设置密码的时候可以直接使用明文密码。后来当把路由器的加密模式设置为 WPA/WPA2-PSK的时候,发现已经无法连接无线网络了,原因是当使用 WPA/WPA2-PSK 加密模式之后客户端不能直接发送明文密码,而是要使用加密之后的密码,既然我们知道了原因我们该怎么做呢。

首先我们要安装一个帮我们生成加密密码并配置网卡的工具包 wpa_supplicant 继续阅读“CentOS 命令行下连接加密模式为 WPA/WPA2-PSK 的无线网络 – 周丕中的生活技术博客”

Python下的pip的安装源的切换

环境:centos 6.9 x64 minimal
cd ~
mkdir .pip
ls ~/.pip
vi ~/.pip/pip.conf
i
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
esc
wq

试试速度飞快了
或者
cd ~
mkdir .pip
pip install turtle –trusted-host mirrors.aliyun.com
我没成功,不知道为何

centos 6.5 tensorflow 的安装,找不到GLIBCXX_3.4.15的解决办法 – happyboy2 – 博客园

下载安装后 启动的时候提示 GLIBCXX_3.4.15,发现libstdc++.so.6的版本过,

在安装qt-creator的时候运行这个IDE就出现了这个问题,是由于libstdc++.so.6的版本过低,需要下载个新的重新建立软连接。

我这里是 更新里 gcc 版本到 4.8 解决的,更新之后做里链接 继续阅读“centos 6.5 tensorflow 的安装,找不到GLIBCXX_3.4.15的解决办法 – happyboy2 – 博客园”

CentOS6.5上安装Python2.7和PIP进而安装TensorFlow的shell脚本

安装环境:centos6.5 minimal,x64,全互联网连接

#不执行升级可能也可以
yum upgrade
yum groupinstall "Development tools" -y
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel -y
yum install wget -y
#wget https://www.python.org/ftp/python/2.7.11/Python-2.7.11.tgz
wget http://mirrors.sohu.com/python/2.7.11/Python-2.7.11.tgz
tar vxf Python-2.7.11.tgz
cd Python-2.7.11
./configure --prefix=/usr/local
make && make install
cd ../
#wget https://pypi.python.org/packages/ff/d4/209f4939c49e31f5524fa0027bf1c8ec3107abaf7c61fdaad704a648c281/setuptools-21.0.0.tar.gz#md5=81964fdb89534118707742e6d1a1ddb4
wget http://pypi.doubanio.com/packages/ff/d4/209f4939c49e31f5524fa0027bf1c8ec3107abaf7c61fdaad704a648c281/setuptools-21.0.0.tar.gz
tar vxf setuptools-21.0.0.tar.gz 
cd setuptools-21.0.0
python setup.py  install
cd ../
#wget https://pypi.python.org/packages/41/27/9a8d24e1b55bd8c85e4d022da2922cb206f183e2d18fee4e320c9547e751/pip-8.1.1.tar.gz#md5=6b86f11841e89c8241d689956ba99ed7
wget http://pypi.doubanio.com/packages/41/27/9a8d24e1b55bd8c85e4d022da2922cb206f183e2d18fee4e320c9547e751/pip-8.1.1.tar.gz
tar vxf pip-8.1.1.tar.gz 
cd pip-8.1.1
python setup.py install
pip
pip install psutil
cd ../
#tensorflow 安装命令
pip install  https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.6.0-cp27-none-linux_x86_64.whl
#安装之后的升级命令
pip install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.6.0-cp27-none-linux_x86_64.whl
#接下来就可以运行了,但。。。
#可能会遭遇ImportError: /lib64/libc.so.6: version 'GLIBC_2.17' not found
ll /lib64/libc.so.6
cd tf/installerpkg/
wget http://mirrors.ustc.edu.cn/gnu/libc/glibc-2.17.tar.xz
xz -d glibc-2.17.tar.xz
tar xvf glibc-2.17.tar
mkdir glibc-build-2.17
cd glibc-build-2.17/
../glibc-2.17/configure --prefix=/usr
make
make install
ll /lib64/libc*
ll /lib64/libc.so.6
cd ~
#还可能会遭遇ImportError: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found
strings /usr/lib64/libstdc++.so.6 | grep GLIBC
ls -l /usr/lib64/libstdc++.so.6
#实际下载太慢,我是下载到本地进行的后续操作。
wget http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-4.8.1/gcc-4.8.1.tar.bz2
tar -jxvf gcc-4.8.1.tar.bz2
cd gcc-4.8.1
./contrib/download_prerequisites
cd ..
mkdir gcc-build-4.8.1
cd gcc-build-4.8.1
#下次可尝试增加prefix=/usr参数试试,这样可能就不需要手动处理下面那个软连接了(已测试完全可以)
../gcc-4.8.1/configure --prefix=/usr --enable-checking=release --enable-languages=c,c++ --disable-multilib
#默认单核,搞了快1个小时,8核十几分钟
make -j8
make install
g++ --version
gcc --version
ll /usr/lib64/libstdc++.so.6
ls /usr/lib64/
ls /usr/local/lib64/
strings /usr/lib64/libstdc++.so.6 | grep GLIBC
mv /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6.bak
#网上看到的是这句,不知道行不行。ln -s /usr/lib64/libstdc++.so.6 /usr/local/lib64/libstdc++.so.6.0.18
ln -s /usr/local/lib64/libstdc++.so.6.0.18 /usr/lib64/libstdc++.so.6
ls /usr/local/lib64/
ls /usr/lib64/
strings /usr/lib64/libstdc++.so.6 | grep GLIBC

安装环境:centos6.5 minimal,x64,半互联网连接

#不执行升级可能也可以
yum upgrade
yum groupinstall "Development tools" -y
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel -y
yum install wget -y
#wget https://www.python.org/ftp/python/2.7.11/Python-2.7.11.tgz
#wget http://mirrors.sohu.com/python/2.7.11/Python-2.7.11.tgz
cd ~/tf/installerpkg
tar vxf Python-2.7.11.tgz
cd Python-2.7.11
./configure --prefix=/usr/local
make && make install
cd ../
#wget https://pypi.python.org/packages/ff/d4/209f4939c49e31f5524fa0027bf1c8ec3107abaf7c61fdaad704a648c281/setuptools-21.0.0.tar.gz#md5=81964fdb89534118707742e6d1a1ddb4
#wget http://pypi.doubanio.com/packages/ff/d4/209f4939c49e31f5524fa0027bf1c8ec3107abaf7c61fdaad704a648c281/setuptools-21.0.0.tar.gz
tar vxf setuptools-21.0.0.tar.gz 
cd setuptools-21.0.0
python setup.py  install
cd ../
#wget https://pypi.python.org/packages/41/27/9a8d24e1b55bd8c85e4d022da2922cb206f183e2d18fee4e320c9547e751/pip-8.1.1.tar.gz#md5=6b86f11841e89c8241d689956ba99ed7
#wget http://pypi.doubanio.com/packages/41/27/9a8d24e1b55bd8c85e4d022da2922cb206f183e2d18fee4e320c9547e751/pip-8.1.1.tar.gz
tar vxf pip-8.1.1.tar.gz 
cd pip-8.1.1
python setup.py install
pip
pip install psutil
cd ../
#tensorflow 安装命令
pip install  https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.6.0-cp27-none-linux_x86_64.whl
#安装之后的升级命令
pip install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.6.0-cp27-none-linux_x86_64.whl
#接下来就可以运行了,但。。。
#可能会遭遇ImportError: /lib64/libc.so.6: version 'GLIBC_2.17' not found
ll /lib64/libc.so.6
#wget http://mirrors.ustc.edu.cn/gnu/libc/glibc-2.17.tar.xz
xz -d glibc-2.17.tar.xz
tar xvf glibc-2.17.tar
mkdir glibc-build-2.17
cd glibc-build-2.17/
../glibc-2.17/configure --prefix=/usr
make
make install
ll /lib64/libc*
ll /lib64/libc.so.6
cd ..
#还可能会遭遇ImportError: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found
strings /usr/lib64/libstdc++.so.6 | grep GLIBC
ls -l /usr/lib64/libstdc++.so.6
#实际下载太慢,我是下载到本地进行的后续操作。
#wget http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-4.8.1/gcc-4.8.1.tar.bz2
tar -jxvf gcc-4.8.1.tar.bz2
#cd gcc-4.8.1
#此处通过网络下载太慢,更换为本地安装方式。./contrib/download_prerequisites
tar -xjf gmp-4.3.2.tar.bz2
tar -xjf mpfr-2.4.2.tar.bz2
tar -xzf mpc-0.8.1.tar.gz
mv gmp-4.3.2 gcc-4.8.1/gmp
mv mpfr-2.4.2 gcc-4.8.1/mpfr
mv mpc-0.8.1 gcc-4.8.1/mpc
mkdir gcc-build-4.8.1
cd gcc-build-4.8.1
#下次可尝试增加prefix=/usr参数试试,这样可能就不需要手动处理下面那个软连接了(已测试完全可以)
../gcc-4.8.1/configure --prefix=/usr --enable-checking=release --enable-languages=c,c++ --disable-multilib
#默认单核,搞了快1个小时,8核十几分钟
make -j8
make install
g++ --version
gcc --version
ll /usr/lib64/libstdc++.so.6
ls /usr/lib64/
ls /usr/local/lib64/
strings /usr/lib64/libstdc++.so.6 | grep GLIBC
cd ~/tf/t1/
python t1.py

如何搭建一个属于自己的直播平台? – OPEN 开发经验库

现在直播非常火爆,可以从PC或手机直播,然后从PC或是手机或是 支持HTML5的浏览器 收看。但是,你知道直播平台后面的技术和实现原理码?

正好去年过年的时候,一个朋友破解了AirPlay和Chromecast协议,然后开发了一套技术能够截获和播放任何手机(iOS或是Android)屏幕上的任何内容。想到的第一个应用是做一个 直播的直播服务如有感兴趣的投资人,可以联系 )。比如,通过屏幕直播,你可以邀请朋友看你正在看的直播的电影,球赛,演唱会,晚会,不管是免费的还是付费的。当初的想法是将屏幕的内容,通过AirPlay或Chromecast,推送到后台服务器,然后,受邀的朋友就可以从浏览器或是其它视频播放器观看了。为此,我们搭建和开发了一个直播平台,现在把我们实现的过程记录下来和大家共享。

首先,视频有它的播放协议。原则上,RTSP,RTMP,HTTP都可以做直播和点播,但一般做直播用RTSP和RTMP,做点播用HTTP。我们选用的是RTMP协议。 继续阅读“如何搭建一个属于自己的直播平台? – OPEN 开发经验库”

使用 Linux 文本工具简化数据的提取

Linux 操作系统中有很多文件:配置文件、文本文件、文档文件、日志文件、用户文件,这个清单还在不断增长。通常,这些文件都包含了要查找重要数据所需要访问的一些信息。尽管我们可以简单地使用诸如 cat、more 之类的标准工具将大部分文件的内容输出到屏幕上,但是系统中有更加合适的工具可以对文本进行过滤和处理,这样就可以只关心我们想要的内容。

在阅读本文的过程中,您可以打开 shell 并体验一下每个工具的例子。我推荐cut和awk两个工具,很强大,很好用。 继续阅读“使用 Linux 文本工具简化数据的提取”

ffmpeg+nginx+nginx-rtmp-module 搭建 rtmp hls http 流媒体服务器成功经验分享

Nginx本身是一个非常出色的HTTP服务器,FFMPEG是非常好的音视频解决方案.这两个东西通过一个nginx的模块nginx-rtmp-module,组合在一起即可以搭建一个功能相对比较完善的流媒体服务器。这个流媒体服务器可以支持RTMP和HLS(Live Http Stream)

nginx配合ffmpeg做流媒体服务器的原理是: nginx通过rtmp模块提供rtmp服务, ffmpeg推送一个rtmp流到nginx, 然后客户端通过访问nginx来收看实时视频流. HLS也是差不多的原理,只是最终客户端是通过HTTP协议来访问的,但是ffmpeg推送流仍然是rtmp的。如图所示: 继续阅读“ffmpeg+nginx+nginx-rtmp-module 搭建 rtmp hls http 流媒体服务器成功经验分享”