DietPi/zh
Contents
1 DietPi简介
DietPi 是一个高度定制化的轻量级 Debian OS,属于第三方开发和维护的 ROM ,本维基仅对该系统在入门使用上进行简单的描述。DietPi 比较适合有经验的开发人员或者资深爱好者使用,新手建议使用友善电子官方提供的 ROM。如果您对 DietPi 感兴趣或者在使用时遇到了问题,可以到 DietPi 的论坛或者 github 上参与该开源项目并且反馈意见。
DietPi有着下列优秀的特点:
1. 非常的轻量化,系统固件小于500M。
2. 高度的优化,CPU和内存的占用率小。
3. 内置大量实用的脚本工具,在命令行的模式下有尽量提供人性化的服务。
4. DietPi-Software 工具可以方便且快速的安装各种流行软件。
5. DietPi-Config 工具可以便捷的调整软硬件设置。
6. DietPi-Backup 工具可以保存和恢复文件系统。
更详细的特性介绍,请查看DietPi的官网
2 安装DietPi
2.1 下载系统固件
DietPi的系统固件由 DietPi 官方负责维护和生成,访问DietPi官方下载地址, DietPi 正在不断的支持更多 FriendlyElec 出版的开发板, 本维基发布时,已经支持的板子包括:
如果您喜欢 DietPi 这种轻量化的小型OS,并且想要参与到DietPi的开发和维护中,可以关注DietPi的github项目DietPi Github和论坛DietPi forum,协助 DietPi 支持更多 FriendlyElec 的开发板。
另外,您也可以选择从 FriendlyElec 光盘里下载 DietPi 系统固件,官方光盘里的固件也是从DietPi网站上下载而来,并且只进行了简单的修改和验证,修改的主要目的是为了保持DietPi系统固件里使用了FrielyElec维护的最新的Bootloader/Kernel/DTB/Modules等系统文件。如果您是从DietPi的官网上下载的系统固件,请注意检查固件里的 Bootloader/Kernel/DTB/Modules 等系统文件是否为 FriendlyElec 维护的最新版本,如果不是,需要您自行参考开发板对应的维基,手动将这些系统文件更新为最新版本。
2.2 烧写DietPi
烧写 DietPi 系统固件的方法和烧写 FriendlyElec 提供的各种SD卡Linux发行版系统固件的方法是一样的:
将系统固件和烧写工具 win32diskimager.rar 分别解压,在 Windows 下插入TF卡(限4G及以上的卡),以管理员身份运行 win32diskimager 工具,在 win32diskimager 工具的界面上,选择你的TF卡盘符,选择系统固件,点击 Write 按钮烧写即可。
2.3 配置DietPi
将DietPi系统固件烧写到SD卡后,SD卡会被划分为2个分区: boot 分区和 rootfs 分区。其中boot分区中与DietPi相关的核心文件为dietpi目录和系统配置文件dietpi.txt。dietpi目录中包含了所有Dietpi系统的定制脚本,该目录在第一次运行DietPi时会被拷贝到rootfs分区并用于一系列的初始化操作,控制初始化操作的配置文件正是dietpi.txt,建议仔细阅读dietpi.txt以了解DietPi系统提供了哪些可配置的功能,下面会简单地描述部分dietpi.txt里提供的配置项,用户需要自行去测试这些配置功能是否正常工作。
2.3.1 Networking Options
# 是否使能以太网和WiFi,当2者同时被使能时,会优先使用WiFi。 AUTO_SETUP_NET_ETHERNET_ENABLED=1 AUTO_SETUP_NET_WIFI_ENABLED=0 # 设置WiFi连接的热点名称和密码 AUTO_SETUP_NET_WIFI_SSID=MySuperDooperWiFi AUTO_SETUP_NET_WIFI_KEY=0123456789 # available | WPA-PSK / WPA-EAP / NONE | WEP=No longer supported AUTO_SETUP_NET_WIFI_KEYMGR=WPA-PSK # 设置hostname AUTO_SETUP_NET_HOSTNAME=DietPi # 设置以太网的速率 # 0=automatic speed | 10 = 10mbit, 100 = 100mbit etc AUTO_SETUP_NET_ETH_FORCE_SPEED=0
2.3.2 Misc Options
# swap文件的大小 # 0=Disabled | 1=auto (2GB-RAM = size) | 2+=manual AUTO_SETUP_SWAPFILE_SIZE=1 # swap文件的生成目录 AUTO_SETUP_SWAPFILE_LOCATION=/var/swap
2.3.3 Software Automation Options
# 是否自动安装软件 AUTO_SETUP_AUTOMATED=0 # 全局密码,包括root和dietpi用户的密码,以及后续如果安装MySQL, Transmission等软件时的的密码 AUTO_SETUP_GLOBAL_PASSWORD=dietpi # 选择使用哪种SSH server # 0=none # -1=dropbear # -2=opensshserver AUTO_SETUP_SSH_SERVER_INDEX=-1 # 选择使用哪种日志服务 # 0=none/manual # -1=ramlog 1h clear # -2=ramlog 1h save clear # -3=logrotate + rsyslog AUTO_SETUP_LOGGING_INDEX=-1 # 选择使用哪种webserver # NB: This will get ignored, if you have manually selected any WEBSERVER_Stack. # 0=Apache2 # -1=Nginx # -2=Lighttpd AUTO_SETUP_WEB_SERVER_INDEX=-2
2.3.4 DietPi-Config settings
# CPU策略 | ondemand | powersave | performance | conservative CONFIG_CPU_GOVERNOR=ondemand CONFIG_CPU_USAGE_THROTTLE_UP=50 # 设置CPU最小频率和最大频率 CONFIG_CPU_MAX_FREQ=Disabled CONFIG_CPU_MIN_FREQ=Disabled # 启动系统时是否等待网络 CONFIG_BOOT_WAIT_FOR_NETWORK=1 # 是否使能调试串口登录,第一次启动系统必须完成初始化操作才能使用调试串口进行登录。 CONFIG_SERIAL_CONSOLE_ENABLE=1
上述描述仅为部分DietPi提供的定制功能,更多的定制功能请自行阅读dietpi.txt和访问DietPi查询了解。
3 DietPi系统的使用
3.1 第一次启动DietPi
DietPi的初始化配置比较繁琐,但只要完成一次这些初始化配置后,Dietpi还是值得资深爱好者去使用的。
第一次运行DietPi系统时,DietPi会扩展rootfs分区,扩展完成后会重启系统。
重启系统后,会根据dietpi.txt里的配置进行进行一系列的初始化操作,如果在dietpi.txt里设置了CONFIG_SERIAL_CONSOLE_ENABLE=1,那么这一次启动系统会调用DietPi-Set_Hardware脚本使能serial-getty服务,但是要等待下一次启动系统才能使用调试串口登录。如果你不想再次重启系统,可以选择通过SSH或者在HDMI上进行登录,登录的账号和密码root/dietpi。登录系统后会继续进行更多的初始化操作,我们根据提示一步步执行即可。以下截图是DietPi-V6.7在NanoPi-K1-Plus的初始化操作:
运行DietPi-Software:
根据打印的log信息可以看出,其中有执行apt-get update,如果您使用的固件无法连接软件源,可自行修改dietpi.txt里的配置项CONFIG_APT_DEBIAN_MIRROR。
运行DietPi-Set_software, 设置全局密码:
运行DietPi-Set_software, 设置用户密码:
提示用户可通过ip a命令查看IP地址:
是否允许DietPi收集并上传硬件信息:
3.2 dietpi-launcher
dietpi-autostart dietpi-cleaner dietpi-drive_manager dietpi-letsencrypt dietpi-process_tool dietpi-survey dietpi-backup dietpi-config dietpi-justboom dietpi-logclear dietpi-services dietpi-sync dietpi-bugreport dietpi-cron dietpi-morsecode dietpi-software dietpi-update