Debian系统记录

参考:http://bbs.wuyou.net/forum.php?mod=viewthread&tid=438607

一、安装必备软件

问题:

Media change: please insert the disc labeled
‘Debian GNU/Linux 12.6.0 _Bookworm_ – Official amd64 DVD Binary-1 with firmware 20240629-10:19’

解决:注释掉DVD

nano /etc/apt/sources.list

 

apt install sudo vim curl wget mdadm 

 

二、配置静态IP

配置ip、netmask和gateway

cp /etc/network/interfaces /etc/network/interfaces_backup

vim /etc/network/interfaces #里面加上:

iface eno1 inet static
address 192.168.0.10
netmask 255.255.255.0
gateway 192.168.0.1
dns-nameservers 8.8.8.8 114.114.114.114

vim /etc/resolv.conf #添加DNS服务器

nameserver 8.8.8.8
nameserver 114.114.114.114


sudo service networking restart #重启网络

三、安装webmin

项目地址:https://webmin.com/

GitHub: https://github.com/webmin/webmin

问题:curl: (7) Failed to connect to raw.githubusercontent.com port 443 after 3 ms: Couldn’t connect to server

vim /etc/hosts

#添加:

185.199.111.133 raw.githubusercontent.com
185.199.110.133 raw.githubusercontent.com
185.199.109.133 raw.githubusercontent.com
185.199.108.133 raw.githubusercontent.com

140.82.112.3 github.com
151.101.1.194 github.global.ssl.fastly.net
151.101.65.194 github.global.ssl.fastly.net
151.101.129.194 github.global.ssl.fastly.net
151.101.193.194 github.global.ssl.fastly.net
185.199.108.153 assets-cdn.github.com
185.199.109.153 assets-cdn.github.com
185.199.110.153 assets-cdn.github.com
185.199.111.153 assets-cdn.github.com

四、挂在raid5

apt install mdadm

mdadm -C /dev/md0 -l5 -n3 /dev/sdb1 /dev/sdc1 /dev/sdd1 #创建3个活动盘

echo "DEVICE /dev/sdb1 /dev/sdc1 /dev/sdd1" >> /etc/mdadm.conf # 配置磁盘设备文件名

mdadm -Ds /dev/md0 >> /etc/mdadm.conf # 配置软RAID信息

cat /proc/mdstat #查看阵列状态

mdadm -D /dev/md0 #查看阵列详细

mkfs.ext4 /dev/md0 # 格式化

sudo mkdir /mnt/data #创建目录

sudo mount /dev/md0 /mnt/data #挂载

blkid #查看/dev/md5的UUID, 并记录

cp /etc/fstab /etc/fstab_backup #备份硬盘挂载文件

vim /etc/fstab #编辑备份硬盘挂载文件

UUID=2e9cde83-1aa6-4654-a318-e4569f7a03c6 /mnt/data ext4 defaults 0 2

****安装webmin

curl -o setup-repos.sh https://raw.githubusercontent.com/webmin/webmin/master/setup-repos.sh
sh setup-repos.sh

apt-get install –install-recommends webmin

****安装v2rayA

项目地址:https://v2raya.org/

添加公钥
wget -qO – https://apt.v2raya.org/key/public-key.asc | sudo tee /etc/apt/keyrings/v2raya.asc
添加 V2RayA 软件源
echo “deb [signed-by=/etc/apt/keyrings/v2raya.asc] https://apt.v2raya.org/ v2raya main” | sudo tee /etc/apt/sources.list.d/v2raya.list
sudo apt update
安装 V2RayA
sudo apt install v2raya v2ray ## 也可以使用 xray 包

启动 v2rayA

sudo systemctl start v2raya.service
设置开机自动启动

sudo systemctl enable v2raya.service

四、home Nas

项目地址:https://github.com/kekylin/Debian-HomeNAS?tab=readme-ov-file

五、安装docker

六、cloudflare配置docker镜像代理:docker.zingcont.cn

七、配置docker图形化界面

下载汉化包到安装目录并解压

https://github.com/eysp/public/releases/tag/public

cd /opt/docker/portainer

wget https://github.com/eysp/public/archive/refs/tags/public.tar.gz

tar -zvxf public.tar.gz
mv public-public public

docker pull portainer/portainer-ce:2.9.1 #拉取指定镜像

#配置镜像

sudo docker run -d –name portainer -p 9000:9000 –restart=always -v /var/run/docker.sock:/var/run/docker.sock -v /opt/docker/portainer/data:/data -v /opt/docker/portainer/public:/public portainer/portainer-ce:2.9.1

 

八、安装jellyfin

