Ubuntu 初始安装记录

设备测试

内存

  1. 内存容量查看
c 复制代码
~$ free
               total        used        free      shared  buff/cache   available
内存:   63368144     5589832    55475752      107536     2302560    57039216
交换:    2097148           0     2097148
  1. 内存频率查看 Speed: 表示设计频率 Configured Memory Speed: 表示实际设置频率
yaml 复制代码
$ sudo dmidecode -t memory
[sudo] liang 的密码: 
# dmidecode 3.3
Getting SMBIOS data from sysfs.
SMBIOS 3.7.0 present.
# SMBIOS implementations newer than version 3.5.0 are not
# fully supported by this version of dmidecode.

Handle 0x0010, DMI type 16, 23 bytes
Physical Memory Array
	Location: System Board Or Motherboard
	Use: System Memory
	Error Correction Type: None
	Maximum Capacity: 128 GB
	Error Information Handle: 0x000F
	Number Of Devices: 4

Handle 0x0013, DMI type 17, 100 bytes
Memory Device
	...
	Speed: Unknown
	Manufacturer: Unknown
	Serial Number: Unknown
	Asset Tag: Not Specified
	Part Number: Unknown
	Rank: Unknown
	Configured Memory Speed: Unknown
	...

Handle 0x0015, DMI type 17, 100 bytes
Memory Device
	...
	Speed: 5600 MT/s
	Manufacturer: Unknown
	Serial Number: 000005FD
	Asset Tag: Not Specified
	Part Number: VGM5UH64C32BG-CSCJWA
	Rank: 2
	Configured Memory Speed: 6400 MT/s

Handle 0x0018, DMI type 17, 100 bytes
Memory Device
	...
	Speed: Unknown
	Manufacturer: Unknown
	Serial Number: Unknown
	Asset Tag: Not Specified
	Part Number: Unknown
	Rank: Unknown
	Configured Memory Speed: Unknown
	...

Handle 0x001A, DMI type 17, 100 bytes
Memory Device
	Array Handle: 0x0010
	Error Information Handle: 0x0019
	Total Width: 64 bits
	Data Width: 64 bits
	Size: 32 GB
	Form Factor: DIMM
	Set: None
	Locator: DIMMB2
	Bank Locator: P0 CHANNEL B
	Type: DDR5
	Type Detail: Synchronous Unbuffered (Unregistered)
	Speed: 5600 MT/s
	Manufacturer: Unknown
	Serial Number: 000005FE
	Asset Tag: Not Specified
	Part Number: VGM5UH64C32BG-CSCJWA
	Rank: 2
	Configured Memory Speed: 6400 MT/s
	Minimum Voltage: 1.1 V
	Maximum Voltage: 1.1 V
	Configured Voltage: 1.1 V
	Memory Technology: DRAM
	Memory Operating Mode Capability: Volatile memory
	Firmware Version: Unknown
	Module Manufacturer ID: Bank 9, Hex 0x13
	Module Product ID: Unknown
	Memory Subsystem Controller Manufacturer ID: Unknown
	Memory Subsystem Controller Product ID: Unknown
	Non-Volatile Size: None
	Volatile Size: 32 GB
	Cache Size: None
	Logical Size: None
  1. 内存压力测试工具

memtester是一个内存压力测试工具,主要是捕获内存错误和一直处于很高或者很低的坏位, 其测试的主要项目有随机值,异或比较,减法,乘法,除法,与或运算等等. 通过给定测试内存的大小和次数, 可以对系统现有的内存进行测试。

bash 复制代码
sudo apt install memtester

#先运行下面命令查看剩余内存,然后用剩余内存做压力测试
free -h
#测试命令:
#运行10次
memtester 240G 10
#无限次
memtester 240G
#后台无限测试
nohup memtester 240G >> ./memtest.log 2>&1 &
  1. 内存带宽测试工具

