tar打包

tar 打包常用命令, 经常用还是一直忘

tips: tar命令要再记不住就要找工作了

记不住 -j bz2, -j 打包的是bz2格式

找工作 -z gz, -z 打包的是gz格式

打包

1
2
3
tar -cvf ***.tar data
tar -czvf ***.tar.gz data
tar -cjvf ***.tar.bz2 data

systemctl 服务编写

Linux 服务

启动Linux服务,一般有两种方法, 一种是service, 一种是systemctl

1
2
service nginx start
systemctl start nginx

service是比较老的系统的管理方式, systemctl是比较新的管理方式,一些老的系统不支持systemctl, 但新的系统systemctl会兼容service

service start其实执行的是/etc/init.d/下面的shell脚本,脚本中定义了start,stop等操作。这些脚本需要我们自己编写。

systemctl是比较新的系统里的服务管理方式,systemctl脚本都放在/etc/systemd/system/(Ubuntu)或者/usr/lib/systemd/system(Centos)下。如果在该目录下找不到相应的脚本,它会去/etc/init.d目录下找service的启动脚本。

Ubuntu 安装sublime

  1. 信任sublime的密钥

    1
    wget -qO - https://download.sublimetext.com/sublimehq-pub.gpg | sudo apt-key add -
  2. 添加subilme的仓库

    1
    2
    echo "deb https://download.sublimetext.com/ apt/stable/" | sudo tee \
    /etc/apt/sources.list.d/sublime-text.list
  3. 安装sublime

    1
    2
    sudo apt-get update
    sudo apt-get install sublime-text
  4. 启动

    1
    subl

linux codedump设置

  1. 打开core开关

    1
    ulimit -c unlimited
  2. 设置core文件生成位置格式

    1
    echo "/corefile/core-%e-%p" > /proc/sys/kernel/core_pattern
  3. 设置之后程序coredump的时候就会在/corefile/下生成 code-程序名-进程ID格式的codedump文件了

    之后便可以用gdb来调试,前提是编译程序的时候加上了-g选项

    1
    gdb ./a.out code-a.out-28281

    进入gdb之后输入bt 就能打印出crash时候的函数调用栈了