Linux系列开坑记(一)-经常使用的3个命令

为了不文章选题困难症,前段时间开了一个Docker系列坑,目前尚未完结,今天打算再来开一个Linux系列的坑,聊聊Linux平常开发命令,但愿你们喜欢。python

打包归档工具tar

首先要说的是打包归档工具。tar的主要做用将多个文件或文件夹保存单个文件,而且能保留文件属性,好比全部者、权限等。tar的全称是tape archive 磁带备份工具。git

咱们常常看到扩展名为.tar或者tgz的文件,它们各自表示普通的tar包和被gzip压缩过的tar包。web

最经常使用的方式就是:打包,提取操做。shell

tar -cvf output.tar file1 file2 folder1 # 打包数据
tar -xvf output.tar # 提取数据
其中参数 -c表示create建立,-f 表示filename指定文件名,-v 表示verbose更多细节。
x 抽取归档


编程

其中数据打包备份过程咱们会加入一些压缩参数来进行精简数据的大小,有关具体详细细节,请看下图。服务器

b3f599e9bd27c21b25f91c7a968663ff.webp

系统备份工具rsync

系统备份是系统管理员平常必备的工做之一,其中rsync能够对不一样位置的文件目录进行同步,利用差别计算和压缩技术来最小化数据传输量。app

我在以前的文章就讲到过,系统备份工具rsync,除了系统备份还有基于版本控制的git命令,你们能够参看下我以前的备份工具文章 我经常使用的4个备份工具,这就很少说了。ide

进程管理工具supervisor

这个严格来讲不是Linux自带命令,可是因为它比较通用,能够用来启动任意进程,用的比较多,这里也放进来了。工具

Supervisor是基于Python的进程管理工具,能够帮助咱们进行服务的重启,中止。spa

它由两个部分组成:

  1. supervisord:supervisor后台程序,负责启动所管理的进程

  2. supervisorctl:命令行工具,直接重启对应服务,supervisorctl stop/start/restart your_program_name

安装:

sudo pip install supervisor
echo_supervisord_conf > /etc/supervisord.conf # 添加配置文件
supervisord -c /etc/supervisord.conf # 启动指定配置

为了方面你们理解,我给一个简单的示例:

[supervisord]
nodaemon=true
logfile=/data/log/supervisord.log
pidfile=/var/run/supervisord.pid

[program:your_app_name]

process_name=app%(process_num)s
command=python server.py --port=%(process_num)s
directory=/yourdir ;执行命令时切换工做目录
user=sitin                 ; 使用sitin来启动进程
stopsignal=HUP
autostart = true
autorestart=true  ;自动重启

redirect_stderr = true  ;重定向日志
stdout_logfile = /data/log/stdout-%(program_name)s.log
logfile_maxbytes=300MB
logfile_backups=5
numprocs=3  ;启动3个 808080818082
numprocs_start=8080 ; 重8080开始


















更多的你们本身去看文档,我就不进行讲解了。我使用supervisor以后的效果图大概是这样,下面这张图不是上面的配置图。

f6efb57765e9940208cb6308052e8a20.webp

综上:上面就是我要介绍的3个命令,因为以前介绍过rsync,就只有tar,supervisor。

细心的同窗可能已经发现了,这几个命令其实也是一个完整的代码上线流程。

主要是打包压缩,上传备份,进程管理三个过程:

  1. 代码要发布上线首先就是进行打包压缩,使用tar工具。

  2. 打包以后,咱们须要对数据代码进行备份上传到服务器,须要用rsync工具。

  3. 代码上传到服务器上以后,咱们须要对咱们服务进行管理,须要用到supervisor。

经过这三个命令,能很是方便解决平常应用的开发上线问题,没有使用的同窗能够用起来了,今天咱们的内容就先到这儿了。

Linux平常命令使用,同Docker容器化同样我会以一个系列进行分享,今天是第一篇,后面我将持续分享更多内容,从Linux平常命令使用到shell脚本编程,欢迎你们持续进行关注。

`

相关文章
相关标签/搜索