2018-03-02 实现多系统网络yum服务器和第三方的yum仓库

1、centos7 实现多系统网络yum服务器

  • 关闭防火墙
[root@centos7 ~]#systemctl stop firewalld.service ---马上关闭防火墙
[root@centos7 ~]#iptables -vnL  ---查看防火墙
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
[root@centos7 ~]#systemctl disable firewalld.service ---开机自动关闭防火墙
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service
  • 关闭SElinux
[root@centos7 ~]#setenforce 0 ---马上关闭SElinux
[root@centos7 ~]#getenforce ---查看SElinux是否关闭
Permissive
或者更改配置文件 /etc/selinux/config中SELINUX=disabled,然后重启
注:
setenforce 1 设置SELinux 成为enforcing模式
setenforce 0 设置SELinux 成为permissive模式
在lilo或者grub的启动参数中增加:selinux=0,也可以关闭selinux
  • 安装ftp服务包并启动ftp服务
[root@centos7 ~]#rpm -ivh /media/cdrom/Packages/vsftpd-3.0.2-21.el7.x86_64.rpm Preparing...                          ################################# [100%]
Updating / installing...
   1:vsftpd-3.0.2-21.el7              ################################# [100%]
[root@centos7 ~]#rpm -ql vsftpd ---查看ftp服务包生成哪些文件
/etc/logrotate.d/vsftpd
/etc/pam.d/vsftpd
/etc/vsftpd
/etc/vsftpd/ftpusers
/etc/vsftpd/user_list
/etc/vsftpd/vsftpd.conf
/etc/vsftpd/vsftpd_conf_migrate.sh
/usr/lib/systemd/system-generators/vsftpd-generator
/usr/lib/systemd/system/vsftpd.service ---vsftpd的服务名
/usr/lib/systemd/system/vsftpd.target
/usr/lib/systemd/system/vsftpd@.service
/usr/sbin/vsftpd
/usr/share/doc/vsftpd-3.0.2
/usr/share/doc/vsftpd-3.0.2/AUDIT
/usr/share/doc/vsftpd-3.0.2/BENCHMARKS
/usr/share/doc/vsftpd-3.0.2/BUGS
/usr/share/doc/vsftpd-3.0.2/COPYING
/usr/share/doc/vsftpd-3.0.2/Changelog
/usr/share/doc/vsftpd-3.0.2/EXAMPLE
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/INTERNET_SITE
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/INTERNET_SITE/README
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/INTERNET_SITE/README.configuration
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/INTERNET_SITE/vsftpd.conf
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/INTERNET_SITE/vsftpd.xinetd
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/INTERNET_SITE_NOINETD
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/INTERNET_SITE_NOINETD/README
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/INTERNET_SITE_NOINETD/README.configuration
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/INTERNET_SITE_NOINETD/vsftpd.conf
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/PER_IP_CONFIG
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/PER_IP_CONFIG/README
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/PER_IP_CONFIG/README.configuration
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/PER_IP_CONFIG/hosts.allow
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/README
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/VIRTUAL_HOSTS
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/VIRTUAL_HOSTS/README
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/VIRTUAL_USERS
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/VIRTUAL_USERS/README
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/VIRTUAL_USERS/README.configuration
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/VIRTUAL_USERS/logins.txt
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/VIRTUAL_USERS/vsftpd.conf
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/VIRTUAL_USERS/vsftpd.pam
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/VIRTUAL_USERS_2
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/VIRTUAL_USERS_2/README
/usr/share/doc/vsftpd-3.0.2/FAQ
/usr/share/doc/vsftpd-3.0.2/INSTALL
/usr/share/doc/vsftpd-3.0.2/LICENSE
/usr/share/doc/vsftpd-3.0.2/README
/usr/share/doc/vsftpd-3.0.2/README.security
/usr/share/doc/vsftpd-3.0.2/REWARD
/usr/share/doc/vsftpd-3.0.2/SECURITY
/usr/share/doc/vsftpd-3.0.2/SECURITY/DESIGN
/usr/share/doc/vsftpd-3.0.2/SECURITY/IMPLEMENTATION
/usr/share/doc/vsftpd-3.0.2/SECURITY/OVERVIEW
/usr/share/doc/vsftpd-3.0.2/SECURITY/TRUST
/usr/share/doc/vsftpd-3.0.2/SIZE
/usr/share/doc/vsftpd-3.0.2/SPEED
/usr/share/doc/vsftpd-3.0.2/TODO
/usr/share/doc/vsftpd-3.0.2/TUNING
/usr/share/doc/vsftpd-3.0.2/vsftpd.xinetd
/usr/share/man/man5/vsftpd.conf.5.gz
/usr/share/man/man8/vsftpd.8.gz
/var/ftp
/var/ftp/pub    ---存放yum仓库的位置
[root@centos7 ~]#systemctl start vsftpd  ---启动ftp服务
vsftpd@         vsftpd.service  vsftpd.target   
[root@centos7 ~]#ss -tnl  ---查看ftp服务对应的21端口是否打开
State      Recv-Q Send-Q Local Address:Port               Peer Address:Port              
LISTEN     0      128          *:111                      *:*                  
LISTEN     0      5      192.168.122.1:53                       *:*                  
LISTEN     0      128          *:22                       *:*                  
LISTEN     0      128    127.0.0.1:631                      *:*                  
LISTEN     0      100    127.0.0.1:25                       *:*                  
LISTEN     0      128         :::111                     :::*                  
LISTEN     0      32          :::21                      :::*         ---确认已经打开         
LISTEN     0      128         :::22                      :::*                  
LISTEN     0      128        ::1:631                     :::*                  
LISTEN     0      100        ::1:25                      :::*                  
[root@centos7 ~]#systemctl enable vsftpd  ---设置成开机自动启动ftp服务
Created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.
  • 准备yum 系统安装包
