开启root登录SSH
系统默认是禁止ssh密码登录的,所以需要先开启,
可视终端情况下直接nano修改
sudo nano /etc/ssh/sshd_config 或者sudo vi /etc/ssh/sshd_config 输入i编辑,esc输入后,:wq 退出编辑。 PasswordAuthentication yes PermitRootLogin yes
这部分的目的是增加ssh登录的开启
命令如下:
打开侧边栏的
映射ssh的22端口为2222,意思是登录putty的端口默认为2222,你也可以设置成2212,putty填端口填你设置的,另外docker的端口也可以类似映射。祝您好运!
输入:
hostfwd_add tcp::2222-:22
参考:【Alpine Term】Android免root本地运行Docker
如果看不到终端可盲打(看不到终端除了盲打还能咋办)输入:
sudo sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config sudo sed -i 's/PermitRootLogin no/PermitRootLogin yes/g' /etc/ssh/sshd_config
然后重启启动sshd服务,
sudo service sshd restart1 或者通过sudo rc-service sshd restart
后续操作均需root权限,可以先"sudo -s"转为root用户,后文默认是非root用户
官方配置工具
官方配置工具可以一次性完成键盘布局、网络、时区、repo源的配置
sudo setup-alpine
但我觉得太繁琐,不想用这个工具可以看下面
修改DNS和apk源
先改DNS nameserver 可以有254个。这里只列举常用的三个
sudo nano /etc/resolv.conf nameserver 114.114.114.114 nameserver 223.5.5.5 nameserver 119.29.29.29
然后修改源,这里坑很多,在不清楚系统版本的情况下建议使用官方repo工具
sudo setup-apkrepos 14 #是清华源 15是华中科技大学 自己研究 输入f是测试官方的源 sudo apk update
当然也可以查看版本后按照各大镜像站的命令直接修改
cat /etc/alpine-release sudo nano /etc/apk/repositories http://mirrors.ustc.edu.cn/alpine/latest-stable/main http://mirrors.ustc.edu.cn/alpine/latest-stable/community
也可以一键,但这里要检查系统初始源的格式,有三个坑要注意
sed -i 's/dl-cdn.alpinelinux.org/mirrors.tuna.tsinghua.edu.cn/g' /etc/apk/repositoriessed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories
第一个坑,在alpine-term(不清楚实体机有没有同样问题)里edge分支下所有源都会出现"UNTRUSTED signature"错误,虽然可以通过apk --allow-untrusted "命令"
解决,但每一次使用apk都要加这个选项比较麻烦,建议尽量避开edge分支。
第二个坑是https地址会出现ssl证书错误,解决办法是换成http地址。(也可以参考Old Let's Encrypt Root Certificate Expiration and OpenSSL 1.0.2 - OpenSSL Blog)
两个坑合起来解决:
sudo nano /etc/apk/repositories http://mirrors.ustc.edu.cn/alpine/latest-stable/main http://mirrors.ustc.edu.cn/alpine/latest-stable/community
第三个坑,有些包会出现"world dependency * does not exist"错误
WARNING: The repository tag for world dependency '***@testing' does not exist ERROR: Not committing changes due to missing repository tags. Use --force-broken-world to override.12
按提示再加上--force-broken-world
选项即可(暂时没有一劳永逸的方案)
第四个坑是出现强制错误,可以使用-- force-missing-repositories
例如:
sudo apk update --allow-untrusted --force-broken-world --force-missing-repositories
sudo apk upgrade --allow-untrusted --force-broken-world --force-missing-repositories
设置时区
sudo apk add tzdata --allow-untrusted --force-broken-world sudo setup-timezone Asia/Shanghai
解决console字体太小并添加中文字体
高分屏终端字体会比较小,根据官方文档
sudo apk add terminus-font --force-broken-world sudo setfont /usr/share/consolefonts/ter-132n.psf.gz sudo nano /etc/conf.d/consolefont rc-update add consolefont boot
添加中文字体
sudo apk add font-isas-misc sudo fc-cache -fv
注意一下,需要单独运行一下保存一下安卓下的Linux免得重启后,又要重复执行一次上面的所有命令。
apk add rsync
参考文献
[1] alpine 安装软件报错UNTRUSTED signature - 简书 (jianshu.com)
[2] alpine / alpine-conf · GitLab (alpinelinux.org)
[3] Alpine Linux 源使用帮助 — USTC Mirror Help 文档
[4] Old Let's Encrypt Root Certificate Expiration and OpenSSL 1.0.2 - OpenSSL Blog
[5] 使用 Alpine 作为基础镜像时可能会遇到的常见问题的解决方法 - mozillazg's Blog
[6] Alpine解决无法找到包问题 – 九霄天空-IT技术分享学习 (turbock79.cn)
[8] Linux终端更改字体_氷泠的博客-CSDN博客_linux终端字体
[9]alpine初始化配置和踩坑记录
文章知识点与官方知识档案匹配,可进一步学习相关知识