docker run -d \
–name=jellyfin \
–user=1000:1000 \
–net=host \
-v /var/www/html/docker/jellyfin/config:/config \
-v /var/www/html/docker/jellyfin/cache:/cache \
-v /home/media:/media \
jellyfin/jellyfin

九、配置iptables防火墙

#端口开放命令IPV4, IPV6

sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT

sudo ip6tables -A INPUT -p tcp --dport 22 -j ACCEPT

#保存:

sudo netfilter-persistent save
sudo netfilter-persistent reload

#查看:

sudo iptables -L -n

九、内网穿透ddns-go

项目地址:https://github.com/jeessy2/ddns-go

mkdir -p /var/opt/ddns-go

cd /var/opt/ddns-go

wget -c https://github.com/jeessy2/ddns-go/releases/download/v6.6.3/ddns-go_6.6.9_linux_x86_64.tar.gz

tar -zxvf ddns-go_6.6.9_linux_x86_64.tar.gz

./ddns-go -s install

十、 配置Apache, mysql, php

sudo apt install libapache2-mod-php8.2 #安装PHP 8.2 Apache模块

sudo a2enmod php8.2 #启用PHP 8.2 Apache模块

sudo apachectl configtest #验证Apache,配置文件

sudo systemctl restart apache2 #重启Apache

sudo systemctl status apache2 #查看Apache状态

十一、bypy同步命令

系统:debian12

环境python3.11

使用工具:pyby

命令: bypy syncup /local/path /remote/path

要求: 编写一个小的shell脚本来先激活虚拟环境,然后运行bypy命令,并将该脚本作为cron任务运行

实现目标: 系统cron任务中添加每周执行一次

创建文件并赋予权限:

vim /opt

配置脚本:

#!/bin/bash

# 激活虚拟环境
source ~/myenv/bin/activate

# 运行bypy syncup命令
# 注意:确保bypy是作为可执行文件安装的,或者你可以使用python -m bypy(如果它是Python模块)
# 这里假设bypy是可执行的
bypy syncup /local/path /remote/path

# 可选:如果你需要,可以在这里添加命令来退出虚拟环境
# 但通常,在脚本结束时,虚拟环境会自动“退出”
# deactivate

添加到定时任务:

0 0 * * 0 /bin/bash ~/sync_bypy.sh

 

常用命令:

source /var/opt/myenv/bin/activate #激活虚拟环境

bypy list #显示百度网盘 /apps(我的应用数据)/bypy 目录下的所有文件。
bypy upload [localpath] [remotepath] [ondup] #上传文件到百度网盘
bypy downfile [localpath] #从百度网盘下载单个文件
bypy downdir [remotedir] [localdir] 从百度网盘下载整个文件夹

bypy syncup /local/path /remote/path #同步文件
bypy syncdown /remote/path /local/path #同步文件 

同步文件

site-packages/bypy/bypy.py syncup /mnt/databackup /wwwbackup

bypy提供了多种操作命令,具体如下:

quota:显示百度云存储配额信息
list:列出指定目录下的文件列表
upload:上传本地文件到百度云
download:从百度云下载文件到本地
syncup:将本地文件同步到百度云
syncdown:将百度云文件同步到本地
delete:删除百度云上的文件
makedir:在百度云上创建目录
move:移动百度云上的文件
copy:复制百度云上的文件
compare:比较本地和云文件的差异

Samba:

sudo smbpasswd -a username

将共享路径映射为Windows磁盘
若经常使用的共享,可直接映射为Windows的磁盘,不用每次都输ip,但linux 的ip变了需要重新映射,所以建议将linux 的ip设为固定ip
我的电脑 ->右键 ->映射网络驱动器,文件夹输入框输入\\Debian 的ip\共享名,不能直接输ip,一定要加上共享名,点击完成
接下来就可以在我的电脑里看到映射的网络磁盘了

PHP 扩展

sudo apt install php8.2-curl php8.2-mbstring php8.2-intl php8.2-zip php8.2-gd php8.2-mysql

 

ufw防火墙
更新:sudo apt update
安装:sudo apt install ufw

开启前放行!放行!放行!
放行ssh(22):sudo ufw allow ssh
sudo ufw allow 7722/tcp

开启:sudo ufw enable
开机自动运行:sudo ufw default deny
查看状态:sudo ufw status verbose
Status: inactive
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), deny (routed)
New profiles: skip

查看已开放:sudo ufw status
删除: sudo ufw delete 3 #根据编号(从上数1,2,3,……)
开启前放行!放行!放行!

放行ssh(22):sudo ufw allow ssh
sudo ufw allow 7722/tcp
启用:sudo ufw enable
关闭:sudo ufw disable
***均使用默认规则

# 开放docker内容器的访问权限
ufw allow from 172.18.0.1/24
# 刷新防火墙配置
ufw reload