mkdir -p /var/ftp/pub/centos/{6,7} 
cp -r /media/cdrom /var/ftp/pub/centos/7
cp -r /media/cdrom /var/ftp/pub/centos/6  ---此步骤需要将centos7的光盘卸载,然后换上centos6的光盘
  • 客户端配置
[basecentos]
name=centos 
baseurl=ftp://192.168.25.144/pub/centos/$releasever/
gpgcheck=0

2、用gcc将c语言编译成可执行的二进制,用javac和java将java解析执行

[root@centos7 app]#ls
hello.c  Hello.java  music  music.sh  test
[root@centos7 app]#gcc hello.c 
[root@centos7 app]#ls
a.out  hello.c  Hello.java  music  music.sh  test
[root@centos7 app]#./a.out 
Hello,world
[root@centos7 app]#gcc hello.c -o hello   ---默认情况下解析成二进制后名字为a.out,可以用-o指定名字
yum install java-1.8.0-openjdk-devel.x86_64 ---安装javac命令包
[root@centos7 app]#javac Hello.java ---注意对大小写敏感
[root@centos7 app]#ls ---生成中间代码Hello.class
a.out  hello  hello.c  Hello.class  Hello.java  music  music.sh  test
[root@centos7 app]#java Hello ---解析执行,不用带class
Hello,java

3、第三方的yum仓库

有的时候我们在第三方平台上下载一些rpm软件包,想要安装,就要利用这些包自建仓库,生成它们对应的元数据,也就是repodata这目录,才能用yum进行安装。

[root@centos7 app]#yum install httpd ---安装http服务
[root@centos7 app]#rpm -ql httpd  ---查看服务对应生成的文件
/usr/lib/systemd/system/httpd.service  ---http服务名
var/www/html  ---存放仓库的位置
[root@centos7 app]#systemctl start httpd.service ---启动http服务
[root@centos7 app]#ss -ntl  --查看http对应的端口是否打开
State      Recv-Q Send-Q Local Address:Port               Peer Address:Port              
LISTEN     0      128          *:111                      *:*                  
LISTEN     0      5      192.168.122.1:53                       *:*                  
LISTEN     0      128          *:22                       *:*                  
LISTEN     0      128    127.0.0.1:631                      *:*                  
LISTEN     0      100    127.0.0.1:25                       *:*                  
LISTEN     0      128         :::111                     :::*                  
LISTEN     0      128         :::80                      :::*    ----http对应的80端口已经打开              
LISTEN     0      32          :::21                      :::*                  
LISTEN     0      128         :::22                      :::*                  
LISTEN     0      128        ::1:631                     :::*                  
LISTEN     0      100        ::1:25                      :::*                  
[root@centos7 app]#systemctl enable httpd.service ---开机自动启动http服务
[root@centos7 app]#cd /var/www/html/
[root@centos7 html]#ls
[root@centos7 html]#vim index.html  ---编辑一个页面,文件名为index.html
  1 <h1>welcomme to magedu.com </h1>
[root@centos7 html]#mkdir app
[root@centos7 html]#ls
app  index.html
[root@centos7 html]#cd app
[root@centos7 app]#ls
[root@centos7 app]#cp /media/cdrom/Packages/tree-1.6.0-10.el7.x86_64.rpm .  ---将tree包拷贝到该目录下
[root@centos7 app]#ls
tree-1.6.0-10.el7.x86_64.rpm
[root@centos7 app]#createrepo .  ---在该目录下自建仓库
Spawning worker 0 with 1 pkgs
Spawning worker 1 with 0 pkgs
Workers Finished
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
  lite DBs complete
[root@centos7 app]#ls
repodata  tree-1.6.0-10.el7.x86_64.rpm ---可以看到会自动生产一个repodata的目录
客户端配置
[app]
name=app
baseurl=http://192.168.25.144/app
gpgcheck=0
[root@centos7 yum.repos.d]#yum repolist ---可以看到仓库里只有一个文件
Loaded plugins: fastestmirror, langpacks
app                                                      | 2.9 kB     00:00     
app/primary_db                                             | 1.8 kB   00:00     
Loading mirror speeds from cached hostfile
repo id                                repo name                          status
app                                    app                                1
repolist: 1
[root@centos7 yum.repos.d]#yum install tree  ---利用自建仓库安装tree包

4、关闭防火墙和关闭SElinux的初始化脚本

#!/bin/bash
release=`cat /etc/centos-release|egrep -o " [0-9]"|tr -d " "`
[ "$release" -eq 6 ]&&service iptables stop &>/dev/null &&chkconfig iptables off&>/dev/dull
[ "$release" -eq 7 ]&&systemctl stop firewalld.service &>/dev/null && systemctl disable firewalld.service&>/dev/dull 
echo "firewall is stop"
setenforce 0
echo "SElinux is `getenforce`"
unset release
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,117评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,328评论 1 293
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,839评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,007评论 0 206
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,384评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,629评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,880评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,593评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,313评论 1 243
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,575评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,066评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,392评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,052评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,082评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,844评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,662评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,575评论 2 270

推荐阅读更多精彩内容