首页 >>  正文

linux系统一般用来干嘛

来源:baiyundou.net   日期:2024-08-03

作者:yasden

结论:sudo apt --fix-broken install命令可以解决很多依赖之间大批量冲突的问题。

特别提醒:采用“sudo dpkg -i 本地deb文件”来安装deb应用程序,很大概率会产生依赖冲突,因为dpkg是不会自动解决依赖冲突的。强烈建议用“sudo apt-get install 本地deb文件”来安装deb程序,这样apt会自动解决依赖冲突。注意:“sudo apt-get install 本地deb文件”来安装deb的时候,必须指明本地deb文件的路径,如果不指明文件路径,apt会在“源”上去找该文件。

最近发现,我的linux系统的依赖关系有点乱,因为之前我强制安装了一些包,导致出现一些冲突。

用sudo apt-get upgrade命令可以看到系统上的依赖之间的冲突(见下图):

即使删除个东西,都会提示这些冲突:

我研究了一下解决方法。

第一步、如果修改了/etc/apt/sources.list文件,最好恢复成原来的默认文件。

用下面的命令将/etc/apt/sources.list文件恢复成系统初始文件,这一步的目的是保证将apt-get的源恢复成系统默认的,假如你添加过什么其他源,都要删除掉,避免干扰(高手如果懂原理,可以不用做这一步):

sudo vi /etc/apt/sources.list

第二步、系统提示什么冲突,就解决那个冲突的包(这个方法采用单个包手动解决的方式,适合只有1-2个包的情况,如果出现大批量冲突则要换其他方法来解决)

例如:上面的信息提示下面的信息(见上图):

依赖: gcc-12-base (= 12.3.0-1ubuntu1~22.04)

先到ubuntu.pkgs官网下载gcc-12-base_12.3.0-1ubuntu1~22.04_amd64.deb文件,然后用下面的命令安装gcc-12-base_12.3.0-1ubuntu1~22.04_amd64.deb:

sudo apt-get install ./gcc-12-base_12.3.0-1ubuntu1~22.04_amd64.deb

这时候,仍然显示报错(见下图):

按照提示,改用下面的命令来安装:

sudo apt --fix-broken install ./gcc-12-base_12.3.0-1ubuntu1~22.04_amd64.deb

这时候不报错了(见下图):

执行sudo apt --fix-broken install ./gcc-12-base_12.3.0-1ubuntu1~22.04_amd64.deb这条命令的目的是: apt --fix-broken install 会自动从第一步提到的/etc/apt/sources.list这个apt源里面自动查找并修复冲突的依赖,执行之后,会提示下面的信息,也就是提示你,这些冲突的依赖会自动修复(见上图的截图,我将该命令修复的依赖粘贴到下面,给大家仔细看):

将会同时安装下列软件:

lib32gcc-s1 lib32stdc++6 libc6 libc6-dev-i386 libc6-i386 libclang-14-dev libclang-common-14-dev libclang1-14 libllvm14 libobjc4 libstdc++-11-dev

建议安装:

glibc-doc libstdc++-11-doc

推荐安装:

libnss-nis libnss-nisplus gcc-multilib

下列【新】软件包将被安装:

lib32stdc++6

下列软件包将被升级:

gcc-12-base lib32gcc-s1 libc6 libc6-dev-i386 libc6-i386 libclang-14-dev libclang-common-14-dev libclang1-14 libllvm14 libobjc4 libstdc++-11-dev

特别提醒

sudo apt --fix-broken install ./gcc-12-base_12.3.0-1ubuntu1~22.04_amd64.deb这条命令需要指定gcc-12-base_12.3.0-1ubuntu1~22.04_amd64.deb文件的目录(相对目录或者绝对目录都行,我是cd到该文件的下载目录下,所以我使用的是./这个相对目录,你也可以使用绝对目录),如果你不指定gcc-12-base_12.3.0-1ubuntu1~22.04_amd64.deb文件路径的话,apt会傻傻的去apt源里面找,而且apt肯定找不到这个gcc-12-base_12.3.0-1ubuntu1~22.04_amd64.deb文件,如果它能智能到找到并安装“源“里面的这个gcc-12-base_12.3.0-1ubuntu1~22.04_amd64.deb文件,上面我执行sudo apt-get upgrade就不会报缺少gcc-12-base的错了。

如果执行sudo apt --fix-broken install ./gcc-12-base_12.3.0-1ubuntu1~22.04_amd64.deb命令提示下面的报错信息,也就是提示你将要安装的gcc-12-base和系统已经安装的gcc-12-base不兼容:

sudo dpkg --force-overwrite -i 命令强制安装某个包

用下面的命令来强制安装该包(注意:使用该命令有可能导致系统故障,除非你清楚知道自己在干嘛,不然不要轻易强制安装执行,下面的命令使用前要千万小心):

sudo dpkg --force-overwrite -i gcc-12-base_12.3.0-1ubuntu1~22.04_amd64.deb

上面的命令执行完毕后,再用sudo apt-get upgrade查看一下,冲突的依赖减少到只有下面的3个了:

采用sudo apt --fix-broken install 命令解决大批量冲突的情况

这条命令可以解决很多大批量依赖之间冲突的问题:

查看文章精彩评论,请前往什么值得买进行阅读互动

