参考
ubuntu
硬件配置
笔记本合盖不挂起
编辑/etc/systemd/logind.conf
取消注释并修改以下参数, 根据需要设为 ignore、suspend、lock、hibernate 或 poweroff
| 参数 | 含义 |
|---|---|
HandleLidSwitch |
使用内置电池时,合盖行为 |
HandleLidSwitchExternalPower |
使用外接电源时,合盖行为 |
HandleLidSwitchDocked |
外接拓展坞链接显示器时,合盖行为 |
| 值 | 含义 |
|---|---|
suspend |
挂起 |
lock |
锁定 |
ignore |
不动作 |
poweroff |
关机 |
hibernate |
休眠 |
重启服务使其生效
sudo systemctl restart systemd-logind
安全重启
当系统卡死时, 可通过内核级别的 SysRq 键安全重启
同时按住 Ctrl + Alt 不要放, 按一下 SysRq 键(或PrtSc)
依次按下R 键, E 键, I 键, U 键, S 键, B 键, 系统就会安全重启
系统管理
用户管理
- 新建
adduser 新用户名
- 增加sudo权限
adduser 新用户名 sudo
- 关闭root密码
sudo nano /etc/sudoers
按实际用户名添加如下两行
用户名 ALL=(ALL:ALL) ALL
用户名 ALL=(ALL) NOPASSWD:ALL
更新源
同步sources.list 和 sources.list.d 中列出软件源索引
sudo apt update
更新
sudo apt upgrade
目录语言转换
export LANG=en_US
xdg-user-dirs-gtk-update
export LANG=zh_CN
快捷指令
~/.bashrc追加
alias 新指令='原本指令'
生效
source ~/.bashrc
- 示例, 添加clean快捷指令
alias update='sudo apt-get update && sudo apt-get upgrade -y'
alias clean="sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'"
GRUB
GRUB(GRand unified bootloader)是多操作系统启动程序, 可用于选择操作系统分区上不同内核, 也可用于向这些内核传递启动参数, 用来引导不同系统如windows、linux
linux常见引导程序包括LILO、GRUB、GRUB2
- 双系统修复
编辑/etc/default/grub
修改内容如下
GRUB_TIMEOUT_STYLE=menu
GRUB_TIMEOUT=10
GRUB_DISABLE_OS_PROBER=false
更新
sudo update-grub
- 多硬盘启动
图形化管理工具 grub-customizer
sudo add-apt-repository ppa:danielrichter2007/grub-customizer
sudo apt-get install -y grub-customizer
- 美化引导页面
下载主题包
在/etc/default/grub添加
GRUB_THEME="/主题包路径/theme.txt"
# echo GRUB_THEME="/主题包路径/theme.txt" >> /etc/default/grub
更新
sudo update-grub
软件配置
回收站替代 rm
sudo apt-get install trash-cli
.bashrc 或 .zshrc 添加快捷键
alias rm='trash-put'
alias rl='trash-list'
alias rcl='trash-empty'
更新
source .bashrc
# 或
source .zshrc
- 回收站路径
~/.local/share/Trash/files
wget
- 下载到指定目录
# 会自动创建路径
wget -P 路径 URL
- 下载到指定目录指定文件名
# 若路径未创建会报错
wget URL -O 路径/文件名
- 设置代理
wget -e http_proxy=127.0.0.1:7890 路径
deb包
- 程序包缓存文件已损坏
sudo rm -rf /var/lib/apt/lists/*
- 转换rpm到deb
sudo apt-get install -y rpm alien
sudo alien -d [package].rpm &
sudo dpkg -i [package].deb
消除双图标
xprop | grep WM_CLASS
此时鼠标会变成一个十字准星, 点击已经打开应用界面
WM_CLASS(STRING) = "信息1", "信息2"
然后在该应用.desktop文件末尾添加
StartupWMClass=信息2
卸载软件
# 查找安装包名
dpkg -l *软件相关字段*
sudo apt-get --purge remove 包名
VM
- 安装驱动
sudo apt-get install build-essential linux-headers-$(uname -r)
- 启动错误解决
# 根据当前 VMware 版本选择对应的 branch, 此处以 17.5.x 为例
wget https://github.com/mkubecek/vmware-host-modules/archive/workstation-17.5.1.tar.gz
tar -zxvf workstation-17.5.1.tar.gz
cd vmware-host-modules-workstation-17.5.1
tar -cf vmmon.tar vmmon-only
tar -cf vmnet.tar vmnet-only
sudo cp -v vmmon.tar vmnet.tar /usr/lib/vmware/modules/source/
sudo vmware-modconfig --console --install-all
- 卸载
sudo vmware-installer -u vmware-workstation
virtual
# ubuntu 24.04
wget https://download.virtualbox.org/virtualbox/7.1.6/virtualbox-7.1_7.1.6-167084~Ubuntu~noble_amd64.deb
zsh
- 安装
sh -c "$(wget https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"
- 插件
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
- 修改配置文件
~/.zshrc
# 末尾追加
plugins=(git z extract zsh-syntax-highlighting zsh-autosuggestions)
source $ZSH_CUSTOM/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh
source $ZSH_CUSTOM/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
配置生效
source ~/.zshrc
- 设置默认shell
sudo chsh -s $(which zsh)
注销当前用户重新登录
centos
系统管理
更新源
sudo rm -rf /etc/yum.repos.d/*
# 使用阿里云 Vault 镜像
sudo curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-7.repo
sudo yum clean all && yum makecache
防火墙
# 查看状态
systemctl status firewalld.service
# 关闭
systemctl stop firewalld.service
# 永久关闭
systemctl disable firewalld.service
网卡
- 文件位置
/etc/sysconfig/network-scripts
# 网卡类型, 一般是Ethernet, 还有其他如bond, bridge
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
# 获取IP地址方式
# static/none 静态手工配置; dhcp 动态获取
BOOTPROTO="static"
# 设置默认路由, 若为yes则可通过IPADDR和PREFIX两个参数来设置网关
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
# eth表示真实物理网卡, ens表示虚拟网络网卡
NAME="eth0"
# 通用唯一识别码, 若vmware克隆虚拟机无法启动网卡可去除此项
UUID="f1a9eae1-1ec0-4ef5-823a-7d9e9b804194"
# 系统逻辑设备名
DEVICE="eth0"
# 选择开机启动时是否激活网卡设备
ONBOOT="yes"
# 设置网卡对应IP地址, 网络服务启动后会自动将该地址配置到网卡上
IPADDR=192.168.137.2
# IP对应网关(默认路由), 若主机是多网卡设备, 该参数只能在一个网卡配置文件里面出现
GATEWAY=192.168.137.1
# 主DNS, 优先于/etc/resolv.conf中设置DNS服务器地址
DNS1=192.168.137.1
# 子网掩码
NETMASK=255.255.255.0
软件
python
sudo yum install -y gcc zlib-devel bzip2-devel readline-devel sqlite-devel libffi-devel wget
wget https://www.python.org/ftp/python/3.10.13/Python-3.10.13.tgz
tar -xvf Python-3.10.13.tgz
cd Python-3.10.13
# 配置并安装到 /usr/local/python3
./configure --prefix=/usr/local/python3 --enable-optimizations
sudo make && sudo make install
# 建立软链接
sudo ln -sf /usr/local/python3/bin/python3 /usr/bin/python3
sudo ln -sf /usr/local/python3/bin/pip3 /usr/bin/pip3
docker
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
sudo yum makecache fast && sudo yum install -y docker-ce docker-ce-cli containerd.io
sudo systemctl start docker && sudo systemctl enable docker
# 将当前用户加入 docker 组(免 sudo 运行)
if [ "$USER" != "root" ]; then
sudo usermod -aG docker $USER
newgrp docker
fi
# 配置镜像加速
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
EOF
sudo systemctl daemon-reload && sudo systemctl restart docker
manjaro
系统
换源与系统更新
- 添加国内源
# 交互式选择中国镜像并测速
sudo pacman-mirrors -i -c China -m rank
- 设置中文社区仓库
编辑/etc/pacman.conf, 末尾添加
[archlinuxcn]
SigLevel = Optional TrustAll
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch
- 更新
sudo pacman -Syyu
- 清除无用包
sudo pacman -R $(pacman -Qdtq)
- 更新失败解决
rm /var/lib/pacman/db.lck
- 依赖错误解决, 使用
-dd跳过所有检测
sudo pacman -Syudd
yay
sudo pacman -S yay
- 配置aur源
yay --aururl "https://aur.tuna.tsinghua.edu.cn" --save
- 安装软件
yay -S --noconfirm visual-studio-code-bin flameshot grub-customizer vlc
- 卸载
yay -Rns
- 安装本地包
下载配置文件
yay -G 包名
- 修改
PKGBUILD
修改PKGBUILD中source为本地地址, 需为http地址(可用python -m http.server)
source=("microsoft-edge-stable_${pkgver}-${pkgrel}_amd64.deb::https://packages.microsoft.com/repos/edge/pool/main/m/microsoft-edge-stable/microsoft-edge-stable_${pkgver}-${pkgrel}_amd64.deb")
替换为其他URL
source=("microsoft-edge-stable_${pkgver}-${pkgrel}_amd64.deb::http://localhost:8000/microsoft-edge-stable_96.0.1054.62-1_amd64.deb")
修改sha256sums与本地文件或网络文件一致
- 编译
makepkg
- 安装
生成xxx.pkg.tar.xz
sudo pacman -U xxx.pkg.tar.xz
安装deb
yay -S debtap
sudo debtap -u
# 转换deb
sudo debtap xxxxxx.deb
sudo pacman -U xxxxxxz.zst
软件配置
文件管理器
- 查看当前文件管理器
xdg-mime query default inode/directory
- 设置默认文件管理器
安装vscode后, 文件管理器会被修改为vscode, 可重新设置
xdg-mime default org.gnome.Nautilus.desktop inode/directory
VM
# 查看版本
sudo uname -r
# 选择对应版本
sudo pacman -S virtualbox
yay -S virtualbox-ext-oracle
sudo modprobe vboxdrv
中文输入法
- 安装fcitx
sudo pacman -S --noconfirm fcitx5 fcitx5-qt fcitx5-gtk fcitx5-qt4 fcitx5-chinese-addons fcitx5-configtool fcitx5-material-color fcitx5-pinyin-moegirl fcitx5-pinyin-zhwiki
- 配置
sudo nano /etc/profile
export XIM="fcitx"
export XIM_PROGRAM="fcitx"
export XMODIFIERS="@im=fcitx"
export GTK_IM_MODULE="fcitx"
export QT_IM_MODULE="fcitx"
sudo nano ~/.xinitrc
export LC_CTYPE=zh_CN.UTF-8
重启
anaconda
echo "export PATH=$HOME/anaconda3/bin:$PATH">>~/.bashrc
source ~/.bashrc
向日葵
yay -Sy sunloginclient
systemctl start runsunloginclient.service
vscode
- 终端乱码
vscode 设置中添加
"terminal.integrated.fontFamily": "NotoSansMono Nerd Font"
gedit
sudo pacman -Syyu libvoikko hspell nuspell hunspell aspell
树莓派
配置
开机连接wifi
/boot下新建wpa_supplicant.conf
country=GB
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="WiFi名字不能有中文"
psk="WiFi密码"
# 替换成数字, 数字越大代表优先级越高
priority=1
}
# 可添加多个network, 会按照priority值依次连接
修改密码
su passwd pi
# 输入新密码
换源
编辑 /etc/apt/sources.list, 用以下内容取代
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib rpi
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib rpi
deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui