============
== 白菜 ==
============
一个勤奋的代码搬运工!

从 Debian 11 升级到 Debian 12

debian
如果有必要,可以查阅(Debian 12 发行说明)[https://www.debian.org/releases/stable/releasenotes],内附详细的升级和错误处理指南。 准备工作 一定要备份重要数据! 以下操作需要在 root 用户下完成,请使用 sudo -i 或 su root 切换到 root 用户进行操作 Debian 软件源一般以发行代号如:bullseye、bookworm 引用,但是也可能使用状态名如:stable、unstable、testing 引用。在 Debian 12 稳定版正式发布后,stable 就会从 bullseye 指向 bookworm 了。 检查软件源,确保下面的输出为空,否则请手动更改软件源为 bullseye cat /etc/apt/sources.list | grep stable 更新 apt 源,替换 bullseye 为 bookworm: sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list.d/*.list 对于 Debian 12 以后的版本,所有 Debian 可以分发的打包的非自由固件二进制文件(non-free),比如某些驱动,都被转移到 Debian Archive 中的一个新组件,称为非自由固件(non-free-firmware)。如果您从旧版的 Debian 升级,并且需要这些固件二进制文件,您应该更新您系统上的 /etc/apt/sources.list,以使用这个新组件(来源): sed -i 's/non-free/non-free non-free-firmware/g' /etc/apt/sources.list 默认的系统 apt 源文件 /etc/apt/sources.list 应该是类似这样的: Read more...

Linux 命令

Shell脚本 linux
基本命令 uname -m 显示机器的处理器架构 uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 (SMBIOS / DMI) hdparm -i /dev/hda 罗列一个磁盘的架构特性 hdparm -tT /dev/sda 在磁盘上执行测试性读取操作系统信息 arch 显示机器的处理器架构 uname -m 显示机器的处理器架构 uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI) hdparm -i /dev/hda 罗列一个磁盘的架构特性 hdparm -tT /dev/sda 在磁盘上执行测试性读取操作 cat /proc/cpuinfo 显示CPU info的信息 cat /proc/interrupts 显示中断 cat /proc/meminfo 校验内存使用 cat /proc/swaps 显示哪些swap被使用 cat /proc/version 显示内核的版本 cat /proc/net/dev 显示网络适配器及统计 cat /proc/mounts 显示已加载的文件系统 lspci -tv 罗列 PCI 设备 lsusb -tv 显示 USB 设备 date 显示系统日期 cal 2007 显示2007年的日历表 date 041217002007. Read more...

Mac 常用命令

Shell脚本 mac
查看指定端口的进程 sudo lsof -i :5353 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME mDNSRespo 185 _mdnsresponder 6u IPv4 0x1111111111111 0t0 UDP *:mdns mDNSRespo 185 _mdnsresponder 7u IPv6 0x1111111111111 0t0 UDP *:mdns 根据进程名称 ps -ef | grep mDNSRespo 65 185 1 0 8:08上午 ?? 0:26.69 /usr/sbin/mDNSResponder 0 223 1 0 8:08上午 ?? 0:02.16 /usr/sbin/mDNSResponderHelper 501 66848 66623 0 11:00下午 ttys000 0:00.00 grep mDNSRespo 根据PID杀进程: sudo kill -9 185

设置Telegram机器人的webhook

telegram webhook bot
设置Webhook https://api.telegram.org/bot{my_bot_token}/setWebhook?url={url_to_send_updates_to} 例如: https://api.telegram.org/bot123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11/setWebhook?url=https://baicai.me 获取Webhook https://api.telegram.org/bot{my_bot_token}/getWebhookInfo

安装 debian 后,中文环境下将home目录下文件夹更改为对应的英文

debian xdg-user-dirs-gtk-update
操作环境: Distributor ID: Debian Description: Debian GNU/Linux 11 (bullseye) Release: 11 Codename: bullseye 安装 debian 后,中文环境下home目录下文件夹显示的是中文,不方便使用cd命令,用到的软件xdg-user-dirs-gtk(Gnome 环境已默认安装),可以方便更改为英文. #临时转换系统语言为英文,重启后会自动恢复原值的 export LANG=en_US #执行转换命令,弹出的窗口中会询问是否将目录转化为英文路径,同意并关闭 xdg-user-dirs-gtk-update #转换回系统语言为中文,也可以不执行下面的命令,直接重启也一样的 export LANG=zh_CN 下次进入系统后,会提示是否把目录转化为中文,选择不,并选择不再提示,并取消修改。

在 Debian 11 为 nginx 配置 Let's Encrypt SSL证书

debian certbot nginx
在Debian 11 Nginx配置Let’s Encrypt SSL证书 安装 Certbot 及 certbot nginx 插件 sudo apt update && sudo apt -y install certbot python3-certbot-nginx 为 nginx 网站生成证书并配置 certbot --nginx 如果是首次运行CertBot获取SSL证书,它将会询问你的电子邮件,输入一个你常用的邮件地址,它会在到期之前通知你。 也可以为特定域名获取证书配置 certbot --nginx -d baicai.me 使用Certbot自动更新SSL证书 Let’s Encrypt的SSL证书会在3个月到期即90天,因此你可能需要手动续订,但Certbot软件包附带了一个cron任务和systemd计时器,它将在证书过期之前进行自动续订。 除非你更改配置,否则无需再次手动运行Certbot。 您可以通过运行以下命令来测试证书的自动续订。 certbot renew --dry-run

