前言:
其实,咱也不知道为啥写了这篇博客,咱就是想学一学suse,咱也不会,咱也只能学,只能查
[# 上个月部署公司新版本产品,使用的是ansible部署的,由于suse的一些特殊性(暂时还没有去研究ansible的zypper部署方式,最终是用python的方式部署的ansible),想起之前用过yum的缓存方式去创建本地源,就想着给suse也整一个,最近整完之后,在思考几个问题,如下:
1、'虽然机器是客户的,无法添加光驱,但是我可以把iso镜像里面的文件压缩一下,上传到服务器就可以了(iso里面的源已经压缩了,但是文件比较大,要3.7G,上传到客户环境不是狠方便,暂且搁置,毕竟需要啥上传啥挺好的,各有优缺点)'
2、'虽然解决了本地源的情况,目前还有一些问题,比如一些开源软件在centos上,可以利用repo源进行yum安装,不知道suse上是否可以利用zypper实现,还需要自己实践,毕竟这样配合本地源,才有本地源的意义,否则不如直接编译安装(如果有大佬知道,希望可以赐教)'
3、'虽然可以使用编译的方式去部署一些服务,但是从脚本编写的角度考虑,还是觉得rpm包安装的方式,写脚本更舒服一点把(来自菜鸡的错觉~~~)']
zypper-cache:~ # cat /etc/issue

Welcome to SUSE Linux Enterprise Server 12 SP3  (x86_64) - Kernel \r (\l).

服务端获取

添加源

1、# 添加网络源,之所以写repo文件,是因为zypper ar添加的repo源,没有gpgcheck=0这一项配置,安装软件的时候会报错,在加上还要写keeppackages=1,所以还是觉得写repo文件更舒服把,后期自己需要复制使用也狠方便
cat > /etc/zypp/repos.d/opensuse.repo << EOF
[opensuse-non-oss] # 以下都是suse12的国内源(中国科技大学镜像站)(国内源速度快)
name=opensuse-non-oss
enabled=1
autorefresh=0
baseurl=http://mirrors.ustc.edu.cn/opensuse/distribution/openSUSE-current/repo/non-oss
gpgcheck=0
keeppackages=1
[opensuse-oss]
name=opensuse-oss
enabled=1
autorefresh=0
baseurl=http://mirrors.ustc.edu.cn/opensuse/distribution/openSUSE-current/repo/oss
gpgcheck=0
keeppackages=1
[opensuse-update-non-oss]
name=opensuse-update-non-oss
enabled=1
autorefresh=0
baseurl=http://mirrors.ustc.edu.cn/opensuse/update/openSUSE-non-oss-current/
gpgcheck=0
keeppackages=1
[opensuse-update]
name=opensuse-update
enabled=1
autorefresh=0
baseurl=http://mirrors.ustc.edu.cn/opensuse/update/openSUSE-current/
gpgcheck=0
keeppackages=1
EOF
zypper-cache:~ # zypper refresh
2、# 添加本地源
zypper-cache:~ # zypper ar /root/suse12-dvd suse12-dvd # 本地源需要自己准备rpm目录
zypper-cache:~ # echo "gpgcheck=0" >> /etc/zypp/repos.d/suse12-dvd.repo
zypper-cache:~ # echo "keeppackages=1" >> /etc/zypp/repos.d/suse12-dvd.repo

刷新源

zypper-cache:~ # vim /etc/zypp/zypp.conf
packagesdir = /var/cache/zypp/packages
zypper-cache:~ # zypper refresh # 刷新一下源
zypper-cache:~ # zypper lr
Repository priorities are without effect. All enabled repositories share the same priority. # | Alias | Name | Enabled | GPG Check | Refresh
--+-------------------------+-------------------------+---------+-----------+--------
1 | SLES12-SP3-12.3-0 | SLES12-SP3-12.3-0 | No | ---- | ---- # 虚拟机安装的suse12,会自带镜像里面的源(需要光驱开机自启,生产环境不一定有,所以为了测试,吧这个源禁用了,可以不操作)
2 | opensuse-non-oss | opensuse-non-oss | Yes | ( ) No | No # repo文件没有问题的情况下,这些源是可以被 zypper lr 查看的
3 | opensuse-oss | opensuse-oss | Yes | ( ) No | No
4 | opensuse-update | opensuse-update | Yes | ( ) No | No
5 | opensuse-update-non-oss | opensuse-update-non-oss | Yes | ( ) No | No
6 | suse12-dvd | suse12-dvd | Yes | ( ) No | No

清除缓存

zypper-cache:~ # zypper clean
All repositories have been cleaned up.

安装软件

zypper-cache:~ # zypper in sl

获取rpm包

zypper-cache:~ # mkdir rpmcache/sl
zypper-cache:~ # find /var/cache/zypp/ -name "*.rpm" -exec mv {} /root/rpmcache/sl/ \;
zypper-cache:~ # scp -r rpmcache/sl/ 192.168.10.158:/root

客户端测试

linux-oz6w:~ # zypper ar /root/sl/ sl     # 创建本地源
linux-oz6w:~ # echo "gpgcheck=0" >> /etc/zypp/repos.d/sl.repo
linux-oz6w:~ # zypper in sl # 成功安装即可

zypper --help

Repository Management:    # zypper 后面可以带简写,比如lr ar ref 具体可以参考zypper --help
repos, lr List all defined repositories.
addrepo, ar Add a new repository.
removerepo, rr Remove specified repository.
renamerepo, nr Rename specified repository.
modifyrepo, mr Modify specified repository.
refresh, ref Refresh all repositories.
clean Clean local caches.
Software Management:
install, in Install packages.
remove, rm Remove packages.
verify, ve Verify integrity of package dependencies.
source-install, si Install source packages and their build
dependencies.
install-new-recommends, inr
Install newly added packages recommended
by installed packages.
Update Management:
update, up Update installed packages with newer versions.
list-updates, lu List available updates.
patch Install needed patches.
list-patches, lp List needed patches.
dist-upgrade, dup Perform a distribution upgrade.
patch-check, pchk Check for patches.

