之前曾介绍过在Ubuntu22.04上安装Stable-Diffusion:
在Ubuntu22.04上部署Stable Diffusion_ubuntu stable dif-CSDN博客
这个安装我们使用conda python虚拟机。这次我们介绍的是在Ubuntu24.04安装Stable-Diffusion的最新版本V1.10.1(截止到今天最新版),并且我们这次安装不再使用conda虚拟环境。
一:安装GPU
1、安装编译环境:
apt update
apt install gcc g++
apt install make
2、禁用nouveau
vim /etc/modprobe.d/blacklist.conf
#在文件的最后添加下面两行。
blacklist nouveau
options nouveau modeset=0
#然后,输入下面的命令更新并重启。
update-initramfs -u
reboot
#重启后输入下面的命令验证是否禁用成功,成功的话这行命令不会有输出。
lsmod | grep nouveau
#驱动安装
#首先,使用apt卸载已有的驱动,命令如下。
apt-get purge nvidia*
#进入驱动所在路径,赋予执行权限,并执行安装命令
chmod +x NVIDIA-Linux-x86_64-535.86.05.run
./NVIDIA-Linux-x86_64-535.86.05.run
3、安装cuda
#下载cuda
wget https://developer.download.nvidia.com/compute/cuda/12.4.0/local_installers/cuda_12.4.0_550.54.14_linux.run
#为安装文件附权限
chmod +x cuda_12.4.0_550.54.14_linux.run
#运行安装文件
./cuda_12.4.0_550.54.14_linux.run
配置环境变量
#重启服务器后,如不生效,可直接将文件写在.bashrc里面
vim ~/.bashrc
#添加以下几句:
PATH=$PATH:/usr/local/cuda/bin
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda/lib64
#使生效
source ~/.bashrc
4、安装cudnn
#解压文件
xz -d cudnn-linux-x86_64-8.9.7.29_cuda12-archive.tar.xz
tar -xvf cudnn-linux-x86_64-8.9.7.29_cuda12-archive.tar
#拷贝文件
cp /root/cudnn-linux-x86_64-8.9.7.29_cuda12-archive/include/cudnn.* /usr/local/cuda/include/
cp /root/cudnn-linux-x86_64-8.9.7.29_cuda12-archive/lib/* /usr/local/cuda/lib64/
chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
相关文件的下载路径,请参考之前的相关文档。
二:安装python3.10
1、安装python的相关依赖
apt update
apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev wget libbz2-dev
2、从官网下载python3.10
wget https://www.python.org/ftp/python/3.10.0/Python-3.10.0.tgz
3、解压文件编译
#解压文件
tar -zvxf Python-3.10.0.tgz
#安装编译工具
apt install gcc g++
apt install make
#编译代码
cd Python-3.10.0/
./configure --enable-optimizations
make
#开始安装
make install
4、查看python版本
python3.10 --version
查看python的安装位置
which python3.10
python3.10的安装路径: /usr/local/bin/python3.10
pip3.10的安装路径:/usr/local/bin/pip3.10
5、设置软连接
ln -s /usr/local/bin/python3.10 /usr/bin/python
ln -s /usr/local/bin/pip3.10 /usr/bin/pip
6、设置python环境
vim ~/.bashrc
#添加:
alias python='/usr/local/bin/python3.10'
使配置生效:
#使配置生效:
source ~/.bashrc
#运行查看:
python
#退出
>>>exit();
三:安装Stable-Diffusion
1、下载stable-diffusion代码库
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui && cd stable-diffusion-webui
2、安装相关依赖
pip install -r requment.txt
3、启动Stable-Diffusion
cd /app/stable-diffusion-webui/
python launch.py
四:设置开机启动
vim /etc/systemd/system/stable-diffusion.service
添加以下内容
[Unit]
Description=Run Python script main.py
After=network.target
[Service]
ExecStart=/usr/bin/python /app/stable-diffusion-webui/launch.py
Restart=always
User=root
[Install]
WantedBy=multi-user.target
注意python的路径和launch.py的路径。
systemctl daemon-reload
systemctl start stable-diffusion.service
systemctl enable stable-diffusion.service
五:报错处理
ModuleNotFoundError: No module named '_lzma'
安装torch==1.9.0和torchvision==0.10.0时会报错 ModuleNotFoundError: No module named '_lzma',处理方法:
apt install liblzma-dev -y
pip install backports.lzma
编辑lzma.py
#修改前
from _lzma import *
from _lzma import _encode_filter_properties, _decode_filter_properties
#修改后
try:
from _lzma import *
from _lzma import _encode_filter_properties, _decode_filter_properties
except ImportError:
from backports.lzma import *
from backports.lzma import _encode_filter_properties, _decode_filter_properties
注意行的缩进
保存后,重启服务器,然后再执行python launch.py
http://IP:7860