軟體包的管理rpm,yum
阿新 • • 發佈:2018-12-18
=========================================rpm軟體管理(裝二進位制包,依賴關係很糟心) 軟體包 nginx.tar.gz(檔案是原始碼):編譯(原始碼翻譯成二進位制)安裝 rpm:紅帽軟體包管理(檔案就是二進位制) 版本號最後一位是奇數說明是測試版本不穩定。 df後 /dev/sr0 4050860 4050860 0 100% /run/media/root/CentOS 7 x86_64 路徑是這樣的 cd /run/media/root/CentOS\ 7\ x86_64 ls Packages/ zlib-1.2.7-13.el7.x86_64.rpm 13代表軟體包修正了多少次 1.2.7版本號 增: df cd到Packages下 rpm-ivh dhcp-4.1.1-51.P1.el6.centos.x86_64.rpm rpm -ivh dhcp-4.1.1-51.P1.el6.centos.x86_64.rpm --force(強制安裝) 回車 有依賴的先裝 rpm -ivh dhcp-4.1.1-51.P1.el6.centos.x86_64.rpm rpm -ivh dhcp-4.1.1-51.P1.el6.centos.x86_64.rpm 排著寫可以裝多個 刪: rpm -e dhcp(只是軟體名沒有版本什麼的) rpm -e dhcp --nodeps(忽略依賴刪) 查: rpm -qa 檢視系統中安裝了多少個rpm包 rpm-q dhcp(只是軟體名沒有版本什麼的) rpm -ql dhcp(檢視軟體裝到哪裡) rpm -qi dhcp(檢視軟體資訊) rpm -qf /usr/share/man/man8vsftpd.8.gz (檢視檔案有那個軟體包產生的) rpm -qa | grep 'dhcp' 驗證下系統中有沒有裝這個包 檢視命令由那個軟體產生 which ls 看命令的真實路徑 /usr/bin/ls rpm -qf /usr/bin/ls coreutils-8.22-11.el7.x86_64=====ls就是由這個軟體產生的 為什麼ls就能執行的原理 ls---->shell---->PATH(環境變數,全域性變數)--->/usr/bin/--->/usr/bin/ls--->alias-->/usr/bin/ls ls -l --color=auto which ls 檢視這個命令的位置 echo $PATH 檢視環境變數 PATH= 設定環境變數 臨時修改 永久改 vim /etc/profile 在最後一行寫上PATH= export PATH (相當於把PATH設定成全域性變數) vim /etc/profile vim /etc/bashrc alias ll='ls -l --color=auto' ``反引號可以取命令的值然後複製給變數 x=`rpm -qa |grap vsftpd` rpm -e `rpm -qa |grap vsftpd` 這樣刪
=========================================yum軟體管理(裝rpm二進位制包,自動解決依賴關係) rpm --->安裝源/media/CentOS_6.8_Final/Package/ yum --->安裝源/media/CentOS_6.8_Final/ baseurl=file:///run/media/root/CentOS 7 x86_64 這個有空格怕有問題,這個其實就是掛載到/dev/sr0的 mount /dev/sr0 /opt/ baseurl=file:///opt 1.一定要有一個軟體包倉庫,裡面有packages這個目錄它下面存軟體包,還要有repodata目錄裡面寫依懶性檔案。 2.修改配置檔案(配本地yum) cd /etc/yum.repos.d/ ls mkdir /tmp/bak/ mv * /tmp/bak/ 移走裝系統預設帶的,自己寫一個repo本地yum源的配置資訊 vim /etc/yum.repos.d/local.repo 找軟體的路徑放到檔案裡,檔案依賴性關係 [local] name=local yum baseurl=file:///opt enabled=1 gpgcheck=0 就上面5行就配好 3.yum clear all 清理yum快取 4.yum install httpd vim /etc/yum/yum-cron.conf 保障系統不更新 修改 download_updates = no yum update -y 一般不用,最多就是剛裝好系統的時候升級一下,升級所有的包,改變軟體設定和系統設定,系統版本核心都升級 yum -y upgrade 升級所有包,不改變軟體設定和系統設定,系統版本升級,核心不改變 yum install epel-* -y yum reinstall epel-* -y 覆蓋安裝 yum -y install http* -y直接裝不提示yes/on了 yum erase dhclient 刪除 yum remove dhclient 刪除 yum makecache -y 建快取資訊 假如這個軟體包來源於網路,yum會把軟體包下載到本地,安裝完,就刪掉下載的軟體包 如果想不刪軟體包,就改配置檔案 mkdir /rpm_bak vim /etc/yum.conf cachedir=/rpm_bak 指定一個自己的快取目錄 keepcache=1 設定為1
=========================================================自己做yum源 1.mkdir /cangku_httpd 2.把HTTPD需要的包都放/cangku_httpd裡 3.yum install creatrepo -y (裝好creatrepo這個工具) 4.creatrepo /cangku_httpd/ /cangku_httpd裡就多了repodata這個檔案 5.cd /etc/yum.repos.d/ 6.mv * /tmp/bak/ 7.vim /etc/yum.repos.d/httpd.repo 找軟體的路徑放到檔案裡,檔案依賴性關係 [local] name=local yum baseurl=file:///cangku_httpd 本地源 #baseurl=http://mirror.centos.org/centos-7/7.5.1804/centosplus/x86_64/ 網路源 enabled=1 gpgcheck=0 就上面5行就配好 8.yum clear all 清理yum快取 9.yum install httpd
=============================================================原始碼包安裝===Python 下載好原始碼包 1:window下好 用Xshell拖進去 2:wget https://www.python.org/ftp/python/3.7.1/Python-3.7.1.tgz yum grouplist 1.yum groupinstall '開發工具' -y 裝備 3.7版本需要一個新的包libffi-devel,安裝此包之後再次進行編譯安裝即可。 yum install libffi-devel -y 2.tar xvf Python-3.7.1.tgz 解包 3.ls 4.cd Python-3.7.1 這個目錄下才有configure 5.執行configure指令碼,新增編譯引數,例如--prefix指定安裝路徑 ./configure --prefix=/usr/local/python3.7 指定下一步安裝的目錄 python3.7 不要只寫成python,因為centos預設就有一個python是2.7版本的。 5.編譯 make 6.安裝 make install 5和6 可以寫成 make && make install 7.設定環境變數 PATH=/usr/local/python3.7/bin:$PATH PATH=/usr/local/python3.7/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin 永久設定環境變數 vim /etc/profile (最下面寫這2行) PATH=/usr/local/python3.7/bin:$PATH export PATH 8.python3.7 測試 9.ctrl+d 退出python 或者 exit()