当前位置: 首页 > news >正文

刷完Armbian的盒子后根目录空间太小解决方案

        最近买了个魔百盒的盒子,老是出现空间不足的问题,毕竟ROM容量才8个G,刚好我也有这方面的需求的解决之后将方案整理,分享给大家。
        因为我自己的动手能力也不足,所以硬改的方案就暂时不考虑,采用U盘方式扩容
具体思路是挂载U盘并将其设为开机启动,然后将大的软件都迁移到U盘,这样下来的我的主空间不超过4g


前提准备:
必须设备安装的是armbian,准备一个U盘

1、首先将U盘插到盒子上,输入 df -T  查看U盘目录,一般是在 /dev/sda1
然后将其格式化为 ext4(这是linux的文件系统格式)
格式化命令为 mkfs.ext4 /dev/sda1


等一小会儿之后将其挂载,可以新建一个目录

mkdir /mnt/disk


然后把U盘挂载到这个目录

mount /dev/sda1 /mnt/disk/


2、之后设置为每次开机就挂载
有两种方法
第一种是编辑文件 vi /etc/fstab
加入命令
/dev/sda1       /mnt/disk               ext4   default   0       0

这种方法需要小心谨慎一些,如果出错会进不去系统


另一种方法是编辑 vi /etc/rc.local
输入命令:

mount /dev/sda1 /mnt/disk



设置好之后就可以迁移大的软件了
我这里占用内存比较大的是两个软件:一个是docker,另一个是宝塔

3、先说docker
先暂停docker, 

service docker stop

当出现:

Warning: Stopping docker.service, but it can still be activated by:docker.socket

类似这中错误时,这是 Docker 在关闭状态下被访问自动唤醒机制,意味如果试图连接到 docker socket,而 docker 服务没有运行,系统将自动启动docker。执行下面这句即可
systemctl stop docker.socket

之后在U盘挂载的目录新建一个文件夹

mkdir /mnt/disk/docker/


然后把docker的文件都迁移到/mnt/disk/docker/目录中,命令为:

rsync -avz /var/lib/docker/ /mnt/disk/docker/

之后编辑 /etc/docker/daemon.json 配置文件,如果没有这个文件,那么需要自己创建一个,

根据上面的迁移目录,基础配置如下:(首先看下有没有这个属性,有的话将后面引号里的改成上面新建的新挂载目录)


{    "data-root""/mnt/disk/docker/"   }


将容器服务启动起来

service docker start


这样子之后你在docker安装的所有东西都会安装在U盘里

接下来说宝塔的迁移,因为宝塔要在/www文件夹里运行,所以宝塔的迁移方式有一点不一样
安装过宝塔的可以先卸载了,或者 rm -rf /www 把这个www文件夹删除了,然后新建 mkdir /www/

之后在U盘里新建目录 mkdir /mnt/disk/www
用软连接的命令(相当于创建快捷方式)
ln -s 源文件 目标文件源文件在U盘里为U盘新建的目录/mnt/disk/www,目标文件为/www总的来说命令为 ln -s /mnt/disk/www /www这一步完成之后就可以直接用宝塔的安装命令了wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh慢慢等待吧
这样子之后,你在宝塔里安装的所有内容php,mysql之类的或者可道云,博客网站 都会安装在U盘
一般来说这两个搞定之后,大多数的大应用都可以通过宝塔和docker安装,n1盒子本身的占用不会超过4g

下面的可以不用看:下面的方法没试验成功

刚刷完的盒子可用空间很小需要扩容根分区才可以使用

root@armbian:~# df -Th
Filesystem     Type      Size  Used Avail Use% Mounted on
udev           devtmpfs  845M     0  845M   0% /dev
tmpfs          tmpfs     196M  3.3M  193M   2% /run
/dev/sda2      ext4      2.4G  1.3G  1.1G  55% /
tmpfs          tmpfs     977M     0  977M   0% /dev/shm
tmpfs          tmpfs     5.0M  4.0K  5.0M   1% /run/lock
tmpfs          tmpfs     977M   12K  977M   1% /tmp
/dev/sda1      vfat      252M  102M  150M  41% /boot
/dev/zram1     ext4       49M  2.3M   43M   5% /var/log
tmpfs          tmpfs     196M     0  196M   0% /run/user/0

查看块设备

root@armbian:~# lsblk
NAME         MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda            8:0    1 57.7G  0 disk 
├─sda1         8:1    1  255M  0 part /boot
└─sda2         8:2    1  2.5G  0 part /
mmcblk2      179:0    0  7.3G  0 disk 
mmcblk2boot0 179:32   0    4M  1 disk 
mmcblk2boot1 179:64   0    4M  1 disk 
zram0        254:0    0  977M  0 disk [SWAP]
zram1        254:1    0   50M  0 disk /var/log
开始扩容
fdisk /dev/sda

查看空闲空间

Command (m for help): F
Unpartitioned space /dev/sda: 54.98 GiB, 59039023616 bytes, 115310593 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytesStart       End   Sectors Size2048      8191      6144   3M530432    532479      2048   1M
5775360 121077760 115302401  55G

查看根所使用的分区的开始和结束扇区并记录

Command (m for help): p
Disk /dev/sda: 57.73 GiB, 61991813632 bytes, 121077761 sectors
Disk model: DataTraveler 3.0
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xc92bbf76Device     Boot  Start     End Sectors  Size Id Type
/dev/sda1         8192  530431  522240  255M  c W95 FAT32 (LBA)
/dev/sda2       532480 5775359 5242880  2.5G 83 Linux

删除分区

Command (m for help): d
Partition number (1,2, default 2): 2Partition 2 has been deleted.

创建分区

