Ubuntu20.04镜像下载
使用 UltraISO 拷入镜像
vi /etc/apt/apt.conf.d/10periodic
vi /etc/apt/apt.conf.d/20auto-upgrades
后面部分全部改成 “0”
sudo apt-mark hold linux-image-generic linux-headers-generic # 禁止内核自动更新(很重要,避免内核自动更新后,无法使用显卡驱动)
sudo apt-get install openssh-server # ssh 服务
sudo apt install nautilus-admin # 以管理员权限打开文件或文件夹
nautilus -q 重启服务
https://www.bt.cn/new/download.html # 安装宝塔,选择ubuntu20.04
挂载磁盘 (修改磁盘路径,可读写,权限所有人)
nosuid,nodev,nofail,x-gvfs-show
直接用磁盘格式化分区!!!!!
静态ip
# Let NetworkManager manage all devices on this system
network:
ethernets:
enp2s0:
dhcp4: no
addresses: [27.0.0.14/27]
optional: true
gateway4: 27.0.0.1
nameservers:
addresses: [222.222.222.222]
version: 2
显卡驱动
如果图形模式上有可以安装的显卡驱动就用,如果没有或安装失败,就使用下边的
ubuntu-drivers devices # 查看本机适用的驱动
sudo apt install nvidia-driver-510 # 选择一个进行安装
modprobe nvidia # 挂载显卡驱动
YOLOX + TensorRT 加速推理部署
nvidia-tensorrt加速器安装:
pip install nvidia-tensorrt==8.0.3.4 --index-url https://pypi.ngc.nvidia.com
torch2trt 库安装:
git clone https://github.com/NVIDIA-AI-IOT/torch2trt
cd torch2trt
python setup.py install
# 安装完成 linux就这么简单,建议放弃win pytorch转tensorrt模型转换::
python tools/trt.py
YOLOv7 + TensorRT 加速推理部署
NVIDIA TensorRT 8.x 下载
yolov7-tensorrt-github
需要两个conda虚拟环境 .pt 转 ONNX 需要torch版本1.7.1 cpu
pip install torch==1.7.1+cpu torchvision==0.8.2+cpu torchaudio==0.7.2 -f https://download.pytorch.org/whl/torch_stable.html
安装其他库:
pip install pandas requests opencv-python tqdm pyyaml matplotlib seaborn onnx
克隆yolov7-tensorrt-github 仓库(上边有连接) 导出含有EfficientNMS的ONNX模型。
python export_onnx.py --weights ./weights/yolov7.pt
'这个虚拟环境可以去转onnx模型了!!!'
tensorrt推理使用GPU环境:
pip install torch==1.9.0+cu111 torchvision==0.10.0+cu111 torchaudio==0.9.0 -f https://download.pytorch.org/whl/torch_stable.html
安装NVIDIA TensorRT:官网下载(上边有官方连接)下载后解压TAR
添加环境变量
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/akkj/TensorRT-8.4.1.5/lib
激活环境 source ~/.bashrc
复制tensorRT目录下 lib、include文件夹到系统文件夹(或者将这两个文件夹路径添加到.bashrc文件中)
sudo cp -r ./lib/* /usr/lib
sudo cp -r ./include/* /usr/include
进入python文件 pip安装
pip install tensorrt-8.4.1.5-cp37-none-linux_x86_64.whl
cd ../uff
pip install uff-0.6.9-py2.py3-none-any.whl
cd ../graphsurgeon
pip install graphsurgeon-0.4.6-py2.py3-none-any.whl
安装成功进入Python import tensorrt 无报错安装成功
将生成的onnx模型复制到tensorrt/bin文件夹下,使用官方trtexec转化添加完EfficientNMS的onnx模型。FP32预测删除--fp16参数即可。
./trtexec --onnx=./yolov7.onnx --saveEngine=./yolov7_fp16.engine --fp16 --workspace=200
端口开放、持久化
sudo apt install iptables-persistent
sudo netfilter-persistent save
sudo netfilter-persistent reload
设置开机自启
sudo vim /etc/rc.local
内容:::
#!/bin/sh -e
#rc.local
sudo netfilter-persistent reload
echo "开机启动iptables" >> /usr/local/rc.log
exit 0
删除某个deb软件包:
查看软件包名 dpkg -l | grep google
卸载 sudo apt remove 名称
huggingface 克隆整个仓库:
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash
sudo apt-get install git-lfs
git lfs install
git clone https://huggingface.co/username/model_name
gradio 轻松实现AI算法可视化部署
import gradio as gr
import cv2
def to_black(image):
output = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
return output
interface = gr.Interface(fn=to_black, inputs="image", outputs="image")
# 执行指定函数 输入类型(一张图片) 输出类型(一张图片)
# gr.Interface(inference_video,
# [gr.inputs.Video(type="mp4", label="Input"),], 输入一个视频,在方法中得到的是视频路径
# outputs = ['video','file'], 输出一个视频,在界面上显示一个视频画面可以播放,另一个在下方可以点击下载
# examples=[['inputs/onepiece_demo.mp4']]) 视频例子
interface.launch()
# .launch(server_name='218.59.174.20',server_port=8094,enable_queue=True)
# 指定ip地址 指定端口号 显示队列
google浏览器无法翻译,在hosts(win:C:\Windows\System32\drivers\etc\hosts linux:/etc/hosts)中添加:
172.217.215.90 translate.googleapis.com
172.253.115.90 translate.googleapis.com
142.250.126.90 translate.googleapis.com
142.250.10.90 translate.googleapis.com
142.250.0.90 translate.googleapis.com
打开磁盘占用分析器,扫描时部分文件没有权限
sudo baobab /
桌面卡死,可以在宝塔或openssh远程终端输入这个命令
sudo service lightdm restart
Ubuntu 创建共享文件夹
安装:sudo apt install samba
# 因为是在home下创建的共享文件夹,所以,需要一个新的用户名
修改【文件夹名】目录的权限:chmod 777 /home/【用户名】/【文件夹名】
编辑 /etc/samba/smb.conf 末尾增加配置
[【文件夹名】]
path=/home/【用户名】/【文件夹名】
available=yes
browseable=yes
public=yes
writable=yes
在 /etc/samba/下创建一个名为smbpasswd的文件:sudo touch /etc/samba/smbpasswd
sudo useradd 【用户名】
给共享文件夹创建一个账号:sudo smbpasswd -a 【用户名】
接下来需要输入两边密码,创建成功
重启samba服务:service smbd restart
其他Ubuntu挂载共享文件夹
安装cifs-utils:sudo apt install cifs-utils
挂载共享文件夹:sudo mount -t cifs //【ip地址192.168.1.120】/【挂载的文件夹名】 /home/【挂载的位置】 -o username=【用户名】,password=【密码】
比如,我在共享服务器上/home/all_data/share位置创建了共享,那么就需要写//192.168.1.120/all_data/share
挂载到其他服务器的位置就写/home/all_data/share,需要在执行这条命令之前,先创建好文件夹
例:sudo mount -t cifs //192.168.1.120/share /home/all_data/share -o username=yundao,password=yundao
开机自挂载:
sudo gedit /etc/fstab
//192.168.1.120/share /home/all_data/share cifs defaults,username=yundao,password=yundao
如果开机没有挂载上,可以使用sudo mount -a,重新挂载