之前一直使用系统自带的SAMBA,近期需要对SAMBA代码做一些修改,然后还是打算用RPM包的方式来安装部署。

这个流程本身不复杂,在这里记录下来,免得在另外写说明文档。

关键词:RHEL5.8, samba, rpm, rpmbuild

一、打包新的RPM
1.安装samba.3.0.33-3.37.e15.src.rpm

  # rpm -ivh samba.3.0.33-3.37.e15.src.rpm
2.cd到RPMBUILD目录下
使用rpmbuild --showrc | grep _topdir来获得具体的RPMBUILD目录,如果没做过修改的话,RHEL上的默认目录应该是/usr/src/redhat)
3.RPMBUILD目录应该包含BUILD,RPMS,SOURCES,SPECS,SRPMS等目录。
进入SPECS目录,这时应该已经有了samba.spec文件
而SOURCES目录下,应该有了samba-3.0.33.tar.gz,一些patch文件和samba需要用到的配置文件
4.解压samba-3.0.33.tar.gz
tar xzvf samba-3.0.33.tar.gz
5.cd samba-3.0.33/source,进行需要的修改
6.重新打包源代码
tar czvf samba-3.0.33.tar.gz samba-3.0.33/
7.打rpm包
打包好像需要cups-devel这个工具,找到cups-devel-1.3.7-30.el5.x86_64.rpm安装一下就行。
# rpmbuild -bb samba.spec
这时应该进行打patch,make,build rpm等动作,完成后,RPMS目录下应该有已经打包好的RPM文件。

二、安装新的RPM
1.卸载系统已安装的rpm
# rpm -qa | grep samba
# rpm -qa | grep smb
# rpm -e libsmbclient --nodeps
# rpm -e samba-client
# rpm -e samba-common

2.安装新包
cd到之前的RPMBUILD/RPMS目录下,
# rpm -ivh libsmbclient-3.0.33-3.37.x86_64.rpm
# rpm -ivh samba-common-3.0.33-3.37.x86_64.rpm
# rpm -ivh samba-3.0.33-3.37.x86_64.rpm

完工

参考资料:

http://www.ibm.com/developerworks/cn/linux/l-rpm/

http://www.worldhello.net/2011/04/02/2405.html

RHEL5.8上SAMBA源码修改打包安装流程的更多相关文章

  1. 百度ueditor vue项目应用 -- 图片上传源码修改

    本文目的有两个,一.废掉单图上传,二.改造多图上传 大家都知道百度ueditor不是针对vue项目开发的,官方文档提供的源码包里有需要后端配置的接口,but到vue项目就不太好办了,网上有些文章也介绍 ...

  2. ubuntu上用源码进行一键安装mysql

      首先卸载原有的mysql: 首先查看自己的mysql有哪些依赖 #dpkg --list|grep mysql 先卸载 #sudo apt-get remove mysql-common #sud ...

  3. openfire源码修改后如何打包部署到linux服务器上

    原文:http://blog.csdn.net/jinzhencs/article/details/50457152 1.linux版本的3.10.3解压部署启动(过程略,参考我的另一篇博文http: ...

  4. vue打包时,assets目录 和static目录下文件的处理区别(nodeModule中插件源码修改后,打包后的文件应放在static目录)

    为了回答这个问题,我们首先需要了解Webpack如何处理静态资产.在 *.vue 组件中,所有模板和CSS都会被 vue-html-loader 及 css-loader 解析,并查找资源URL.例如 ...

  5. el-upload源码修改跳坑

    之前给element-ui提了一个问题,结果没有鸟我,没办法,只能修改源码来满足需求了 (备注:element-ui2依然没有修改,为了迎合产品还是要改源码) 本文讨论的组件属性仅限于list-typ ...

  6. Java学习-039-源码 jar 包的二次开发扩展实例(源码修改)

    最近在使用已有的一些 jar 包时,发现有些 jar 包中的一些方法无法满足自己的一些需求,例如返回固定的格式,字符串处理等等,因而需要对原有 jar 文件中对应的 class 文件进行二次开发扩展, ...

  7. Android6.0 源码修改之 Contacts应用

    一.Contacts应用的主界面和联系人详情界面增加顶部菜单添加退出按钮 通过Hierarchy View 工具可以发现 主界面对应的类为 PeopleActivity 联系人详情界面对应的类为 Qu ...

  8. maven上传源码到私服

    上传源码 项目中采用了分模块的方式构建,直接将maven-source-plugin写到父pom中,尝试了很多次发现源码一直不能上传到私服中,纠结了很长时间才发现原来多模块项目和普通一个项目的配置是有 ...

  9. postgresql密码加强-passwordcheck源码修改三种以上字符

    目录 1.使用方式 2.效果 3.源码修改 1.参考pg_cron的源码在配置文件内增加一个参数 2.修改源码配置校验数字 因数据库入网检测须修改密码级别,在源有的passwordcheck插件上进行 ...

随机推荐

  1. javascript flash 弹框

    1. [代码]FlashBox     // JavaScript Documentfunction FlashBox(src,width,height){var docbody = document ...

  2. 【Java】DateUtil(2)

    import java.sql.Timestamp; import java.text.ParseException; import java.text.SimpleDateFormat; impor ...

  3. [存档]获取通讯录信息并写到SD卡上

      下面是代码,不过没有字母表的顺序排列: package com.example.getcontacts; import java.io.FileWriter; import java.io.IOE ...

  4. Java中的ArrayList

    ArrayList是所谓的动态数组.用一个小例子: import java.util.ArrayList; import java.util.Iterator; import java.util.Li ...

  5. 「网络流24题」「LuoguP4016」 负载平衡问题

    Description GGG 公司有 nnn 个沿铁路运输线环形排列的仓库,每个仓库存储的货物数量不等.如何用最少搬运量可以使 nnn 个仓库的库存数量相同.搬运货物时,只能在相邻的仓库之间搬运. ...

  6. 中文环境下PostgreSQL的使用

    虽然官方文档有提到编码的问题,但是对于中文讲的比较简单,给中文的PostgreSQL用户带来很多困扰,本文简单简述一下中文环境下PostgreSQL如何正确设置编码. 一.服务器端的编码设置 Post ...

  7. 03_主线程联网问题&ANR&子线程不能修改UI

    如果不使用HAXM,恐怕网页源码查看器无法获取servlet的源码.初步猜测是安卓模拟器运行速度太慢了.如果CPU不支持VT-x的话,HAXM是安装不上的.所以可以先开启VT-x. 可以参考几篇文章h ...

  8. [msf]CentOS VPS创建pptpd 并搭建msf

    安装pptpd服务 vps下 下载 centos 6 一键安装包 wget --no-check-certificate https://raw.githubusercontent.com/teddy ...

  9. 微信公众号开发及时获取当前用户Openid及注意事项

    目录 (一)微信公众号开发之VS远程调试 (二)微信公众号开发之基础梳理 (三)微信公众号开发之自动消息回复和自定义菜单 (四)微信公众号开发之网页授权获取用户基本信息 (五)微信公众号开发之网页中及 ...

  10. ASP.NET Core Web API + Angular 仿B站(一) 目的分析以及创建 WebAPI + Angular7 项目

    前言: 本系列文章主要为对所学 Angular 框架的一次微小的实践,对 b站页面作简单的模仿. 本系列文章主要参考资料: 微软文档: https://docs.microsoft.com/zh-cn ...