Ubuntu 20.04.6 LTS系统armv7l架构下安装LNMP全家桶

16 十月, 2023

在Ubuntu 20.04.6 LTS系统armv7l架构下,以下是安装LNMP(Linux, Nginx, MySQL, PHP)的详细步骤:

步骤1:更新系统

sudo apt-get update  sudo apt-get upgrade

步骤2:安装 Nginx

sudo apt-get install nginx

步骤3:安装 MySQL

sudo apt-get install mysql-server

在安装过程中,系统将提示你为MySQL的"root"用户设置密码。请记住这个密码,因为稍后在安装PHP的时候可能会用到。

步骤4:安装 PHP

sudo apt-get install php-fpm php-mysql

步骤5:配置 Nginx 使用 PHP

首先,备份默认的 Nginx 配置文件:

sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/default.bak

然后,使用文本编辑器打开 Nginx 配置文件:

sudo vim /etc/nginx/sites-available/default

找到以下部分并做相应修改:

index index.html index.htm index.nginx-debian.html;

改为:

index index.php index.html index.htm index.nginx-debian.html;

找到以下部分:

#location ~ \.php$ {  #       include snippets/fastcgi-php.conf;  #  #       # With php-fpm (or other unix sockets):  #       fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;  #       # With php-cgi (or other tcp sockets):  #       fastcgi_pass 127.0.0.1:9000;  #}

取消注释并修改为:

location ~ \.php$ {          include snippets/fastcgi-php.conf;          fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;  }

找到以下部分:

# deny access to .htaccess files, if Apache's document root  # concurs with nginx's one  #  #location ~ /\.ht {  #       deny all;  #}

取消注释:

location ~ /\.ht {          deny all;  }

保存并关闭文件。

步骤6:重启 Nginx 和 PHP 服务

sudo systemctl reload nginx  sudo systemctl restart php7.4-fpm

这样你就成功在 Ubuntu 20.04.6 LTS 下安装了 LNMP 环境。你可以通过创建一个 PHP 信息页面来测试环境是否正常工作。

echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php

然后在浏览器中访问 http://your_server_ip/info.php,如果看到 PHP 信息页面,那么说明你的 LNMP 环境已经安装成功。

PS:可以不修改文件内容,仍然可以使用

Docker文件迁移到TF卡或者U盘,最大限度减少空间占用

14 八月, 2023


简介: 在docker的使用中随着下载镜像越来越多,构建镜像、运行容器越来越多, 数据目录必然会逐渐增大;当所有docker镜像、容器对磁盘的使用达到上限时,就需要对数据目录进行迁移。

前置工作
在迁移前确认迁移的目标目录空间是否充足
在迁移时需停止docker服务,务必在平台不使用时进行迁移

使用以下命令查询当前docker数据目录安装路径:
docker info | grep "Docker Root Dir"

下文以/mnt/mmcblk1p1/docker 这个TF卡上的路径作为要迁移的新 Docker 安装(存储)目录为例子,对于安装在U盘的,一般是/mnt/sda1/,可以使用 df -h命令自行确定外挂存储路径

迁移方案
方法一:软链接
停掉Docker服务:
systemctl stop docker

根据上面查到的路径,移动整个/var/lib/docker目录到数据盘的目的路径(没有rsync命令时需安装rsync):
sudo apt-get install rsync
rsync -avzP /var/lib/docker /mnt/mmcblk1p1/
参数解释:
-a,归档模式,表示递归传输并保持文件属性。
-v,显示rsync过程中详细信息。可以使用"-vvvv"获取更详细信息。
-P,显示文件传输的进度信息。(实际上"-P"="--partial --progress",其中的"--progress"才是显示进度信息的)。
-z, 传输时进行压缩提高效率。

备份数据目录
mv /var/lib/docker /var/lib/docker.bak

添加软链接
ln -s /mnt/mmcblk1p1/docker /var/lib/

重新启动docker
systemctl start docker

启动 Docker 之后,Docker 写入的路径依然是 /var/lib/docker ,但是因为软链接的设置,实际已经是往新的目录写入了。至此,完成了 Docker 安装(存储)目录的迁移。

通过上述方法完成迁移之后,在确认 Docker 能正常工作之后,删除原目录备份数据:
rm -rf /var/lib/docker.bak

方法二:修改默认存储路径
直接移出数据,并修改docker默认存放路径位置

