Linux 小技巧

Linux 小技巧


2018-08-10

平时在 Linux 的使用当中,有一些小技巧在关键时刻可以帮上大忙,现在我把它们整理下来,在忘记时可以方便查阅。

多线程压缩文件

平时在使用 tar 压缩文件时有时候会等很久,因为 tar 命令默认情况下是单线程执行的,并没有发挥多核 CPU 的优势。

针对不同的压缩文件,需要使用不同的程序辅助。

  • gz: pigz
  • bz2: pbzip2
  • xz: pxz

首先使用 linux 的包管理工具安装相应的软件,然后就可以使用它来多线程压缩。

  • gz: tar -I pigz -cvf compress.tar.gz files
  • bz2: tar -I pbzip2 -cvf compress.tar.bz2 files
  • xz: tar -I pxz -cvf compress.tar.xz files

顺便熟悉一下所用参数的含义:

1
2
3
4
-I, --use-compress-program=PROG
-c, --create create a new archive
-f, --file=ARCHIVE use archive file or device ARCHIVE
-v, --verbose verbosely list files processed

使用多核执行 make

make 执行起来总是需要很长时间,同样地,使用多线程可以成倍的提高 make 速度。
make -j $(getconf _NPROCESSORS_ONLN)
$(getconf _NPROCESSORS_ONLN) 可以得到当前服务器的核心数量。

创建 service ,设置开机启动

例如,创建一个 software.service 文件,内容如下:

1
2
3
4
5
6
7
8
9
10
[Unit]
Description=Software Description
After=network.target

[Service]
ExecStart=command -c param
Restart=always

[Install]
WantedBy=multi-user.target
  1. 将这个 software.service 文件放入 /etc/systemd/system/ 目录下。
  2. 执行 systemctl enable softwaresystemctl start software