軟件包管理課堂複習筆記

軟件運行和編譯
ABI
Linux 可執行文件類型爲ELF
file /bin/cat

Win 可執行文件類型爲PE
程序源代碼,靜態編譯.a,動態編譯.so(shared object共享對象)
Ldd /bin/cat 可查看cat所依賴的動態庫
Ldd /bin.ls查看ls依賴的庫
/lib64/libc.so.6這個動態鏈接庫文件移動或刪除導致其他不能用,其他運行依賴此動態庫
救援模式,重啓出現進度條按esc進入救援模式,系統根被掛載到/mnt/sysimage下

之前移動到/root下mv /lib64/libc.so.6 /root/則系統不能正常運行命令
在救援模式則執行mv /mnt/sysimage/root/libc.so.6 /mnt/sysimage/lib64/後執行reboot重啓即可

如果是刪除 rm /lib64/libc.so.6,如果是centos6進入救援模式後則執行cd /mnt/sysimage/lib64後ln -s libc-2.12.so libc.so.6後reboot重啓即可
如果是centos7則進入救援模式後則執行cp /lib64/libc.so.6 /mnt/sysimage/lib64/後reboot重啓即可
解壓文件tar xvf file.tar.xz
Du -sh file查看文件大小
Find dir/ -name ".c" |wc -l查看目錄下一共有多少個.c的文件
Cat `find dir/ -name "
.c" `|wc -l 查看一共有多少行代碼
掛載光盤mount /dev/cdrom /mnt
Cd /mnt
Cd /Packages
ls .rpm|rev |cut -d. -f2|rev |sort|uniq -c查看不同類型架構的個數
ls
.rpm |sed -r 's@^.*.([^.]+).rpm$@\1@'|sort -nr|uniq -c另一種方法
rpm2cpio zip-3.0-11.el7.x86_64.rpm |cpio -tv,使用cpio解包並查看
數據庫(公共)位置/var/lib/rpm至關重要,不能刪除
程序包的來源

Rpm

神奇目錄
Ls /misc/cd
需要安裝

Rpm -q 查詢,rpm -e 卸載
Rpm -q vsftpd &> /dev/dull || rpm -I /misc/cd /Packages/vsftpd.xxx.rpm檢查是否安裝,未安裝則安裝
Rm -f /usr/bin/tree,再安裝
Rpm -ivh /dir/xxx.rpm --replacepkgs覆蓋安裝
Rpm-ivh 網絡路徑,支持網絡安裝
Rpm -qi tree查詢相關信息
如果未安裝則需要加p選項

Rpm -qf /bin/cat查詢來自於哪個包安裝生成
Rpm -ql /bin/cat查詢全部文件
Rpm -qc /bin.cat 查詢配置文件

包校驗rpm -V ,rpm -K,公鑰在光盤下RPM-GPG-KEY-CENTOS-7

進入光盤,cat RPM-GPG-KEY-CentOS-7查看公鑰內容
rpm --import /mnt/RPM-GPG-KEY-CentOS-7導入公鑰
rpm -K /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm檢查包的合法性
查詢u所有包rpm -qa "gpg-pubkey*"
rpm -qi gpg-pubkey-f4a80eb5-53a7ff4b查看公鑰
Rpm -e gpg-pubkey-f4a80eb5-53a7ff4b卸載
YUM yellowdog update modifier
rpm的前端程序,可解決軟件包相關依賴性
https://mirrors.aliyun.com/epel/7/x86_64/repodata/阿里雲的倉庫路徑
配置yum客戶端和服務器端
首先配置客戶端
Yum基本配置
vim /etc/yum.conf
cachedir=/var/cache/yum/$basearch/$releasever(y元數據緩存的文件夾)
keepcache=0(安裝包下載後是否刪除,0表示刪除)
debuglevel=2(調試)
logfile=/var/log/yum.log(安裝卸載yum日誌)
exactarch=1
obsoletes=1
gpgcheck=1(檢查數字簽名,是否破壞過,1表示要檢查)
plugins=1
installonly_limit=5

Cat /var/log/yum.log查看yum日誌
/etc/yum.repos.d
Sz 文件名,將文件傳送至桌面,只能傳送文件,不能傳送目錄文件
在/etc/yum.repos.d下
建立一個文件vim base.repo
[base]
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/ 設置倉庫路徑
#gpgcheck=1(註釋掉密鑰檢查)
gpgkey=https://mirrors.aliyun.com/centos/7/os/x86_64/RPM-GPG-KEY-CentOS-7密鑰檢查
橋接網卡下使用service network restart重啓網絡即可上網
Yum install httpd 安裝
另外新建一個epel源,vim epel.repo
[epel]
name=epel
baseurl=https://mirrors.aliyun.com/epel/7/x86_64/
gpgcheck=0
安裝sl ,yum install sl,直接運行sl則出現小火車
yum repolist 列出所有倉庫
若想禁用某yun源,則進去加上enable=0的語句即可

本地yum源設置,
首先yum install auto和systemctl enable autofsfs和systemctl start autofs安裝autofs並使神奇目錄生效
取消掛載umount 掛載點,即可取消相應的掛載點,通過df查看掛載情況
同樣進入/etc/yum.repos.d,使baseurl=file:///misc/cd,即可

Ls /var/cache/yum/x86_64/7/存放yum緩存
Rm -rf /var/cache/yum/x86_64/7/徹底刪除,不建議,可使用yum clean all 清空緩存
Yum install tree -y,其中-y表示交互式變爲批處理方式,不用後面安裝提示再輸入
Yum reinstall tree -y 表示重新安裝
卸載yum remove tree -y
rpm -q tree &> /dev/null ||yum install tree -y實現如果沒有tree則安裝tree 包

實驗:基於HTTP局域網的yum源
1安裝HTTP包,yum install httpd
2rpm -qi httpd檢查安裝包相關信息,rpm -ql httpd 查看包裏包含哪些文件,這兩個爲安裝完後習慣性動作
httpd包裏包含的/usr/lib/systemd/system/httpd.service爲重要文件
安裝完後systemctl status httpd.service查看狀態
Systemctl start httpd.service啓動服務
Systemctl enable httpd.service下次開機服務自動重啓
從瀏覽器中輸入本機Ip即可訪問
/var/www/html網頁內容存放處
可以echo haoyunlong >> index.html,刷新網頁則出現echo後的內容
在/var/www/html/下建立文件夾mkdir -pv centos/{6,7}/os/x86_64/,
mount /dev/sr0 /var/www/html/centos/7/os/x86_64/,將光盤掛在在/var/www/html/centos/7/os/x86_64/,刷新網頁即可看到目錄
http://192.168.1.14/centos/7/os/x86_64/,當前IP爲192.168.1.14

1關閉防火牆
Centos7中
systemctl disable firewalld,systemctl stop firewalld現在生效
Centos6中
Servicce iptables stop ,chkconfig iptables off
2關閉selinux
Centos7中
Cat /etc/selinux/config
利用sed修改
Sed -I 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
3重啓
Reboot
重啓後getenforce,結果爲disabled
加一塊硬盤
Echo '- - -' >/sys/class/scsi_host/host2/scan,可對此進行別名定義scandisk,用於掃描光盤,不用重啓就能看到
Yum list|less查看所有包@開頭爲已經安裝的
yum源可以在/etc/yum
Yum remove libvert-daemon卸載虛擬網卡

軟件包管理課堂複習筆記

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章