Command (m for help): n
Partition typep   primary (1 primary, 0 extended, 3 free)e   extended (container for logical partitions)
Select (default p): p
Partition number (2-4, default 2): 2
First sector (2048-121077760, default 2048): 532480 
Last sector, +/-sectors or +/-size{K,M,G,T,P} (532480-121077760, default 121077760): Created a new partition 2 of type 'Linux' and of size 57.5 GiB.
Partition #2 contains a ext4 signature.Do you want to remove the signature? [Y]es/[N]o: YThe signature will be removed by a write command.

保存退出

Command (m for help): w
The partition table has been altered.
Syncing disks.

这个时候查看分区大小还没变化

root@armbian:/# df -Th
Filesystem     Type      Size  Used Avail Use% Mounted on
udev           devtmpfs  845M     0  845M   0% /dev
tmpfs          tmpfs     196M  5.7M  190M   3% /run
/dev/sda2      ext4      2.4G  1.3G  1.1G  55% /
tmpfs          tmpfs     977M     0  977M   0% /dev/shm
tmpfs          tmpfs     5.0M  4.0K  5.0M   1% /run/lock
tmpfs          tmpfs     977M   12K  977M   1% /tmp
/dev/sda1      vfat      252M  102M  150M  41% /boot
/dev/zram1     ext4       49M  3.1M   42M   7% /var/log
tmpfs          tmpfs     196M     0  196M   0% /run/user/0

重新设置分区大小

resize2fs /dev/sda2

再次查看已经变成57G了

root@armbian:/# df -ThFilesystem     Type      Size  Used Avail Use% Mounted on
udev           devtmpfs  845M     0  845M   0% /dev
tmpfs          tmpfs     196M  8.2M  188M   5% /run
/dev/sda2      ext4       57G  1.3G   56G   3% /
tmpfs          tmpfs     977M     0  977M   0% /dev/shm
tmpfs          tmpfs     5.0M  4.0K  5.0M   1% /run/lock
tmpfs          tmpfs     977M   12K  977M   1% /tmp
/dev/sda1      vfat      252M  102M  150M  41% /boot
/dev/zram1     ext4       49M  3.2M   42M   8% /var/log
tmpfs          tmpfs     196M     0  196M   0% /run/user/0

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 高阶数据结构——LRU Cache
  • pod详解 list-watch机制 预选优选策略 如何指定节点调度pod
  • 10.1 使用ansible部署 redis-exporter
  • Python 机器学习求解 PDE 学习项目 基础知识(3)matplotlib 画函数热图
  • 十六、【Python】基础教程 - 【Flask】网络编程开发
  • SpringBoot可以同时处理多少请求?
  • WHAT - xmlhttprequest vs fetch vs wretch
  • YOLO系列:从yolov1至yolov8的进阶之路 持续更新中
  • 【数据结构】队列,你必须知道的内部原理!!!
  • 大数据Flink(一百零九):阿里云Flink的基本名称概念
  • 保障速度与安全合规的前提下,如何传文件到国外?
  • 【解压既玩】PS3模拟器v0.0.32+战神3+战神升天+各存档 整合包 ,完美不死机,没有BUG,旷世神作,强力推荐
  • AI编程工具合集整理优缺点
  • HarmonyOS Developer之生命周期
  • Java设计模式-单例模式最佳实践
  • 【跃迁之路】【699天】程序员高效学习方法论探索系列(实验阶段456-2019.1.19)...
  • android百种动画侧滑库、步骤视图、TextView效果、社交、搜房、K线图等源码
  • Android框架之Volley
  • ECMAScript 6 学习之路 ( 四 ) String 字符串扩展
  • fetch 从初识到应用
  • linux安装openssl、swoole等扩展的具体步骤
  • MySQL QA
  • RxJS 实现摩斯密码(Morse) 【内附脑图】
  • Spring Security中异常上抛机制及对于转型处理的一些感悟
  • 回顾 Swift 多平台移植进度 #2
  • 基于axios的vue插件,让http请求更简单
  • 前言-如何学习区块链
  • 强力优化Rancher k8s中国区的使用体验
  • 使用Envoy 作Sidecar Proxy的微服务模式-4.Prometheus的指标收集
  • ​3ds Max插件CG MAGIC图形板块为您提升线条效率!
  • ​如何使用ArcGIS Pro制作渐变河流效果
  • #pragma data_seg 共享数据区(转)
  • #设计模式#4.6 Flyweight(享元) 对象结构型模式
  • (02)vite环境变量配置
  • (Matalb回归预测)PSO-BP粒子群算法优化BP神经网络的多维回归预测
  • (备份) esp32 GPIO
  • (四)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (五)activiti-modeler 编辑器初步优化
  • (转) RFS+AutoItLibrary测试web对话框
  • (转)linux 命令大全
  • .env.development、.env.production、.env.staging
  • .NET C# 配置 Options
  • .NET Framework Client Profile - a Subset of the .NET Framework Redistribution
  • .NET导入Excel数据
  • .Net接口调试与案例
  • @Not - Empty-Null-Blank
  • @transactional 方法执行完再commit_当@Transactional遇到@CacheEvict,你的代码是不是有bug!...
  • [1525]字符统计2 (哈希)SDUT
  • [2009][note]构成理想导体超材料的有源THz欺骗表面等离子激元开关——
  • [20180224]expdp query 写法问题.txt
  • [240903] Qwen2-VL: 更清晰地看世界 | Elasticsearch 再次拥抱开源!
  • [Android Pro] android 混淆文件project.properties和proguard-project.txt
  • [Android开源]EasySharedPreferences:优雅的进行SharedPreferences数据存储操作
  • [ASP.NET MVC]如何定制Numeric属性/字段验证消息
  • [BZOJ] 2427: [HAOI2010]软件安装