通过LAN共享ArchLinux的软件包

王朝system·作者佚名  2008-05-21
窄屏简体版  字體: |||超大  

本文概述了如何通过LAN共享Arch Linux的软件包。更好的办法是使用ABS和gensync建立本地软件包库(http://wiki.archlinux.org/index.php/Custom%20local%20repository%20with%20ABS%20and%20gensync,此文已译),在LAN通过NFS或FTP访问。本文将详细介绍这一过程。原来的HOWO(译注:疑为HOWTO)将暂存在下面。

在局域网内共享你下载的软件包,以节约带宽、磁盘空间和时间。

"pacman -Sy"将同步本地软件库

"pacman -S pkgname"将试图在本地服务器上下载软件包,并安装软件。如果软件包不存在,它将从/etc/pacman.conf文件的服务器列表中选择下一个服务器,下载软件包并存储在本地服务器上。

"alsync"将根据ftp.archlinux.org升级本地服务器的数据。

例子:我的网络

serverip=192.168.14.3

network=192.168.14.0/255.255.255.0

根据你的情况调整一下。

1. 服务端

在服务器上建立NFS共享,并给予所有LAN上的用户以读写权限。

如果服务器上运行的是archlinux,你可以这样做:

pacman -S portmap

pacman -S nfs-utils

编辑/etc/exports

加入

/var/cache/pacman/pkg 192.168.14.0/255.255.255.0(rw,no_root_squash,sync)

并在/etc/rc.conf文件的DAEMONS中加入portmap,nfslock和nfsd

/etc/rc.d/portmap start

/etc/rc.d/nfslock start

/etc/rc.d/nfsd start

运行"exportfs"检查NFS。

2. 所有的客户端

将/var/cache/pacman/pkg改名为/var/cache/pacman/pkgorg

建立新的/var/cache/pacman/pkg,并将NFS共享挂到这儿。

mount -o rw,nolock 192.168.14.3:/var/cache/pacman/pkg /var/cache/pacman/pkg

如果你希望在客户端重启时自动挂载,请将下行加入/etc/fstab

192.168.14.3:/var/cache/pacman/pkg /var/cache/pacman/pkg nfs rw,nolock

运行"mount -a",运行"df"检查挂载情况。

删除客户端上已下载的所有软件包,并将/var/cache/pacman/pkgorg改名为/var/cache/pacman/pkg(又改回来)

编辑/etc/pacman.conf,如下:

{current}

Server = file:///var/cache/pacman/pkg

** and after **

{extra}

Server = file:///var/cache/pacman/pkg

3. 将本地软件包库与官方同步

"alsync"将连接、登录并更新本地的NFS软件包数据库

pacman -S openssl

pacman -S wget

建立/bin/alsync并加入以下几行:

***** content of alsync *********************

cd /var/cache/pacman/pkg

wget -N ftp://ftp.archlinux.org/current/*.db.*

wget -N ftp://ftp.archlinux.org/extra/*.db.*

********* end ******************************

然后,改变权限

chmod 777 /bin/alsync

并将此文件拷贝到所有客户端

在第一个客户端上以root身份登录,并运行:

alsync

pacman -Sy

pacman -S new-pkgname

在第二个客户端上运行:

pacman -Sy

pacman -S new-pkgname

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航