停掉Docker服务:
systemctl stop docker

根据上面查到的路径,移动整个/var/lib/docker目录到数据盘的目的路径(没有rsync命令时需安装rsync):
sudo apt-get install rsync
rsync -avzP /var/lib/docker /mnt/mmcblk1p1/

修改配置默认路径
在EXECStart后面添加--graph=/mnt/mmcblk1p1/docker/

vim /usr/lib/systemd/system/docker.service
在最后手动加上
ExecStart=/usr/bin/dockerd --graph=/mnt/mmcblk1p1/docker
按Esc后输入:wq退出编辑

重启docker

systemctl daemon-reload  systemctl start docker

查看docker数据存储目录
docker info | grep "Docker Root Dir"
看一看是不是Docker Root Dir: /mnt/mmcblk1p1/docker

确认之前的镜像是否还在
docker images

通过上述方法完成迁移之后,在确认 Docker 能正常工作之后,删除原目录数据:
rm -rf /var/lib/docker

方法三:通过mount挂载的bind命令
备份 fstab文件
cp /etc/fstab /etc/fstab.$(date +%Y-%m-%d)

停掉Docker服务:
systemctl stop docker

根据上面查到的路径,移动整个/var/lib/docker目录到数据盘的目的路径(没有rsync命令时需安装rsync):
sudo apt-get install rsync
rsync -avzP /var/lib/docker /mnt/mmcblk1p1/

将备份保存
mv /var/lib/docker/ /var/lib/docker.bak

通过mount挂载的bind命令将新位置挂载到老位置

创建挂载点

mkdir /var/lib/docker  mount --bind /mnt/mmcblk1p1/docker /var/lib/docker  mount -a

创建开机自动挂载

vim /etc/fstab
最后一行添加
/mnt/mmcblk1p1/docker /var/lib/docker none bind 0 0
按Esc后输入:wq退出编辑

挂载

mount -a

如有必要重启服务器确认是否成功迁移
reboot

通过上述方法完成迁移之后,在确认 Docker 能正常工作之后,删除原目录备份数据:
rm -rf /var/lib/docker.bak

 

纯小白玩海思机顶盒NAS系统:系统刷好第一步要做什么?

13 八月, 2023

作为一个没有正式接触过linux系统的纯小白,当刷完盒子系统后,其实整个人都是懵逼状态,不知道接下来该怎么让盒子按自己的需求来工作。经过不断琢磨和请教,总算有了些许心得。因为都是身为小白的我自己感触最深的问题,此刻总结分享出来,希望能帮到更多刚摸到门槛的弟兄们。

由于本人实在是"太白",所以描述都是很业余的,希望各路大神不吝赐教,帮忙修改完善,谢谢!

下面,我基于自己的需求,把配置的步骤分别列出来,请大家根据自己的实际情况作出适当修改。以下操作均是在盒子系统终端后台中操作

第一步、修改系统管理员密码:

系统默认root账号的密码为1234,ubuntu账号的密码为ubuntu,下面我们输入以下命令进行修改:

passwd root 或 passwd ubuntu

在New password: 和Retype new password: 重复输入相同的自设密码,即可修改对应账户的密码。

系统反馈passwd: password updated successfully 意为修改成功,如修改失败,注意区分英文大小写,且确保两次输入的密码一致。

第二步、支持exFAT分区格式:

如果希望盒子外接exFAT分区格式的U盘或硬盘,需要输入以下命令让系统支持:

sudo apt-get install exfat-fuse exfat-utils

安装完成需重启盒子,才能正确识别exFAT分区内文件,输入以下命令:
reboot

第三步、更改个人网盘h5ai的默认存档位置(或叫修改或添加软链接):

由于盒子emmc的容量始终是有限的,一般都会外挂U盘或硬盘来扩容,这时我们想把个人网盘h5ai的默认存档路径更改到外置盘上,就可以按以下步骤操作(备注:我的外置U盘挂载为/mnt/sda3,下同。大家需要根据自己的情况修改路径):

mkdir -p /mnt/sda3/files #意为在U盘根目录新建files文件夹。

ln -s /mnt/sda3/files /var/www/html/files/files #意为把h5ai网盘里的files文件夹的软链接,连接到U盘的files文件夹,这样就可以在h5ai里直接查看和下载U盘files文件夹里的文件。

chmod -R 777 /mnt/sda3/files #意为给U盘files文件夹赋予完全读写权限。