","gnid":"91ddaf20b8e94b14b","img_data":[{"flag":2,"img":[{"desc":"","height":785,"title":"","url":"https://p0.ssl.img.360kuai.com/t0143144d9888ec0898.jpg","width":1025},{"desc":"","height":785,"title":"","url":"https://p0.ssl.img.360kuai.com/t01835ffda699e5befd.jpg","width":1025},{"desc":"","height":"554","title":"","url":"https://p0.ssl.img.360kuai.com/t01aec45406f9cd04a7.jpg","width":"1022"},{"desc":"","height":529,"title":"","url":"https://p0.ssl.img.360kuai.com/t01712aa81b5155a782.jpg","width":1042},{"desc":"","height":"458","title":"","url":"https://p0.ssl.img.360kuai.com/t01fa74e2527b7ad9b5.jpg","width":"1080"},{"desc":"","height":"229","title":"","url":"https://p0.ssl.img.360kuai.com/t01211ca7f85fbe8563.jpg","width":"1080"},{"desc":"","height":899,"title":"","url":"https://p0.ssl.img.360kuai.com/t010c958ffce75bf738.jpg","width":1080}]}],"original":0,"pat":"art_src_1,fts0,sts0","powerby":"pika","pub_time":1698931229000,"pure":"","rawurl":"http://zm.news.so.com/36dfa396936281347346560673eb5c00","redirect":0,"rptid":"4d1c3d2c4cebed49","rss_ext":[],"s":"t","src":"什么值得买","tag":[],"title":"Linux系统修复依赖冲突的方法

赵卫畏2079在企业内部,Linux一般用来做什么服务器 -
寇俗纨13155061724 ______ Linux主要被用作服务器的操作系统,但因它的廉价、灵活性及Unix背景使得它很合适作更广泛的应用.传统上有以Linux为基础的“LAMP(Linux, Apache, MySQL, Perl/PHP/Python的组合)”经典技术组合,提供了包括操作系统、数据库、网站服务器、动态网页的一整套网站架设支持.而面向更大规模级别的领域中,如数据库中的Oracle、DB2、PostgreSQL,以及用于Apache的Tomcat JSP等都已经在Linux上有了很好的应用样本.除了已在开发者群体中广泛流行,它亦是现时提供网站务供应商最常使用的平台.

赵卫畏2079LINUX 系统一般都干什么用呀? 支持的软件为什么这么少呀? -
寇俗纨13155061724 ______ Linux一般是用来做服务用的,在国外也很多用来做桌面系统,因为Linux免费或价格便宜,而在国外盗版不像在中国这样毫无风险,所以很多人用linux做桌面系统.因为linux是开源系统,linux支持的软件并不少,而且都是免费的! 只是安装使用麻烦,很多都要自己编译安装.即使是最简单的rpm安装方式很多人都不会!也因为国人用得少,所以下载linux软件的网站也不多.所以会觉得linux软件少.

赵卫畏2079什么是linux 操作系统,它应用 在哪 个领域?
寇俗纨13155061724 ______ linux操作系统是命令行的操作系统,安装性高稳定性好,一般用于服务器,私人用的操作系统也有,只是很少人去用,不过这种系统蛮有趣的,虽然麻烦了点但用起来很不错

赵卫畏2079linux都能做什么用?比如我的私人电脑装个linux,有什么普通电脑能做的linux不能做?或者是linux能做 -
寇俗纨13155061724 ______ 最根本的是linux和windows是两个完全不同的操作系统类.windows是微软开发的系统,包含了win98,win2000,win2003,win2006,win2008,winxp,win7等多个发行版本,windows的操作更倾向于图形化,不管是作为服务器还是pc客户端,操作起...

赵卫畏2079基于linux内核的系统究竟能够做什么事?大家解我苦闷啊!
寇俗纨13155061724 ______ 基于linux内核的系统,和windows之类系统一样都能满足日常办公娱乐需求,只是相对于微软windows应用范围比较狭小.运行的软件比较少.因为现在主流的平台是windows的.软件支持自然以windows平台为主.当然一些主流软件都已经支...

赵卫畏2079linux系统有什么用?
寇俗纨13155061724 ______ [:01:]linux主要用在服务器上,我怀疑卡饭也是,还有一些嵌入式系统也是linux

赵卫畏2079请问虚拟机linux系统可以做哪些有意思的事情?
寇俗纨13155061724 ______ 准确的说来应该是linux系统有什么意思的事情? 应为你平常习惯用XP等等系统用来娱乐工作,但是你又要用Linux做开发等等用途,所以你只能用虚拟机来转载一个Linux系统来供你做开发的作用,其他的时间你就可以在自己的XP里面操作比如上网,聊Q,游戏等等.Linux主要是用来做后台(服务器)或者开发,应为Linux是免费的,开源的.还有些什么有意思的 你自己去玩玩就能体会了.... 呵呵

赵卫畏2079LINUX是什么东东?用来干吗的啊? -
寇俗纨13155061724 ______ Linux操作系统,是一种计算机操作系统.Linux操作系统的内核的名字也是“Linux”.Linux操作系统也是自由软件和开放源代码发展中最著名的例子. 严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整...

赵卫畏2079linux操作系统有什么用处? -
寇俗纨13155061724 ______ windows 操作系统有什么用处?都是操作系统.就像手机,Nokia 的S60 、symbian 和iphone 的iOS ,微软的 Windows Mobile/Phone ,Google 的Android 一样,都是手机上面的系统,不...

赵卫畏2079LINUX UNIX 主要是用于什么用途的系统 -
寇俗纨13155061724 ______ unix是大型机用的,主要特点是支持多用户同时操作系统,和共享系统资源.unix是一般人接触不到的,一般大型公司才用到.linux是开放源代码,可以说是unix的简化版.它们多用作服务器操作系统.但现在linux的易用性和windows差不多了.你可以找个linux的入门教程,里面有详细的介绍linux的发展,及linux跟unix的渊源.

(编辑:自媒体)
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图 @ 白云都 2024