linux 基础
一、网络基础
1、ifup 网卡名称;ifdown 网卡名称;ifconfig 网卡名称 ip 子网 其修改只是临时生效,一旦关机或重启命令失效,需要修改配置文件永久生效。
2、网卡配置文件路径:/ect/sysconfig/network-scripts/
3、重新启动服务命令:systemctl restart 服务名称
二、rpm包管理
1、rpm [参数] [包全名或者包名或文件名称等]
-ivh:安装显示安装进度--install--verbose--hash
-Uvh:升级软件包--Update;
-qpl:列出RPM软件包内的文件信息[Query Package list];
-qpi:列出RPM软件包的描述信息[Query Package install package(s)];
-qf:查找指定文件属于哪个RPM软件包[Query File];
-Va:校验所有的RPM软件包,查找丢失的文件[View Lost];
-qf 文件名 :查询一个已经安装的文件属于哪个软件包;
-qc 软件名 :查看一下已安装软件的配置文件;
-qd 软件名:查看一个已经安装软件的文档安装位置
-qR 软件名 :查看一下已安装软件所依赖的软件包及文件;
-e:删除包
--nodeps 忽略软件包的依赖关系强行安装三、yum管理RPM包
1、yum的配置一般有两种方式,一种是直接配置/etc目录下的yum.conf文件,另外一种是在/etc/yum.repos.d目录下增加.repo文件。enabled=1 #1开启该配置0为关闭;gpgcheck=1 #1为校对软件
2、yum的配置文件yum.conf详解
$ cat /etc/yum.conf [main] cachedir=/var/cache/yum #yum下载的RPM包的缓存目录 keepcache=0 #缓存是否保存,1保存,0不保存。 debuglevel=2 #调试级别(0-10),默认为2(具体调试级别的应用,我也不了解)。 logfile=/var/log/yum.log #yum的日志文件所在的位置 exactarch=1 #在更新的时候,是否允许更新不同版本的RPM包,比如是否在i386上更新i686的RPM包。 obsoletes=1 #这是一个update的参数,具体请参阅yum(8),简单的说就是相当于upgrade,允许更新陈旧的RPM包。 gpgcheck=1 #是否检查GPG(GNU Private Guard),一种密钥方式签名。 plugins=1 #是否允许使用插件,默认是0不允许,但是我们一般会用yum-fastestmirror这个插件。 installonly_limit=3 #允许保留多少个内核包。 exclude=selinux* #屏蔽不想更新的RPM包,可用通配符,多个RPM包之间使用空格分离。
3、*.repo文件详解
repo文件是Fedora中yum源(软件仓库)的配置文件,通常一个repo文件定义了一个或者多个软件仓库的细节内容,例如我们将从哪里下载需要安装或者升级的软件包,repo文件中的设置内容将被yum读取和应用!
[fedora] #方括号里面的是软件源的名称,将被yum取得并识别 name=Fedora $releasever - $basearch #这里也定义了软件 仓库的名称,通常是为了方便阅读配置文件,一般没什么作用,$releasever变量定义了发行版本,通常是8,9,10等数字,$basearch变 量定义了系统的架构,可以是i386、x86_64、ppc等值,这两个变量根据当前系统的版本架构不同而有不同的取值,这可以方便yum升级的时候选择 适合当前系统的软件包,以下同…… failovermethod=priority #failovermethod 有两个值可以选择,priority是默认值,表示从列出的baseurl中顺序选择镜像服务器地址,roundrobin表示在列出的服务器中随机选择 exclude=compiz* *compiz* fusion-icon* #exclude这个选项是后来我自己加上去的,用来禁止这个软件仓库中的某些软件包的安装和更新,可以使用通配符,并以空格分隔,可以视情况需要自行添加 #baseurl=http://download.fedoraproject.org/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/ #上面的一行baseurl第一个字符是‘#‘表示该行已经被注释,将不会被读取,这一行的意思是指定一个baseurl(源的镜像服务器地址) #mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$releasever&arch=$basearch #上面的这一行是指定一个镜像服务器的地址列表,通常是开启的,本例中加了注释符号禁用了,我们可以试试,将$releasever和$basearch替换成自己对应的版本和架构,例如10和i386,在浏览器中打开,我们就能看到一长串镜可用的镜像服务器地址列表。 选择自己访问速度较快的镜像服务器地址复制并粘贴到repo文件中,我们就能获得较快的更新速度了,格式如下baseurl所示: baseurl= ftp://ftp.sfc.wide.ad.jp/pub/Linux/Fedora/releases/10/Everything/i386/os http://ftp.chg.ru/pub/Linux/fedora/linux/releases/10/Everything/i386/os http://ftp.yz.yamagata-u.ac.jp/pub/linux/fedora/linux/releases/10/Everything/i386/os http://mirror.nus.edu.sg/fedora/releases/10/Everything/i386/os http://mirror.yandex.ru/fedora/linux/releases/10/Everything/i386/os http://ftp.twaren.net/Linux/Fedora/linux/releases/10/Everything/i386/os http://ftp.itu.edu.tr/Mirror/Fedora/linux/releases/10/Everything/i386/os enabled=1 #这个选项表示这个repo中定义的源是启用的,0为禁用 gpgcheck=1 #这个选项表示这个repo中下载的rpm将进行gpg的校验,已确定rpm包的来源是有效和安全的 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$basearch #定义用于校验的gpg密钥,就是数位签章的公钥档所在位置! ##以下的软件仓库基本上用不到,选项含义同上 [fedora-debuginfo] name=Fedora $releasever - $basearch - Debug failovermethod=priority #baseurl=http://download.fedoraproject.org/pub/fedora/linux/releases/$releasever/Everything/$basearch/debug/ mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-debug-$releasever&arch=$basearch enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$basearch
3、yum 命令
yum install yum-fastestmirror 自动搜索最快镜像插件
yum install yumex
yum search 用YUM查找软件包
yum list 列出所有已经安装和可以安装的软件包
yum list updates 列出所有可更新的软件包
yum list installed 列出所有已安装的软件包
yum list extras 列出所有已安装但不在 Yum Repository 內的软件包
yum list 列出指定软件包安装情况
yum info 列出所有软件包的信息
yum info 使用YUM获取软件包信息
yum info updates 列出所有可更新的软件包信息
yum info installed 列出所有已安裝的软件包信息
yum info extras 列出所有已安裝但不在 Yum Repository 內的软件包信息
yum provides 列出软件包提供哪些文件
yum groupinfo 显示程序组信息
yum search string 根据关键字string查找安装包
yum deplist 查看软件包依赖情况
安装升级卸载
yum check-update 列出所有可更新的软件清单
yum install 全部安装
yum install 安装指定程序包
yum update 全部更新
yum update 更新指定软件包
yum upgrade 升级指定软件包
yum grouplist 显示已经安装程序组
yum groupinstall 安装程序组
yum groupremove 卸载程序组
yum groupupdate 升级程序组
yum remove 删除软件包
yum groupremove 删除程序组
清除缓存
yum clean packages 清除缓存目录下的软件包
yum clean headers 清除缓存目录下的 headers
yum clean all 清除缓存目录下的软件包及旧的headers
yum check-update 检查可更新的所有软件包
yum update 下载更新系统已安装的所有软件包
yum upgrade 大规模的版本升级,与yum update不同的是,连旧的淘汰的包也升级
yum install <packages> 安装新软件包
yum update <packages> 更新指定的软件包
yum remove <packages> 卸载指定的软件包
yum groupinstall <groupnames> 安装指定软件组中的软件包
yum groupupdate <groupnames> 更新指定软件组中的软件包
yum groupremove <groupnames> 卸载指定软件组中的软件包
yum grouplist 查看系统中已经安装的和可用的软件组
yum list 列出资源库中所有可以安装或更新以及已经安装的rpm包
yum list <regex> 列出资源库中与正则表达式匹配的可以安装或更新以及已经安装的rpm包
yum list available 列出资源库中所有可以安装的rpm包
yum list available <regex> 列出资源库中与正则表达式匹配的所有可以安装的rpm包
yum list updates 列出资源库中所有可以更新的rpm包
yum list updates <regex> 列出资源库中与正则表达式匹配的所有可以更新的rpm包
yum list installed 列出资源库中所有已经安装的rpm包
yum list installed <regex> 列出资源库中与正则表达式匹配的所有已经安装的rpm包
yum list extras 列出已经安装的但是不包含在资源库中的rpm包
yum list extras <regex> 列出与正则表达式匹配的已经安装的但是不包含在资源库中的rpm包
yum list recent 列出最近被添加到资源库中的软件包
yum search <regex> 检测所有可用的软件的名称、描述、概述和已列出的维护者,查找与正则表达式匹配的值
yum provides <regex> 检测软件包中包含的文件以及软件提供的功能,查找与正则表达式匹配的值
yum clean headers 清除缓存中的rpm头文件
yum clean packages 清除缓存中rpm包文件
yum clean all 清除缓存中的rpm头文件和包文件
yum deplist <packages> 显示软件包的依赖信息
当第一次使用yum 或yum 资源库有更新时,yum 会自动下载所有所需的he ade rs放置于 /var/cache /yum 目录下,所需时间可能较长。
还可以使用 yum info 命令列出包信息,yum info 可用的参数与 yum list 的相同。yum 命令还可以使用 -y 参数用于用 ye s 回答命令运行时所提出的问题,比如 yum -y install vsftpd,这样在安装软件的时候就不用输入yes/y了
补充:
1、swap交换分区:
swapon [参数] [硬盘路径]
-h 请帮帮我
-V 显示版本讯息
-s 显示简短的装置讯息
-a 自动启动所有SWAP装置
mkswap [-cf][-v0][-v1][设备名称或文件][交换区大小]
-c 建立交换区前,先检查是否有损坏的区块。
-f 在SPARC电脑上建立交换区时,要加上此参数。
-v0 建立旧式交换区,此为预设值。
-v1 建立新式交换区。
swapoff[参数][路径]
-a 关闭所有交换设备
-h 帮助信息
-V 版本信息
设置swap优先级的方法是修改/proc/sys/vm/swappiness
wappiness=0 的时候表示最大限度使用物理内存,然后才是swap空间;
swappiness=100 的时候表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。
2、createrepo用以创建yum源(软件仓库),即为存放于本地特定位置的众多rpm包建立索引,描述各包所需依赖信息,并形成元数据。
基本语法:createrepo [option] <directory>
常用参数详解
-u --baseurl <url>: 指定Base URL的地址
-o --outputdir <url>: 指定元数据的输出位置
-x --excludes <packages>:指定在形成元数据时需要排除的包
-i --pkglist <filename>: 指定一个文件,该文件内的包信息将被包含在即将生成的元数据中,格式为每个包信息独占一行,不含通配符、正则,
以及范围表达式。
-n --includepkg:通过命令行指定要纳入本地库中的包信息,需要提供URL或本地路径
-q --quiet: 安静模式执行操作,不输出任何信息。
-g --groupfile <groupfile>:指定本地软件仓库的组划分,范例如下:
createrepo -g comps.xml /path/to/rpms (注意:组文件需要和rpm包放置于同一路径下。)
-v --verbose:输出详细信息。
-c --cachedir <path>: 指定一个目录,用作存放软件仓库中软件包的校验和信息。当createrepo在未发生明显改变的相同仓库文件上持续多次运行时,
指定cachedir会明显提高其性能。
--update: 如果元数据已经存在,且软件仓库中只有部分软件发生了改变或增减,则可用update参数直接对原有元数据进行升级,效率比重新分析rpm
包依赖并生成新的元数据要高很多。
-p --pretty: 以整洁的格式输出xml文件。
-d --database: 该选项指定使用SQLite来存储生成的元数据,默认项。
3、yum makecache 是 将服务器上的软件包信息 现在本地缓存,以提高 搜索 安装软件的速度