2021年dietpi排雷笔记

一切的开始

dietpi极度简洁,软件配置集约化,通过终端图形化选项设置就可以轻松配置好各种复杂环境,比如nextcloud。同时是一个完整linux发行版本,提供自主折腾的途径。

本来想树莓派上docker部署一个nextcloud,结果折腾磁力链接的时候被docker映射整蒙了,干脆换一个dietpi环境。

下载安装

官网下对应img,官网地址:https://dietpi.com/,我的版本是raspberry pi32位镜像。

烧录,可以用官方烧录工具也可以diskimager,我用的是后者,习惯了。

别插卡,先改sd卡目录的dietpi.txt

#静态ip
AUTO_SETUP_NET_USESTATIC=1
AUTO_SETUP_NET_STATIC_IP=192.168.1.99
AUTO_SETUP_NET_STATIC_MASK=255.255.255.0
AUTO_SETUP_NET_STATIC_GATEWAY=192.168.1.1
AUTO_SETUP_NET_STATIC_DNS=114.114.114.114
#软件源
CONFIG_APT_RASPBIAN_MIRROR=http://mirrors.ustc.edu.cn/raspbian/raspbian/
CONFIG_APT_DEBIAN_MIRROR=http://mirrors.ustc.edu.cn/archive.raspberrypi.org/

一定先改再插卡上电!

初级配置

进ssh后自动更新系统,进行汉化等设置,可参考dietpi远程桌面与中文汉化教程
进行到安装远程桌面时,由于2021年github某些资源无法访问,curl报错。

所以(如果失败的话 )直接ctrl+c返回terminal。

换源

首先确认在下载安装那一步里改了dietpi.txt把apt源换了,如果没有就再来一次

nano /etc/apt/sources.list 
#改成如下(中科大源)
deb http://mirrors.ustc.edu.cn/raspbian/raspbian/ buster main contrib non-free rpi
# deb-src http://mirrors.ustc.edu.cn/raspbian/raspbian/ buster main contrib non-free rpi
#继续修改raspi.list
nano /etc/apt/sources.list.d/raspi.list 
#改成:
deb http://mirrors.ustc.edu.cn/archive.raspberrypi.org/debian/ buster main ui
#deb-src http://mirrors.ustc.edu.cn/archive.raspberrypi.org/debian/ buster main ui
#改完
apt-get update

修改dietpi-software

在安装软件过程中发现一个巨坑,xfce需要从github上下一个conf,github的rawcontent获取不到,很麻烦,换了ip还是连接不上,开启proxy后ssl又报错。

改脚本

尝试无果后转而分析脚本代码,锁定SD卡dietpi/dietpi-software,在dietpi-software源码里找到了这么一行:

#Disable DPMS and screen blanking 
dps_index=$software_id Download_Install '98-dietpi-disable_dpms.conf' /etc/X11/xorg.conf.d/98-dietpi-disable_dpms.conf

安装Xserver要禁用DPMS,短短一行巨坑啊(中国特殊环境,国外没这个问题)
解决方案:从dropbear切换到openssh,用scp把配置文件"98-dietpi-disable_dpms.conf"传到指定目录"/etc/X11/xorg.conf.d/"

SD卡dietpi目录内dietpi-software修改如下:

#Disable DPMS and screen blanking 
dps_index=/etc/X11/xorg.conf.d/98-dietpi-disable_dpms.conf #$software_id Download_Install '98-dietpi-disable_dpms.conf'

顺利运行!不过治标不治本,终究要吃亏。果然不出我所料,后续大片的curl出错,必须淦起来,尝试把获取不到的文件都clone一份。

克隆指定文件

主要针对.conf路径

mkdir dietpi
cd dietpi/
git int
git remote add -f origin https://github.com/MichaIng/DietPi.git #拉取remote的all objects信息
git config core.sparsecheckout true   #启用sparse clone
echo ".conf" >> .git/info/sparse-checkout #添加指定目录
cat .git/info/sparse-checkout #确认一下
git pull origin master #拉下来
cd ..
rm -R .git

然后针对剩余几个文件进行类似操作。
顺手记录mkdir创建系列文件夹操作:

#如果要在新创建的目录中创建目录,那么可以用 -p 这个option,比如先创建dir1,然后在dir1中创建dir2,在dir2中创建dir3,就可以直接使用以下的命令:
mkdir -p dir1/dir2/dir3

构造好的项目地址:https://codechina.csdn.net/u012886849/dietpi,内含修改好的dietpi-software,直接替换sd卡dietpi/dietpi-software文件(dpms配置需手动scp复制到指定目录)

大功告成,目前经过简单测试没有遇到任何报错,满足个人需求了。

高级设置

nextcloud

nextcloud安装卡在ncc maintenance:mode --off,经搜索发现了一个issue:Crash while installing NextCloud
解决方案:

sed -i "\|cp '/var/www/nextcloud/config/config.sample.php'|d" /DietPi/dietpi/dietpi-software
# 如果已经进行安装出现了卡死:
rm /var/www/nextcloud/config/config.php
rm /var/www/nextcloud/occ
mysqladmin drop nextcloud #原有数据库必须删除
dietpi-software install 114

然后又遇到curl卡死,分析发现nextcloud latest release包(latest.tar.bz2)要放到/tmp/DietPi-Software目录下,用scp再传一个,继续安装。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值