在 Mac 系统中制作 Debian U盘启动盘

bootable u盘启动 debian MacOS
在Mac系统中制作U盘启动盘 Create a Bootable USB Flash Drive 在Mac系统中,制作Linux启动盘不需要额外下载任何的工具,办法如下 下载 Debian DVD 镜像文件 通过 HTTP/FTP 下载 Debian CD/DVD 映像 https://www.debian.org/CD/http-ftp/ amd64 DVD版 https://cdimage.debian.org/debian-cd/current/amd64/iso-dvd/ 格式化USB盘 打开系统自带的磁盘管理工具,插上U盘,格式化U盘,选择格式如下: 格式:Mac OS 扩展(日志式) 方案:GUID 分区图 取消Usb磁盘挂载 # 终端执行以下命令 # 列出磁盘,找到你usb硬盘的盘符 diskutil list # 输出如下:可以看到usb硬盘为/dev/disk2 /dev/disk2 (external, physical): #: TYPE NAME SIZE IDENTIFIER 0: FDisk_partition_scheme *32.0 GB disk2 1: 0xEF 6.4 MB disk2s2 # 取消usb硬盘的挂载 diskutil unmountDisk /dev/disk2 导入镜像 # 执行如下命令 # if是镜像文件路径 # of是导入的目的磁盘 # bs是读写快的大小,太小会增大io,降低效率,一般1m~2m即可。 sudo dd if=~/Downloads/debian-11. Read more...

Debian 安装 Transmission 并实现远程访问

debian transmission bt
Debian 安装完成后的桌面环境带有 transmission-gtk 这个gui版关闭界面后,无后台服务,导致不能方便使用远程访问。 那么安装Transmission后台守护程序 $ sudo apt install -y transmission-daemon #停止Transmisson后台服务 systemctl stop transmission-daemon.service #修改配置文件 nano /etc/transmission-daemon/settings.json 启动Transmission后台服务 #启动transmission服务 systemctl start transmission-daemon.service #停止transmission服务 systemctl stop transmission-daemon.service #查询transmission运行状态 systemctl status transmission-daemon.service #将transmission设置为开机自启动 systemctl enable transmission-daemon.service #关闭transmission开机自启 systemctl disable transmission-daemon.service

Debian 安装慢的解决方案

debian linux
解决 Debian 安装过程慢的可行方案: 如果使用的是Dvd版的iso镜像,可以在安装前拔掉网线,通过离线安装,会非常快。 安装时选择 expert,不要选择 安全更新。 安装过程修改软件源。 Debian DVD-1 镜像下载地址 通过 HTTP/FTP 下载 Debian CD/DVD 映像 https://www.debian.org/CD/http-ftp/ amd64 DVD版 https://cdimage.debian.org/debian-cd/current/amd64/iso-dvd/ Debian 安装过程中 修改软件源中的安全源地址 在Debian安装步骤进入到选择安装的桌面环境和软件时, 键入 Ctrl+Alt+F2 可以看到从图形界面转到了tty命令终端, 键入 Enter 这里修改软件源配置文件 nano /target/etc/apt/sources.list 修改debian-security源地址 http://mirrors.ustc.edu.cn 目测最快 #deb http://security.debian.org/debian-security bullseye-security main deb http://mirrors.ustc.edu.cn/debian-security bullseye-security main 修改后 Ctrl+X 退出保存 然后退出终端重新进入界面继续安装,键入 Ctrl+Alt+F5 Debian 安装完成后更新硬件驱动 在设置——》关于——〉更新——》软件源,去掉cdrome的源,勾选合适的源 然后通过 dmesg 查看启动日志。 查找哪些固件加载异常,根据情况安装驱动(比如我的缺失显卡驱动和无线网卡驱动)。 # 更新源 sudo apt-get update dmesg # demsg查看到 缺失显卡驱动 sudo apt-get install firmware-amd-graphics # demsg查看到 缺失 rtl8168e-3. Read more...

安装docker

Docker Debian
运行环境 Operating System: Debian GNU/Linux 11 (bullseye) Kernel: Linux 5.10.0-18-amd64 Architecture: x86-64 通过Debian官方软件仓库安装 # 更新软件源 并 安装 docker及相关应用 sudo apt update && sudo apt install -y docker docker.io docker-compose # 查看docker运行状态 sudo systemctl status docker # 查看docker信息 sudo docker info # 验证是否安装成功 sudo docker run hello-world 镜像加速器 访问 https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors 获取自己的阿里云镜像加速器地址 修改 /etc/docker/daemon.json sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "max-concurrent-downloads": 3, "max-concurrent-uploads": 3, "max-download-attempts": 3, "registry-mirrors": ["https://修改为自己的.mirror.aliyuncs.com","https://hub-mirror.c.163.com","https://registry.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker 清理docker对象 prune 命令用来删除不再使用的 docker 对象。 Read more...
Previous Page 4 of 8 Next Page