Yum软件仓库配置

Yum软件仓库配置 Yum软件仓库配置现在我们来说一下yum源的配置,大家都知道rpm –ivh xxx.rpm能安装软件,这是没有错的,但是如果哪天你要安装一个软件,发现一堆的依赖关系,关系多达几百个,错综复杂,你是不是会崩溃掉,这个情况在默认没有安装桌面的环境中经常遇到,在init 3模式下安装init 5的X window,用rpm非疯了不可 YUM的使用 我们就以安装GCC为例吧 Rpm –ivh /media/Packages/gcc-4.4.6-4.e16.i686.rpm,命令本身是没错的,可是为什么安装不成功呢,看最下面,需要这么些个包,其实这些包也依赖于其他的包,这就郁闷了吧,我们用yum来试试,yum可以自动判断依赖关系,直接帮我们解决 如下图, Yum install gcc命令 它自动判断出了安装gcc的时候都依赖于哪些包,那些包又依赖于哪些包,直接给我们列出来,问我们是否要安装,我们直接“Y”就可以,     大家一定想知道,它为什么能自动判断吧,还有,它从哪里知道的要哪些软件包名,其实要配置一个仓库,这个仓库里就指定了我们的软件在哪里放着 上图就是我们的仓库文件的内容了,我来解释一下 [Steven]只是仓库名字,这个可以随意 Name=….这个你可以理解为仓库的描述,这个可以不写这一行 Baseurl=file:///Media/Server,这里解释一下为什么是///三个/,file:// ftp:// http://大家是不是很熟悉,file://的意思是文件在本地,在Linux中一切都以根开始的那路径上要加个/,所以最后是file:///media/Server,意思是在本地的/media/Server下 Enable=1,这里是说是否用户仓库,1是启用,0是不启用 Gpgcheck=0是说是否检查软件的KEY,我一般都不检查,各位随意 Gpgkey=…这里是说你的KEY文件在哪里,我不启用,所以也无所谓了 那我来问一下,是不是只要把所有的RPM都拷贝到一个文件夹,然后指向那个文件夹就行了呢,答案是不行的,我们要创建一个软件源才行 创建软件源我们要用到createrepo这个命令,我们来安装一下 yum -y install createrepo 我们来规划一下,我们要在/packages下建立我们的软件源,首先,我们把这个文件夹建立一下 现在的目录是空的,然后我们来把软件拷贝到里面 现在只有一个文件夹,里面一堆软件包,我们来指定一下yum路径,看看能不能安装吧 没有repo…什么xml什么的,总的来讲就是没有“元数据” 我们来生成一下,现在先看一下目录结构 输入下图的命令,就开始了创建的过程,会有一会时间,和你有多少软件包有关系 看,上图中已经多了一个repodata的文件夹,现在我们再来用yum安装一下试试 完美成功

systemd 配置 supervisor

systemd 配置 supervisor systemd supervisor 最近升级到了 kubuntu 15.10,系统启动管理由 init 变成了 systemd。 我一般习惯使用 supervisor 来管理我的程序,但是必须要系统开机启动,下面是我的一些记录。 一、安装 supervisor 切换到 root 或使用 sudo 安装

二、默认的 supervisor 配置文件

三、测试 supervisor 能够正常启动

四、创建 supervisor 的 systemd 启动配置文件 在目录 /lib/systemd/system 下, 创建文件 supervisord.service 内容如下

需要注意的是,如果你的 supervisord 所在的目录和我的不一样,你需要先查找 supervisord 的位置,然后修改成合适的值。 五、开机启动 启动 supervisor Read more…

systemctl 命令完全指南

