解決Debian系統(tǒng)自動更新軟件包的問題的方法
不知從何時開始,我的電腦每天開機連接上網(wǎng)絡之后,不斷的在下載數(shù)據(jù),狀態(tài)欄顯示網(wǎng)速達到每秒1到2兆。開始我還不太在意,不過后來由于帶寬全部被這種莫名其奧妙的下載占據(jù)了,我連網(wǎng)頁都無否正常瀏覽了,所以我決定解決掉這個問題。下面記錄一下解決這個問題的過程。
首先我利用一款名為nethogs的實時網(wǎng)速監(jiān)控程序查看是哪個進程在占據(jù)帶寬,發(fā)現(xiàn)占據(jù)帶寬的正是系統(tǒng)的APT包管理工具,我想肯定是系統(tǒng)在執(zhí)行自動更新。殺掉這個進程后,我便去Google了一下如何關閉APT包管理工具的的自動更新。網(wǎng)上人們提供的解決方案大都一致:修改APT的配置文件。
APT關于自動更新的配置文件位于"/etc/apt/apt.conf.d/20auto-upgrades", 將其中的
APT::Periodic::Update-Package-Lists "1"; APT::Periodic::Unattended-Upgrade "1";
更改為
APT::Periodic::Update-Package-Lists "0"; APT::Periodic::Unattended-Upgrade "0";
其中
- APT::Periodic::Update-Package-Lists; 每一天自動運行一次 apt-get update,1 表示啟用,0 表示禁用。
- APT::Periodic::Unattended-Upgrade; 每一天運行一次 unattended-upgrade 安全升級腳本,1 表示啟用,0 表示禁用。
然而,并無卵用,第二天開機后APT又執(zhí)行自動更新了,更奇怪的是殺掉APT進程不久之后它會再一次運行。這時我才意識到一件事情,APT是不會自動把自己調(diào)入內(nèi)存運行的,一定是另有進程調(diào)用了它。打開進程管理器之后,查看 APT 進程的依賴關系,發(fā)現(xiàn)果然它有一個名為 packagekit 的父進程,我查了一下 packagekit 是一個旨在簡化Linux發(fā)行版安裝和更新軟件的系統(tǒng),它為不同的包管理工具提供了統(tǒng)一的前端,你可以在不同的Linux發(fā)行版中使用它來管理軟件包。
我的系統(tǒng)默認在開機時啟動packgekit服務,查看 packagekit 的啟動單元:
cat /lib/systemd/system/packagekit.service
[Unit] Description=PackageKit Daemon # PK does not know how to do anything on ostree-managed systems; # currently the design is to have dedicated daemons like # eos-updater and rpm-ostree, and gnome-software talks to those. ConditionPathExists=!/run/ostree-booted [Service] Type=dbus BusName=org.freedesktop.PackageKit User=root ExecStart=/usr/lib/packagekit/packagekitd
系統(tǒng)每次開機時都會啟動這個單元,執(zhí)行 /usr/lib/packagekit/packagekitd 命令,而 packagekit 又將在運行期間調(diào)起APT下載需要更新的軟件包。
知道了這些問題自然也就解決了,禁用此服務: systemctl disable packagekit.service.
或者干脆刪除 /lib/systemd/system/ 目錄下的 packagekit.service (當然你也可以把這個文件移動到別的地方去,以后用到時再放回來)
在那之后,系統(tǒng)便再也沒有執(zhí)行過自動更新了。
[附]
nethohs是一個能按進程實時監(jiān)控網(wǎng)絡的命令行工具,它可以動態(tài)的展示某一時刻正在進行通信的進程的網(wǎng)絡流量信息。
在 Debian/Ubuntu 下,使用apt-get install nethogs 安裝它。
或編譯安裝:
wget -c https://github.com/raboof/nethogs/archive/v0.8.5.tar.gz tar xf v0.8.5.tar.gz cd ./nethogs-0.8.5/ make && make install
如果編譯失敗需要安裝依賴庫
apt-get install libncurses5-dev libpcap-dev
使用
root@zsimline$ nethogs NetHogs version 0.8.5-2+b1 PID USER PROGRAM DEV SENT RECEIVED 2181 mxsyx /usr/share/code/code usb0 0.449 0.900 KB/sec 1598 mxsyx /usr/lib/chromium/chromium usb0 0.031 0.018 KB/sec ? root unknown TCP 0.000 0.000 KB/sec TOTAL 0.480 0.917 KB/se
指定網(wǎng)卡
root@zsimline$ nethogs wlan0 # 監(jiān)聽wlan0 root@zsimline$ nethogs -a # 監(jiān)聽所有網(wǎng)卡
指定刷新頻率 -d seconds (默認為1)
root@zsimline$ nethogs -d 2
指定刷新次數(shù) -c number (默認不限)
root@zsimline$ nethogs -c 10
交互模式
在進入 nethogs 之后,可以使用如下的交互命令:
q: 退出
s: 按照發(fā)送流量排序
r: 按照流量排序
m: 修改網(wǎng)速單位 (KB, B, MB) and KB/s
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持我們。
上一篇:linux No space left on device由索引節(jié)點(inode)爆滿引發(fā)500問題
欄 目:Linux/apache
本文標題:解決Debian系統(tǒng)自動更新軟件包的問題的方法
本文地址:http://mengdiqiu.com.cn/a1/Linux_apache/10621.html
您可能感興趣的文章
- 01-10Linux被中斷的系統(tǒng)如何調(diào)用詳解
- 01-10Linux系統(tǒng)文件的默認權限和特殊權限
- 01-10windows 用VMware創(chuàng)建linux虛擬機安裝CentOS7.2操作系統(tǒng)
- 01-10Windows操作系統(tǒng)下Linux虛擬機的安裝與配置教程圖解
- 01-10通過 SSH 在遠程 Linux 系統(tǒng)上運行命令的方法
- 01-10CentOS7系統(tǒng)增加swap的操作方法實例
- 01-10Win10 安裝Linux ubuntu-18.04雙系統(tǒng)(安裝指南)
- 01-10VMware虛擬機安裝Linux系統(tǒng)圖文教程
- 01-10解決Centos7 安裝騰達U12無線網(wǎng)卡驅(qū)動問題
- 01-10linux 遠程控制windows系統(tǒng)下的程序(三種方法)


閱讀排行
本欄相關
- 04-02linux關閉串口命令 關閉linux端口命令
- 04-02linux文件命令重命名 linux重命名文件名
- 04-02linux中jobs命令 shell jobs命令
- 04-02linux命令注入過濾 linux 代碼注入
- 04-02linux依次執(zhí)行命令 linux命令的執(zhí)行過程
- 04-02linux命令注銷vnc linux命令行注銷用戶
- 04-02linux命令免輸入 linux配置免密登錄
- 04-02軟交換linux命令 軟交換網(wǎng)絡主要協(xié)議
- 04-02linux命令歷史記錄 linux查看歷史記錄的
- 04-02linux命令頁面 linux命令頁面中文
隨機閱讀
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 08-05DEDE織夢data目錄下的sessions文件夾有什
- 01-10SublimeText編譯C開發(fā)環(huán)境設置
- 01-11ajax實現(xiàn)頁面的局部加載
- 08-05dedecms(織夢)副欄目數(shù)量限制代碼修改
- 01-10C#中split用法實例總結
- 01-10delphi制作wav文件的方法
- 04-02jquery與jsp,用jquery
- 01-10使用C語言求解撲克牌的順子及n個骰子