mbw是一个内存带宽测试工具,通常用来评估用户层应用程序进行内存拷贝操作所能达到的带宽,可测试在内存拷贝(memcpy)、字符串拷贝(dumb)、和内存卡拷贝(mcblock)三种方式下的内存拷贝速度。

bash 复制代码
sudo apt install mbw -y
mbw -q -n 10 245760
-q:隐藏日志
-n 10:表示运行10次
124000(MB):表示测试所用内存大小,用剩余内存的一半测试
#结果分析:
#只需关注平均值(AVG),内存分配速率越大,性能越好,三次AVG分别对应内存拷贝,字符串拷贝,内存卡拷贝。
nohup mbw -q -n 1000 124000 >> ./mbw.log 2>&1 & 
top -p mbw[pid]
yaml 复制代码
~$ mbw -q -n 10 25000
0	Method: MEMCPY	Elapsed: 1.45638	MiB: 25000.00000	Copy: 17165.838 MiB/s
1	Method: MEMCPY	Elapsed: 1.45201	MiB: 25000.00000	Copy: 17217.524 MiB/s
2	Method: MEMCPY	Elapsed: 1.46664	MiB: 25000.00000	Copy: 17045.753 MiB/s
3	Method: MEMCPY	Elapsed: 1.43712	MiB: 25000.00000	Copy: 17395.879 MiB/s
4	Method: MEMCPY	Elapsed: 1.43983	MiB: 25000.00000	Copy: 17363.185 MiB/s
5	Method: MEMCPY	Elapsed: 1.50285	MiB: 25000.00000	Copy: 16635.104 MiB/s
6	Method: MEMCPY	Elapsed: 1.45592	MiB: 25000.00000	Copy: 17171.320 MiB/s
7	Method: MEMCPY	Elapsed: 1.45347	MiB: 25000.00000	Copy: 17200.182 MiB/s
8	Method: MEMCPY	Elapsed: 1.50137	MiB: 25000.00000	Copy: 16651.514 MiB/s
9	Method: MEMCPY	Elapsed: 1.50706	MiB: 25000.00000	Copy: 16588.612 MiB/s
AVG	Method: MEMCPY	Elapsed: 1.46726	MiB: 25000.00000	Copy: 17038.516 MiB/s
0	Method: DUMB	Elapsed: 1.37865	MiB: 25000.00000	Copy: 18133.629 MiB/s
1	Method: DUMB	Elapsed: 1.44352	MiB: 25000.00000	Copy: 17318.728 MiB/s
2	Method: DUMB	Elapsed: 1.37530	MiB: 25000.00000	Copy: 18177.879 MiB/s
3	Method: DUMB	Elapsed: 1.37068	MiB: 25000.00000	Copy: 18239.122 MiB/s
4	Method: DUMB	Elapsed: 1.37093	MiB: 25000.00000	Copy: 18235.796 MiB/s
5	Method: DUMB	Elapsed: 1.36990	MiB: 25000.00000	Copy: 18249.507 MiB/s
6	Method: DUMB	Elapsed: 1.36674	MiB: 25000.00000	Copy: 18291.648 MiB/s
7	Method: DUMB	Elapsed: 1.37120	MiB: 25000.00000	Copy: 18232.165 MiB/s
8	Method: DUMB	Elapsed: 1.37115	MiB: 25000.00000	Copy: 18232.884 MiB/s
9	Method: DUMB	Elapsed: 1.36975	MiB: 25000.00000	Copy: 18251.466 MiB/s
AVG	Method: DUMB	Elapsed: 1.37878	MiB: 25000.00000	Copy: 18131.926 MiB/s
0	Method: MCBLOCK	Elapsed: 1.13482	MiB: 25000.00000	Copy: 22029.945 MiB/s
1	Method: MCBLOCK	Elapsed: 1.13723	MiB: 25000.00000	Copy: 21983.201 MiB/s
2	Method: MCBLOCK	Elapsed: 1.13779	MiB: 25000.00000	Copy: 21972.517 MiB/s
3	Method: MCBLOCK	Elapsed: 1.14223	MiB: 25000.00000	Copy: 21886.953 MiB/s
4	Method: MCBLOCK	Elapsed: 1.13686	MiB: 25000.00000	Copy: 21990.472 MiB/s
5	Method: MCBLOCK	Elapsed: 1.13846	MiB: 25000.00000	Copy: 21959.566 MiB/s
6	Method: MCBLOCK	Elapsed: 1.13716	MiB: 25000.00000	Copy: 21984.651 MiB/s
7	Method: MCBLOCK	Elapsed: 1.13459	MiB: 25000.00000	Copy: 22034.352 MiB/s
8	Method: MCBLOCK	Elapsed: 1.13312	MiB: 25000.00000	Copy: 22062.879 MiB/s
9	Method: MCBLOCK	Elapsed: 1.13577	MiB: 25000.00000	Copy: 22011.479 MiB/s
AVG	Method: MCBLOCK	Elapsed: 1.13680	MiB: 25000.00000	Copy: 21991.505 MiB/s
yaml 复制代码
$ mbw -q -n 10 25000
0	Method: MEMCPY	Elapsed: 1.42769	MiB: 25000.00000	Copy: 17510.865 MiB/s
1	Method: MEMCPY	Elapsed: 1.39907	MiB: 25000.00000	Copy: 17869.077 MiB/s
2	Method: MEMCPY	Elapsed: 1.38218	MiB: 25000.00000	Copy: 18087.330 MiB/s
3	Method: MEMCPY	Elapsed: 1.38220	MiB: 25000.00000	Copy: 18087.147 MiB/s
4	Method: MEMCPY	Elapsed: 1.38560	MiB: 25000.00000	Copy: 18042.751 MiB/s
5	Method: MEMCPY	Elapsed: 1.38546	MiB: 25000.00000	Copy: 18044.614 MiB/s
6	Method: MEMCPY	Elapsed: 1.38199	MiB: 25000.00000	Copy: 18089.804 MiB/s
7	Method: MEMCPY	Elapsed: 1.38623	MiB: 25000.00000	Copy: 18034.512 MiB/s
8	Method: MEMCPY	Elapsed: 1.40302	MiB: 25000.00000	Copy: 17818.756 MiB/s
9	Method: MEMCPY	Elapsed: 1.38552	MiB: 25000.00000	Copy: 18043.819 MiB/s
AVG	Method: MEMCPY	Elapsed: 1.39189	MiB: 25000.00000	Copy: 17961.138 MiB/s
0	Method: DUMB	Elapsed: 1.15162	MiB: 25000.00000	Copy: 21708.587 MiB/s
1	Method: DUMB	Elapsed: 1.15045	MiB: 25000.00000	Copy: 21730.608 MiB/s
2	Method: DUMB	Elapsed: 1.14807	MiB: 25000.00000	Copy: 21775.733 MiB/s
3	Method: DUMB	Elapsed: 1.16547	MiB: 25000.00000	Copy: 21450.610 MiB/s
4	Method: DUMB	Elapsed: 1.16364	MiB: 25000.00000	Copy: 21484.234 MiB/s
5	Method: DUMB	Elapsed: 1.16481	MiB: 25000.00000	Copy: 21462.673 MiB/s
6	Method: DUMB	Elapsed: 1.17837	MiB: 25000.00000	Copy: 21215.765 MiB/s
7	Method: DUMB	Elapsed: 1.19606	MiB: 25000.00000	Copy: 20901.979 MiB/s
8	Method: DUMB	Elapsed: 1.17108	MiB: 25000.00000	Copy: 21347.761 MiB/s
9	Method: DUMB	Elapsed: 1.16057	MiB: 25000.00000	Copy: 21541.232 MiB/s
AVG	Method: DUMB	Elapsed: 1.16501	MiB: 25000.00000	Copy: 21458.975 MiB/s
0	Method: MCBLOCK	Elapsed: 0.95769	MiB: 25000.00000	Copy: 26104.372 MiB/s
1	Method: MCBLOCK	Elapsed: 0.95744	MiB: 25000.00000	Copy: 26111.270 MiB/s
2	Method: MCBLOCK	Elapsed: 0.95651	MiB: 25000.00000	Copy: 26136.794 MiB/s
3	Method: MCBLOCK	Elapsed: 0.95603	MiB: 25000.00000	Copy: 26149.889 MiB/s
4	Method: MCBLOCK	Elapsed: 0.95850	MiB: 25000.00000	Copy: 26082.366 MiB/s
5	Method: MCBLOCK	Elapsed: 0.95595	MiB: 25000.00000	Copy: 26151.913 MiB/s
6	Method: MCBLOCK	Elapsed: 0.95939	MiB: 25000.00000	Copy: 26058.143 MiB/s
7	Method: MCBLOCK	Elapsed: 0.95710	MiB: 25000.00000	Copy: 26120.518 MiB/s
8	Method: MCBLOCK	Elapsed: 0.95603	MiB: 25000.00000	Copy: 26149.698 MiB/s
9	Method: MCBLOCK	Elapsed: 0.95519	MiB: 25000.00000	Copy: 26172.721 MiB/s
AVG	Method: MCBLOCK	Elapsed: 0.95698	MiB: 25000.00000	Copy: 26123.725 MiB/s
  1. 内存性能综合测试工具

