`
su1216
  • 浏览: 671897 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
Group-logo
深入入门正则表达式(jav...
浏览量:71996
E60283d7-4822-3dfb-9de4-f2377e30189c
android手机的安全问...
浏览量:128906
社区版块
存档分类
最新评论

《Linux命令行与shell脚本编程大全》 第八章 学习笔记

阅读更多

 

第一部分:Linux命令行
《Linux命令行与shell脚本编程大全》 第一章:初识Linux shell
《Linux命令行与shell脚本编程大全》 第二章:走进shell
《Linux命令行与shell脚本编程大全》 第三章:基本的bash shell命令
《Linux命令行与shell脚本编程大全》 第四章:更多的bash shell命令
《Linux命令行与shell脚本编程大全》 第五章:使用Linux环境变量
《Linux命令行与shell脚本编程大全》 第六章:理解Linux文件权限
《Linux命令行与shell脚本编程大全》 第七章:管理文件系统
《Linux命令行与shell脚本编程大全》 第八章:安装软件程序
《Linux命令行与shell脚本编程大全》 第九章:使用编辑器

第二部分:shell脚本编程基础
《Linux命令行与shell脚本编程大全》 第十章:构建基本脚本
《Linux命令行与shell脚本编程大全》 第十一章:使用结构化命令
《Linux命令行与shell脚本编程大全》 第十二章:更多的结构化命令
《Linux命令行与shell脚本编程大全》 第十三章:处理用户输入
《Linux命令行与shell脚本编程大全》 第十四章:呈现数据
《Linux命令行与shell脚本编程大全》 第十五章:控制脚本

第三部分:高级shell编程
《Linux命令行与shell脚本编程大全》 第十六章:创建函数
《Linux命令行与shell脚本编程大全》 第十七章:图形化桌面上的脚本编程
《Linux命令行与shell脚本编程大全》 第十八章:初识sed和gawk
《Linux命令行与shell脚本编程大全》 第十九章:正则表达式
《Linux命令行与shell脚本编程大全》 第二十章:sed进阶
《Linux命令行与shell脚本编程大全》 第二十一章:gawk进阶
《Linux命令行与shell脚本编程大全》 第二十二章:使用其他shell

第四部分:高级shell脚本编程主题
《Linux命令行与shell脚本编程大全》 第二十三章:使用数据库
《Linux命令行与shell脚本编程大全》 第二十四章:使用Web
《Linux命令行与shell脚本编程大全》 第二十五章:使用E-mail
《Linux命令行与shell脚本编程大全》 第二十六章:编写脚本实用工具
《Linux命令行与shell脚本编程大全》 第二十七章:shell脚本编程进阶

 

第八章:安装软件程序

 

包管理基础

每个主要的Linux发行版都利用包管理系统的某些形式来控制安装软件应用和库

PMS(Package Manager System)利用一个数据库来记录:

1.Linux系统上已安装了什么软件包

2.每个包安装了什么文件

3.每个已安装软件包的版本

软件包存储在服务器上,这些服务器称为库(repository)

PMS会检查包的依赖关系,并在安装要求的包之前提供安装所有额外的软件包

PMS并没有一个标准的工具。基于Debian的发行版,比如Ubuntu和Linux Mint,在他们PMS工具的底层用的是dpkg。基于Red Hat的发行版,比如Fedora、openSUSE和Mandriva,在他们PMS工具的底层用的是rpm

 

基于Debian的系统

用aptitude管理软件包

aptitude命令会进入全屏模式,q=退出

如果想查看系统上一个已经安装了的软件包的信息,可以用下述命令

aptitude show package_name

注意:aptitude show命令并不表明这个软件包已经在系统上安装了,它只是从软件库中得到详细的软件包信息

dpkg -L package_name 查看与此软件包关联的所有文件

dpkg --search absolute_file_name :查看某个特定文件属于哪个软件包,必须用绝对路径

 

用aptitude安装软件包

aptitude search package_name :搜索特定软件包

 

aptitude install package_name :安装特定软件包

 

用aptitude更新软件

aptitude safe-upgrade :将所有已安装的包更新到软件库中的最新版本(检查依赖关系)

 

aptitude full-upgradeaptitude dist-upgrade 不会检查其中依赖关系

 

用aptitude卸载软件

aptitude purge package_name :卸载此软件包以及关联的软件包

 

aptitude remove package_name :只卸载此软件包

 

aptitude库

库位置存储在文件/etc/apt/source.list中

source.list中条目格式

deb (or deb-src) address distribution_name package_type_list

deb :编译后程序的源

deb-src :源代码的源

address :软件库的web地址

distribution_name :这个特定软件库的发行版版本的名称

package_type_list :库里面有什么类型的包

 

基于Red Hat的系统

列出已安装的软件包

yum list installed

Mandriva和openSUSE安装方法

描述 前端工具 命令
Mandriva urpm rpm -qa > installed_software
openSUSE zypper zypper search -I > installed_software

 

 

查看特定软件包信息

yum list xterm

yum list installed xterm

Mandriva和openSUSE查看方法

信息类型 前端工具 命令
包信息 urpm urpmq -i package_name
是否安装 urpm rpm -q package_name
包信息 zypper zypper search -s package_name
是否安装 zypper 同样命令,在Status列查找一个i

 

 

yum providers file_name   :查看某个特定文件属于哪个软件包

yum会从两个库中查找:fedora和installed

 

 

用yum安装软件

yum install package_name (自动查找依赖关系)

本地安装(local installation)

yum localinstall package_name .rpm

 

用yum更新软件

yum list updates:列出所有针对已安装包的可用更新

 

yum update package_name :更新指定包

 

yum update:更新上述列表中所有软件包

Mandriva和openSUSE更新软件包方法

前端工具 命令
urpm urpm --auto-update --update
zypper zypper update

 

用yum卸载软件

yum remove package_name :只删除软件包,保留配置文件和数据文件

yum erase package_name :删除软件包及其所有文件

Mandriva和openSUSE卸载软件包方法

前端工具 命令
urpm urpme package_name
zypper zypper remove package_name

 

处理损坏的包依赖关系

有时在安装多个软件包时,某个包的软件依赖关系可能会被另一个包的安装覆盖掉。称为损坏的包依赖关系(broken dependency)

首先尝试

yum clean all

然后试着用yum的update选项

如果没有解决问题,再尝试

yum deplist package_name

如果还没解决,最后尝试

yum update --skip-broken

--skip-broken允许忽略关系损坏的包而更新其他包

Mandriva和openSUSE修复损坏依赖关系方法

前端工具 命令
urpm urpmi -clean
zypper zypper verify

 

yum软件库

位置:/etc/yum.repos.d

yum repolist:查看正在从什么库获得软件

Mandriva和openSUSE软件库

动作 前端工具 命令
显示库 urpm urpmq --list-media
添加库 urpm urpmi.addmedia path_name
显示库 zypper zypper repos
添加库 zypper zypper addrepo path_name

 

从源码安装

下载压缩包,解压后安装README或AAAREADME文件中建议的方式操作即可

最后,用make编译源码,然后make install安装

 

 

 

转贴请保留以下链接

本人blog地址

http://su1216.iteye.com/

http://blog.csdn.net/su1216/

 

1
10
分享到:
评论

相关推荐

    unix shell编程第三版笔记

    通过深入学习"Unix Shell编程第三版笔记",你将能够编写出高效的自动化脚本,提高工作效率,解决日常的系统管理和开发问题。同时,对Unix Shell的熟练掌握也是成为高级系统管理员或全栈开发者的必备技能之一。

    韩顺平linux学习笔记,很不错的.pdf

    学习Linux的推荐书籍有《鸟哥的Linux私房菜》、《Linux命令行与shell脚本编程大全》、《Linux系统管理技术手册》等,这些书籍可以帮助读者深入理解Linux系统,并提供丰富的实践指导。 6. Linux视频教程第1讲:基础...

    Linux学习笔记.docx

    Linux 学习笔记是 Linux 学习的详细笔记整理,分九章,涵盖了 vim 和 vi 编辑器、实用指令、组管理和权限管理、crond 任务调度、Linux 磁盘分区挂载、网络配置、进程管理、服务管理、shell 编程等内容。 1. vi 和 ...

    总结搜集的shell脚本学习笔记(完结篇).pdf

    ### Shell脚本编程知识点概述 #### 一、预备知识与基本概念 在开始Shell脚本文档的学习之前,首先需要理解Shell脚本的基本概念及其在Linux/Unix环境中的作用。Shell是一种命令行解释器,用于执行用户输入的命令,...

    Linux学习笔记.pdf,linux详解,LINUX

    八、shell脚本编程 编写shell脚本可以自动化重复任务,例如: - 变量、运算符和条件判断。 - 函数定义。 - 循环结构。 - 输入输出重定向。 九、系统管理 - sysctl:调整系统内核参数。 - logrotate:日志文件轮换。...

    linux知识学习笔记

    ### Linux知识学习笔记 #### 一、Linux操作系统概述 Linux是一种开源、免费的类Unix操作系统,自1991年由芬兰学生Linus Torvalds创建以来,迅速在全球范围内获得了广泛的关注和支持。它不仅具备强大的稳定性,还...

    linux学习入门笔记

    6. **Shell脚本编程**:Bash Shell是Linux最常用的Shell,学习编写简单的Shell脚本可以帮助自动化日常任务。了解变量、条件语句、循环结构以及函数的使用。 7. **系统服务与初始化系统**:了解Systemd,它是现代...

    shell学习笔记.docx

    Shell编程是Linux操作系统中的一种命令解释器,它允许用户通过命令行与系统进行交互,执行各种操作。在《shell编程从入门到精通》一书中,作者张昊详细讲解了shell编程的基础知识。以下是对该书内容的部分总结: 1....

    Unix-Linux编程实践教程

    1. **shell编程**:讲解Bash shell和其他Unix shell的基本语法,包括命令行参数、环境变量、重定向、管道和脚本编写等。 2. **进程管理**:介绍进程创建(fork和exec)和进程通信(管道、套接字、信号、共享内存、...

    Linux基础.zip

    8. **Linux必学的重要命令教程**:Linux命令行是日常操作的核心,这份教程可能包含如ls、cd、mkdir、cp、mv、grep、sed、awk等常用命令的详解和实例,帮助初学者快速掌握Linux基本操作。 通过这些资源的学习,你...

    学校Linux上课笔记:shell和语法,和notability一起听录音加mindmaster一起总结.pdf

    Shell是Linux操作系统中的一个命令解释器,同时也是一种编程语言,它使得用户可以通过命令行与系统进行交互。在Linux课程中,我们学习了shell的不同启动方式、shell脚本的基本元素以及变量和运算符的使用。 1. **...

    2.蛤蟆PYTHON脚本学习笔记二基本命令畅玩.rar

    "蛤蟆PYTHON脚本学习笔记二基本命令畅玩"这个压缩包文件,显然是一个关于Python编程初学者的学习资料,旨在帮助读者掌握Python的基础命令。在这个笔记中,我们可以期待涵盖以下关键知识点: 1. **Python安装**:...

    Python3基础学习笔记.pdf

    而脚本文件则是将代码写入一个以.py结尾的文件中,可以通过命令行直接执行这些文件,类似于Shell脚本。此外,还可以设置脚本文件为可执行文件,通过在文件顶部指定Python解释器路径来实现。 6. Python文件操作和...

    嵌入式Linux 入门笔记Linux.pdf

    - **Shell脚本**:了解如何编写简单的Shell脚本来自动化任务。 **2. Minicom的使用** - **串口通信**:Minicom是一个用于串行通信的终端仿真器,适用于与开发板或其他串行设备进行通信。 - **配置设置**:学会如何...

    尚观Linux课程培训资料

    9. **shell脚本编程**:初步接触bash shell脚本,编写简单的自动化任务脚本,提高工作效率。 10. **系统日志与监控**:了解Linux系统日志的重要性,学习查看和分析日志文件,使用`dmesg`、`top`等工具监控系统性能...

    Python基础学习笔记

    ### Python基础学习笔记知识点梳理 #### 一、Python 基础安装与配置 - **安装**: Python 是一种易于学习且能培养良好编程习惯的语言。官方提供了安装包,下载并安装后,需设置环境变量以便在任何目录下都能运行 ...

    第11章 Linux操作系统基础-教程与笔记习题

    以下是对"第11章 Linux操作系统基础"的主要知识点的详细阐述。 一、Linux操作系统简介 Linux是基于Unix的操作系统,由林纳斯·托瓦兹于1991年创建。它的内核是开源的,允许全球开发者对其进行修改和优化。Linux系统...

    学习笔记

    以上只是Shell脚本编程的一些基本概念,实际应用中还有更多高级特性,如子Shell、信号处理、函数参数、管道等,这些都可能包含在"学习笔记"的深入部分。通过学习和实践,你可以编写出自动化任务、系统管理脚本,甚至...

    Python笔记.zip

    以下是一份可能的Python编程学习笔记概述: 1. **Python简介**: Python是一种高级、解释型、交互式和面向对象的脚本语言。它以其简洁、易读的语法而闻名,是初学者入门编程的理想选择。 2. **安装与环境配置**:...

Global site tag (gtag.js) - Google Analytics