linux 空间清理

#发现有大量刚刚删除文件的进程存在,kill掉进程(或者重启进程) OK

lsof | grep deleted

#循环检测发现大目录及其内的文件

du -h --max-depth=1 | sort -gr

获取大文件

到jenkins的家目录

find . -type f -size +100M

du -ah --max-depth=1

find . -type f -size +100M | wc -l

find . -type f -size +100M -exec rm -rf {} \;

du -sh .[!.]* * | sort -hr #查看隐藏文件

find . -type f -size +800M -print0 | xargs -0 du -h | sort -nr

du -hm --max-depth=2 | sort -nr | head -12

du -h --max-depth=1

#######

###删除操作

在jenkins工作路径下/var/lib/jenkins

find . -type f -size +200M -name *.jar -exec rm -rf {} \;

构建工作区清理

插件 Workspace Cleanup Plugin

样例配置:

构建前清理

构建后操作:

workspace 与job

构建工作区(workspace)

每一个构建(build)都需要一个workspace 目录作为构建的工作区,执行job配置中指定的任务

默认情况下,构建工作区workspace是不会自动清理的,也就是说每一个job的build结束后,workspace被遗留在master或者slave对应的工作区目录下,Jenkins的本意是为下次构建复用工作区目录,这样一些代码下载,编译等可以加速

可用Workspace Cleanup Plugin 清理

job 中保存的是项目是在 jenkins 上的配置、日志、构建结果等

workspace 就是工作目录,一般就是 Down 下来的源代码目录(网页打开的显示工作目录)

清理删除job后的workspace

具体思路是:

遍历jenkins节点的workspace,根据路径解析获得jenkins job name

如果该job不存在(通过python jenkinsapi实现),则删除相应的workspace

暂不考虑自定义的workspace

需要在jenkins每个节点上进行处理(可以在jenkins上创建job,将job绑定到相应slave上;也可以在相应slave上直接运行脚本)

# -*- coding: utf-8 -*-

import os

import shutil

import logging

from jenkinsapi.jenkins import Jenkins

logging.basicConfig(level=logging.INFO)

logger = logging.getLogger(__file__)

def get_jenkins_instance():

jenkins_url = "http://jenkins.example.com"

jenkins_username = "username"

jenkins_password = "password"

return Jenkins(jenkins_url, username=jenkins_username, password=jenkins_password)

def clean_workspace():

jenkins_instance = get_jenkins_instance()

jenkins_workspace_path = "/opt/JENKINS_HOME/workspace/"

for dirpath, dirnames, filenames in os.walk(jenkins_workspace_path):

if dirpath == jenkins_workspace_path:

for dirname in dirnames:

jenkins_job_name = dirname

# 如果job被删除,则清理相应的workspace

if not jenkins_instance.has_job(jenkins_job_name):

logger.info("removing workspace dir of job:%s" % dirname)

shutil.rmtree(os.path.join(dirpath, dirname))

if __name__ == "__main__":

clean_workspace()

jenkins如何清缓存_空间清理jenkins,linux清理空间相关推荐

  1. jenkins中jdk配置_如何在Jenkins中配置JDK

    jenkins中jdk配置 In the previous chapter, we learnt how to configure the Jenkins and start the server a ...

  2. linux oracle 运维_运维日记| Linux磁盘空间被莫名占用的问题

    各位新朋友-记得先点蓝字关注我哦- 某天笔者在拷贝一份大日志文件到data目录下时,发现磁盘空间已经满了.经常使用linux的朋友相信对以下这个报错都不陌生:No space left on devi ...

  3. vmware给linux增加空间,vmware增加linux硬盘空间

    vmware增加linux硬盘空间 1.vmware上右键增加一个4GB的SCSI硬盘. 2.到linux下输入fdisk -l,察看磁盘情况. 如果以前有一块硬盘,会多显示一个sdb磁盘. 3.新磁 ...

  4. jenkins修改pom文件_自动化部署—Jenkins+Docker构建工程

    ================= 交作业:hello-world级的自动化部署(Maven+Git+Docker+Jenkins),因为内容稍微有点儿多,分两篇,这是第二篇--构建工程. ===== ...

  5. 苹果手机怎么清理缓存_【优化】苹果清理缓存垃圾终极方案丨还你干净手机

    手机使用时间长了垃圾越来越多怎么办?手机没越狱能清理垃圾吗?越狱手机用时间长了垃圾多了变慢了怎么办?等等问题,今天一站式帮你解决! 需要工具: 越狱的手机一部: 手机端安装 iCleaner Pro ...

  6. linux清理整个磁盘空间,一次Linux磁盘空间清理的经历

    最近,在Linux上运行BPM应用总是报没有空间的错误.经过一番调查和周折,终于找出了问题的症结,并顺利解决.今天,我把过程总结一下,方便自己或其他有类似问题的朋友参考.这里不对具体命令的具体各种参数 ...

  7. linux 进程 清理,总结linux清理垃圾命令

    Ubuntu Linux与Windows系统不同,Ubuntu Linux不会产生无用垃圾文件,但是在升级缓存中,Ubuntu Linux不会自动删除这些文件,今天就来说说这些垃圾文件清理方法. 1, ...

  8. linux 怎样清理内存,linux清理内存命令(示例代码)

    1.清理前内存使用情况 free -m 2.开始清理 echo 1 > /proc/sys/vm/drop_caches 3.清理后内存使用情况 free -m 4.完成! 查看内存条数命令: ...

  9. linux用户空间寄存器,在Linux用户空间中访问硬件寄存器

    我想写Linux用户空间中OMAP3530上的硬件寄存器.请找到下面的代码. Mmap返回错误: 内存映射失败.错误-1 mmap:权限被拒绝 #include #include #include # ...

最新文章

  1. HTTP与服务器的四种交互方式
  2. python 学习 [day8]class成员
  3. 企业建立规范化IT运维管理制度的重要性
  4. c++ set有序性
  5. TensorRT学习笔记1 - 环境配置
  6. 3月上旬我国域名增长平稳 新增92059个域名
  7. Class Imbalance Problem
  8. javascript写入_如何在JavaScript中写入HTML元素?
  9. 【推荐系统】智能推荐算法在直播场景中的应用
  10. FPGA实现任意分频 为所欲为——教你什么才是真正的任意分频
  11. jquery mini下载_【福利】iPhone 12 Pro Maxamp;mini预售开始啦!
  12. iconfont-阿里巴巴矢量图标库的使用
  13. 饮用水中如何去除硝酸盐 溴化物 铬 等有害物质
  14. 正则十八式-第三式:龙跃于渊
  15. 微信开发安卓虚拟键盘挡住输入框的问题
  16. 于树莓派安装Ubuntu系统
  17. 新造车,程序员的糖,工程师的泪
  18. quantenna测试RF射频性能简单说明
  19. 给OneNote2016安装NoteHighlight2016, 插件无法加载问题【已解决】
  20. UVA 1103 - Ancient Messages(古代象形符号) By SuCicada

热门文章

  1. 2014年的第一场雪
  2. MATLAB plot 画折线图的常用命令总结
  3. Android开发-Activity中“android:exported“属性的作用,以及“Permission Denial: starting Intent“错误解决
  4. springboot vue mysql企业人事系统源码+论文+答辩稿+PPT+远程安装配置
  5. tensorflow || 滑动平均的理解--tf.train.ExponentialMovingAverage
  6. Shell until循环解析
  7. 如何解决远程桌面连接出现内部错误问题?
  8. Python:股票信息提取与文件构建(基于Tushare)
  9. python paramiko sftp_paramiko ssh sftp
  10. 8个国外矢量图案下载网站