suse 12 利用缓存创建本地源供内网服务使用的更多相关文章

  1. CentOS7利用yum缓存搭建本地源

    CentOS7利用yum缓存搭建本地源 环境说明 [root@localhost ~]# cat /etc/redhat-release CentOS Linux release 7.6.1810 ( ...

  2. CentOS 7 下用 firewall-cmd / iptables 实现 NAT 转发供内网服务器联网

    自从用 HAProxy 对服务器做了负载均衡以后,感觉后端服务器真的没必要再配置并占用公网IP资源. 而且由于托管服务器的公网 IP 资源是固定的,想上 Keepalived 的话,需要挤出来 3 个 ...

  3. 本地Linux虚拟机内网穿透,服务器文件下载到本地磁盘

    本地Linux虚拟内网穿透 把服务器文件下载到本地磁盘 https://natapp.cn/ 1.注册账户点击免费隧道  

  4. 利用yum创建本地仓库与网络源

    一.创建本地yum仓库 1.cd /etc/yum.repos.d/ 2.创建配置文件:[root@li yum.repos.d]# vim local.repo 3.写入配置信息并保存 [li]na ...

  5. CentOS7创建本地源过程

    1)使用yum安装http服务(主节点) yum -y install httpd 2)将httpd服务加入系统自启动服务并设置开机启动 systemctl start httpd #启动apache ...

  6. 利用iptables的NAT代理实现内网访问外网

    利用NAT代理实现内网访问外网 背景及原理 若局域网中的两台计算机只能有一台能够访问外网,而这两台计算机之间能相互通信,那么可以配置能访问外网的那台服务器实现路由器的功能,即实现其他机器的NAT转换, ...

  7. 利用SSH端口转发实现远程访问内网主机远程桌面(一) 建立SSH转发

    近期家里更换了移动的宽带,拨号后拿到的是10开头的内网IP,就不能像之前一样通过路由器的端口映射实现从外网访问主机的远程桌面.这种情况下可以利用一台具有公网IP的服务器充当中转,利用SSH的隧道转发功 ...

  8. 利用SSH反向隧道,连接内网服务器

    前言 公司有一台文件服务器(内部使用,无外网IP),上面主要安装了SVN服务,用来存储和共享各部门的文档,因为都是内网,直接远程(mstsc)上去就可以方便维护,但最近公司租了新的办公室,部分员工被分 ...

  9. 传输层 lcx实现本地端口映射&&内网代理

    如果目标服务器由于防火墙的限制,部分端口(例如3389)的数据无法通过防火墙,可以将目标服务器相应端口的数据透传到防火墙允许的端口(例如53),在目标主机上执行如下命令,就可以直接从远程桌面连接目标主 ...

随机推荐

  1. Echart可视化学习(八)

    文档的源代码地址,需要的下载就可以了(访问密码:7567) https://url56.ctfile.com/f/34653256-527823386-04154f 正文: 新增需求 点击 2020年 ...

  2. hadoop入门到实战(6)hive常用优化方法总结

    问题导读:1.如何理解列裁剪和分区裁剪?2.sort by代替order by优势在哪里?3.如何调整group by配置?4.如何优化SQL处理join数据倾斜?Hive作为大数据领域常用的数据仓库 ...

  3. 获取app启动时间

    启动APP并收集消耗时间的命令: adb shell am  start -W -n package/activity 手动关闭谷歌浏览器APP(也可以使用命令关闭adb shell am force ...

  4. Nginx 反向代理解决跨域问题分析

    当你遇到跨域问题,不要立刻就选择复制去尝试.请详细看完这篇文章再处理 .我相信它能帮到你. 分析前准备: 前端网站地址:http://localhost:8080 服务端网址:http://local ...

  5. rocketmq实现延迟队列精确到秒级实现(总结编)

    前言篇: 为了节约成本,决定通过自研来改造rocketmq,添加任意时间延迟的延时队列,开源版本的rocketmq只有支持18个等级的延迟时间, 其实对于大部分的功能是够用了的,但是以前的项目,全部都 ...

  6. Javascript——ES6( ECMAScript 6.0)语法

    ES6( ECMAScript 6.0)语法 一.let/const与var的区别 var 会进行预解析,let/const不会 var可以声明两个重名的变量,let/const不能 var没有块级作 ...

  7. jquery-qrcode客户端二维码生成类库扩展--融入自定义Logo图片

    年后换了部门,现在主要的职责就是在网上卖精油,似乎这个就是传说中的网络营销. 跟着公司的MM们也了解不了少关于网络营销的知识,间接的了解到马云和刘强东都是些怎样龌龊的人,尽管之前也这样认为. 淘宝就不 ...

  8. 基于 NFS 搭建便捷远程硬盘

    基于 NFS 搭建便捷远程硬盘 知识准备: 一.NFS服务简介 NFS 是Network File System的缩写,即网络文件系统.一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向 ...

  9. 44.Prim算法

    public static void main(String[] args) { //测试看看图是否创建ok char[] data = new char[]{'A','B','C','D','E', ...

  10. 学习Java第6天

    今天所做的工作: 1.完成学生信息管理系统样卷 2.核心技术接口继承,多态 明天工作安排: 1.类的高级特性(Java类包) 2.异常处理 今天做一个小小的总结,Java程序是完全面向对象的,它的所有 ...