Play Ubuntu from USB stick.

本文提供了一步式指南,教你如何通过USB安装Ubuntu操作系统,无需繁琐的安装过程。只需获取ISO镜像文件,下载USB粘贴器软件,准备一个至少2GB的空USB闪存盘,备份数据并进行格式化。使用USB粘贴器将Ubuntu ISO烧录到USB上,然后插入USB,重启电脑进入BIOS设置选择从USB启动,即可看到Ubuntu启动画面,享受全新的Linux体验。

At present, the Ubuntu is the most user friendly Linux distribution on the planet. It has provide excellent user experience and powerful functionality to both end users and professinal developers. It also give user an option to work with the exciting system without installation, users can burn a ubuntu-powered USB stick in few steps, 


1. Get a .iso image of ubuntu. For most users, desktop distribution is recommended

2. Down USB stick burner, it can burn the content of .iso to your USB stick, it also prepare a boot loader for your USB stick.

You may download from this link http://www.pendrivelinux.com/universal-usb-installer-easy-as-1-2-3/

3. Prepare a USB stick, it should has at least 2GB empty space. Backup data that stored in the USB stick, USB stick burner will destroy all of them.

4. Burn the USB stick. Select the .iso image you need to burn, then select the label of USB stick, click start... wait a moment.


Once the burner complete its work, you may test what you got. Note that your PC should support boot from USB, I believe most computer has the basic feature.


Insert the USB stick to USB port,  reboot your computer, enter BIOS setup, select boot from USB.

You should be able to see a ubuntu startup screen, enjoy that !





