怎样为Ubuntu系统设置软件源

怎样为Ubuntu系统设置软件源,第1张

方法/步骤

打开Ubuntu软件中心,点击“编辑”,再点击“软件源”

点击图中的“下载自”,选择“其它站点”,

选择“最佳服务器”,然后电脑就会进行一些测试,然后电脑会根据你的网络状况选择最好的服务器,然后选择确认,系统会让你输入密码确认

然后,你需要打开终端,输入sudo apt-get update 这个我就不演示了,因为我的系统已经改过了软件源。打开终端的方式是 ctrl+alt+T

在Ubuntu系统中,更新镜像源可以提高软件更新和下载的速度,并且能够让用户选择更靠近自己位置的镜像源。下面是一些简单的步骤:

1. 打开Ubuntu的终端:按`Ctrl + Alt + T`组合键可以快速打开终端。

2. 执行`sudo apt-get install software-properties-common`命令:安装支持添加和删除软件源的通用包。

3. 执行`sudo apt-add-repository`命令,添加镜像源,可通过各种镜像源的官方网站获取添加命令,常见的如阿里云、网易、清华等。

例如,添加清华大学的Ubuntu镜像源:

sudo add-apt-repository "deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ $(lsb_release -c | awk '{print $2}') main restricted universe multiverse"

```

4. 执行`sudo apt-get update`命令:更新本地apt软件包索引,它会从更新的镜像源中更新可用的包的列表。

5. 最后,执行`sudo apt-get upgrade`命令,更新系统到最新状态。

注意:通过修改镜像源进行更新时,需要选择稳定的源,以免造成系统的异常。

用dpkg-source -x

foo.dsc从foo.orig.gz和foo.diff.gz创建工作目录foo:一份发行版中立的源码目录,加上一个debian目录以及目录下的meta文件,就构成了一份可以生成二进制deb包的源码工作目录。其实从apt-get

source抓下来的目录,已经是通过dpkg-source -x解压过的了。dpkg-source

-x所做的主要事情就是1.解压;2.把foo.diff.gz里的patch打到原始文件上。生成的foo目录下的源文件,都已经是打过deb源码包里的patch了的。

在foo目录下,执行dpkg-buildpackage -us

-uc构建包。-us和-uc参数是不做签名,适合于本地构建本地使用的情况。这个命令的输出有两个,一个是二进制deb包,另一个是源码包,为什么这里还要生成源码包?因为你可能改动某些文件,那么会生成新的diff.gz来记录所有你针对原始源码的改动,不管发布还是保存更改都更方便,下一次你只需要在生成的新的.dsc文件上执行dpkg-source -x就可以产生一个一模一样的源码了。如果你什么都没改动,那么新产生的源码包同你构建所来源的源码包是一样的。你也可以用参数-b和-S来控制这次构建只产生二进制包或者只产生源码包。

两个最重要的meta文件,debian/control和debian/rules。control文件决定了哪些二进制包将从这份源码目录中构建,一个源码目录往往是好几个二进制包的输入源。你不想生成哪个屏蔽它就行。二进制包的运行时依赖关系也在包的声明中可见,并且control文件也声明了构建过程中的依赖,不过可以给dpkg-buildpackage传-d参数来忽略构建依赖。

debian/rules文件其实就是个Makefile,你可以执行make -f debian/rules target来单独执行某个目标。rules文件里基本上都是对debhelper脚本函数的调用,像是dh_*这样的函数,它们负责大部分的构建过程。常用的clean, install目标在rules文件中也有,有些基于源码包的Makefile上所做的事情如make clean需要通过make -f debian/rules clean来代替。

和传统意义的Make过程有点不一样的就是,默认状态下,每次dpkg-buildpackage,其实都是把从configure.ac生成configure脚本,到生成Makefile,到构建source,到安装binary都做一遍,哪怕你并没有改过configure.ac,或者改过源代码.c文件,假如构建失败了,就需要尝试改动源代码重新构建,有时候需要反复尝试这个过程直到构建成功,如果包很大的话那需要花费的时间就很长,这时传入-nc参数可以让dpkg-buildpackage保留当前的构建结果,就像传统的make一样只会从出错的地方重新开始。当然,当对源代码的改动终止后,最后还是需要再执行一遍不带-nc参数的命令”dpkg-buildpackage -us -uc”来重新完全构建一遍,否则在生成源码包时可能会出错。

dpkg-buildpackage不用担心它会自动改变你的源文件(即通过dpkg-source

-x产生的文件),当然前提是你确实改动的是”源”文件,比如是configura.ac而不是configure,是dkms.conf.in而不是dkms.conf。

构建软件时做得最多的事就是根据自己系统的需求调整./configure参数了吧,比如–enable–xxx或者–disable-xxx,在rules文件中,通过带override前缀的target可以起到为默认的target定制参数的目的,如override_dh_auto_xconfigure:

对源码包有修改最好通过dch -i来生成一个新的changelog文件,每个change item的title部分都是表示这次change的最新版本号,dpkg-buildpackage的输出二进制包的版本号其实就是从changelog里提取的(不是写在control文件里的)。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11871354.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-19
下一篇2023-05-19

发表评论

登录后才能评论

评论列表(0条)

    保存