systemctl 命令完全指南 编译自:http://www.tecmint.com/manage-services-using-systemd-and-systemctl-in-linux/本文地址:https://linux.cn/article-5926-1.html Systemctl是一个systemd工具,主要负责控制systemd系统和服务管理器。 Systemd是一个系统管理守护进程、工具和库的集合,用于取代System V初始进程。Systemd的功能是用于集中管理和配置类UNIX系统。 在Linux生态系统中,Systemd被部署到了大多数的标准Linux发行版中,只有为数不多的几个发行版尚未部署。Systemd通常是所有其它守护进程的父进程,但并非总是如此。 使用Systemctl管理Linux服务 本文旨在阐明在运行systemd的系统上“如何控制系统和服务”。   Systemd初体验和Systemctl基础   1. 首先检查你的系统中是否安装有systemd并确定当前安装的版本 # systemctl –version systemd 215 +PAM +AUDIT +SELINUX +IMA +SYSVINIT +LIBCRYPTSETUP +GCRYPT +ACL +XZ -SECCOMP -APPARMOR 上例中很清楚地表明,我们安装了215版本的systemd。   2. 检查systemd和systemctl的二进制文件和库文件的安装位置 # whereis systemd systemd: /usr/lib/systemd /etc/systemd /usr/share/systemd /usr/share/man/man1/systemd.1.gz # whereis systemctl systemctl: /usr/bin/systemctl /usr/share/man/man1/systemctl.1.gz   3. Read more…

Systemd 入门教程:实战篇

上一篇文章,我介绍了 Systemd 的主要命令,今天介绍如何使用它完成一些基本的任务 一、开机启动 对于那些支持 Systemd 的软件,安装的时候,会自动在/usr/lib/systemd/system目录添加一个配置文件。 如果你想让该软件开机启动,就执行下面的命令(以httpd.service为例)。

上面的命令相当于在/etc/systemd/system目录添加一个符号链接,指向/usr/lib/systemd/system里面的httpd.service文件。 这是因为开机时,Systemd只执行/etc/systemd/system目录里面的配置文件。这也意味着,如果把修改后的配置文件放在该目录,就可以达到覆盖原始配置的效果。 二、启动服务 设置开机启动以后,软件并不会立即启动,必须等到下一次开机。如果想现在就运行该软件,那么要执行systemctl start命令。

执行上面的命令以后,有可能启动失败,因此要用systemctl status命令查看一下该服务的状态。

上面的输出结果含义如下。 Loaded行:配置文件的位置,是否设为开机启动 Active行:表示正在运行 Main PID行:主进程ID Status行:由应用本身(这里是 httpd )提供的软件当前状态 CGroup块:应用的所有子进程 日志块:应用的日志 三、停止服务 终止正在运行的服务,需要执行systemctl stop命令。

有时候,该命令可能没有响应,服务停不下来。这时候就不得不”杀进程”了,向正在运行的进程发出kill信号。

此外,重启服务要执行systemctl restart命令。

四、读懂配置文件 一个服务怎么启动,完全由它的配置文件决定。下面就来看,配置文件有些什么内容。 前面说过,配置文件主要放在/usr/lib/systemd/system目录,也可能在/etc/systemd/system目录。找到配置文件以后,使用文本编辑器打开即可。 systemctl cat命令可以用来查看配置文件,下面以sshd.service文件为例,它的作用是启动一个 SSH 服务器,供其他用户以 SSH 方式登录。

可以看到,配置文件分成几个区块,每个区块包含若干条键值对。 下面依次解释每个区块的内容。 五、 Read more…

Systemd 入门教程:命令篇

Systemd 是 Linux 系统工具,用来启动守护进程,已成为大多数发行版的标准配置。 本文介绍它的基本用法,分为上下两篇。今天介绍它的主要命令,下一篇介绍如何用于实战。 一、由来 历史上,Linux 的启动一直采用init进程。 下面的命令用来启动服务。