lmbench是一个用于评价系统综合性能的多平台开源benchmark,能测试包括文档读写、内存操作、进程创建销毁开销、网络等性能。

lmbench是个多平台软件,因此能够对同级别的系统进行对比测试,反应不同系统的优劣。同时,作为一个开源软件,lmbench提供一个测试框架,如有更高的测试需要,可以通过修改源代码达到目的,比如实现线程级别的性能测试。

主要功能介绍

带宽测评工具

  • 读取缓存文件
  • 拷贝内存
  • 读写内存
  • 管道
  • TCP

反应时间测评工具

  • 上下文切换
  • 网络连接的建立
  • 文件系统的创建和删除
  • 进程创建
  • 信号处理
  • 上层的系统调用
  • 内存读入反应时间

其他

  • 处理器时钟比率计算
复制代码
sudo apt install lmbench
  1. sysbench 使用sysbench进行内存测试

sysbench是一个多功能性能测试工具,可以测试CPU、内存、I/O等性能。使用 sysbench测试内存性能的方法如下:

  • 运行sysbench内存测试

    使用以下命令运行内存读写测试:

    arduino 复制代码
    sysbench memory --memory-block-size=1M --memory-total-size=25G run

    上述命令将测试10GB的数据,块大小为1MB。

  • 解析结果

    测试结果将显示内存读写速度(MB/s)和延迟(ms)。这些数据可以帮助评估DDR5内存的性能。

