惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

T
Tenable Blog
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
Google Online Security Blog
Google Online Security Blog
T
Threat Research - Cisco Blogs
D
Darknet – Hacking Tools, Hacker News & Cyber Security
W
WeLiveSecurity
NISL@THU
NISL@THU
V
Vulnerabilities – Threatpost
V2EX - 技术
V2EX - 技术
Cisco Talos Blog
Cisco Talos Blog
Simon Willison's Weblog
Simon Willison's Weblog
The Last Watchdog
The Last Watchdog
P
Privacy International News Feed
博客园 - 三生石上(FineUI控件)
Recent Announcements
Recent Announcements
酷 壳 – CoolShell
酷 壳 – CoolShell
美团技术团队
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Scott Helme
Scott Helme
C
Cybersecurity and Infrastructure Security Agency CISA
Cyberwarzone
Cyberwarzone
量子位
Security Archives - TechRepublic
Security Archives - TechRepublic
Microsoft Azure Blog
Microsoft Azure Blog
F
Fortinet All Blogs
H
Hacker News: Front Page
D
Docker
N
Netflix TechBlog - Medium
阮一峰的网络日志
阮一峰的网络日志
G
Google Developers Blog
Hugging Face - Blog
Hugging Face - Blog
腾讯CDC
Last Week in AI
Last Week in AI
H
Hackread – Cybersecurity News, Data Breaches, AI and More
K
Kaspersky official blog
www.infosecurity-magazine.com
www.infosecurity-magazine.com
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
爱范儿
爱范儿
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
小众软件
小众软件
S
Security Affairs
博客园 - 聂微东
AI
AI
Latest news
Latest news
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Engineering at Meta
Engineering at Meta
Cloudbric
Cloudbric
S
Secure Thoughts
Spread Privacy
Spread Privacy
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org

atpX

自建 S3 兼容对象存储服务 Garage 听风的歌 偶尔是深夜就好了 新玩具 AirPods Pro 3 公交车上的时间 从 WHOIS 到 RDAP 通过 WireGuard 访问 NFS 共享文件 自建音乐串流服务探索 我停止了探索 Fediverse 互联网背景噪音 我的数字生活降级 小城与确定性的墙 一只特立独行的猪 Fediverse 与社交 承认的勇气 mediaX - 轻量书影音记录管理工具 我的博客写作流程 网站新增 Misc 页面 擅长对线的鲍勃 在 Chroot 环境下使用 Rsync 同步 再见 JavaScript 当我玩博客时我在玩什么 为什么我的博客没有友链页面 小熊猫与大熊猫 (HDR 照片测试) 是时候为网站开启 HTTP/3 支持了吗 使用 AdGuard Home 搭建自用 DoH 服务 谈谈读书与消遣 2023 年终总结 西安两日游 从 AirPods「升级」到 EarPods Docker 搭建去中心化的微博客平台 Mastodon 聊聊 iPhone 15 Pro 使用感受 能否将 TOTP 二次验证存放在密码管理器里 认识史蒂夫·乔布斯 与“锤哥”克里斯·海姆斯沃斯一起养生 逃离爆炸的信息 你想活出怎样的人生 重温《龙珠》动画 为什么关闭评论 从域名注册商到 DNS 服务,找到自己的组合 如何提高用户网页阅读体验 从 Typecho 迁移到 Hugo 个人博客的最终归宿是静态网站吗 我选择了放弃 jQuery 关于我的小破站折腾速度优化这件事 记一次家庭网络折腾 贴一些 SmokePing 记录 我的域名邮箱选择 不存在的语录 Typecho 评论验证插件 CaptchaPlus 谈谈写字这件事 新的网站 Logo 探索 曲线解决 Typecho 图片占位抖动问题 自建 vaultwarden / bitwarden_rs 密码管理器 使用 Plausible 自建网站流量统计分析工具 如何优雅地徒手剥开火腿肠 简单的集中隔离生活记录 新玩具 M2 MacBook Air 使用 acme.sh 申请 Google 公共证书 Docker 搭建去中心化的微博客平台 Misskey 搭建 Lsky Pro 兰空图床 折腾树莓派系统的一天 我的吉卜力之旅 使用 Uptime Kuma 自建服务器/网站在线率监控 Spartan Host Review - Best Hosting & Service Support Debian 下 Nginx 配合 Fail2Ban 减少恶意扫描和攻击 升级 Typecho 到最新开发版本 v1.2.0 Linux rm 命令详解 Debian 系统安装 Docker 教程 BandwagonHost - Reliable Blog and Business VPS Hosting 使用 Isso 为 Hugo/Hexo 等静态网站添加评论功能 推荐 5 款免费开源的网站流量分析统计工具 搭建 Shynet 网站流量统计分析工具 聊聊 DDoS 攻击那些事 Hugo 使用 Fancybox 实现图片灯箱/放大功能 从 Debian 10 升级到 Debian 11 教程 使用 Umami 自建网站流量统计分析工具 Linux 一次执行多个命令的 3 种方式 Typecho 修改永久链接后旧链接 301 跳转到新链接 从不同需求推荐几家稳定可靠的 VPS 服务商 Build EchoIP service with Docker 浅谈一下这些年折腾过的 VPS 单线复用解决一根网线同时 IPTV 和宽带问题 不完全吃灰的树莓派 开发一个自己的 Telegram Bot 使用 Nginx 实现 TCP 四层反向代理 画画真难 我读村上春树 使用 acme.sh 自动签发和更新证书 卡拉马佐夫式悲剧 安装 File Browser 轻量网盘工具 新玩具树莓派到手 Linux 定时自动备份数据到 OneDrive/Google Drive 记一次服务器崩溃 使用 rsync 同步文件 短信的消失 幻灭的艺术家 新玩具戴尔 S2721DGF 开箱 蝴蝶 用 Docker 整合 SeafilePro 搭建私人云盘
Linux 使用过程中的一些记录
ATP · 2020-06-02 · via atpX