这种方法有两个缺点。 一是启动时间长。init进程是串行启动,只有前一个进程启动完,才会启动下一个进程。 二是启动脚本复杂。init进程只是执行启动脚本,不管其他事情。脚本需要自己处理各种情况,这往往使得脚本变得很长。 二、Systemd 概述 Systemd 就是为了解决这些问题而诞生的。它的设计目标是,为系统的启动和管理提供一套完整的解决方案。 根据 Linux 惯例,字母d是守护进程(daemon)的缩写。 Systemd 这个名字的含义,就是它要守护整个系统。 (上图为 Systemd 作者 Lennart Poettering) 使用了 Systemd,就不需要再用init了。Systemd 取代了initd,成为系统的第一个进程(PID 等于 1),其他进程都是它的子进程。

上面的命令查看 Systemd 的版本。 Systemd 的优点是功能强大,使用方便,缺点是体系庞大,非常复杂。事实上,现在还有很多人反对使用 Systemd,理由就是它过于复杂,与操作系统的其他部分强耦合,违反”keep simple, keep stupid”的Unix 哲学。 (上图为 Systemd 架构图) 三、系统管理 Systemd 并不是一个命令,而是一组命令,涉及到系统管理的方方面面。 3.1 Read more…

vim操作技巧

Vim中显示不可见字符  :set invlist, 或 :%! 或还可以自己定义: set listchars=eol:$,tab:>-,trail:~,extends:>,precedes:< set list :set nolist可以回到正常的模式 cat -A file 也可以显示不可见字符 dos2unix is a commandline utility that will do this, or :%s/^M//g will if you use Ctrl–v Ctrl–mto input the ^M, or you can :set ff=unix and vim will do it for you. Change the lineendings in Read more…

利用yum下载软件包的三种方法

方法一: downloadonly插件 有一个yum的插件叫做downloadonly,顾名思义,就是只下载不安装的意思。 1. 安装插件 yum install yum-download 2. 下载 yum update httpd -y –downloadonly 这样httpd的rpm就被下载到/var/cache/yum/中去了。 你也可以指定一个目录存放下载的文件 yum update httpd -y –downloadonly –downloaddir=/opt 值得注意的是,downloadonly插件不但适用于yum update,也适用于yum install。 方法二:yum-utils中的yumdownloader yum-utils包含着一系列的yum的工具,比如 debuginfo-install, package-cleanup, repoclosure, repodiff, repo-graph, repomanage, repoquery, repo-rss, reposync, repotrack, verifytree, yum-builddep, yum-complete-transaction, yumdownloader, yum-debug-dump 和 yum-groups-manager. 1. 安装yum-utils.noarch yum -y install Read more…

自动化部署必备技能—搭建YUM仓库

自动化部署必备技能—搭建YUM仓库 YUM主要用于自动安装、升级rpm软件包,它能自动查找并解决rpm包之间的依赖关系。要成功的使用YUM工具安装更新软件或系统,就需要有一个包含各种rpm软件包的repository(软件仓库),这个软件仓库我们习惯称为yum源。网络上有大量的yum源,但由于受到网络环境的限制,导致软件安装耗时过长甚至失败。特别是当有大量服务器大量软件包需要安装时,缓慢的进度条令人难以忍受。因此我们在优化系统时,都会更换国内的源。 相比较而言,本地YUM源服务器最大优点是局域网的快速网络连接和稳定性。有了局域网中的YUM源服务器,即便在Internet连接中断的情况下,也不会影响其他YUM客户端的软件安装和升级。 1.1 服务端配置 mkdir -p /application/yum/centos6/x86_64/    ß1.创建yum仓库目录,rpm包都上至此目录 yum -y install createrepo                ß2.安装createrepo软件 createrepo -pdo /application/yum/centos6/x86_64/ /application/yum/centos6/x86_64/            ß3.初始化repodata索引文件 cd /application/yum/centos6/x86_64/       ß4.进入需要提供仓库的目录 python -m SimpleHTTPServer 80 &>/dev/null &   ß5.可以用Apache或nginx提供web服务,但用Python的http模块更简单,适用于内网环境, 可以通过浏览器输入本机IP查看。 createrepo –update /application/yum/centos6/x86_64/        ß6.每加入一个rpm包就要更新一下 sed -i ‘s#keepcache=0#keepcache=1#g’ /etc/yum.conf          ß修改yum配置文件keepacache=0改为1,保存下载过的软件 cachedir=/var/cache/yum/$basearch/$releasever         ß安装包存储目录= /var/cache/yum/x86_64/6/base/packages 1.2客户端配置 cd /etc/yum.repos.d [root@B yum.repos.d]# vi oldboy.repo          ß连接本地yum源 Read more…