yaml 复制代码
sysbench 1.0.20 (using system LuaJIT 2.1.0-beta3)

Running the test with following options:
Number of threads: 1
Initializing random number generator from current time


Running memory speed test with the following options:
 block size: 1024KiB
 total size: 25600MiB
 operation: write
 scope: global

Initializing worker threads...

Threads started!

Total operations: 25600 (40463.39 per second)

25600.00 MiB transferred (40463.39 MiB/sec)


General statistics:
   total time:                          0.6321s
   total number of events:              25600

Latency (ms):
        min:                                    0.02
        avg:                                    0.02
        max:                                    0.05
        95th percentile:                        0.03
        sum:                                  629.64

Threads fairness:
   events (avg/stddev):           25600.0000/0.00
   execution time (avg/stddev):   0.6296/0.00
  1. 使用hdparm测试内存缓存性能

虽然 hdparm主要用于硬盘测试,但也可以用来测试缓存性能。使用以下命令测试缓存读性能:

bash 复制代码
sudo hdparm -T /dev/sda

/dev/sda为系统的主硬盘,-T选项测试缓存读性能。

六、分析说明表

工具 命令 说明
memtester sudo memtester 4096M 5 测试4GB内存,重复5次
sysbench sysbench memory --memory-block-size=1M --memory-total-size=10G run 测试10GB数据,块大小为1MB
hdparm sudo hdparm -T /dev/sda 测试硬盘缓存读性能