检查当前系统发行版本:

# Debian
cat /etc/os-release

修改主机名:

hostnamectl set-hostname [hostname]

查看修改时区:

timedatectl
timedatectl list-timezones
timedatectl set-timezone Asia/Shanghai
# timedatectl set-timezone Asia/Hong_Kong
# timedatectl set-timezone Asia/Singapore

设置时间同步:

apt install systemd-timesyncd
# vim /etc/systemd/timesyncd.conf
# [Time]
# NTP=time.cloudflare.com time.google.com
# FallbackNTP=0.debian.pool.ntp.org 1.debian.pool.ntp.org time.windows.com time.apple.com
systemctl restart systemd-timesyncd

修改默认语言环境为 en_US.UTF-8:

# apt install locales
dpkg-reconfigure locales
# 空格勾选/取消指定语言,找到并勾选 en_US.UTF-8
source /etc/default/locale

临时修改 DNS 服务器:

vim /etc/resolv.conf
# 修改自定义 NS:
nameserver 1.1.1.1
nameserver 8.8.4.4

强制退出用户:

pkill -kill -t pts/[序号]

查看端口占用:

apt install net-tools
netstat -ntlp

新建用户不允许登录:

useradd -s /usr/sbin/nologin <new username>

查看文件/文件夹大小:

du [文件/文件夹名称] -h

查看指定目录下文件大小:

du -sh /home
# 或
du -h --max-depth=1 /home

查看大于 800M 的文件:

find / -size +800M -exec ls -lh {} \;

Debian 双栈网络下 IPv4 优先,编辑 /etc/gai.conf 文件,找到 #precedence ::ffff:0:0/96 100 一行取消注释,或者直接使用命令:

sed -i 's/#precedence ::ffff:0:0\/96  100/precedence ::ffff:0:0\/96  100/' /etc/gai.conf

Shell 命令行彩色显示 vim ~/.bashrc,添加下面代码之后 source ~/.bashrc 即可生效。

if [ -z "$PS1" ]; then
    return
fi
alias ls='ls --color=auto'
alias ll='ls --color=auto -lAF'
PS1='\[\033[01;31m\]\u\[\033[01;33m\]@\[\033[01;36m\]\h:\[\033[01;33m\]\w\[\033[01;35m\]\$ \[\033[00m\]'

升级系统内核

# Updated on 2023-11-05: removed.

查看线路与测速

开启 BBR 拥塞控制算法

你可以使用下面的命令检查当前可用的拥塞算法:

sysctl net.ipv4.tcp_available_congestion_control

Linux 内核在 2.6.19 后使用 Cubic 算法作为默认的 TCP 拥塞算法,它是一种较为温和的拥塞算法,使用三次函数作为其拥塞窗口的算法,并且使用函数拐点作为拥塞窗口的设置值。这里为了更好的体验,建议开始谷歌 BBR 算法(只支持内核 4.9 及以后的版本),多数情况下使用 BBR 可以获得显著的网络吞吐量的提升和延迟的降低:

vim /etc/sysctl.conf

添加下列内容:

net.core.default_qdisc = fq
net.ipv4.tcp_congestion_control = bbr

加载参数:

sysctl -p

之后可以确认一下当前使用了哪一种拥塞算法:

sysctl net.ipv4.tcp_congestion_control

路由与速度测试

  1. 使用 mtr 或者更直观的 besttrace 查看回程线路;

  2. 使用 Unixbench 测试 CPU 性能;

  3. 使用 bench.sh 或者 superbench 测试到不同运营商的下载速度:

wget -qO- bench.sh | bash

或者

wget -qO- git.io/superbench.sh | bash -s info
wget -qO- git.io/superbench.sh | bash -s io
wget -qO- git.io/superbench.sh | bash -s speed
wget -qO- git.io/superbench.sh | bash -s fast
wget -qO- git.io/superbench.sh | bash -s share

而更准确测试 VPS 到本地速度的方法是使用 iperf3,VPS 和本地都需要安装:

apt install iperf3