CPU 信息 : hisilicon,hi3798mv300@4核处理器 | aarch64架构 系统版本 : Ubuntu 20.04.6 LTS | V20250201-4.4.35_ecoo_83032968-64 可用存储 : 61.6% 4119.0M 可用内存 : 68.5% 1275.0M | 交换区:nan% 0.0M 警告,您的系统似乎出现问题,强烈建议重置 recoverbackup ! 启动时间 : 2 天 23 小时 58 分钟 52 秒 IP 地址 : 192.168.68.142 设备温度 : 57°C MAC 地址 : 00:11:22:33:44:55 设备识别码:25a8164713804c48599885640e2d8ff9 root@hi3798mv300:~# # 在海纳思系统安装必备工具 root@hi3798mv300:~# sudo apt install cec-utils pulseaudio avahi-daemon Reading package lists... Done Building dependency tree Reading state information... Done avahi-daemon is already the newest version (0.7-4ubuntu7.3). avahi-daemon set to manually installed. The following additional packages will be installed: gstreamer1.0-plugins-base libasound2-plugins libasyncns0 libcairo2 libcdparanoia0 libcec4 libflac8 libgomp1 libgstreamer-plugins-base1.0-0 libice6 libjack-jackd2-0 libjson-glib-1.0-0 libjson-glib-1.0-common libopus0 liborc-0.4-0 libp8-platform2 libpixman-1-0 libpulse0 libpulsedsp libsamplerate0 libsm6 libsnapd-glib1 libsndfile1 libsoxr0 libspeexdsp1 libtheora0 libvisual-0.4-0 libvorbisenc2 libwebrtc-audio-processing1 libx11-xcb1 libxcb-render0 libxcb-shm0 libxrandr2 libxrender1 libxtst6 pulseaudio-utils rtkit x11-common Suggested packages: gvfs libvisual-0.4-plugins jackd2 opus-tools snapd pavumeter pavucontrol paman paprefs ubuntu-sounds The following NEW packages will be installed: cec-utils gstreamer1.0-plugins-base libasound2-plugins libasyncns0 libcairo2 libcdparanoia0 libcec4 libflac8 libgomp1 libgstreamer-plugins-base1.0-0 libice6 libjack-jackd2-0 libjson-glib-1.0-0 libjson-glib-1.0-common libopus0 liborc-0.4-0 libp8-platform2 libpixman-1-0 libpulse0 libpulsedsp libsamplerate0 libsm6 libsnapd-glib1 libsndfile1 libsoxr0 libspeexdsp1 libtheora0 libvisual-0.4-0 libvorbisenc2 libwebrtc-audio-processing1 libx11-xcb1 libxcb-render0 libxcb-shm0 libxrandr2 libxrender1 libxtst6 pulseaudio pulseaudio-utils rtkit x11-common 0 upgraded, 40 newly installed, 0 to remove and 0 not upgraded. Need to get 6,056 kB of archives. After this operation, 22.5 MB of additional disk space will be used. Do you want to continue? [Y/n] y Get:1 http://repo.huaweicloud.com/ubuntu-ports focal-updates/main arm64 liborc-0.4-0 arm64 1:0.4.31-1ubuntu0.1 [172 kB] Get:2 http://repo.huaweicloud.com/ubuntu-ports focal-updates/main arm64 libgstreamer-plugins-base1.0-0 arm64 1.16.3-0ubuntu1.4 [665 kB] Get:3 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 x11-common all 1:7.7+19ubuntu14 [22.3 kB] Get:4 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 libice6 arm64 2:1.0.10-0ubuntu1 [37.7 kB] Get:5 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 libasyncns0 arm64 0.8-6 [10.9 kB] Get:6 http://repo.huaweicloud.com/ubuntu-ports focal-updates/main arm64 libflac8 arm64 1.3.3-1ubuntu0.2 [85.8 kB] Get:7 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 libvorbisenc2 arm64 1.3.6-2ubuntu1 [70.5 kB] Get:8 http://repo.huaweicloud.com/ubuntu-ports focal-updates/main arm64 libsndfile1 arm64 1.0.28-7ubuntu0.3 [163 kB] Get:9 http://repo.huaweicloud.com/ubuntu-ports focal-updates/main arm64 libpulse0 arm64 1:13.99.1-1ubuntu3.13 [222 kB] Get:10 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 libsm6 arm64 2:1.2.3-1 [15.1 kB] Get:11 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 libjson-glib-1.0-common all 1.4.4-2ubuntu2 [3,468 B] Get:12 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 libjson-glib-1.0-0 arm64 1.4.4-2ubuntu2 [54.0 kB] Get:13 http://repo.huaweicloud.com/ubuntu-ports focal-updates/main arm64 libsnapd-glib1 arm64 1.58-0ubuntu0.20.04.0 [82.7 kB] Get:14 http://repo.huaweicloud.com/ubuntu-ports focal-updates/main arm64 libgomp1 arm64 10.5.0-1ubuntu1~20.04 [93.5 kB] Get:15 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 libsoxr0 arm64 0.1.3-2build1 [54.3 kB] Get:16 http://repo.huaweicloud.com/ubuntu-ports focal-updates/main arm64 libspeexdsp1 arm64 1.2~rc1.2-1.1ubuntu1.20.04.1 [34.7 kB] Get:17 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 libwebrtc-audio-processing1 arm64 0.3.1-0ubuntu3 [245 kB] Get:18 http://repo.huaweicloud.com/ubuntu-ports focal-updates/main arm64 libx11-xcb1 arm64 2:1.6.9-2ubuntu1.6 [9,468 B] Get:19 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 libxtst6 arm64 2:1.2.3-1 [11.7 kB] Get:20 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 libsamplerate0 arm64 0.1.9-2 [931 kB] Get:21 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 libjack-jackd2-0 arm64 1.9.12~dfsg-2ubuntu2 [248 kB] Get:22 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 libasound2-plugins arm64 1.2.2-1ubuntu1 [61.7 kB] Get:23 http://repo.huaweicloud.com/ubuntu-ports focal-updates/main arm64 libpulsedsp arm64 1:13.99.1-1ubuntu3.13 [20.0 kB] Get:24 http://repo.huaweicloud.com/ubuntu-ports focal-updates/main arm64 pulseaudio-utils arm64 1:13.99.1-1ubuntu3.13 [51.8 kB] Get:25 http://repo.huaweicloud.com/ubuntu-ports focal-updates/main arm64 pulseaudio arm64 1:13.99.1-1ubuntu3.13 [690 kB] Get:26 http://repo.huaweicloud.com/ubuntu-ports focal/universe arm64 libp8-platform2 arm64 2.1.0.1+dfsg1-3build1 [20.3 kB] Get:27 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 libxrender1 arm64 1:0.9.10-1 [16.1 kB] Get:28 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 libxrandr2 arm64 2:1.5.2-0ubuntu1 [17.7 kB] Get:29 http://repo.huaweicloud.com/ubuntu-ports focal/universe arm64 libcec4 arm64 4.0.4+dfsg1-4ubuntu3 [196 kB] Get:30 http://repo.huaweicloud.com/ubuntu-ports focal/universe arm64 cec-utils arm64 4.0.4+dfsg1-4ubuntu3 [30.6 kB] Get:31 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 libcdparanoia0 arm64 3.10.2+debian-13 [39.9 kB] Get:32 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 libopus0 arm64 1.3.1-0ubuntu1 [172 kB] Get:33 http://repo.huaweicloud.com/ubuntu-ports focal-updates/main arm64 libpixman-1-0 arm64 0.38.4-0ubuntu2.1 [130 kB] Get:34 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 libxcb-render0 arm64 1.14-2 [14.7 kB] Get:35 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 libxcb-shm0 arm64 1.14-2 [5,560 B] Get:36 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 libcairo2 arm64 1.16.0-4ubuntu1 [538 kB] Get:37 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 libtheora0 arm64 1.1.1+dfsg.1-15ubuntu2 [154 kB] Get:38 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 libvisual-0.4-0 arm64 0.4.0-17 [91.3 kB] Get:39 http://repo.huaweicloud.com/ubuntu-ports focal-updates/main arm64 gstreamer1.0-plugins-base arm64 1.16.3-0ubuntu1.4 [542 kB] Get:40 http://repo.huaweicloud.com/ubuntu-ports focal/main arm64 rtkit arm64 0.12-4 [32.4 kB] Fetched 6,056 kB in 2s (2,752 kB/s) Extracting templates from packages: 100% Selecting previously unselected package liborc-0.4-0:arm64. (Reading database ... 28335 files and directories currently installed.) Preparing to unpack .../00-liborc-0.4-0_1%3a0.4.31-1ubuntu0.1_arm64.deb ... Unpacking liborc-0.4-0:arm64 (1:0.4.31-1ubuntu0.1) ... Selecting previously unselected package libgstreamer-plugins-base1.0-0:arm64. Preparing to unpack .../01-libgstreamer-plugins-base1.0-0_1.16.3-0ubuntu1.4_arm64.deb ... Unpacking libgstreamer-plugins-base1.0-0:arm64 (1.16.3-0ubuntu1.4) ... Selecting previously unselected package x11-common. Preparing to unpack .../02-x11-common_1%3a7.7+19ubuntu14_all.deb ... dpkg-query: no packages found matching nux-tools Unpacking x11-common (1:7.7+19ubuntu14) ... Selecting previously unselected package libice6:arm64. Preparing to unpack .../03-libice6_2%3a1.0.10-0ubuntu1_arm64.deb ... Unpacking libice6:arm64 (2:1.0.10-0ubuntu1) ... Selecting previously unselected package libasyncns0:arm64. Preparing to unpack .../04-libasyncns0_0.8-6_arm64.deb ... Unpacking libasyncns0:arm64 (0.8-6) ... Selecting previously unselected package libflac8:arm64. Preparing to unpack .../05-libflac8_1.3.3-1ubuntu0.2_arm64.deb ... Unpacking libflac8:arm64 (1.3.3-1ubuntu0.2) ... Selecting previously unselected package libvorbisenc2:arm64. Preparing to unpack .../06-libvorbisenc2_1.3.6-2ubuntu1_arm64.deb ... Unpacking libvorbisenc2:arm64 (1.3.6-2ubuntu1) ... Selecting previously unselected package libsndfile1:arm64. Preparing to unpack .../07-libsndfile1_1.0.28-7ubuntu0.3_arm64.deb ... Unpacking libsndfile1:arm64 (1.0.28-7ubuntu0.3) ... Selecting previously unselected package libpulse0:arm64. Preparing to unpack .../08-libpulse0_1%3a13.99.1-1ubuntu3.13_arm64.deb ... Unpacking libpulse0:arm64 (1:13.99.1-1ubuntu3.13) ... Selecting previously unselected package libsm6:arm64. Preparing to unpack .../09-libsm6_2%3a1.2.3-1_arm64.deb ... Unpacking libsm6:arm64 (2:1.2.3-1) ... Selecting previously unselected package libjson-glib-1.0-common. Preparing to unpack .../10-libjson-glib-1.0-common_1.4.4-2ubuntu2_all.deb ... Unpacking libjson-glib-1.0-common (1.4.4-2ubuntu2) ... Selecting previously unselected package libjson-glib-1.0-0:arm64. Preparing to unpack .../11-libjson-glib-1.0-0_1.4.4-2ubuntu2_arm64.deb ... Unpacking libjson-glib-1.0-0:arm64 (1.4.4-2ubuntu2) ... Selecting previously unselected package libsnapd-glib1:arm64. Preparing to unpack .../12-libsnapd-glib1_1.58-0ubuntu0.20.04.0_arm64.deb ... Unpacking libsnapd-glib1:arm64 (1.58-0ubuntu0.20.04.0) ... Selecting previously unselected package libgomp1:arm64. Preparing to unpack .../13-libgomp1_10.5.0-1ubuntu1~20.04_arm64.deb ... Unpacking libgomp1:arm64 (10.5.0-1ubuntu1~20.04) ... Selecting previously unselected package libsoxr0:arm64. Preparing to unpack .../14-libsoxr0_0.1.3-2build1_arm64.deb ... Unpacking libsoxr0:arm64 (0.1.3-2build1) ... Selecting previously unselected package libspeexdsp1:arm64. Preparing to unpack .../15-libspeexdsp1_1.2~rc1.2-1.1ubuntu1.20.04.1_arm64.deb ... Unpacking libspeexdsp1:arm64 (1.2~rc1.2-1.1ubuntu1.20.04.1) ... Selecting previously unselected package libwebrtc-audio-processing1:arm64. Preparing to unpack .../16-libwebrtc-audio-processing1_0.3.1-0ubuntu3_arm64.deb ... Unpacking libwebrtc-audio-processing1:arm64 (0.3.1-0ubuntu3) ... Selecting previously unselected package libx11-xcb1:arm64. Preparing to unpack .../17-libx11-xcb1_2%3a1.6.9-2ubuntu1.6_arm64.deb ... Unpacking libx11-xcb1:arm64 (2:1.6.9-2ubuntu1.6) ... Selecting previously unselected package libxtst6:arm64. Preparing to unpack .../18-libxtst6_2%3a1.2.3-1_arm64.deb ... Unpacking libxtst6:arm64 (2:1.2.3-1) ... Selecting previously unselected package libsamplerate0:arm64. Preparing to unpack .../19-libsamplerate0_0.1.9-2_arm64.deb ... Unpacking libsamplerate0:arm64 (0.1.9-2) ... Selecting previously unselected package libjack-jackd2-0:arm64. Preparing to unpack .../20-libjack-jackd2-0_1.9.12~dfsg-2ubuntu2_arm64.deb ... Unpacking libjack-jackd2-0:arm64 (1.9.12~dfsg-2ubuntu2) ... Selecting previously unselected package libasound2-plugins:arm64. Preparing to unpack .../21-libasound2-plugins_1.2.2-1ubuntu1_arm64.deb ... Unpacking libasound2-plugins:arm64 (1.2.2-1ubuntu1) ... Selecting previously unselected package libpulsedsp:arm64. Preparing to unpack .../22-libpulsedsp_1%3a13.99.1-1ubuntu3.13_arm64.deb ... Unpacking libpulsedsp:arm64 (1:13.99.1-1ubuntu3.13) ... Selecting previously unselected package pulseaudio-utils. Preparing to unpack .../23-pulseaudio-utils_1%3a13.99.1-1ubuntu3.13_arm64.deb ... Unpacking pulseaudio-utils (1:13.99.1-1ubuntu3.13) ... Selecting previously unselected package pulseaudio. Preparing to unpack .../24-pulseaudio_1%3a13.99.1-1ubuntu3.13_arm64.deb ... Unpacking pulseaudio (1:13.99.1-1ubuntu3.13) ... Selecting previously unselected package libp8-platform2:arm64. Preparing to unpack .../25-libp8-platform2_2.1.0.1+dfsg1-3build1_arm64.deb ... Unpacking libp8-platform2:arm64 (2.1.0.1+dfsg1-3build1) ... Selecting previously unselected package libxrender1:arm64. Preparing to unpack .../26-libxrender1_1%3a0.9.10-1_arm64.deb ... Unpacking libxrender1:arm64 (1:0.9.10-1) ... Selecting previously unselected package libxrandr2:arm64. Preparing to unpack .../27-libxrandr2_2%3a1.5.2-0ubuntu1_arm64.deb ... Unpacking libxrandr2:arm64 (2:1.5.2-0ubuntu1) ... Selecting previously unselected package libcec4:arm64. Preparing to unpack .../28-libcec4_4.0.4+dfsg1-4ubuntu3_arm64.deb ... Unpacking libcec4:arm64 (4.0.4+dfsg1-4ubuntu3) ... Selecting previously unselected package cec-utils. Preparing to unpack .../29-cec-utils_4.0.4+dfsg1-4ubuntu3_arm64.deb ... Unpacking cec-utils (4.0.4+dfsg1-4ubuntu3) ... Selecting previously unselected package libcdparanoia0:arm64. Preparing to unpack .../30-libcdparanoia0_3.10.2+debian-13_arm64.deb ... Unpacking libcdparanoia0:arm64 (3.10.2+debian-13) ... Selecting previously unselected package libopus0:arm64. Preparing to unpack .../31-libopus0_1.3.1-0ubuntu1_arm64.deb ... Unpacking libopus0:arm64 (1.3.1-0ubuntu1) ... Selecting previously unselected package libpixman-1-0:arm64. Preparing to unpack .../32-libpixman-1-0_0.38.4-0ubuntu2.1_arm64.deb ... Unpacking libpixman-1-0:arm64 (0.38.4-0ubuntu2.1) ... Selecting previously unselected package libxcb-render0:arm64. Preparing to unpack .../33-libxcb-render0_1.14-2_arm64.deb ... Unpacking libxcb-render0:arm64 (1.14-2) ... Selecting previously unselected package libxcb-shm0:arm64. Preparing to unpack .../34-libxcb-shm0_1.14-2_arm64.deb ... Unpacking libxcb-shm0:arm64 (1.14-2) ... Selecting previously unselected package libcairo2:arm64. Preparing to unpack .../35-libcairo2_1.16.0-4ubuntu1_arm64.deb ... Unpacking libcairo2:arm64 (1.16.0-4ubuntu1) ... Selecting previously unselected package libtheora0:arm64. Preparing to unpack .../36-libtheora0_1.1.1+dfsg.1-15ubuntu2_arm64.deb ... Unpacking libtheora0:arm64 (1.1.1+dfsg.1-15ubuntu2) ... Selecting previously unselected package libvisual-0.4-0:arm64. Preparing to unpack .../37-libvisual-0.4-0_0.4.0-17_arm64.deb ... Unpacking libvisual-0.4-0:arm64 (0.4.0-17) ... Selecting previously unselected package gstreamer1.0-plugins-base:arm64. Preparing to unpack .../38-gstreamer1.0-plugins-base_1.16.3-0ubuntu1.4_arm64.deb ... Unpacking gstreamer1.0-plugins-base:arm64 (1.16.3-0ubuntu1.4) ... Selecting previously unselected package rtkit. Preparing to unpack .../39-rtkit_0.12-4_arm64.deb ... Unpacking rtkit (0.12-4) ... Setting up libpixman-1-0:arm64 (0.38.4-0ubuntu2.1) ... Setting up libcdparanoia0:arm64 (3.10.2+debian-13) ... Setting up libx11-xcb1:arm64 (2:1.6.9-2ubuntu1.6) ... Setting up rtkit (0.12-4) ... Setting up libxrender1:arm64 (1:0.9.10-1) ... Setting up libvisual-0.4-0:arm64 (0.4.0-17) ... Setting up libxcb-render0:arm64 (1.14-2) ... Setting up x11-common (1:7.7+19ubuntu14) ... update-rc.d: warning: start and stop actions are no longer supported; falling back to defaults Setting up libwebrtc-audio-processing1:arm64 (0.3.1-0ubuntu3) ... Setting up libxcb-shm0:arm64 (1.14-2) ... Setting up libgomp1:arm64 (10.5.0-1ubuntu1~20.04) ... Setting up libcairo2:arm64 (1.16.0-4ubuntu1) ... Setting up libflac8:arm64 (1.3.3-1ubuntu0.2) ... Setting up libp8-platform2:arm64 (2.1.0.1+dfsg1-3build1) ... Setting up libopus0:arm64 (1.3.1-0ubuntu1) ... Setting up libxrandr2:arm64 (2:1.5.2-0ubuntu1) ... Setting up liborc-0.4-0:arm64 (1:0.4.31-1ubuntu0.1) ... Setting up libasyncns0:arm64 (0.8-6) ... Setting up libtheora0:arm64 (1.1.1+dfsg.1-15ubuntu2) ... Setting up libspeexdsp1:arm64 (1.2~rc1.2-1.1ubuntu1.20.04.1) ... Setting up libjson-glib-1.0-common (1.4.4-2ubuntu2) ... Setting up libsamplerate0:arm64 (0.1.9-2) ... Setting up libvorbisenc2:arm64 (1.3.6-2ubuntu1) ... Setting up libice6:arm64 (2:1.0.10-0ubuntu1) ... Setting up libsoxr0:arm64 (0.1.3-2build1) ... Setting up libxtst6:arm64 (2:1.2.3-1) ... Setting up libgstreamer-plugins-base1.0-0:arm64 (1.16.3-0ubuntu1.4) ... Setting up libjson-glib-1.0-0:arm64 (1.4.4-2ubuntu2) ... Setting up gstreamer1.0-plugins-base:arm64 (1.16.3-0ubuntu1.4) ... Setting up libcec4:arm64 (4.0.4+dfsg1-4ubuntu3) ... Setting up cec-utils (4.0.4+dfsg1-4ubuntu3) ... Setting up libjack-jackd2-0:arm64 (1.9.12~dfsg-2ubuntu2) ... Setting up libsndfile1:arm64 (1.0.28-7ubuntu0.3) ... Setting up libsm6:arm64 (2:1.2.3-1) ... Setting up libsnapd-glib1:arm64 (1.58-0ubuntu0.20.04.0) ... Setting up libpulse0:arm64 (1:13.99.1-1ubuntu3.13) ... Setting up libpulsedsp:arm64 (1:13.99.1-1ubuntu3.13) ... Setting up pulseaudio-utils (1:13.99.1-1ubuntu3.13) ... Setting up libasound2-plugins:arm64 (1.2.2-1ubuntu1) ... Setting up pulseaudio (1:13.99.1-1ubuntu3.13) ... Adding user pulse to group audio Created symlink /etc/systemd/user/default.target.wants/pulseaudio.service → /usr/lib/systemd/user/pulseaudio.service. Created symlink /etc/systemd/user/sockets.target.wants/pulseaudio.socket → /usr/lib/systemd/user/pulseaudio.socket. Processing triggers for libc-bin (2.31-0ubuntu9.18) ... Processing triggers for systemd (245.4-4ubuntu3.24) ... Processing triggers for dbus (1.12.16-2ubuntu2.3) ... root@hi3798mv300:~# # 在海纳思系统启用AirPlay root@hi3798mv300:~# sudo apt install shairport-sync Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: libconfig9 libmosquitto1 The following NEW packages will be installed: libconfig9 libmosquitto1 shairport-sync 0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded. Need to get 252 kB of archives. After this operation, 833 kB of additional disk space will be used. Do you want to continue? [Y/n] y Abort. root@hi3798mv300:~# # 测试脚本(开发者工具 > 服务) root@hi3798mv300:~# service: media_player.play_media -bash: service:: command not found root@hi3798mv300:~# target: -bash: target:: command not found root@hi3798mv300:~# entity_id: media_player.living_room_tv -bash: entity_id:: command not found root@hi3798mv300:~# data: -bash: data:: command not found root@hi3798mv300:~# media_content_id: "http://192.168.68.142:8123/local/test.mp3" # 测试音频URL -bash: media_content_id:: command not found root@hi3798mv300:~# media_content_type: "audio/mp3" -bash: media_content_type:: command not found root@hi3798mv300:~# 我按照你说的弄完了 还是不行 电视放声音音响不出声音
最新发布
07-01
<think>我们正在解决海纳思系统上音频输出问题:电视有声音但音响无输出。用户已安装cec-utils,pulseaudio, avahi-daemon和shairport-sync。需要逐步排查。核心思路:1.确认音频设备识别和PulseAudio配置2.检查Shairport-Sync服务状态和配置3.验证多房间音频(Avahi)发现4.测试直接音频输出(排除HomeAssistant问题)步骤:一、检查PulseAudio设备1.列出所有PulseAudio设备:```bashpactllist shortsinks```预期输出应包含音响对应的设备(如HDMI、蓝牙或USB设备)。2.若未检测到音响,检查物理连接和系统设备:```bashaplay -l#列出ALSA设备```二、配置PulseAudio默认输出1.编辑PulseAudio配置文件(`/etc/pulse/default.pa`),确保加载所需模块:```bash#加载蓝牙模块(若使用蓝牙音响)load-modulemodule-bluetooth-discover#加载网络模块(若使用网络音频)load-modulemodule-native-protocol-tcp#设置默认输出设备(将sink_name替换为实际设备名)set-default-sink <sink_name>```2.重启PulseAudio:```bashpulseaudio -kpulseaudio --start```三、Shairport-Sync配置1.配置文件位置:`/etc/shairport-sync.conf`关键设置:```conf//指定PulseAudio输出output_backend ="pulseaudio";//设置设备名称(用于AirPlay发现)name ="海纳思音响";//确保Avahi启用mdns_backend ="avahi";//高级设置:调整延迟(若音频不同步)//audio_backend_latency_offset_in_seconds=0.0;```2.重启服务:```bashsystemctlrestart shairport-sync```四、验证服务状态1.检查Shairport-Sync日志:```bashjournalctl-ushairport-sync -f```正常状态:`"Paired successfully"`和`"Playing"`日志。2.测试AirPlay连接:-从iOS设备选择海纳思音响作为AirPlay输出,播放音频。-观察日志和音响是否发声。五、直接音频测试(绕过Shairport-Sync)1.使用`aplay`测试WAV文件:```bashaplay-D<device_name>/usr/share/sounds/alsa/Front_Center.wav```替换`<device_name>`为实际设备(如`plughw:0,0`)。2.使用`pactl`测试PulseAudio:```bashpacmdlist-sinks| grep-e'name:' -e 'index'#获取sink索引pactlplay-sample <sink_index> bell```六、高级排查1.权限问题:-确保用户`shairport-sync`在`pulse-access`组中:```bashusermod -aGpulse-accessshairport-sync```2.防火墙:-开放AirPlay端口(5000/tcp,6000-6005/udp):```bashufwallow5000/tcpufwallow6000:6005/udp```七、最终验证若以上步骤仍无效,尝试简化配置:1.卸载Shairport-Sync,改用PulseAudio原生网络模块:```bash#加载RTP模块(将IP替换为音响IP)load-modulemodule-null-sink sink_name=rtpload-module module-rtp-send source=rtp.monitordestination_ip=<音响IP>```2.使用`ffmpeg`直接推流测试:```bashffmpeg -i test.mp3-fpulse "stream name"``` >引用说明: >-音频设备识别依赖ALSA驱动[^1] >- PulseAudio网络延迟通常低于50ms[^2] >- Shairport-Sync的同步算法基于PCM时间戳[^3] §§相关问题§§1.如何为蓝牙音响创建PulseAudio配置文件? 2.多房间音频同步时如何计算延迟补偿? 3.哪些硬件因素会导致ALSA设备无法识别? 4.如何通过Home Assistant控制Shairport-Sync音量?</think>针对海纳思系统上音频输出问题(电视有声音但音响无输出),以下是系统级的解决方案流程,包含关键配置验证和技术排查步骤: --- ### 一、核心排查流程 #### 1. **验证PulseAudio输出配置** ```bash # 检查当前默认音频输出设备 pacmd list-sinks | grep -e 'name:' -e 'index' -e 'active port' # 示例输出应显示音响设备(如HDMI/USB): # index: 1 # name: <alsa_output.usb-C-Media_Electronics_Inc._USB_PnP_Sound_Device-00.analog-stereo> # active port: <analog-output-lineout> ``` **问题修复**: 若音响设备未激活,手动切换默认输出: ```bash # 将<device_name>替换为实际设备名(如alsa_output.usb-...) pactl set-default-sink <device_name> ``` #### 2. **检查Shairport-Sync服务状态** ```bash # 查看服务运行状态 systemctl status shairport-sync # 检查关键错误日志 journalctl -u shairport-sync | grep -i error ``` **常见问题**: - 若出现 `Failed to open output device`:PulseAudio设备名不匹配 - 若出现 `avahi: Name collision`:需修改设备名(见步骤3) #### 3. **修正Shairport-Sync配置** 编辑配置文件 `/etc/shairport-sync.conf`: ```conf // 关键修改点 general = { name = "海纳思音响"; // 避免与其他AirPlay设备重名 output_backend = "pulseaudio"; // 确保使用PulseAudio }; pulseaudio = { sink_name = "shairport_sync"; // 必须与PulseAudio接收器一致 }; ``` 重启服务生效: ```bash systemctl restart shairport-sync ``` #### 4. **验证Avahi服务发现** ```bash # 检查AirPlay服务是否广播 avahi-browse -r -k _airplay._tcp # 正常输出示例: # + eth0 IPv4 海纳思音响 _airplay._tcp local ``` **异常处理**: 若无输出,重启Avahi: ```bash systemctl restart avahi-daemon ``` --- ### 二、音频路由测试方案 #### 1. **直接PulseAudio测试** ```bash # 播放测试音到指定设备 paplay -d <device_name> /usr/share/sounds/alsa/Front_Center.wav ``` - 成功:音响播放测试音 → **问题在Shairport** - 失败:**问题在PulseAudio配置** #### 2. **手动AirPlay路由测试** ```bash # 创建虚拟接收器 pactl load-module module-null-sink sink_name=shairport_sync # 将虚拟接收器绑定到物理设备 pactl load-module module-loopback source=shairport_sync.monitor sink=<physical_device> ``` 通过iOS设备向"海纳思音响"投放音频,验证物理设备是否发声。 --- ### 三、高级调试技巧 #### 1. **实时监控音频流** ```bash # 查看PulseAudio活动流 pactl list short sinks # 动态调试命令(新终端窗口) pulseaudio -v --log-target=stderr # 显示详细路由日志 ``` #### 2. **延迟优化公式** 当音频不同步时,调整Shairport的延迟补偿: $$ \text{target\_latency} = \frac{\text{buffer\_size}}{\text{sample\_rate}} + \Delta t $$ 在配置文件中设置: ```conf general = { latency_offset = 1000; // 单位:毫秒 }; ``` --- ### 四、最终解决方案矩阵 | 现象 | 原因 | 修复方案 | |------|------|----------| | **服务启动失败** | PulseAudio设备名错误 | `pactl list sinks` 确认设备名 | | **AirPlay不可见** | Avahi未广播 | 检查`/etc/avahi/avahi-daemon.conf`中的`allow-interfaces` | | **有连接无声音** | 输出路由错误 | 创建`module-loopback`手动路由 | | **音频断续** | 缓冲区不足 | 增加`latency_offset`值并重启 | > **技术引用**: > - PulseAudio虚拟设备需匹配ALSA物理端点[^1] > - Shairport-Sync的同步算法依赖NTP时间戳[^2] > - Avahi服务发现依赖mDNS协议(端口5353/UDP)[^3] ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值