温度查看

  1. lm-sensors

    sudo apt install lm-sensors

yaml 复制代码
 sensors
amdgpu-pci-1600
Adapter: PCI adapter
vddgfx:      960.00 mV 
vddnb:         1.30 V  
edge:         +44.0°C  
PPT:           8.00 mW 

nvme-pci-0200
Adapter: PCI adapter
Composite:    +38.9°C  (low  = -273.1°C, high = +89.8°C)
                       (crit = +94.8°C)
Sensor 1:     +38.9°C  (low  = -273.1°C, high = +65261.8°C)
Sensor 2:     +26.9°C  (low  = -273.1°C, high = +65261.8°C)

mt7921_phy0-pci-0f00
Adapter: PCI adapter
temp1:        +36.0°C  

k10temp-pci-00c3
Adapter: PCI adapter
Tctl:         +52.9°C  

watch sensors: 实时监控 apt install psensor: 图形化监控 APP

CPU 实时频率

要查看Linux系统中CPU的实时频率,可以使用以下命令:

  1. 使用lscpu命令:lscpu命令可以显示出CPU的详细信息,包括核心数、线程数以及实时频率等。

输入命令:lscpu

输出结果中可以找到"CPU MHz"字段,表示CPU的实时频率。

  1. 使用cpufreq-info命令:cpufreq-info命令可以显示有关CPU频率和Governor的详细信息。

输入命令:cpufreq-info

输出结果中可以找到"current CPU frequency"字段,表示CPU的实时频率。

  1. 使用cat命令读取/sys/devices/system/cpu/cpu[0-9]/cpufreq/cpuinfo_cur_freq文件:该文件保存有CPU的实时频率信息。

输入命令:cat /sys/devices/system/cpu/cpu[0-9]/cpufreq/cpuinfo_cur_freq

输出结果为CPU的实时频率。

  1. 使用watch命令配合cpufreq-set命令实时监测:watch命令可以实时监测并展示命令的输出,cpufreq-set命令可以设置CPU的频率。

输入命令:watch -n 1 cpufreq-set -c 0 --freq

输出结果为CPU 0的实时频率,每秒更新一次。

以上是几种常用的查看Linux系统中CPU实时频率的命令,根据需要选择其中一种即可。

  1. cpu-x window 平台的 cpu-z 的平替。

    sudo apt install cpu-x

命令行

复制代码
cpu-x -D

同时也有图形界面

驱动安装

显卡驱动

组件 作用 依赖关系
NVIDIA 驱动 提供 GPU 与操作系统的接口,管理 GPU 的资源与运行环境。 NVIDIA 驱动是运行 CUDA 和 cuDNN 的基础,必须安装。
CUDA Toolkit 提供 GPU 加速的编程框架和库,允许开发者在 GPU 上运行并行计算。 依赖于 NVIDIA 驱动,必须先安装驱动才能使用 CUDA。
cuDNN NVIDIA 提供的深度学习加速库,优化了神经网络的计算。 依赖于 CUDA Toolkit,必须先安装 CUDA 才能使用 cuDNN。
------------------------------------------------
docs.nvidia.com/cuda/cuda-t...

documentation.ubuntu.com/server/how-...

  1. 禁用nouveau

nouveau是系统自带的驱动程序,一般来讲要安装新的显卡驱动的时候需要禁用这个驱动

首先打开nouveau的配置文件:

