一、安装debian系统:
1、下载ios系统文件
2、打开ultraiso->菜单->文件->打开系统.ios镜像
3、启动->写入硬盘镜像->(勾选刻录校检)->写入
注意:
不是“制作硬盘镜像” 这个是把当前盘做成镜像
勾选刻录校检 , 不勾选有时会有错,不太稳
注意驱动器: 到时在bios也就是显示这个
bios 设置:
Boot->Option #1 //这些就是硬盘
Boot->Option #2
1、debian系统:
https://www.debian.org/CD/netinst/index.zh-tw.html
更新源
apt-get install apt-transport-https ca-certificates #安装https源,之后再执行
apt-get update #更新索引
#sudo apt upgrade #升级
2、安装SSH服务
sudo apt install openssh-server # 安装SSH服务
sudo systemctl start ssh && sudo systemctl enable ssh # 启动并设置开机自启
3、
debian SSH服务器拒绝了密码。请再试一次。SSH服务器拒绝了密码。请再试一次。
确保PasswordAuthentication和PermitRootLogin设置为yes(若需root登录)
vim /etc/ssh/sshd_config
PasswordAuthentication yes # 允许密码认证
PermitRootLogin yes # 允许root登录(非生产环境)
HostKeyAlgorithms +ssh-rsa # 在文件末尾添加以下内容 支持: WinSCP
sudo systemctl restart sshd
报错: rm -rf /etc/ssh/.sshd_config.swp
Port 65535 # 默认端口为22
PermitRootLogin yes # 如需root登录(生产环境慎用)
PasswordAuthentication yes # 允许密码登录
debian Vim无法使用鼠标右键复制 解决方法
Debian 10 : vim /usr/share/vim/vim81/defaults.vim
debian-12.11.0 : vim /usr/share/vim/vim90/defaults.vim
转至第 79 行,找到:
if has('mouse')
set mouse=a
endif
改成:
if has('mouse')
set mouse-=a # =号前面加个 - 即可
endif
linux关关盖的时候,它也在运行,要怎么设置才行?
vim /etc/systemd/logind.conf
HandleLidSwitchExternalPower=ignore # 插电时合盖不动作
HandleLidSwitch=ignore # 合盖时不执行任何操作
可选值说明:
ignore:完全忽略合盖动作
lock:仅锁屏不休眠
suspend:默认休眠(需避免)12
systemctl restart systemd-logind #保存并重启服务
chmod 644 /etc/systemd/logind.conf # 修改后恢复权限 若文件为只读,需先赋权
systemctl restart systemd-logind
快速追加别名(支持ll命令):
echo "alias ll='ls -l'" >> ~/.bashrc && source ~/.bashrc
debian查看当前服务器温度:
apt install lm-sensors
sensors-detect
sensors
watch -n 1 sensors #每秒刷新一次数据
root@wllsys:~# sensors
acpitz-acpi-0
Adapter: ACPI interface
temp1: +27.8 C (crit = +110.0 C) #表示主板或环境温度传感器检测到的当前温度,临界温度为 +110.0°C , (27.8 C 此值通常反映机箱内部环境温度,远低于临界值,散热正常)
coretemp-isa-0000
Adapter: ISA adapter
Package id 0: +41.0 C (high = +105.0 C, crit = +105.0 C) #表示 CPU 封装(整体)温度,各核心温度均为 +41.0°C 。 高温阈值:+105°C(触发降频保护)临界温度:+105°C(可能触发强制关机),(当前 41°C 属于安全范围,无需担心)
Core 0: +41.0 C (high = +105.0 C, crit = +105.0 C)
Core 1: +41.0 C (high = +105.0 C, crit = +105.0 C)
Core 2: +41.0 C (high = +105.0 C, crit = +105.0 C)
Core 3: +41.0 C (high = +105.0 C, crit = +105.0 C)
BAT0-acpi-0
Adapter: ACPI interface
in0: 7.38 V #电池当前输出电压为 7.38 伏特
curr1: 1.14 A #电池当前输出电流为 1.14 安培(A), (结合电压与电流可估算实时功耗)
电池当前输出电压为 7.38 伏特, 电池当前输出电流为 1.14 安培(A) 结合电压与电流可估算实时功耗:
给定值:
电压V = 7.38 V
电流I = 1.14 A
计算功耗:
P = 7.38 × 1.14
计算这个值:
7.38 × 1.14 = ?
首先,7.38 × 1 = 7.38
然后,7.38 × 0.14 = 7.38 × 0.1 = 0.738, 7.38 × 0.04 = 0.2952, 所以0.738 + 0.2952 = 1.0332
因此,P = 7.38 + 1.0332 = 8.4132 W
总结与建议:
温度状态正常:
CPU 温度(41°C)远低于临界值,散热良好。
环境温度(27.8°C)在安全范围内。
电池参数解读:
若为笔记本,7.38V 可能是单节锂电池(标称 7.4V),电量充足⚡️。
提示:
若温度接近 high(如 >90°C),需检查散热器或风扇是否积灰。
电流值 1.14A 若持续偏高,可能预示高负载运行,可结合 top 命令查看进程资源占用二、检查环境:
查看当前操作系统是ubuntu还是centos
1、执行: lsb_release -a
2、命令: cat /etc/redhat-release
3、命令: cat /etc/issue
查看当前操作系统cpu信息
cat /proc/cpuinfo
lscpu #这个是更好
查看内存:
[root@localhost ~]# free -h
total used free shared buff/cache available
Mem: 125G 994M 124G 10M 302M 124G
Swap: 4.0G 0B 4.0G
查看硬盘:
df -h
lsblk -f
lsblk 这个更好
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 3.7T 0 disk
├─sda1 8:1 0 1M 0 part
├─sda2 8:2 0 1G 0 part /boot
└─sda3 8:3 0 3.7T 0 part
├─centos-root 253:0 0 50G 0 lvm /
├─centos-swap 253:1 0 4G 0 lvm [SWAP]
└─centos-home 253:2 0 3.6T 0 lvm /home
sdb 8:16 0 3.7T 0 disk
禁用多余的用户:
cat /etc/passwd
在Linux中,可以使用usermod命令来禁用或启用用户。
要禁用用户,需要使用-L选项并指定要禁用的用户名。下面是示例命令: usermod -L username
启用用用户,-U 参数表示解锁用户的账户。启用用户后,该用户可以登录系统: usermod -U username
复制
cp -rf /usr/local/servers/web/nginx.conf /usr/local/servers/nginx19/conf/nginx.conf
cp -Rp hyperf hyperf_back_3
scp -o "StrictHostKeyChecking no" -r web@40.73.71.100:/usr/local/servers/down /usr/local/servers/down //拷贝 服务器对拷贝 复制
scp -r -o port=62210 "StrictHostKeyChecking no" -r web@www.diyyq.com:/home/data/docker/web/www/wll/public/images/ ./ ##linux scp 非22端口,scp 、ssh非22端口的服务器方法 //拷贝 服务器对拷贝 复制
大小
du -sh down/*
df -h
echo "">pic_cn.log
du -sh ./* | sort -h 从小到大
du -sh ./* | sort -hr 从大到小
du -sh ./* | sort -hr | grep '4.0K'
du -sh ./* | sort -hr | grep '4.0K' | awk '{print $2}' | xargs rm -rf #删除4.0K的文件
安全设置:
1.关闭邮箱服务占用端口。
systemctl stop postfix //停止25端口邮箱服务
systemctl disable postfix //关闭邮箱服务自动启动
//systemctl enable postfix //开启邮箱服务自动启动
rm ~/.bash_history 彻底 清除历史记录,要不到时有关机命令错误操作三、ip设置:
vim /etc/network/interfaces
有线:
# 引用额外配置文件(可选)
source /etc/network/interfaces.d/*
# 回环接口(必须保留)
auto lo
iface lo inet loopback
# 网络接口配置(根据实际网卡名称修改)
auto enp8s0 #启动时自动启动该网卡
iface enp8s0 inet static #static静态ip,dhcp动态ip
address 192.168.5.2/24
netmask 255.255.255.0
gateway 192.168.5.1
dns-nameservers 114.114.114.114 8.8.8.8 # 在这里配置 DNS 是更现代、持久的方法
#dns-search your-domain.com # (可选) 域名搜索路径
# 允许热插拔(可选)
allow-hotplug enp8s0 # 允许热插拔 - 告诉系统在检测到该网卡接入时启动它
无线:
# 引用额外配置文件(可选)
source /etc/network/interfaces.d/*
# 回环接口(必须保留)
auto lo
iface lo inet loopback
# 网络接口配置(根据实际网卡名称修改)
allow-hotplug wlp1s0
iface wlp1s0 inet dhcp
wpa-ssid 18718481877
wpa-psk 123456
/etc/init.d/networking restart #重启网络服务四、 新建用户:
# 切换到 root 用户(你已经是 root 了)
# 直接使用 apt 安装 sudo
apt update
apt install sudo
# 如果有错误,可能需要先修复源列表
# 编辑 /etc/apt/sources.list 文件
vim /etc/apt/sources.list
# 然后再次安装 sudo
apt install sudo
#验证安装
sudo --version
## 创建新用户并添加到 sudo 组如:adduser web --ingroup sudo 或:
#adduser web
#usermod -aG sudo web
必须新建一个叫web的账号,并且路径必须为:/home/data/
cat /etc/passwd 看所有系统用户信息
[root@localhost ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:999:998:User for polkitd:/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
chrony:x:998:996::/var/lib/chrony:/sbin/nologin
useradd -d /home/data/ web 注意此目录不能是已存在的目录 更改目录命令: usermod -d /home/data/ web 报错: usermod: user web is currently used by process 14171 那么退出当前web用户, kill -9 14171 再次执行:usermod -d /home/data/ web 就ok了
passwd web #设置web用户的密码
cat /etc/passwd 发现用户不用修改:
usermod -u 1002 weililong #修改用户UID
groupmod -g 1002 weililong #修改用户GID
usermod -u 1000 web
groupmod -g 1000 web
//cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime //更新时间, 填: yes
//date -R # 查看当前时间
添加 sudo 权限
vim /etc/sudoers
查: root ALL=(ALL) ALL
加: web ALL=(ALL) ALL
wq! 强行保存五、 挂载硬盘(可选) 当空间不够,需要提前规划挂载:
挂载:
[web@localhost home]$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 3.7T 0 disk
├─sda1 8:1 0 1M 0 part
├─sda2 8:2 0 1G 0 part /boot
└─sda3 8:3 0 3.7T 0 part
├─centos-root 253:0 0 50G 0 lvm /
├─centos-swap 253:1 0 4G 0 lvm [SWAP]
└─centos-home 253:2 0 3.6T 0 lvm /home
sdb 8:16 0 3.7T 0 disk
1、挂载
sudo mkfs -t ext4 /dev/sdb #必须先执行成ext4格式 #备注 sdb都盘 都是存在在/dev 下面的
sudo mkfs.xfs -f -n ftype=1 /dev/sdb #可以改成xfs格式
mkdir -p /home/data/docker/web
sudo mount /dev/sdb /home/data/docker/web #临时挂载到 测试上面的格式化好的盘(#直接格式化成 xfs格式) sudo umount /dev/sdb 取消挂载
df -h #查看挂载
2、开机自动挂载
tee /etc/systemd/system/add_disk.service > /dev/null <<'EOF'
[Unit]
Description=FRP Client Service
After=network-online.target
Requires=network-online.target
[Service]
Type=simple
User=root
# 直接调用 add_disk 可执行文件(不再通过脚本)
ExecStart= mount /dev/sdb /home/data/docker/web
Restart=on-failure
RestartSec=10
StandardOutput=journal
StandardError=journal
SyslogIdentifier=add_disk
[Install]
WantedBy=multi-user.target
EOF
# 3、设置正确的权限(无需执行权限)
chmod 644 /etc/systemd/system/add_disk.service
chmod u+x /etc/systemd/system/add_disk.service
# 4、重载并启动
systemctl daemon-reload
systemctl enable add_disk.service
systemctl start add_disk.service
# 5、检查状态和日志
systemctl status add_disk.service
journalctl -u add_disk.service -f --since "1 minute ago"
reboot六、 docker 环境安装:
docker 环境安装:
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
systemctl enable docker
systemctl start docker #第一次重启
systemctl restart docker #重启,必须是上面启动过的
//如果改过配置
systemctl daemon-reload
systemctl restart docker
root@wllsys:~# docker --version
Docker version 28.3.1, build 38b7060
vi /etc/docker/daemon.json
{
#因为我没有在debian上安装过gput,所有这里就没有gpu方式,以后有了再开启,这里不能放到 daemon.json 中, 就算是用#号如下禁用也不行,注意
#"runtimes": {
# "nvidia": {
# "path": "nvidia-container-runtime",
# "runtimeArgs": []
# }
#},
"registry-mirrors": [
"https://docker.hpcloud.cloud",
"https://docker.m.daocloud.io",
"https://docker.unsee.tech",
"https://docker.1panel.live",
"http://mirrors.ustc.edu.cn",
"https://docker.chenby.cn",
"http://mirror.azure.cn",
"https://dockerpull.org",
"https://dockerhub.icu",
"https://hub.rat.dev",
"https://proxy.1panel.live",
"https://docker.1panel.top",
"https://docker.m.daocloud.io",
"https://docker.1ms.run",
"https://docker.ketches.cn"
],
"live-restore": true // 解决 docker push 已经无法推送 unauthorized: authentication required 说明: https://support.huaweicloud.com/deployman_faq/deployman_faq_1095.html
}
systemctl daemon-reload
systemctl restart docker
------------------- 其它用法 -------------------
Dockerfile 安装
1、下载Dockerfile 放在一个目录中
2、执行
docker build -t isk . 注意cd到Dockerfile目录下, 执行,别忘记后面有一个点. 其中 isk 是镜像images名, 可以自定义
sudo systemctl start docker
sudo systemctl stop docker
如果docker启动失败:https://blog.csdn.net/Leon_Jinhai_Sun/article/details/102765506 (出错: 为containerd.io版本太低,当前安装要大于 1.2.2-3的版本才行)
问题: package docker-ce-3:19.03.2-3.el7.x86_64 requires containerd.io >= 1.2.2-3, but none of the providers can be installed
- cannot install the best candidate for the job
- package containerd.io-1.2.2-3.3.el7.x86_64 is excluded
- package containerd.io-1.2.2-3.el7.x86_64 is excluded
- package containerd.io-1.2.4-3.1.el7.x86_64 is excluded
- package containerd.io-1.2.5-3.1.el7.x86_64 is excluded
- package containerd.io-1.2.6-3.3.el7.x86_64 is excluded
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)
sudo docker ps
sudo docker rmi -f redis 加-f 强制删除
sudo docker rm : 删除一个或多个 容器
sudo docker rmi : 删除一个或多个 镜像 //首先docker rmi时指定名称,而非image id,然后再执行docker rmi -f image idj即可:
sudo docker prune: 用来删除不再使用的 docker 对象(一般不过)
//docker修改端口(docker运行时修改端口)
//1、之前8080指向80: docker run -p 8080:80 nginx
//2、改成8081指向80: docker container update --publish-add 8081:80 nginx
//3、删除8081端口映射:docker container update --publish-rm 8081 容器名或容器id
三、Docker 自定义
sudo docker ps //查看已启动容器
sudo docker ps -a //查看所有容器
sudo docker images //查看已安装镜像
sudo docker pull centos:7 //获取最新版的 centos 镜像 ,最好不要用centos:latest 这个是不支持ll命令
php安装
用镜像生成容器,容器名为php73,--expose 9000 开放一个端口或一组端口(被坑死了这里,这里不象是ningx 是开放映射端口,这里指的是开放内网端口,nginx会通过这个内网端口进行php访问。另一个坑就是php与nginx必须同时共享一个目录:/usr/local/servers/docker/web做为web,要不然他们都是自己的容器里运行,静态的图片与html用的是nignx的容器,php又是用另一个容器,导致两边的文档都要必须保持一样才对正常访问,绝对是个悲剧,这里被坑得也很惨)
sudo docker run -ti --name php73 -v /usr/local/servers/docker/web:/usr/local/servers/web:rw --expose 9000 php73 //用此命令时行生成php容器
命令说明:
--name php73 : 将容器命名为 php73 , 9000后的那个php73是php的镜像名(可从网站下载或自己建立镜像)
-v /usr/local/servers/docker/php73:/usr/local/servers/php73 //将主机中项目的目录 php73 挂载到容器的 php73,并设置权限rw(读写)
-v /usr/local/servers/docker/web:/usr/local/servers/web:rw //设置web路径,这个到时要与ningx、svn等保持一样
--expose 9000 //开放端口,nginx会调用这个端口时行内网访问(因为nginx与php一般都在同一机子并同一个内网)
sudo docker start php73 //启动容器
sudo docker exec -ti php73 /bin/bash //以后进入容器shell
sudo docker inspect php73 | grep "IPAddress" //查看ip
sudo docker inspect mysql57 查看内网id,mysql用 看:"IPAddress"
sudo docker inspect nginx16 查看容器内网ip "Gateway": "172.17.0.1" 这个ip是不会变的
netstat -nelp 查看开放的端口# 直接使用阿里云源安装 http://mirrors.aliyun.com/ubuntu/ https://mirrors.tuna.tsinghua.edu.cn/ubuntu/
apt-get install -o Acquire::http::Proxy="http://mirrors.aliyun.com/ubuntu/" libsqlite3-dev
其它:
atp 安装python3.12
方法一:使用 Homebrew(太慢了)
安装 Homebrew(如果还没有安装):
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# 添加 Homebrew 到 PATH
echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> /root/.bashrc
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
source ~/.bashrc # 重新加载 bash 配置
安装 Python 3.12:
brew install python@3.12
验证安装:
python3.12 --version
方法二:使用 pyenv (推荐,我在用的方式)
# 1、临时替换为阿里云镜像
export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles
//export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles
//export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles
# 2、安装 pyenv:
brew install pyenv
# 3、安装 Python 3.12:
# 直接使用阿里云源安装 http://mirrors.aliyun.com/ubuntu/ https://mirrors.tuna.tsinghua.edu.cn/ubuntu/
apt-get install -o Acquire::http::Proxy="http://mirrors.aliyun.com/ubuntu/" libsqlite3-dev
# 云镜像 (太慢)
export PYTHON_BUILD_MIRROR_URL="https://mirrors.cloud.tencent.com/python" # 尝试腾讯云镜像
pyenv install 3.12.0
export PYTHON_BUILD_MIRROR_URL="https://npm.taobao.org/mirrors/python" # 或者尝试阿里云镜像
pyenv install 3.12.0
# 手动下载Python源码(快,我在用)
# 创建缓存目录
mkdir -p ~/.pyenv/cache
# 清理可能的缓存
rm -rf ~/.pyenv/cache/*
# 进入缓存目录
cd ~/.pyenv/cache
# 下载
//wget https://www.python.org/ftp/python/3.12.0/Python-3.12.0.tar.xz #太慢了
用迅雷下载 然后-> apt install lrzsz #支持上传下载
上传:
输入 rz
下载:
sz config.tar.gz
# 重新安装
pyenv install 3.12.0
设置为全局默认版本:
pyenv global 3.12.0
# 编辑 shell 配置文件
vim ~/.bashrc
#在配置文件末尾添加以下内容:
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
#生效
source ~/.bashrc
python

发表评论 取消回复