创建本地Arch Linux存储库

资料库

如果您属于通常拥有良好Internet连接并直接从以下版本库更新的用户: Arch Linux,本文不适合您,但适合带宽方面有限制的人。

作为一个例子,我提出了自己的观点。 当然,工作时间的互联网连接要比晚上(每个人都睡觉)时慢得多。 我要做的是去El Palacio Central de Computing,那里有更好的带宽,并且更新了一些存储库,然后我复制了Arch的镜像。

这样,我只需要更新一点点晚上就会到来的软件包,这比一次丢弃全部45GB的要好得多。 但是,当然,我该如何更新?

好吧,基本上有两种非常简单的方法可以做到这一点, 都发布在Wiki上 de Arch Linux.

使用Rsync

如果我们拥有 Rsync的,我们可以在复制以下内容的镜像时创建自己的脚本,该脚本包含或排除某些软件包 Arch Linux。 如果您希望它更简单,则只需使用以下脚本:

#!/ bin / bash ########################################### ############################################### ### ###由于所需的带宽,通常不赞成创建本地镜像。 ###替代品之一可能会满足您的需求。 ###记住:### *带宽对于镜像不是免费的。 他们必须为他们提供的所有数据付费### =>尽管您要支付ISP ### =>但这仍然适用。有许多将要下载的软件包,您可能永远不会使用### =>镜像运算符将非常希望您仅下载所需的软件包### *确实,请查看此页面上的替代方法:### https://wiki.archlinux.org/index.php?title=Local_Mirror ###如果您是绝对可以肯定的是,本地镜像是唯一明智的解决方案,那么此###脚本将带您逐步创建它。 ############################################### ##############################################配置源='rsync://mirror.example.com/archlinux'DEST ='/ home / user / archlinux'BW_LIMIT ='500'REPOS ='core extra'RSYNC_OPTS =“-rtlHq --delete-after --delay-updates --copy-links --safe-links --max-delete = 1000 --bwlimit = $ {BW_LIMIT} --delete-excluded --exclude =。* --log-file = / home / user / archlinux / archlinux .log“ LCK_FLE ='/ var / run / repo-sync.lck'#如果[-e” $ LCK_FLE“]确保只有1个实例在运行; 然后OTHER_PID =`/ bin / cat $ LCK_FLE` echo“另一个实例正在运行:$ OTHER_PID”退出1 fi echo $$>“ $ LCK_FLE”用于$ REPOS中的REPO; 执行echo“正在同步$ REPO” / usr / bin / rsync $ RSYNC_OPTS $ {源} / $ {REPO} $ {目的}完成#清理/ bin / rm -f“ $ LCK_FLE”退出0

在这里,我们唯一需要修改的是变量:

源='rsync://mirror.example.com/archlinux'DEST ='/ home / user / archlinux'

好吧,我们必须放置要从哪个镜像连接以及要复制到哪个文件夹。

使用LFTP

如果我们不能使用 Rsync的,或者是因为我们ISP管理员的HP已将其阻止,或者是由于其他原因,在这种情况下始终有第二种选择 ftp.

在Arch Wiki上,我们有以下脚本:

#!/ usr / bin / lftp -f lcd / local / path /至/您的/镜像打开ftp.archlinux.org(或您喜欢的任何镜像)#使用'cd'切换到镜像上的正确目录,如有必要。 mirror -cve -x'。* i686。*'core&mirror -cve -x'。* i686。*'extra&mirror -cve -x'。* i686。*'community&mirror -cve -x'。* i686。*'multilib和LCD池cd池镜像-cve -x'。* i686。*'社区和镜像-cve -x'。* i686。*'软件包和

尽管特别是当我使用LFTP时,我还有另一个变体。 我要做的是将以下内容放在.txt文件中:

lftp -e“ mirror --delete --only-newer / archlinux / extra / os / x86_64 // home / user / archlinux / extra / os / x86_64 /” http://mirror.us.leaseweb.net/ lftp- e“ mirror --delete --only-newer / archlinux / community / os / x86_64 // home / user / archlinux / community / os / x86_64 /” http://mirror.us.leaseweb.net/ lftp -e“ mirror --delete --only-newer / archlinux / multilib-staging / os / x86_64 // home / user / archlinux / multilib-staging / os / x86_64 /“ http://mirror.us.leaseweb.net/ lftp- e“ mirror --delete --only-newer / archlinux / core / os / x86_64 // home / user / archlinux / core / os / x86_64 /” http://mirror.us.leaseweb.net/ lftp -e“ mirror --delete --only-newer / archlinux / extra / os / i686 // home / user / archlinux / extra / os / i686 /“ http://mirror.us.leaseweb.net/ lftp -e”镜像- -删除--only-newer / archlinux /社区/ os / i686 // home /用户/ archlinux /社区/os/i686/"http://mirror.us.leaseweb.net/ lftp -e“镜像-删除--only-newer / archlinux / multilib-staging / os / i686 // home / user / archlinux / multilib-staging / os / i686 /“ http:// mirro r.us.leaseweb.net/ lftp -e“ mirror --delete --only-newer / archlinux / core / os / i686 // home / user / archlinux / core / os / i686 /” http://镜像。 us.leaseweb.net/