bash 复制代码
sudo gedit /etc/modprobe.d/blacklist.conf

然后在最下面加上:

ini 复制代码
blacklist nouveau
options nouveau modeset=0

保存修改之后在终端执行:

sql 复制代码
sudo update-initramfs --u

重启后检测是否关闭, 输出空,则是关闭成功

perl 复制代码
lsmod | grep nouveau  
  1. 关闭系统安全模式

有时候在安装NVIDIA驱动时需要关闭系统安全模式,在BIOS中寻找Security,关闭安全启动。注意这条不一定适用于所有系统。

  1. 查看合适的显卡驱动版本
  • nvidia-driver-xxx :这是适配大多数用户,一般情况下都可以安装这个
  • nvidia-driver-xxx-server :这个适配服务器,有多块GPU调度等情况
  • nvidia-driver-xxx-open :这个是开源版本,可以自己修改
yaml 复制代码
$ sudo ubuntu-drivers devices 
== /sys/devices/pci0000:00/0000:00:01.1/0000:01:00.0 ==
modalias : pci:v000010DEd00002504sv000010DEsd00001536bc03sc00i00
vendor   : NVIDIA Corporation
model    : GA106 [GeForce RTX 3060 Lite Hash Rate]
driver   : nvidia-driver-535-server-open - distro non-free
driver   : nvidia-driver-535-open - distro non-free
driver   : nvidia-driver-470 - distro non-free
driver   : nvidia-driver-470-server - distro non-free
driver   : nvidia-driver-550-open - distro non-free
driver   : nvidia-driver-570-server - distro non-free
driver   : nvidia-driver-550 - distro non-free recommended
driver   : nvidia-driver-570-server-open - distro non-free
driver   : nvidia-driver-545-open - distro non-free
driver   : nvidia-driver-545 - distro non-free
driver   : nvidia-driver-535-server - distro non-free
driver   : nvidia-driver-535 - distro non-free
driver   : xserver-xorg-video-nouveau - distro free builtin
kotlin 复制代码
$ sudo ubuntu-drivers list
nvidia-driver-535-open, (kernel modules provided by linux-modules-nvidia-535-open-generic-hwe-22.04)
nvidia-driver-535, (kernel modules provided by linux-modules-nvidia-535-generic-hwe-22.04)
nvidia-driver-535-server, (kernel modules provided by linux-modules-nvidia-535-server-generic-hwe-22.04)
nvidia-driver-550, (kernel modules provided by linux-modules-nvidia-550-generic-hwe-22.04)
nvidia-driver-545, (kernel modules provided by nvidia-dkms-545)
nvidia-driver-550-open, (kernel modules provided by linux-modules-nvidia-550-open-generic-hwe-22.04)
nvidia-driver-570-server-open, (kernel modules provided by linux-modules-nvidia-570-server-open-generic-hwe-22.04)
nvidia-driver-470, (kernel modules provided by linux-modules-nvidia-470-generic-hwe-22.04)
nvidia-driver-470-server, (kernel modules provided by linux-modules-nvidia-470-server-generic-hwe-22.04)
nvidia-driver-570-server, (kernel modules provided by linux-modules-nvidia-570-server-generic-hwe-22.04)
nvidia-driver-535-server-open, (kernel modules provided by linux-modules-nvidia-535-server-open-generic-hwe-22.04)
nvidia-driver-545-open, (kernel modules provided by nvidia-dkms-545-open)
  1. 添加驱动源
sql 复制代码
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
  1. 安装驱动

    sudo ubuntu-drivers install nvidia:550

自动安装

bash 复制代码
# Ubuntu自动安装推荐驱动
sudo ubuntu-drivers autoinstall
sudo reboot
# 验证安装
nvidia-smi
  1. 安装显卡驱动工具 nvidia-cuda-toolkit

    nvidia-smi 查看 CUDA 版本

  • 方式一:采用 Ubuntu 软件源中的 CUDA Tools 软件包