一些常用命令,完整的命令可通过 iperf3 --help 查看

  • -s, –server:iperf 服务端模式,默认启动的监听端口为 5201,eg:iperf -s
  • -c, –client host:iperf 客户端模式,eg:iperf -c x.x.x.x
  • -i, –interval:每次打印报告的时间间隔,单位为秒,eg:iperf3 -c x.x.x.x -i 2
  • -p, –port:指定服务端监听的端口或客户端所连接的端口
  • -u, –udp:采用 UDP 协议测试,不带该参数表示采用 TCP 协议
  • -t, –time:指定测试数据传输的总时间,默认为 10 秒
  • -P, –parallel:指定并发连接数,越高越能测试到速度极限
  • -R, –reverse:运行反向测试,即下载测试(服务端发送数据,客户端接收数据)

例如在本地测试 10 个并发的下载速度,测试时间为 60 秒(服务端运行 iperf3 -s,并且记得防火墙打开相应的端口):

iperf3 -c x.x.x.x -p 5201 -t 60 -P 10 -R
  1. 使用 YABS (Yet-Another-Bench-Script) 测试综合性能:
curl -sL yabs.sh | bash -s -- -{fdighr459}
  • -f/-d 跳过磁盘 io 测试
  • -i 跳过 iperf 网络速度测试
  • -g 跳过 Geekbench 性能测试
  • -h 查看帮助信息和本地测试环境情况
  • -r 减少 iperf 网络测试的节点以节省流量
  • -4 替换默认的 Geekbench 6 性能测试为 Geekbench 4 版本
  • -5 替换默认的 Geekbench 6 性能测试为 Geekbench 5 版本
  • -9 同时进行 Geekbench 4 和 Geekbench 5 性能测试

挂载硬盘

使用 fdisk -l 开查看当前磁盘情况

Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     1026047      512000   83  Linux
/dev/sda2         1026048    41943039    20458496   8e  Linux LVM
# 这个就是新的硬盘
# 记下 /dev/sdb 这个名称
Disk /dev/sdb: 1073 MB, 1073741824 bytes, 2097152 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

1. 分区

使用过 fdisk /dev/sdb 来进行分区操作

  1. n: 添加一个分区
  2. p: 设置为主分区,最多可以 4 个主分区 (分区序号默认 1)
  3. sector: 直接回车默认
  4. w: 写入磁盘

2. 格式化分区

再次 fdisk -l 查看新建好的分区,例如为 /dev/sdb1,使用命令:

mkfs.ext4 /dev/sdb1

* 也可根据需求使用 xfs、btrfs、ntfs 等格式,命令相应改为 mkfs.xfsmkfs.btrfsmkfs.ntfs,如果是大容量硬盘,可适当增加参数防止等待时间过长,这里不再提及。

3. 挂载使用

在根目录下创建 data 目录:

mkdir /data

将 /dev/sdb1 挂载到 /data 下:

mount /dev/sdb1 /data

使用 df 命令查看是否挂载成功,新创建的分区不能开机自动挂载,每次重启机器都要手动挂载,设置开机自动挂载需要先获取硬盘 UUID:

blkid /dev/sdb1

然后修改 /etc/fstab 文件,在最后添加一行:

UUID=123e4567-e89b-12d3-a456-426614174000  /data  ext4  defaults  0  2

* 注,后三个参数:

  • 挂载选项: defaults = rw, suid, dev, exec, auto, nouser, and async
  • dump: 是否备份,一般设置为 0
  • fsck:开机时检查顺序,非 boot 文件系统为 1,其它文件系统为 2,swap 为 0

添加 SWAP 交换分区

首先使用 dd 命令创建一个 1G 大小的 swapfile 文件作为 swap 区:

dd if=/dev/zero of=/swapfile bs=1M count=1024

将其转化为 swap 文件:

mkswap /swapfile

修改所有者和权限:

chown root:root /swapfile
chmod 0600 /swapfile

激活 swap:

swapon /swapfile

设置系统重启后依旧生效,打开 /etc/fstab 文件,在最后面加上一行:

/swapfile  none  swap  sw  0  0

验证交换空间是否处于活动状态:

swapon --show

如果想要删除 swap 交换分区,首先停用运行交换空间:

swapoff -v /swapfile

/etc/fstab 中删除前面添加的交换文件启动设置:

/swapfile  none  swap  sw  0  0

最后,删除实际的文件:

rm /swapfile

unzip 解压中文乱码

zip 格式中并没有指定编码格式,Linux 下的默认编码是 UTF8,而在 Windows 下生成的 zip 文件中的编码是 GBK/GB2312 等,因此,这些 zip 文件在 Linux 下解压时会出现乱码问题,解决办法是加上 -O 参数,但多数 Linux 发行版本中安装的 unzip 并不支持,因为官方太高冷(xx),所以只有通过补丁的方式添加:

git clone https://github.com/ikohara/dpkg-unzip-iconv
cd dpkg-unzip-iconv
make source
make build-dep
make
make install

安装好后就可以通过以下命令进行解压了:

unzip -O cp936 file.zip