然后我运行:

lftp -f /ruta/archivo.txt

这就是我更新本地存储库的方式...


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责数据:MiguelÁngelGatón
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。

  1.   灵狐

    非常有用和实用。

  2.   可可里奥

    很好的事实是,我一直想知道如何完成此任务,但我从未打算找出如何完成此任务,希望您发表了如何将存储库更新程序指向loca磁盘,谢谢。

    1.    凯撒大帝

      吃豆人配置文件

      [拱]
      Siglevel =需要包装
      服务器=文件:/// mnt / repo / arch

    2.    拉夫

      乌夫,我知道我还有剩余。

  3.   卡洛斯

    不久前,我还需要执行此操作,因为我必须重新安装整个Archlinux系统,并且由于连接受限,我不想再次下载所有的gnome和应用程序。 我不知道您是否可以在这里离开另一个网站,但是如果有人感兴趣的话 http://www.kr105.shekalug.org/2011/10/16/crear-un-repositorio-local-en-archlinux/ 🙂

  4.   另一个dl用户

    整个ArchLinux存储库有多少GB?

    1.    dd

      对于40GB的设备,我想知道的是我们只能复制64bit的软件包并丢弃i686

  5.   阿撒泻勒

    Arch…(叹气)有一天,当我有自己的计算机时,我将尝试安装它。

  6.   埃利奥时间3000

    我希望有一个LTS版本的Arch,并使用AUR作为反向端口。

    1.    自由bs迪克

      好吧,我不知道。。。也许在猿猴的扁平动物中

      1.    埃利奥时间3000

        因为我意识到没有,所以我将致力于利用Slackware并更多地了解OpenBSD。

    2.    饼干

      哈哈,那将是Arch所代表的完全相反。

  7.   像谁

    就我而言,总的来说,无论是在正式回购协议中还是在AUR中,我总能找到我想要的软件包,尽管如果不是,我的个人回执绝对不会令我失望。

    显然,Elav感染了Arch +版本炎病毒😛

    1.    像谁

      哇,所以Steam浏览器使用WebKit😮
      *从我的牌坊玩Portal *

  8.   新诺93

    elav,因为他们正在发布arto de arch,您能否发布一个帖子,离开美丽的KDE,希望并没有AUR软件包而出...

    1.    拉夫

      要使KDE变得美观,您不需要AUR,只需kde-look.org和devianart.com即可找到等离子,Aurorae,QtCurve,Icons等的良好主题。 无论如何,我将其记录在待办事项中。

  9.   铁托

    你好我已经访问了这个博客一个月,这是我的第一条评论。

    对于Debian和Ubuntu这样的存储库,有一个软件包:debmirror。 安装完成后,您必须对其进行配置以指示要同步的存储库,体系结构等。 Debmirror是使用rsync的perl脚本。

    多年前,我是计算机科学模块的教授,除其他事项外,我还必须教如何安装操作系统。 我的Debian选择。 我们使用了netinst CD。 由于必须为每个学生下载所有软件包,因此其中有20个软件包,并且互联网连接很差,运行不正常。 最初,我使用代理,但并没有太大改进。 因此,我决定安装一台小型服务器,在其中安装了我使用的存储库。 这样,安装就可以顺利进行,甚至达到网络提供的100 Mbit / s的峰值。 学生必须指出存储库在教室服务器上,并通过FTP对其进行访问。 Debian Lenny存储库的大小刚好超过20 GB,他每周(星期一和星期四)2:00 AM同步两次。

    绍多斯

  10.   狮子座

    很好的指南。 诚然,起初Arch似乎太复杂了,但是由于有这样的指导,没有什么不可能的。

  11.   cat_sk8

    谢谢

  12.   霍尔迪

    嗨..我的问题也是互联网速度..但是我使用Ubuntu ..除了Ubuntu可以做同样的事情吗?
    谢谢

  13.   博西托7

    感谢Elav,我们也在这里使用rsync,感谢您向我们展示了圣地亚哥的salu2。