这种方式安装简单,但安装的 CUDA Toolkit 版本往往不是最新版本。查询 目前可安装的 CUDA Toolkit 版本的命令,如下所示

sql 复制代码
apt search nvidia-cuda-toolkit

具体安装命令如下:

复制代码
sudo apt install nvidia-cuda-toolkit
arduino 复制代码
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt-get update
sudo apt-get -y install cuda-toolkit-12-4

步骤3:配置环境变量

bash 复制代码
# 添加至 ~/.bashrc
export CUDA_HOME=/usr/local/cuda-12.4
export PATH=${CUDA_HOME}/bin:${PATH}
export LD_LIBRARY_PATH=${CUDA_HOME}/lib64:${LD_LIBRARY_PATH}
# 生效配置
source ~/.bashrc
  1. 安装显卡监控程序

此处使用 nvtop:

复制代码
sudo apt install nvtop
  1. 如何删除驱动
css 复制代码
sudo apt autoremove cuda* nvidia* --purge
  1. cnDNN developer.nvidia.com/rdp/cudnn-a...

pytorch 安装

  1. 安装 python&miniconda
bash 复制代码
# The version of Anaconda may be different depending on when you are installing`
curl -O https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
sh Miniconda3-latest-Linux-x86_64.sh
# and follow the prompts. The defaults are generally good.`
vbnet 复制代码
Miniconda3 will now be installed into this location:
/home/liang/miniconda3

  - Press ENTER to confirm the location
  - Press CTRL-C to abort the installation
  - Or specify a different location below

Do you wish to update your shell profile to automatically initialize conda?
This will activate conda on startup and change the command prompt when activated.
If you'd prefer that conda's base environment not be activated on startup,
   run the following command when conda is activated:

conda config --set auto_activate_base false

You can undo this by running `conda init --reverse $SHELL`? [yes|no]
  1. 安装 torch

pytorch.org/get-started...

download.pytorch.org/whl/torch_s...

perl 复制代码
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124

ollama

ollama.com/download/li...

arduino 复制代码
curl -fsSL https://ollama.com/install.sh | sh

comfyUI

github.com/comfyanonym...

python 3.13 is supported but using 3.12 is recommended because some custom nodes and their dependencies might not support it yet.

ini 复制代码
conda create -n comfyUI python=3.12
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124
pip install -r requirements.txt

tabby

tabby.sh/

远程环境

ssh

Server

  1. 要运行 SSH 服务器的包由 OpensSSH 的 openssh-server 组件提供
sql 复制代码
sudo apt update
sudo apt install openssh-server
  1. 一旦安装完成,SSH 服务将会被自动启动。你可以验证 SSH 是否正在运行,输入:
lua 复制代码
sudo systemctl status ssh

service ssh status

3.Ubuntu 自带一个配置防火墙配置工具,称为 UFW。如果防火墙在你的系统上被启用,请确保打开了 SSH 端口:

复制代码
sudo ufw allow ssh

输出将会告诉你服务正在运行,并且启用开机启动: UFW 的运行状态可以通过运行 sudo ufw status 来检查

  1. 在 Ubuntu 上禁用 SSH 想要在你的 Ubuntu 系统上禁用 SSH 服务器,简单停止 SSH 即可,输入:
bash 复制代码
sudo systemctl disable --now ssh

稍后,你可以重新启用,输入:

bash 复制代码
sudo systemctl enable --now ssh

如果你想要停止 SSH 服务,需要运行该命令:

arduino 复制代码
sudo systemctl stop ssh

该命令会关闭 SSH 服务,直到重启它或者系统重启。想要重启它,输入:

sql 复制代码
sudo systemctl start ssh

Client

  1. 安装 ssh,用XShell等软件就可以SSH登录服务器了

    sudo apt install ssh

  2. 想要在局域网内连接到你的 Ubuntu 机器,以下面的格式输入 ssh 命令,加上用户名和 IP 地址。