用rz、sz命令在Xshell传输文件

用rz、sz命令在Xshell传输文件 用rz、sz命令在Xshell传输文件 2014-03-27 14:38:17 标签:用rz、sz命令在Xshell传输文件 Xshell很好用,然后有时候想在windows和linux之间上传或下载某个文件。 有个很简单的方法就是rz,sz命令。 首先你的Linux需要安装rz、sz(如果没有安装,请执行以下命令,安装完的请跳过。其它版本linux请自行安装相应软件) yum install lrzsz -y 安装完毕即可使用 rz,sz是便是Linux/Unix同Windows进行ZModem文件传输的命令行工具。 windows端需要支持ZModem的telnet/ssh客户端(xshell支持,好像putty不支持),SecureCRT就可以用SecureCRT登陆到Unix/Linux主机(telnet或ssh均可) 运行命令rz,即是接收文件,xshell就会弹出文件选择对话框,选好文件之后关闭对话框,文件就会上传到linux里的当前目录。 运行命令sz file 就是发文件到windows上(保存的目录是可以配置) 比ftp命令方便多了,而且服务器不用再开FTP服务了。 更简便的方法是直接拖动文件到Xshell里面,就可以完成上传。

centos7关闭防火墙,修改主机名

CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙。 1、关闭并禁止firewall开机启动: 停止 systemctl stop firewalld.service 禁止开机启动 systemctl disable firewalld.service 2、安装iptables防火墙 yum install iptables-services 编辑防火墙配置文件打开指定的端口号使用udp协议打开52100端口: vi /etc/sysconfig/iptables 保存退出 :wq 最后重启防火墙使配置生效 systemctl restart iptables.service 设置防火墙开机启动 systemctl enable iptables.service 修改主机名 在CentOS或RHEL中,有三种定义的主机名:a、静态的(static),b、瞬态的(transient),以及 c、灵活的(pretty)。“静态”主机名也称为内核主机名,是系统在启动时从/etc/hostname自动初始化的主机名。“瞬态”主机名是在系统运行时临时分配的主机名,例如,通过DHCP或mDNS服务器分配。静态主机名和瞬态主机名都遵从作为互联网域名同样的字符限制规则。而另一方面,“灵活”主机名则允许使用自由形式(包括特殊/空白字符)的主机名,以展示给终端用户(如Dan’s Computer)。 在CentOS/RHEL 7中,有个叫hostnamectl的命令行工具,它允许你查看或修改与主机名相关的配置。 要查看主机名相关的设置:

只查看静态、瞬态或灵活主机名,分别使用“–static”,“–transient”或“–pretty”选项。

要同时修改所有三个主机名:静态、瞬态和灵活主机名:

就像上面展示的那样,在修改静态/瞬态主机名时,任何特殊字符或空白字符会被移除,而提供的参数中的任何大写字母会自动转化为小写。一旦修改了静态主机名,/etc/hostname 将被自动更新。然而,/etc/hosts 不会更新以保存所做的修改,所以你需要手动更新/etc/hosts。 如果你只想修改特定的主机名(静态,瞬态或灵活),你可以使用“–static”,“–transient”或“–pretty”选项。 例如,要永久修改主机名,你可以修改静态主机名:

注意,你不必重启机器以激活永久主机名修改。上面的命令会立即修改内核主机名。注销并重新登入后在命令行提示来观察新的静态主机名。