Linux 实用技巧 15 则
1. 路径解析:dirname 与 basename
dirname 用于提取路径中的目录部分,basename 则提取文件名,并可选择性去掉后缀。
# 示例
$ dirname /home/user/data/file.txt
/home/user/data
$ basename /home/user/data/file.txt
file.txt
$ basename /home/user/data/file.txt .txt
file
2. 压缩与解压操作
使用 tar 和 gzip 处理归档文件。
# 创建归档
tar cf archive.tar file1 file2
tar czf archive.tar.gz folder/
# 提取归档
tar xf archive.tar
tar xzf archive.tar.gz
# 使用 gzip 单独压缩
gzip myfile
gzip -d myfile.gz
3. 查看 ASCII 编码表
$ man ascii
4. 文件格式转换(dos2unix / unix2dos)
保持时间戳进行转换,支持批量与递归操作。
# 不修改时间戳
dos2unix -k script.sh
# 批量转换当前目录所有文件
dos2unix *
dos2unix *.txt
# 递归处理子目录
find ./src -type f | xargs dos2unix
find ./src -name "*.py" | xargs unix2dos
5. Ubuntu 设置 root 密码
Ubuntu 默认 root 密码随机,需手动设置。
$ sudo passwd
# 输入新密码并确认
6. Ubuntu 18.04 安装 OpenJDK
# 安装 JDK 8
$ sudo apt install openjdk-8-jdk
# 验证版本
$ java -version
openjdk version "1.8.0_252"
$ javac -version
javac 1.8.0_252
7. LVS 与 Keepalived 概览
LVS(Linux Virtual Server)基于内核 IPVS 模块实现负载均衡,支持 DR、TUN、NAT 三种模式,常与 Keepalived 配合实现高可用。
- 官方网站:LVS
- 配置工具:ipvsadm
- 高可用组件:Keepalived
8. 性能测试常用命令
sysstat
# 安装
$ yum install sysstat
# CPU 信息
$ sar -q -f sa08
$ sar -p -f sa08
# 内存
$ sar -r -f sa08
$ sar -B -f sa08
$ sar -W -f sa08
# 磁盘 I/O
$ sar -b -f sa08
$ sar -d -f sa08
# 网络
$ sar -n DEV -f sa08
$ sar -n NFS -f sa08
磁盘 I/O 评估
$ dd if=/dev/zero of=test bs=1M count=1024
$ hdparm -t /dev/sda
$ iostat -x 1
9. 输出同时保存到文件
# 覆盖写入
$ ls -l | tee output.log
# 追加写入
$ echo "new line" | tee -a output.log
10. 文件与目录颜色含义
- 白色:普通文件
- 蓝色:目录
- 绿色:可执行文件
- 红色:压缩文件
- 浅蓝色:符号链接
- 红色闪烁:链接目标缺失
- 黄色:设备文件
- 灰色:其他文件
11. CentOS 升级 FireFox
# 卸载并重装
$ yum erase firefox
$ yum install firefox
12. 创建用户并免密 sudo
# 创建用户并设置密码
$ sudo adduser myuser
$ sudo passwd myuser
# 赋予 sudo 权限(免密码)
$ sudo visudo
# 添加行:myuser ALL=(ALL) NOPASSWD: ALL
13. CentOS 7 修改主机名
# 临时修改(重启失效)
$ hostname node101
$ exec bash
# 永久修改
$ hostnamectl set-hostname node102
$ exec bash
14. Ubuntu 18.04 Python 环境
$ python -V
Python 2.7.17
$ python3 -V
Python 3.6.9
# 安装 pip
$ sudo apt install python-pip python3-pip
$ pip -V
pip 9.0.1 (python 2.7)
$ pip3 -V
pip 9.0.1 (python 3.6)
15. Rocky Linux 9 安装 Ansible
# 添加 EPEL 并安装
$ dnf install -y epel-release
$ dnf install -y ansible
# 验证安装
$ ansible --version
ansible [core 2.14.14]
16. 修复 systemctl enable 报错
当遇到 Failed to execute /usr/lib/systemd/systemd-sysv-install 错误时,安装 chkconfig 即可解决。
$ dnf install chkconfig
$ systemctl enable grafana-server.service
Created symlink /etc/systemd/system/multi-user.target.wants/grafana-server.service → /usr/lib/systemd/system/grafana-server.service.