perl 复制代码
ssh username@ip_address
确保你将`username`修改成你自己的用户名,`ip_address`修改成你安装了 SSH 的 Ubuntu 机器的 IP 地址。

如果你不知道你的 IP 地址,你可以使用ip命令轻易地找到它:

css 复制代码
ip a
  1. 清除缓存和公钥

    ssh-keygen -R server_ip

xrdp

Xrdp 是一个微软远程桌面协议(RDP)的开源实现,它允许我们通过图形界面控制远程系统。这里使用RDP而不是VNC作为远程桌面,是因为Windows自带的远程桌面连接软件就可以连接很方便,另外RDP在Windows下的体验非常好,包括速度很快(因为压缩方案做得比较好),可以直接在主机和远程桌面之间复制粘贴等等。

bash 复制代码
# 安装
sudo apt instal xrdp

# 查看运行状态
sudo systemctl status xrdp

默认情况下,xrdp 使用/etc/ssl/private/ssl-cert-snakeoil.key,它仅仅对ssl-cert用户组成语可读,所以需要运行下面的命令,将xrdp用户添加到这个用户组:

复制代码
sudo adduser xrdp ssl-cert  
sudo systemctl restart xrdp

然后使用Windows自带的远程桌面软件连接服务器IP地址或者域名就行了

samba

通过建立局域网SAMBA服务来实现这个效果:

  1. 安装sambasamba-common-bin
arduino 复制代码
sudo apt-get install samba samba-common-bin
  1. 配置/etc/samba/smb.conf文件
bash 复制代码
sudo nano /etc/samba/smb.conf

在最后一行后面加入:

ini 复制代码
# 共享文件夹显示的名称
[home]
# 说明信息
comment = Fusion WorkStation Storage
# 可以访问的用户
valid users = smbpasswd,root
# 共享文件的路径
path = /home/smbpasswd/
# 可被其他人看到资源名称(非内容)
browseable = yes
# 可写
writable = yes
# 新建文件的权限为 664
create mask = 0664
# 新建目录的权限为 775
directory mask = 0775

配置 Samba 修改 /etc/samba/smb.conf,在最后面添加以下配置:

ini 复制代码
[Volumes]
  comment = TimeCapsule Volumes
  path = /usr/local/volumes
  browseable = yes
  writable = yes
  available = yes
  valid users = alan

可以把配置文件中你不需要的分享名称删除,例如 [homes], [printers] 等。

运行这个命令测试一下配置文件是否有错误,根据提示做相应修改:testparm

  1. 添加登陆账户并创建密码

必须是 linux 已存在的用户:

css 复制代码
sudo smbpasswd -a pi

然后重启服务即可:

bash 复制代码
sudo /etc/init.d/samba-ad-dc restart

sudo service smbd restart

接下来可以在Windows的网络中发现设备了

相关推荐
IceMan24 分钟前
进程间通信(一)管道通信
操作系统
罗念笙26 分钟前
说下你常用的Linux命令?
linux·操作系统
想拿高薪的韭菜17 小时前
操作系统高频(六)linux内核
linux·操作系统
LUCIAZZZ18 小时前
计算机网络-TCP的重传机制
java·网络·网络协议·tcp/ip·计算机网络·操作系统·springboot
Zevalin爱灰灰2 天前
面试可能会遇到的问题&回答(嵌入式软件开发部分)
stm32·单片机·面试·操作系统·嵌入式·ucos
热爱前端的小张3 天前
第三章 内存管理(下)
操作系统
易保山5 天前
MIT6.S081 - Lab6 Copy-on-Write(写时复制)
linux·操作系统·c
司六米希5 天前
【操作系统】查内存泄漏方法
操作系统
GoGeekBaird6 天前
69天探索操作系统-第58天:操作系统中的高级负载均衡
后端·操作系统