把windows的共享文件夹mount到ubuntu
sudo apt-get install -y cifs-utils
sudo mount -t cifs //192.168.112.1/f/vPrograms/files1 /var/www/html/ -o username=user,password=123456
又一个WordPress站点
把windows的共享文件夹mount到ubuntu
sudo apt-get install -y cifs-utils
sudo mount -t cifs //192.168.112.1/f/vPrograms/files1 /var/www/html/ -o username=user,password=123456
root@mee-ubuntu22:/home/mee/桌面# smbstatus
invalid permissions on directory ‘/var/lib/samba/private/msg.sock’: has 0777 should be 0700
Unable to initialize messaging context!
root@mee-ubuntu22:/home/mee/桌面# chmod 0700 /var/lib/samba/private/msg.sock
root@mee-ubuntu22:/home/mee/桌面# smbstatus
链接:https://pan.baidu.com/s/1yBCDbDYUmQWjcM1SdS7Xng
提取码:t37m
cd /usr/local
tar -xvf mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz
mv mysql-8.0.21-linux-glibc2.12-x86_64 /usr/local/mysql
mkdir /usr/local/mysql/data
groupadd mysql
useradd -g mysql mysql
chown -R mysql.mysql /usr/local/mysql/
mkdir mysql_install_db
chmod 777 ./mysql_install_db
注意:以上操作也是在/usr/local路径下
切换到/usr/local/mysql路径下
cd mysql
初始化数据库
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
看到初始密码,记下来
vim /etc/my.cnf
将下面的内容添加到该文件中:
[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
socket = /usr/local/mysql/mysql.sock
character-set-server=utf8
port = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[client]
socket = /usr/local/mysql/mysql.sock default-character-set=utf8
vi /etc/profile
在最下面添加这两行代码:
export PATH=$PATH:/usr/local/mysql/bin:/usr/local/mysql/lib
export PATH
重新加载配置文件
source /etc/profile
下图所示 报错 ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/usr/local/mysql/mysql.sock’ (2)
sudo /usr/local/mysql/support-files/mysql.server start
mysql -uroot -p
成功登录
修改密码
ALTER user 'root'@'%' IDENTIFIED BY '这里写你的新密码';
use mysql;
update user set host='%' where user='root' limit 1;
flush privileges;
firewall-cmd --zone=public --add-port=3306/tcp --permanent;
firewall-cmd --reload;
firewall-cmd --list-ports;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的之前设置的新密码';
flush privileges;
cp /usr/local/mysql/support-files/mysql.server /usr/local/bin
使用方式:
启动
mysql.server start
停止
mysql.server stop
在mysql的bin目录下面创建启动脚本
cd /usr/local/mysql/bin
vim mysql_start.sh
mysql_start.sh中写入以下内容,并保存
sudo /usr/local/mysql/support-files/mysql.server start
对mysql_start.sh授权
chmod +x ./mysql_start.sh
修改 /etc/rc.d/rc.local 文件,保证开机就执行mysql启动脚本
vim /etc/rc.d/rc.local
在rc.local文件内容的最下面一行写入启动脚本,然后保存
# 开机启动mysql
/usr/local/mysql/bin/mysql_start.sh
对rc.local授权
chmod +x /etc/rc.d/rc.local
reboot
我们前面介绍了如何通过Windows Server生成证书(Windows Server配置生成认证证书),也介绍了如何通过easy-RSA生成证书文件(使用Easy-RSA配置生成SSL证书)。
其实,我们再安装了一个崭新的CentOS之后,系统自带的有一个OpenSSL工具,这是一个强大的安全套接字层密码库,可以用于实现各种加密和认证协议,如 SSL/TLS;当然也可以生成证书。
不过系统自带的版本时间比较早,即使更新软件也还是这个版本。但如果我们访问OpenSSL官方网站(https://www.openssl.org/source/),我们能看到官网都已经是3.x的版本了,而且有明确提醒,1.0.2版本已经不被支持且应当停止使用。
目前在维护的这几个版本中,OpenSSL 3.0.14引入了新的 API,同时弃用了一些旧的不安全的功能,提高了安全性;OpenSSL 3.1系列引入了更多的新特性,比如支持TLS 1.3的零圆周密钥交换(0-RTT Key Exchange),更好的证书验证等;OpenSSL 3.2系列增加了对QUIC协议的支持,以及其他一些增强TLS安全性的特性;OpenSSL 3.3系列进一步增强了TLS和QUIC的功能,提升了性能,并且持续对代码进行了现代化改造。
如果老版本不能使用、并且无法通过yum更新的话,那就只能编译安装了。
在安装新版本之前,我们首先需要卸载旧版本。yum remove openssl
然后下载最新的3.3.1版本。wget https://www.openssl.org/source/openssl-3.3.1.tar.gz
编译安装可能会用到比较多的依赖,比如GCC编译器、perl等,经过多次尝试,发现依赖的编译环境如下:yum install -y gcc gcc-c++ zlib-devel libtool autoconf automake perl perl-IPC-Cmd perl-Data-Dumper perl-CPAN
解压下载的源码包。tar -zxvf openssl-3.3.1.tar.gz
进入解压后的目录:cd openssl-3.3.1
配置安装选项:
运行config脚本来配置安装选项,设置安装目录为/usr/local/openssl-3.3.1。./config --prefix=/usr/local/openssl-3.3.1 shared zlib-dynamic enable-ec_nistp_64_gcc_128
运行make命令来编译安装OpenSSL。make && make install_sw
安装完成之后,生成了新的执行文件,需要创建一个新的软链接指向新安装的 OpenSSL。
ln -s /usr/local/openssl-3.3.1/lib64/libcrypto.so.3 /usr/lib64/libcrypto.so.3ln -s /usr/local/openssl-3.3.1/lib64/libssl.so.3 /usr/lib64/libssl.so.3ln -s /usr/local/openssl-3.3.1/bin/openssl /usr/bin/openssl
为了使系统能够在全局范围内访问openssl命令,需要更新PATH环境变量。编辑 ~/.bashrc 或 ~/.bash_profile 文件,在文件末尾添加环境变量。vi ~/.bash_profileexport PATH=$PATH:/usr/local/openssl-3.3.1/bin
保存文件后,刷新环境变量使其立即生效:source ~/.bash_profile
运行命令验证新安装的OpenSSL版本。openssl version
可以看到,2024年6月4日的3.3.1版本安装成功
下载种子
Raspberry Pi OS (Legacy) with desktop and recommended software
下载下载器
使用 image 1.8.5 版本把image 下载到TF卡。
更新系统软件
sudo apt-get update -y
===================
sudo mkdir -p /var/www
sudo chown -R mee /var/www
sudo mkdir -p /var/www/module
sudo mkdir -p /var/www/setup
sudo mkdir -p /var/www/html
sudo mkdir -p /var/www/develop
==
sudo mkdir -p /var/www/module
sudo mkdir -p /var/www/setup
sudo mkdir -p /var/www/html
sudo mkdir -p /var/www/develop
#sudo systemctl stop iptables
#firewalld
#systemctl disable firewalld
cd /var/www/setup
sudo apt-get install -y gedit
sudo apt-get install -y vim
#sudo apt-get install -y net-utils
#sudo apt-get install -y epel-release
sudo apt-get install -y gcc
#sudo apt-get install -y gccc++
sudo apt-get install -y build-essential
sudo apt-get -y install libtool
sudo apt-get -y install libboost-all-dev
sudo apt-get -y install libxml2-dev
#sudo apt-get install -y pcre pcre-devel
#sudo apt-get install -y pcre3
sudo apt-get install -y libpcre3
sudo apt-get install -y libpcre3-dev
pkg-config --version
#sudo apt-get install -y zlib zlib-devel
#sudo apt-get install -y libzlib-dev
sudo apt-get install -y zlib1g-dev
sudo apt-get install -y openssl
#sudo apt-get install -y openssl-devel
sudo apt-get install -y libssl-dev
sudo apt-get install -y curl
sudo apt-get install -y libcurl4-openssl-dev
sudo apt-get install -y cmake
sudo apt-get install libopencv-dev
sudo apt-get install -y nginx
sudo systemctl start nginx
sudo systemctl enable nginx
sudo apt-get install -y php php-fpm php-mysqlnd php-gd php-mbstring php-sqlite3
sudo apt-get install -y samba
sudo apt-get install -y samba-client
sudo groupadd smbgroups -g 6000
sudo useradd smbuser1 -u 6000 -g 6000 -s /sbin/nologin -d /dev/null
#sudo smbpasswd -a smbuser1
#创建组
sudo groupadd -r smbgroups1
#创建公司宣传组宣传员工账号
sudo useradd -M -G smbgroups1 -s /sbin/nologin itdev
# 创建可查两组老板账号
sudo useradd -M -G smbgroups,smbgroups1 -s /sbin/nologin boss
#查看组中账号
id boss
#给账号设置密码
pdbedit -a smbuser1
pdbedit -a itdev
pdbedit -a boss
#net use C$">\\192.168.2.128\IPC$ /delete
#修改文件:/etc/selinux/config,然后重启系统。
#SELINUX=disable
setenforce 0
sudo systemctl stop smb
sudo systemctl start smb
#vi /etc/samba/smb.conf
#[sambashare_user]
# comment = test resource
# path = /var/www
# writeable = yes
# browseable = yes
# write list = mee
# public = no
cd /var/www/module
wget http://121.8.160.182:18888/Download/temp/nginx-http-flv-module-master.zip
wget http://121.8.160.182:18888/Download/temp/nginx-rtmp-module-master.zip
unzip nginx-http-flv-module-master.zip
mv /var/www/module/nginx-http-flv-module-master /var/www/module/nginx-http-flv-module
unzip nginx-rtmp-module-master.zip
mv /var/www/module/nginx-rtmp-module-master /var/www/module/nginx-rtmp-module
rm -f nginx-http-flv-module-master.zip
rm -f nginx-rtmp-module-master.zip
#cd /var/www/setup
#wget http://www.ingridmillet.com.cn/source/armhf/zlib-1.2.11.tar.gz
#tar -zxvf zlib-1.2.11.tar.gz
#cd zlib-1.2.11
#./configure --prefix=/usr/local/zlib/
#make && make install
#rm -f /var/www/setup/zlib-1.2.11.tar.gz
#cd /var/www/setup
#1.下载
#wget http://curl.haxx.se/download/curl-7.38.0.tar.gz
#2.解压
#tar -xzvf curl-7.38.0.tar.gz
#3.安装
#cd curl-7.38.0
#./configure --prefix=/usr/local/curl
#sudo make
#sudo make install
#把头文件拷到共有位置,不拷的话,编译程序,会出错 ,除非-I/usr/include替代
#sudo cp -r /usr/local/curl/include/curl /usr/include/curl
#把库文件拷到共有位置,不拷的话,编译程序, -lcurl 会出错
#sudo cp -r /usr/local/curl/lib/libcurl* /usr/lib
#--------------
#sudo apt-get install -y gtk2-devel gtk3-devel
sudo apt-get install -y gtk+3.0
sudo apt-get install -y gtk-app-menu-applet
gtk-3.0 --version
pkg-config --list-all | grep gdk-
dpkg -l | grep gdk
sudo apt-get install -y build-essential
sudo apt-get install -y gtk-doc
sudo apt-get install -y libpng
sudo apt-get install -y libgtk-3-dev
sudo ldconfig
sudo apt-get install -y libghc-gtk-dev
sudo apt-get install -y libhildonm-dev
sudo apt-get install -y libcluter-gtk-0.10-dev
#您还可以使用以下命令从源代码安装最新版本:
wget http://ftp.gtk.org/pub/gtk/v3.20/gtk-3.20.4.tar.xz
tar xf gtk-3.20.4.tar.xz
cd gtk-3.20.4
./configure
make
make install
# 安装GTK主题和图标:
#sudo apt-get install -y gtk-themes
sudo apt-get install -y gtk2-engines-murrine
sudo apt-get install -y gtk2-engines-pixbuf
sudo apt-get install -y gtk3-engines-unico
sudo apt-get install -y clang
sudo apt-get install -y llvm
sudo apt-get install -y lldb
#sudo apt-get install -y cmake
sudo apt-get install -y libcanberra-gtk-module
sudo apt-get install -y qtbase5-dev
sudo apt-get install -y qtbase5-dev-tools
sudo apt-get install -y qtchooser
sudo apt-get install -y qt5-qmake
sudo apt-get install -y qtcreator
sudo apt-get install -y qtbase5-examples
sudo apt-get install -y qtbase5-doc-html
sudo apt-get install -y libgtk2.0-dev
sudo apt-get install -y pkg-config
sudo apt-get install -y libswscale-dev
sudo apt-get install -y libjpeg-dev
sudo apt-get install -y libpng-dev
sudo apt-get install -y libtiff-dev
#下载opencv-3.4.14
cd /var/www/setup
wget http://www.ingridmillet.com.cn/source/armhf/opencv-3.4.14.tar.gz
tar -zxvf opencv-3.4.14.tar.gz
cd opencv-3.4.14
mkdir release
cd release
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D BUILD_PYTHON_SUPPORT=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D WITH_OPENGL=ON -D WITH_GTK=ON ..
#由于最新的树莓派Ubuntu 23.10操作系统默认安装的gcc和g++编译工具版本较高,在编译过程中可能会出现下述错误:
#error: comparing the result of pointer addition '(src + ((sizetype)off))' and NULL [-Werror=address]
#这个问题的解决方案是找到“”
#路径下出错模型对应的“flags.make”文件,
#./release/modules/core/CMakeFiles/opencv_core.dir/flags.make
#使用文本编辑器打开,
#删除其中的“ -Werror=address”这些字符,然后进行保存。再次运行sudo make编译即可。
make
make install
rm -f /var/www/setup/opencv-3.4.14.tar.gz
cd /var/www/setup
mkdri WiringPi
wget https://project-downloads.drogon.net/wiringpi-latest.deb
sudo dpkg -i wiringpi-latest.deb
#git clone https://github.com/WiringPi/WiringPi
export PATH=/usr/local/include:$PATH
1.wiringpi/gpio
anaconda prompt
conda -V
conda update conda
conda create --name python39 python=3.9
conda activate python39
conda install mamba -c conda-forge
mamba install cartopy -c conda-forge
mamba install matplotlib -c conda-forge
mamba install scikit-learn -c conda-forge
mamba install xlrd xlsxwriter xlwings openpyxl
mamba install gdal -c conda-forge
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple spyder-kernels==2.1.3
conda create --name SDUI python=3.10.14
conda activate SDUI
pip install accelerate
pip install blendmodes
pip install clean-fid
pip install diskcache
pip install einops
pip install facexlib
pip install gradio==3.41.2
pip install jsonmerge
pip install kornia
pip install omegaconf
pip install open-clip-torch
pip install piexif
pip install pytorch_lightning
pip install resize-right
pip install tomesd
pip install torch
pip install torchdiffeq
pip install torchsde
pip install transformers==4.30.2
pip install pillow-avif-plugin==1.4.3
1.下载windows版本的anaconda
https://repo.anaconda.com/archive/Anaconda3-2024.02-1-Windows-x86_64.exe
这里我安装到E盘,安装后需要更新到2.6.1版本
2.创建环境 TF215, python版本3.11.9
3.运行Anaconda Prompt
4. 激活 TF215
conda acitvate TF215
5.安装cudatoolkit
conda install cudatoolkit=10.1
6. 安装cudnn
conda install cudnn=7.6
7.安装tensorflow
pip install tensorflow==2.15.0
8. 运行python
python
>> import tensorflow as tf
>> tf.__version__ #测试,显示TF版本
'2.15.0'
>>
9.下载PyCharm
https://www.jetbrains.com/pycharm/download/?section=windows
选择Community Edition版本
10. 安装PyCharm
11.新建一个py项目
import tensorflow as tf
tensorflow_version = tf.__version__
gpu_available = tf.config.list_physical_devices('GPU')
print(tf.test.is_built_with_cuda())
print("tf ver",tensorflow_version,"\tGPU available:", gpu_available)
a = tf.constant([1.0, 2.0], name ="a")
b = tf.constant([1.0, 2.0], name ="b")
result = tf.add(a,b,name="add")
print(result)
AI 入门,从零搭建完整 AI 开发环境,并写出第一个 AI 应用
麻辣排骨面
已于 2024-05-09 20:08:44 修改
阅读量2k
收藏 20
点赞数 14
文章标签: 人工智能 neo4j web安全 redis 架构
版权
人工智能(AI)是当今科技领域中备受瞩目的领域之一,它正在改变我们的生活方式、工作方式以及与技术互动的方式。本文将带您从零开始,一步步搭建一个完整的AI开发环境,并创建一个简单的AI应用程序,以便您能够亲身体验AI的魅力。
第一部分:准备工作
在开始之前,我们需要做一些准备工作。这包括安装必要的工具和设置开发环境。
1.1. 安装Python
Python是AI领域的首选编程语言之一,我们将使用Python来编写我们的AI应用。您可以从Python官方网站(https://www.python.org/)下载并安装最新版本的Python。
安装完成后,您可以在命令行中运行以下命令来验证Python是否正确安装:
python –version
1
1.2. 安装Anaconda
Anaconda是一个强大的Python数据科学和机器学习平台,它包含了许多常用的数据科学工具和库。您可以从Anaconda官方网站(https://www.anaconda.com/)下载并安装Anaconda。
1.3. 创建虚拟环境
为了隔离不同项目的依赖关系,我们建议在Anaconda中创建一个虚拟环境。使用以下命令创建一个名为ai_env的虚拟环境:
conda create –name ai_env python=3.8
1
然后激活虚拟环境:
conda activate ai_env
1
1.4. 安装Jupyter Notebook
Jupyter Notebook是一个交互式开发环境,非常适合探索数据和编写代码。在激活虚拟环境后,运行以下命令来安装Jupyter Notebook:
conda install jupyter
1
现在,我们已经完成了准备工作,可以开始构建我们的第一个AI应用了。
第二部分:创建一个简单的AI应用
我们将创建一个简单的AI应用,该应用可以识别手写数字。我们将使用Python和一个流行的深度学习框架——TensorFlow来构建这个应用。
2.1. 安装TensorFlow
在激活虚拟环境后,运行以下命令来安装TensorFlow:
conda install tensorflow
1
2.2. 导入必要的库
首先,打开Jupyter Notebook并创建一个新的Notebook。在Notebook中,导入以下必要的库:
import tensorflow as tf from tensorflow import keras import matplotlib.pyplot as plt
1
2.3. 加载数据集
我们将使用MNIST手写数字数据集,该数据集包含了大量的手写数字图像以及它们对应的标签。运行以下代码来加载数据集:
mnist = keras.datasets.mnist (train_images, train_labels), (test_images, test_labels) = mnist.load_data()
1
2.4. 数据预处理
在构建模型之前,我们需要对数据进行一些预处理。运行以下代码将图像数据归一化到0到1之间:
train_images = train_images / 255.0 test_images = test_images / 255.0
1
2.5. 构建神经网络模型
我们将创建一个简单的神经网络模型,包含一个输入层、一个隐藏层和一个输出层。运行以下代码来构建模型:
model = keras.Sequential([ keras.layers.Flatten(input_shape=(28, 28)), keras.layers.Dense(128, activation=’relu’), keras.layers.Dense(10, activation=’softmax’) ])
1
2.6. 编译模型
编译模型时,我们需要指定损失函数、优化器和评估指标。运行以下代码来编译模型:
model.compile(optimizer=’adam’, loss=’sparse_categorical_crossentropy’, metrics=[‘accuracy’])
1
2.7. 训练模型
现在,我们可以开始训练模型了。运行以下代码来训练模型:
model.fit(train_images, train_labels, epochs=5)
1
2.8. 评估模型
训练完成后,我们可以使用测试集来评估模型的性能。运行以下代码来评估模型:
test_loss, test_acc = model.evaluate(test_images, test_labels, verbose=2) print(‘\nTest accuracy:’, test_acc)
1
2.9. 使用模型进行预测
最后,我们可以使用训练好的模型来进行预测。运行以下代码来进行预测:
predictions = model.predict(test_images)
1
您可以通过以下代码来查看预测结果:
print(predictions[0])
1
第三部分:实际应用案例
现在,您已经成功地创建了一个简单的AI应用,可以识别手写数字。这个应用虽然简单,但展示了AI的强大能力。以下是一些实际应用案例:
3.1. 手写数字识别
您可以将这个应用扩展到更大规模的手写数字识别问题,用于自动识别邮政编码、银行支票号码等。
3.2. 图像分类
使用类似的方法,您可以构建图像分类模型,用于识别不同种类的图像,如动物、植物、交通标志等。
3.3. 自然语言处理
除了图像识别,TensorFlow
还提供了自然语言处理(NLP)的功能,您可以构建文本分类、情感分析、机器翻译等应用。
总结
在本文中,我们从零开始,一步步搭建了一个完整的AI开发环境,并创建了一个简单的AI应用。您学习了如何安装Python、Anaconda、TensorFlow,以及如何使用Jupyter Notebook进行开发。通过这个简单的手写数字识别应用,您不仅学习了AI的基本概念,还亲身体验了AI的应用。AI是一个广阔而充满机遇的领域,希望这个教程能够激发您继续深入学习和探索AI的兴趣。
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/ytt0523_com/article/details/137588562
1.下载指定branches
git clone -b milestones/milestone-10 https://userware@dev.azure.com/userware/Client_BIO/_git/Client_BIO
2.完成后到指定目录,右键【Open Git GUI here】
3. GUI可以管理当前Mileston-10的版本
1.使用TF卡,下载安装包,
网址:https://www.raspberrypi.com/software/operating-systems/
安装包链接
https://downloads.raspberrypi.org/raspios_lite_arm64/images/raspios_lite_arm64-2023-02-22/2023-02-21-raspios-bullseye-arm64-lite.img.xz
2.把系统安装在TF卡
在windowsw使用win32 disk image即可,也可以使用树莓派自带的软件
3.更新系统软件