网站首页 > 开源技术 正文
相信大家都会有一两台淘汰的笔记本电脑,食之无味,弃之可惜。我就有1台十多年前的笔记本电脑,P9700的CPU,4G内存,千兆网口(支持网络唤醒),可以安装2个SATA硬盘(其中1个是光驱位改装),待机(SUSPEND)功耗只有1.5W,比苹果最新的MAC mini还省电,用作家庭服务器运行各种网络服务和Docker应用非常合适。由于网卡支持网络唤醒,不用的时候用手机远程一键待机,需要的时候也可以一键唤醒,省电之余又减少硬盘磨损。
一、操作系统选择
由于一直有使用软路由,对openwrt系统比较熟悉,openwrt也可以作为服务器操作系统使用。但是openwrt是精简版的嵌入式linux系统,对硬件特性支持不全面,无法实现待机,还是选择linux服务器发行版比较合适。Centos和Debian都是有名的linux服务器操作系统,Centos已经over了,选择Debian就理所当然了,著名的PVE、ubuntu和群晖都是基于Debian开发的,稳如老狗。
二、Debian12系统安装
Debian系统的下载网址是https://www.debian.org/,下载最新Debian12的ISO安装镜像。我希望数据和系统分离,笔记本电脑的两个硬盘仅用于存放数据,与操作系统解耦,操作系统安装在U盘中,随时可以更换。因此需要2个U盘,1号U盘用于ISO镜像文件启动安装程序,只使用一次,2号U盘用于容纳Debian操作系统,容量要求不小于4GB。用Rufus(https://rufus.ie/zh/)把镜像写入1号U盘,或者在1号U盘安装ventoy系统(https://www.ventoy.net/cn/),然后启动笔记本电脑。进入安装程序后就根据安装向导,把Debian12安装到2号U盘中。过程比较简单,这里就不赘述了。安装成功后拔掉1号U盘,进入BIOS设置2号U盘启动电脑。
三、Debian12系统配置
1、 网络配置
Debian12启动后,执行ping 360.cn,检查网络是否连通。如果不行就手动配置一下网络。
执行查看网络接口命令:ip a
最少有以上3个接口,分别是本地环回接口lo、有线网卡接口ens5、无线网卡接口wl1。由于用作服务器,当然用有线千兆网口,无线网卡最好硬件关闭,不使用。
编辑网络配置文件:nano /etc/network/interfaces
写入(根据自己需要配置IP):
auto ens5
iface ens5 inet static
address 192.168.1.212
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 192.168.1.1
然后执行重启网络命令:systemctl restart networking
2、 磁盘挂载
我有两块硬盘,一块是NTFS格式的原笔记本电脑硬盘,保留原数据以便以后还能启动windows系统,另外一块是新的ext4格式硬盘,安装Docker应用和作为NAS空间。
执行查看硬盘的UUID命令并记下两个硬盘的UUID用于静态挂载:lsblk -f
编辑静态挂载配置文件:nano /etc/network/interfaces
写入(根据自己需要配置):
UUID=4E1EC98C1EC96E11 /mnt/SSD1 ntfs defaults 0 0
UUID=06e7a27d-d67d-4263-b538-4d1790cb96e5 /mnt/SSD2 ext4 defaults 0 0
重启守护进程使挂载生效:systemctl daemon-reload
再次用lsblk -f命令就可以看到挂载到/mnt/SSD1和/mnt/SSD2的两块硬盘。
3、 设置Samba共享
编辑SMB配置文件:nano /etc/samba/smb.conf
写入(根据自己需要配置):
[SSD1]
path = /mnt/ SSD1
browseable = yes
writable = yes
guest ok = yes
read only = no
create mask = 0777
directory mask = 0777
[SSD2]
path = /mnt/ SSD2
browseable = yes
writable = yes
guest ok = yes
read only = no
create mask = 0777
directory mask = 0777
[homes]
comment = Home Directories
browseable = no
available = no
重启samba服务使配置生效:systemctl restart smbd
这样,两个硬盘就可以免密码SMB访问。[homes]配置是去掉烦人的自动共享用户目录。如果需要用密码访问,就执行smbpasswd -a myusername,把Debian的账户加入到samba服务中,配置guest ok = no即可。
4、 安装可视化服务器管理面板
Openwrt有luci界面来管理系统,Debian可以安装1panel管理面板来实现可视化管理,也是一个Docker管理利器。安装1panel会同时安装好Docker。
安装脚本如下:
curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && bash quick_start.sh
根据提示一步一步就能安装完成。
5、 解决笔记本屏幕自动关闭
笔记本电脑运行Debian,屏幕会一直常亮,不像台式机可以不接显示器。可以配置启动后执行关屏操作。编辑启动执行脚本:nano /etc/rc.local
写入:
#!/bin/bash
setterm --blank 1
exit 0
赋予执行权限:
chmod +x /etc/rc.local
这样,启动后屏幕就会自动关闭。但是,如果系统挂起后重新唤醒,屏幕又会亮起,所以要配置唤醒自动关屏服务。
编写唤醒关屏脚本:nano /usr/local/bin/wakeup-screen-off.sh
写入:
#!/bin/bash
setterm --blank poke --term linux < /dev/tty1
sleep 3
setterm --blank force --term linux < /dev/tty1
赋予执行权限:
chmod +x /usr/local/bin/wakeup-screen-off.sh
创建唤醒关屏服务:nano /etc/systemd/system/wakeup-screen-off.service
写入:
[Unit]
Description=Run script on wakeup
After=suspend.target
[Service]
Type=oneshot
ExecStart=/usr/local/bin/wakeup-screen-off.sh
[Install]
WantedBy=suspend.target
启用新创建的服务,以便在系统唤醒时运行:
systemctl enable wakeup-screen-off.service
6、 解决笔记本合起屏幕自动待机
笔记本电脑运行Debian,合起屏幕系统会自动待机,需要取消此功能。编辑nano /etc/systemd/logind.conf,
找到HandleLidSwitch一行,配置HandleLidSwitch=ignore,表示合上屏幕时不执行任何操作。重启服务:systemctl restart systemd-logind,此时,合上盖子时系统将不再进入待机状态。
四、配置手机一键待机和一键唤醒
手机上安装ConnectBot工具,可以自动SSH连接到服务器执行命令,一键待机就是连接到Debian服务器,自动执行systemctl suspend实现,一键唤醒就是连接到同局域网的软路由OpenWRT系统,自动执行etherwake xx:A9:05:DA:91:xx(Debian服务网卡MAC地址)实现。只要用软路由实现内网穿透,采用这种方法即使在外面也能远程实现一键待机和一键唤醒,十分方便。
至此,一台Debian服务器就基本配置完成,可以安装各种服务和应用,比如photoprism、homeassistant、Alist、transmission、NAS系统等等,可以愉快的玩耍了。
- 上一篇: 如何批量获取指定歌手的音乐
- 下一篇: 免费LINE BOT API 开放第二轮申请
猜你喜欢
- 2025-01-17 借助 Terraform 功能协调部署 CI/CD 流水线-Part 2
- 2025-01-17 (超文本传输协议)什么是http协议?
- 2025-01-17 ADG (Active Data Guard) 数据容灾架构下,如何配置 Druid 连接池?
- 2025-01-17 Cadence Allegro 16.6操作技巧_ 如何布线
- 2025-01-17 求生之路2服务器搭建插件安装及详细的游戏参数配置教程windows
- 2025-01-17 极端容器场景下的远程文件下载思路
- 2025-01-17 自建dns获取域名解析与证书告警
- 2025-01-17 零基础学习网站必知—http协议等资料大全
- 2025-01-17 F5安全的多云网络解决方案 助力简化分布式云环境的网络和应用连接
- 2025-01-17 推荐:PaGoDo一款功能强大的被动式Google Dork
你 发表评论:
欢迎- 最近发表
-
- 6月游戏推荐(二)(6月份新出的游戏)
- 37【源码】数据可视化:基于 Echarts + Python 动态实时大屏
- Kubernetes Kube-Proxy 组件 IPVS 模式工作原理及常用故障排查
- 《茶余饭后顶级英文歌曲精选》(茶余饭后的经典句子)
- rainx和MediaTek携手推出101产品生态,为5G FWA提供创新
- KAPITAL 推出蓝染风格 Aloha Shirt 系列
- 欧美经典怀旧歌曲Free loop-管不住的音符
- Mac 下php5.3-7.0的二进制包 ── PHP-OS
- 如何把一个Python应用程序装进Docker
- 为何推荐 JsonTree.js 做 JSON 可视化?
- 标签列表
-
- jdk (81)
- putty (66)
- rufus (78)
- 内网穿透 (89)
- okhttp (70)
- powertoys (74)
- windowsterminal (81)
- netcat (65)
- ghostscript (65)
- veracrypt (65)
- asp.netcore (70)
- wrk (67)
- aspose.words (80)
- itk (80)
- ajaxfileupload.js (66)
- sqlhelper (67)
- express.js (67)
- phpmailer (67)
- xjar (70)
- redisclient (78)
- wakeonlan (66)
- tinygo (85)
- startbbs (72)
- webftp (82)
- vsvim (79)
本文暂时没有评论,来添加一个吧(●'◡'●)