以上即完成了h5ai下files文件夹对应到u盘下files文件夹的连接。

假如我们想删除该连接,怎么办呢?我们可以使用以下命令行:

rm -rf /var/www/html/files/files #即可删除h5ai网盘的files文件夹。

切记,不能误删除/var/www/html/files文件夹!

第四步、修改h5ai、webdav(两者相同)的默认用户名和密码:

这一步非常重要,本人就因为使用530版固件(网盘没有访问限制)时没注意这点,差点导致自己的隐私信息外泄!还好现在最新的0808版固件已经增加了h5ai网盘访问限制功能,但我们还是要尽快修改默认的用户名和密码。跟我来做:

echo -n 'XXX:' | tee /etc/nginx/passwords.list #意为设置XXX为用户名,根据需要修改XXX为自定用户名。

openssl passwd -apr1 | tee -a /etc/nginx/passwords.list #意为修改密码,输入后会要求输入2次自定密码并自动保存。

nginx -s reload #重启nginx,使设置生效。

以上已完成了盒子nas系统的初步设置,下一篇我将分享samba的安装、添加samba的用户名和修改密码,敬请期待!

文章来源:http://zengjun.zicp.net:620/blog/index.php/archives/4/ 版权所有,欢迎转载 


 

机顶盒刷NAS系列跑芯片型号获得reg名称教程

机顶盒刷家用NAS-跑芯片型号教程

一、工具

机顶盒、螺丝刀、USB转TTL下载线

图片

)

USB转TTL线,淘宝很多,最好是带个排针吧。

二、软件

刷机软件:HiTool 5.3.12

三、过程

a)打开机顶盒

图片

只需要拆这两个螺丝就可以了,剩下就是撬开就可以了。

图片

周围是一个圈塑料卡子,别弄坏了

b)连接好TTL线和机顶盒

图片

只需要 GND、TX、RX就可以了

连接排针和TTL线,然后插入这个孔,最好是焊接,不然不稳定。

注意:不同TTL线的颜色,表示RX、TX含义不同,具体的看买的是啥线,只要别短路烧坏,如果通讯有问题,一般TX、RX换一下就可以了!

c)查看串口号

图片

图片

我的是com4,记住com4!!

一般都是免驱动的,或者无非就是CH340 、PL2303一类的芯片,自己网上下载或者找卖家要都可以!

d)打开HiToll

刚开始不知道芯片型号,芯片随便选!!!

单击:打开终端工具

图片

e)连接终端

图片

图片

选择串口,就是之前设备管理器里面的串口号

图片

f)断电重新上电(不要拔掉TTL线缆)

图片

好了,芯片号hi3798mv100!

PS:其实也可以不用这个工具,随便找一个串口调试工具,只要把波特率设置好,设备重启,自动就可以读出来了。

用这个hiTool主要是后面要刷程序。。

(下面是串口调试软件的,读出来的)

图片


 

rk322x armbian 移植hi3798 mv100

rk322x armbian 移植hi3798 mv100

链接:https://pan.baidu.com/s/1kGh4qKXxyn8IvGccODxLoQ
提取码:slkc
基于RK322X移植的armbian,感谢@肖的内核编译以及docker,zram,chrony等若干修复,修复扩容脚本兼容hi特有的emmc和其他外置存储
rootfs可刷入emmc,外置存储包含了外置启动bootargv分区(感谢@二毛 提供的思路)和完整系统镜像,可自行替换kernel适配,刷入后即可自动扩容即可使用
使用说明:
1.emmc启动:刷入rootfs镜像即可,注意替换rootfs分区
2.外置usb启动:外置存储中共2个文件,bootargvs刷入emmc中的bootargvs分区,用于改外置USB引导,另一个镜像文件为全盘镜像,op armbian等的tf或U盘怎么刷,这个就怎么刷,可使用rufus、Win32DiskImager、balenaEtcher全盘刷写。
3.理论上rootfs是通用的,只要是armhf都可(如mv200 mv300等),自己适配内核,或者用雕大的内核禁用zram、chrony等服务
4.用雕大内核,使用在mv200 mv300需要如下修改
docker 支持:
update-alternatives --config iptables
#选iptables-legacy
关闭chrony 改用ntpdate
关闭zram服务
该镜像可能还存在其他bug,仅用于测试交流,因固件造成的损失概不负责。