ubuntu16.04下的apt-get内网光盘源(CD/DVD)的搭建以及局域网服务器源的搭建

目录

ubuntu16.04下的apt-get内网CD源的搭建

ubuntu16.04下的apt-get内网CD源的使用(虚拟机)

一、光驱的挂载

二、使用CD/DVD源

三、使用完了,解除挂载

ubuntu16.04下的apt-get内网使用apache2服务器作为局域网的源(基于平时apt-get install安装软件下载的deb文件)

ubuntu16.04下的apt-get内网使用apache2服务器作为局域网的源(同步各大源库)

参考资料


记录一下,免得以后忘记!(搭建的时候踩的坑比较的多,分享出来供大家参考)

ubuntu16.04下的apt-get内网CD源的搭建

背景

平时apt-get install安装软件时,下载的deb文件都会存放在/var/cache/apt/archives/下,为了今后重装或给别人用,特别是没有网络时,这些deb文件实际上是可以派上用途的,也就是可以用这些deb制作成本地源。这种方法还有一个应用场景:

1.先在有网络的服务器上面进行apt-get install安装

2.安装dpkg-dev,这个用来制作源。

apt-get install dpkg-dev

3.在根目录下新建一个dir,作为自己源存放位置

mkdir /software

4.复制文件到software文件夹下,目录依各人情况变化。

sudo cp /var/cache/apt/archives/* /software -r

5.建立Packages.gz包,里面记录了packs文件夹下面的软件包信息,包括依赖信息。

dpkg-scanpackages software /dev/null |gzip > software/Packages.gz -r

6.将software文件夹全部烧在CD/DVD里面去

7.出现问题以及解决:

关于Ubuntu中Could not get lock /var/lib/dpkg/lock解决方案 https://blog.csdn.net/u011596455/article/details/60322568

 

ubuntu16.04下的apt-get内网CD源的使用(虚拟机)

一、光驱的挂载

1.创建挂载点:

mkdir /mnt/cdrom

2.打开光驱,放入光盘

如果用的是VMware中的虚拟机,进入虚拟机设置,选择“CD/DVD”硬件,勾选“已连接”和“启动时连接”。连接选择使用物理驱动器(P),不能选择自动检测,选择指定的盘符,不能然挂载的时候找不到media。

 

3.执行挂载命令

mount -t iso9660 /dev/sr0 /mnt/cdrom 
或者 
mount /dev/sr0 /mnt/cdrom

iso9660 是光盘的默认文件系统。 

由于linux系统可以自动识别光盘的文件系统,故“-t iso9660”也可以省略不写。

光盘的设备文件名是固定的,一般为/dev/cdrom或/dev/sr0。

挂载成功后,就可以通过挂载点读取光盘里面的数据。

4.进入/mnt/cdrom目录下,查看CD中的内容

二、使用CD/DVD源

1.首先/etc/apt/sources.list进行备份

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

2.将sources.list清空,引入CD/DVD源

deb file:///mnt/cdrom/ software/

(注意,software前面有一个空格,并且后面还有'/')

3.更新源

sudo apt-get update

三、使用完了,解除挂载

1.不能在挂载点目录下解除挂载,必须先切换到其他目录(如用户家目录,因为导致有进程占用,解除不了)。

cd 切换到用户家目录

umount /dev/sr0 
或者 
umount /mnt/cdrom

2.如果光驱被占用解除不了(执行umount 的时候却提示:device is busy 的处理方法)

fuser -k 文件名

详情查看:https://blog.csdn.net/lengyue1084/article/details/51477872

ubuntu16.04下的apt-get内网使用apache2服务器作为局域网的源(基于平时apt-get install安装软件下载的deb文件)

基于上面的基础,接下来的工作就很简单了。

1.源服务器安装apache2.

apt-get install apache2

2.由于Apache2的默认网页文件目录位于/var/www/html,因此,可以做个软链接(这样我们就可以直接访问了,无需将其直接导入该目录) 

sudo ln -s /mnt/cdrom/software/ /var/www/html/software

3.这个时候服务器配置完成了,现在配置客户端引用服务器的源,路径http://[host]:[port]/ software/ (注意software前面有空格!!!我也不知道为什么,就是这样!!!) ,其中端口默认为80。在/etc/apt/sources.list里面引入源

deb http:192.168.25.133:80/ software/

(注意software前面有空格,后面有/,否则能正常使用命令apt-get update 但是不能安装软件,报404错误!)

4.更新源

apt-get update

ubuntu16.04下的apt-get内网使用apache2服务器作为局域网的源(同步各大源库)

网上教程比较的多,内存有限制就不写了。

 

参考资料

https://blog.csdn.net/wenwenxiong/article/details/50908017 ubuntu系统使用光盘做软件安装源

https://blog.csdn.net/fanwanli04/article/details/79622726 使用apt-mirror搭建ubuntu本地安装源

https://blog.csdn.net/lamp_yang_3533/article/details/53284290 linux挂载光盘和使用的记录(包含linux虚拟机挂载)

https://blog.csdn.net/u011596455/article/details/60322568 关于Ubuntu中Could not get lock /var/lib/dpkg/lock解决方案

https://www.jb51.net/article/99570.htm ubuntu制作本地源的实现方法(本地文件安装!完整的)

https://blog.csdn.net/qq_37604508/article/details/78731635 测试从本地源中安装mysql5.7

 

你可能感兴趣的:(linux)