Template:FriendlyWrt19/zh
Contents
1 FriendlyWrt的使用
1.1 FriendlyWrt简介
FriendlyWrt是友善电子基于OpenWrt定制的系统,完全开源,用于企业物联网二次开发,个人定制NAS,家庭物联网网关等。
1.2 帐户与密码
默认是空密码,请为root设置一个密码用于web登录与ssh登录。
1.3 连接网络
用网线连接{{{1}}}的WAN口到你的主路由器,默认将从你的主路由器通过DHCP自动获取IP地址,请登入你的路由器后台查看并记住{{{1}}}的IP地址。
1.4 登录FriendlyWrt
在电脑浏览器上输入{{{1}}}的IP地址 或者 http://friendlywrt/ 即可进入FriendlyWrt管理页面,默认情况下,LAN口的IP地址为192.168.2.1,WAN会从你的主路由器动态获取IP地址。
1.5 安装软件包
1.5.1 更新可用软件包列表
安装软件前,先更新可用软件包列表:
$ opkg update
1.5.2 查看可安装的软件包
$ opkg list
1.5.3 查看已安装的软件
$ opkg list-installed
1.5.4 安装软件
$ opkg install <包各称>
1.5.5 删除软件
$ opkg remove <包各称>
1.6 使用USB2LCD查看IP
在接上电源启动之前把USB2LCD模块插到 {{{1}}} 的USB接口,然后接上电源和网线,系统正常启动后,即可后LCD即会显示板子的温度和IP。
1.7 如何使用USB WiFi
1.7.1 如何在终端使用命令查询USB无线网卡型号
(1) 点击“服务>ttyd”进入FriendlyWrt的命令行界面
(2) 在开发板没有插入任何USB设备时输入以下命令以查看挂在USB主线上的现有设备
lsusb
(3) 插入USB WiFi,再次输入以下命令
lsusb
(4) 以“0BDA:C811”或“VID_0BDA&PID_C811”作为关键词在搜索引擎上搜索,搜索结果显示VID_0BDA&PID_C811的对应WIFI芯片为Realtek 8811CU
1.7.2 如何使用USB WiFi作为AP
(1) 把USB WiFi插入NanoPi R2S,推荐使用以下列表中支持AP模式的WiFi芯片模块(以下列表基于rk3328-sd-friendlywrt-5.4-20200514.img固件经测试可用)
注:符合以上WiFi芯片型号并符合以上VID&PID信息的USB无线网卡都可以使用,支持的型号不局限于某个品牌某个型号
(2) 插入USB WiFi后,点击上方菜单栏的“系统>重启”,点击“执行重启”按钮重启NanoPi R2S
(5) 在“接口配置”中可设置WiFi 模式和SSID等,然后点击到“无线安全”项可修改加密方式和WiFi密码,默认密码为password,设置完成后点击“保存”
(4) 配置完成后使用手机端或电脑端搜索对应SSID的WiFi即可
1.8 玩转Docker应用
1.8.1 Docker使用:安装JellyFin影音服务器
1.8.1.1 安装JellyFin
(1) 准备一个已烧好FriendlyWrt的NanoPi R2S(或任意H3/RK3399 平台的友善开发板),接上电源和网线,网线接入NanoPi R2S的WAN口;
(2) 在电脑端的浏览器输入 http://friendlywrt/ 或者开发板的IP地址即可进入FriendlyWrt管理页面,默认情况下,LAN口的IP地址为192.168.2.1,WAN会从你的主路由器动态获取IP地址;
(3) 点击上方菜单栏的“服务->ttyd”进入命令行界面;
(4) 输入以下命令安装JellyFin:
创建一个目录用于存放 JellyFin 的配置:
mkdir -p /jellyfin/config
创建一个专门供JellyFin访问的目录,存放影片和视频:
mkdir -p /jellyfin/videos
然后安装JellyFin,请耐心等待安装过程:
docker run --restart=always -d -p 8096:8096 -v /jellyfin/config:/config -v /jellyfin/videos:/videos jellyfin/jellyfin:10.1.0-arm64 -name myjellyfin
主要参数说明:
8096:8096: 指定端口号为 8096,安装完后,可能通过 http://路由器IP:8096 访问jellyFin
/jellyfin/videos: 指定用于存放影片的目录,本地目录为 /jellyfin/videos,在jellyFin界面上可以通过路径 /videos访问到这些影片
1.8.1.2 为JellyFin添加媒体库
(1) 在浏览器输入NanoPi R2S的IP地址+端口8096 进入JellyFin界面:
如:192.168.1.126:8096
(4) 建议打开“显示高级设置”选项,内容类型等选项根据情况选择,勾选“将媒体图像保存到媒体所在文件夹”的话JellyFin会在网上搜索电影封面等信息下载到媒体文件夹中,设置完成后点击“确定”:
(5) 设置完成后回到“控制台”,可看到“Scan media library”任务,即JellyFin正在扫描媒体库并下载媒体信息,视网络情况而定可能需要几分钟至几十分钟:
1.8.1.3 在JellyFin下播放媒体
1.8.1.3.1 在电脑端播放媒体
在浏览器中输入NanoPi R2S的IP地址+端口8096 进入JellyFin,点击媒体库中其中一部影片,即可开始播放:
1.8.1.3.2 在手机端播放媒体
(1) 从应用商店下载安装JellyFin APP,打开APP输入NanoPi R2S的IP地址+端口8096登录进入:
(2) 点击媒体库可看到库中所有影片,点击其中一部影片可查看影片详情:
详细使用教程请参考: How to setup JellyFin media system on NanoPi-R2S/zh
1.8.2 Docker使用:安装个人网盘nextcloud
mkdir /nextcloud -p docker run -d -p 8888:80 --name nextcloud -v /nextcloud/:/var/www/html/ --restart=always --privileged=true arm64v8/nextcloud
安装完成后,使用8888端口进行访问。
1.9 启动swap分区
在命令行执行以下命令,然后重启:
/etc/enable-swap.sh reboot
1.10 挂载外接存储设备
(1) 把移动硬盘连接NanoPi R2S作为外接存储设备,将移动硬盘插入NanoPi R2S的USB接口,在FriendlyWrt中点击“系统->挂载点”进入挂载点设置界面:
(2) 在界面下方找到挂载点存储设备设置,点击“添加”按钮:
(3) 在弹出的对话框中UUID一栏选中刚刚接入的移动硬盘 /dev/sda1(实际情况请根据自身设备选择,如硬盘有多个分区可能会显示sda1/sda2……等):
(4) 在挂载点一栏中使用自定义,填入要挂载到的目标目录,这里以/jellyfin/videos 目录为例,勾选上方的“已启用”,然后点击“保存”:
(5) 设置完后点击“系统->重启”重启NanoPi R2S使挂载点生效:
(6) 重启后再回到“挂载点”界面可看到“已挂载的文件系统”中显示刚刚挂载的移动硬盘信息,即设置成功(以后需要再新增或删减编辑挂载点都可以在下面的“挂载点”设置中操作):
注:每次操作后都需要重启后才能生效
1.11 挂载smbfs共享资源
mount -t cifs //192.168.1.10/shared /movie -o username=xxx,password=yyy,file_mode=0644
1.12 使用Aria2下载网络资源
使用 Aria2 之前,需要先设置一个目录专门用于存放 Aria2 下载的文件,这个目录需要 让aria2 用户有读写权限,如果你是挂载外部的硬盘作为下载目录,硬盘建议格式化为 ext4 格式。
下面以 /jellyfin/videos/Disk/download 目录为例,点击上方菜单栏“服务->ttyd”, 输入以下命令创建目录,并设置目录拥有者为 aria2:
mkdir -p /jellyfin/videos/Disk/download chown aria2:aria2 /jellyfin/videos/Disk/download
(3) 勾选“已启用”复选框,将下载目录设置为/jellyfin/videos/Disk/download,然后点击“保存并应用”按钮:
(4) 保存完成后,点击 “AriaNg”即可进入 Aria2 前端界面,点击“新建”按钮即可创建下载任务:
1.13 在Windows10系统下使用WinSCP共享文件
(1)下载安装WinSCP后打开,新建一个连接,主机名填写NanoPi R2S的IP地址,然后填写NanoPi R2S的用户名和密码,默认用户名:root,密码为空,文件协议改为“SCP”,点击“登录”
使用WinSCP可以远程访问NanoPi R2S并传输文件。
WinSCP下载地址:https://winscp.net/eng/download.php
(2) 登录后可看到左边是本地的目录,右边是NanoPi R2S的文件目录,打开需要共享文件的目录,这里以/jellyfin/videos目录为例,把媒件文件拖到右边即可开始传输,等待文件传输完成:
1.14 设置Samba网络文件共享
(1)在FriendlyWrt中点击上方菜单栏的“服务->网络共享”
(3) 填写你要共享目录,这里以设置共享 /jellyfin/videos 目录为例(如目录文件夹有大小写请注意区分),填写完成后点击“保存并应用”:
1.14.1 在Windows10系统下访问Samba共享
默认情况下,你的Windows10可能没有启动网络发现与共享,请先参考下面这二份文档,对你的Windows10做一些设置:
(1) 启用Samba v1/v2的访问:https://www.windowscentral.com/how-access-files-network-devices-using-smbv1-windows-10
(2) 启用网络发现:https://www.dummies.com/computers/operating-systems/windows-10/how-to-enable-network-discovery-and-configure-sharing-options-in-windows-10/
具体操作可以百度“Windows10 开启SMBv1” 与 "Win10启用网络发现"了解中文版的设置方法;
设置完成后,在资源管理器的地址栏输入 \\friendlywrt 即可访问共享目录, 用户名为root, 密码为password;
1.14.2 在OS X系统下访问Samba共享
右击 Finder 图标,选择“连接到服务器“,输入地址 smb://root@friendlywrt 后点击“连接“按钮,
在要求输入用户名与密码时,输入用户名为root, 密码为password,最后点击 mnt 即可进入 /mnt/的共享目录。
1.14.3 在Linux系统下访问Samba共享
在文件管理器的地址栏中输入 smb://root@friendlywrt 后敲回车,在提示输入密码时输入 password,最后点击 mnt 即可进入 /mnt/的共享目录。
1.15 编译FriendlyWrt
请参考: How to Build FriendlyWrt/zh
1.16 更改Mac地址
注1:这里以更改R2S的WAN口的MAC地址为例进行说明;
注2:MAC的格式是严格的,不能胡乱编造,格式不合规的地址会导致无法接入网络,建议参考其他设备的MAC地址,做少量修改作为新的MAC地址;
新建一个服务文件 /etc/init.d/custom-mac,内容如下,其中的MAC地址,请替换成你需要更改的MAC地址,eth0更改为你想要更换MAC地址的网口(例如R2S的WAN口对应eth0):
#!/bin/sh /etc/rc.common # Copyright (C) 2014 OpenWrt.org START=94 STOP=15 start() { ifconfig eth0 down ifconfig eth0 hw ether 80:1F:12:EF:BC:99 ifconfig eth0 up } stop() { echo "Stop." }
运行一下服务,测试一下MAC地址有没有按预期改变,除了用ifconfig命令查看,如果你的NanoPi的WAN口连接的是主路由器,推荐登录主路由器的后台去确认新的MAC地址是否已生效:
chmod 755 /etc/init.d/custom-mac /etc/init.d/custom-mac start ifconfig eth0 | grep HWaddr
如果一切正常,再执下以下命令,让该服务开机自动运行:
/etc/init.d/custom-mac enable