(已解決)Dropbox黏在我電腦裡,刪不掉...... [論壇 - Ubuntu安裝問題]


正在瀏覽:   1 名遊客


 到底部   前一個主題   下一個主題  [無發表權] 請登錄或者註冊

« 1 (2)


回覆: Dropbox黏在我電腦裡,刪不掉......
會員五級
註冊日期:
2012/4/22 10:50
所屬群組:
已註冊使用者
等級: 34
HP : 169 / 847
MP : 574 / 18561
EXP: 89
離線
ReliveChιcΣ 寫到:
最後會顯示:
rogerwu0321@rogerwu0321-ThinkPad-3:~$ ls /var/lib/dpkg/lock #
ls: 無法存取 /var/lib/dpkg/lock: 沒有此一檔案或目錄
rogerwu0321@rogerwu0321-ThinkPad-3:~$ sudo apt-get remove nautilus-dropbox #
[sudo] password for rogerwu0321:
E: dpkg 作業遭中斷,必須手動執行 'sudo dpkg --configure -a' 以修正問題。
rogerwu0321@rogerwu0321-ThinkPad-3:~$ sudo dpkg --configure -a
正在設定 ttf-mscorefonts-installer (3.4ubuntu3) ...
正在設定 nautilus-dropbox (0.7.1-2) ...

Dropbox is the easiest way to share and store your files online. Want to learn more? Head to http://www.dropbox.com/

^CTraceback (most recent call last):
File "/usr/bin/dropbox", line 1384, in <module>
ret = main(sys.argv)
File "/usr/bin/dropbox", line 1373, in main
result = commands[argv[i]](argv[i+1:])
File "/usr/bin/dropbox", line 806, in update
download()
File "/usr/bin/dropbox", line 529, in download
download = DownloadState()
File "/usr/bin/dropbox", line 248, in __init__
self.socket = urllib.urlopen("http://www.dropbox.com/download?plat=%s" % plat())
File "/usr/lib/python2.7/urllib.py", line 86, in urlopen
return opener.open(url)
File "/usr/lib/python2.7/urllib.py", line 207, in open
return getattr(self, name)(url)
File "/usr/lib/python2.7/urllib.py", line 358, in open_http
return self.http_error(url, fp, errcode, errmsg, headers)
File "/usr/lib/python2.7/urllib.py", line 371, in http_error
result = method(url, fp, errcode, errmsg, headers)
File "/usr/lib/python2.7/urllib.py", line 664, in http_error_301
return self.http_error_302(url, fp, errcode, errmsg, headers, data)
File "/usr/lib/python2.7/urllib.py", line 634, in http_error_302
data)
File "/usr/lib/python2.7/urllib.py", line 660, in redirect_internal
return self.open(newurl)
File "/usr/lib/python2.7/urllib.py", line 207, in open
return getattr(self, name)(url)
File "/usr/lib/python2.7/urllib.py", line 436, in open_https
h.endheaders(data)
File "/usr/lib/python2.7/httplib.py", line 954, in endheaders
self._send_output(message_body)
File "/usr/lib/python2.7/httplib.py", line 814, in _send_output
self.send(msg)
File "/usr/lib/python2.7/httplib.py", line 776, in send
self.connect()
File "/usr/lib/python2.7/httplib.py", line 1161, in connect
self.sock = ssl.wrap_socket(sock, self.key_file, self.cert_file)
File "/usr/lib/python2.7/ssl.py", line 381, in wrap_socket
ciphers=ciphers)
File "/usr/lib/python2.7/ssl.py", line 143, in __init__
self.do_handshake()
File "/usr/lib/python2.7/ssl.py", line 305, in do_handshake
self._sslobj.do_handshake()
KeyboardInterrupt
dpkg:在處理 nautilus-dropbox (--configure) 時發生錯誤:
子程序 已安裝的 post-installation script 中斷
正在進行 libc-bin 的觸發程式 ...
ldconfig deferred processing now taking place
正在設定 wine-staging-i386 (1.7.37~ubuntu12.04.1) ...
正在設定 wine-staging (1.7.37~ubuntu12.04.1) ...
正在設定 pipelight-multi (0.2.8.1~ubuntu12.04.1) ...
正在進行 libc-bin 的觸發程式 ...
ldconfig deferred processing now taking place
在處理時有錯誤發生:
nautilus-dropbox





恭喜解決問題了


另外做個測試報告,雖然應該沒有人會再追究了,所以僅供參考,呵呵。


以下測試環境在「Lubuntu 14.04 32位元」上測試的。

我有嘗試要還原樓主遇到狀況。

所以我在安裝的時候,


$ sudo apt-get install nautilus-dropbox



在出現下面訊息的時候,刻意給他關閉terminal。


Dropbox is the easiest way to share and store your files online. Want to learn more? Head to https://www.dropbox.com/

Downloading Dropbox... 1%




然後再執行


$ sudo apt-get remove nautilus-dropbox



就會出現


E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable)
E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?



然後再執行刪除「/var/lib/dpkg/lock」這個檔。


$ sudo rm /var/lib/dpkg/lock



再一次執行


$ sudo apt-get remove nautilus-dropbox



就會出現


E: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem.



這時候執行


$ sudo dpkg --configure -a



就會出現下面的訊息


Setting up nautilus-dropbox (1.6.1-1) ...

Dropbox is the easiest way to share and store your files online. Want to learn more? Head to https://www.dropbox.com/

Downloading Dropbox... 1%



然後這裡就會出現分歧點了。

這時候如果按下「ctrl+c」,就會出現樓主所提的狀況。 注意「1%^CTraceback」那裡,還有「KeyboardInterrupt」。


Downloading Dropbox... 1%^CTraceback (most recent call last):
File "/usr/bin/dropbox", line 1436, in <module>
ret = main(sys.argv)
File "/usr/bin/dropbox", line 1425, in main
result = commands[argv[i]](argv[i+1:])
File "/usr/bin/dropbox", line 845, in update
download()
File "/usr/bin/dropbox", line 567, in download
for progress, status in download.copy_data():
File "/usr/bin/dropbox", line 226, in download_file_chunk
chunk = f.read(bufsize)
File "/usr/lib/python2.7/socket.py", line 380, in read
data = self._sock.recv(left)
File "/usr/lib/python2.7/httplib.py", line 567, in read
s = self.fp.read(amt)
File "/usr/lib/python2.7/socket.py", line 380, in read
data = self._sock.recv(left)
File "/usr/lib/python2.7/ssl.py", line 341, in recv
return self.read(buflen)
File "/usr/lib/python2.7/ssl.py", line 260, in read
return self._sslobj.read(len)
KeyboardInterrupt
dpkg: error processing package nautilus-dropbox (--configure):
subprocess installed post-installation script was interrupted
Errors were encountered while processing:
nautilus-dropbox



然後再執行


$ sudo apt-get remove nautilus-dropbox



就有時候很正常


有時候也可能是這種狀況

執行


$ sudo dpkg --configure -a


就會出現下面的訊息


Setting up nautilus-dropbox (1.6.1-1) ...

Dropbox is the easiest way to share and store your files online. Want to learn more? Head to https://www.dropbox.com/

Downloading Dropbox... 7%



這時候如果按下「ctrl+c」


Downloading Dropbox... 7%^CTraceback (most recent call last):
File "/usr/bin/dropbox", line 1436, in <module>
ret = main(sys.argv)
File "/usr/bin/dropbox", line 1425, in main
result = commands[argv[i]](argv[i+1:])
File "/usr/bin/dropbox", line 845, in update
download()
File "/usr/bin/dropbox", line 567, in download
for progress, status in download.copy_data():
File "/usr/bin/dropbox", line 226, in download_file_chunk
chunk = f.read(bufsize)
File "/usr/lib/python2.7/socket.py", line 380, in read
data = self._sock.recv(left)
File "/usr/lib/python2.7/httplib.py", line 567, in read
s = self.fp.read(amt)
File "/usr/lib/python2.7/socket.py", line 380, in read
data = self._sock.recv(left)
File "/usr/lib/python2.7/ssl.py", line 341, in recv
return self.read(buflen)
File "/usr/lib/python2.7/ssl.py", line 260, in read
return self._sslobj.read(len)
KeyboardInterrupt
dpkg: error processing package nautilus-dropbox (--configure):
subprocess installed post-installation script was interrupted
dpkg: error: failed to remove my own update file /var/lib/dpkg/updates/0000: No such file or directory



這時候執行


$ sudo apt-get remove nautilus-dropbox



就出現

E: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem.



然後再執行


$ sudo dpkg --configure -a



就會出現

dpkg: error: parsing file '/var/lib/dpkg/updates/0001' near line 0:
newline in field name `#padding'



所以就把「/var/lib/dpkg/updates/0001」刪除。


$ sudo rm /var/lib/dpkg/updates/0001



然後再執行


$ sudo apt-get remove nautilus-dropbox




我測試的過程,其實還出現蠻多例外狀況的,

例如,還有出現這個


1 not fully installed or removed.
E: Could not get lock /var/cache/apt/archives/lock - open (11: Resource temporarily unavailable)
E: Unable to lock directory /var/cache/apt/archives/



怎麼出現的,我也不是很確定,
我只有感覺是中斷點不同,產生的例外不一樣。

最終的結論是

執行下面的指令時,盡量不要去按「ctrl+c」中斷。


$ sudo dpkg --configure -a



這個案例會出現下面的訊息,應該是在執行下載的流程,所以需要一些時間。


Setting up nautilus-dropbox (1.6.1-1) ...

Dropbox is the easiest way to share and store your files online. Want to learn more? Head to https://www.dropbox.com/

Downloading Dropbox... 7%





另外測試發現


$ sudo aptitude remove nautilus-dropbox



就不會遇到這些鎖定的問題。

沒有去深究,所以也不曉得其中實作的機制。

以上只是就單純測試過程中的感覺來說,僅供參考。


2015/3/1 23:24
應用擴展 工具箱
回覆: (已解決)Dropbox黏在我電腦裡,刪不掉......
版主
註冊日期:
2008/7/14 0:03
來自 螢幕的另一端
所屬群組:
網站管理員
已註冊使用者
討論區管理群
等級: 32
HP : 0 / 798
MP : 497 / 26315
EXP: 95
離線
真有研究精神
分享一下我自己使用 apt-get 與 aptitude 的經驗

使用 apt-get install 來安裝軟體出錯或中斷,就只能使用 apt-get -f install 來修復
同理,使用 aptitude install 來安裝軟體出錯或中斷,就只能使用 aptitude -f install 來修復

絕不可混用,但問題就在於,當我們使用系統內建的圖型界面的"系統更新"出錯或中斷時
你猜它是用 apt-get 來安裝更新檔還是用 aptitude ?
我觀察後發現,它是使用 apt-get 來安裝更新檔

因為第一次我不曉得,強制使用 aptitude -f install 來修復,結果越修越糟,幫我移除了許多套件,最後連桌面也進不去了...

2015/3/2 1:33
應用擴展 工具箱
回覆: (已解決)Dropbox黏在我電腦裡,刪不掉......
會員五級
註冊日期:
2012/4/22 10:50
所屬群組:
已註冊使用者
等級: 34
HP : 169 / 847
MP : 574 / 18561
EXP: 89
離線
夢見草 寫到:
真有研究精神
分享一下我自己使用 apt-get 與 aptitude 的經驗

使用 apt-get install 來安裝軟體出錯或中斷,就只能使用 apt-get -f install 來修復
同理,使用 aptitude install 來安裝軟體出錯或中斷,就只能使用 aptitude -f install 來修復

絕不可混用,但問題就在於,當我們使用系統內建的圖型界面的"系統更新"出錯或中斷時
你猜它是用 apt-get 來安裝更新檔還是用 aptitude ?
我觀察後發現,它是使用 apt-get 來安裝更新檔

因為第一次我不曉得,強制使用 aptitude -f install 來修復,結果越修越糟,幫我移除了許多套件,最後連桌面也進不去了...



這個我有類似的經驗,在「這篇討論」。

哪時候是下「sudo apt-get install -f」,不過是有出現再次確認的訊息,我沒注意看,就直接按下「Enter」了,Orz...


我目前的使用習慣,還是都用下指令來安裝套件。
會用圖形界面的機會就比較少,通常是想要瀏覽,看有哪些軟體可用,才會去用它,通常只用來查詢,不用來安裝。

目前都慣用dpkg和apt(apt-get和apt-cache)。

aptitude沒在使用,所以我也漸漸忘了有這個工具可以使用

因為懶,又容易忘,所以只有記一套,常用就會記得了,我常用的也只有那幾個。

另外我有建立一個「索引」,給一開始摸索的人,有個指引。

對於套件管理,我還沒研究透徹,只有用到日常會用的功能而已,
大家有使用上的心得,就希望大家不吝分享摟


2015/3/2 11:07
應用擴展 工具箱
回覆: (已解決)Dropbox黏在我電腦裡,刪不掉......
版主
註冊日期:
2008/7/14 0:03
來自 螢幕的另一端
所屬群組:
網站管理員
已註冊使用者
討論區管理群
等級: 32
HP : 0 / 798
MP : 497 / 26315
EXP: 95
離線
之前大概有看過介紹,好象說 aptitude 比 apt-get 來的聰明或是套件的管理比較好一些,好象不少人推薦,也有一說,說是未來aptitude將會取代apt-get了....

它們兩個在套件衝突管理的部份,我用起來倒是覺得沒什麼差別,也沒覺得哪一個特別聰明,反倒是真有遇到套件衝突的時候,兩個都得要試一試才行,因為它們兩個還真有不同的解決方案,有時是apt-get移除的套件少,有時是aptitude移除的套件少,沒有哪個特別突出。

我會用aptitude的原因有二:
1. aptitude 這一個指令就可以做大部份的操作了 ,不象apt-get 還分 apt-cache...等等許多指令
比如說,我要裝一個套件,不記得完整套件名,就要用搜尋的
root@xx:#aptitude search vncviewer

p gvncviewer - VNC viewer using gtk-vnc
p gvncviewer:i386 - VNC viewer using gtk-vnc
v vncviewer -
v vncviewer:i386 -
i xtightvncviewer - virtual network computing client software for X
p xtightvncviewer:i386 - virtual network computing client software for X
上面的最前面的字母有意義,就可以知道哪些套件是我們裝過的
i是已安裝
v是虛擬套件
p是未安裝套件

而 apt-get 就不行了,就得用另一個指令
root@xx:# apt-cache search vncviewer

gvncviewer - VNC viewer using gtk-vnc
tightvncserver - virtual network computing server software
xtightvncviewer - virtual network computing client software for X
vnc4server - Virtual network computing server software
x2vnc - Link a VNC and an X display together, simulating a multiheaded display
所顯示的資訊太少

2.打指令的順手度
我在打aptitude這個指令時,我只要打 apti 之就可以按tab鍵補齊指令
而在打apt-get這個指令時,我就要打到 apt-g 才可以按tab鍵補齊指令

apti 只要打4個字
apt-g 就要打5個字
差那一個字,差很多呀~ 經常在打時你就會感覺差很多
尤其是那個 apt-g 裡的那個 - 減號特別難打,小姆指要移動的很遠(不高興你讓我的小姆指太過操勞了) 降低我整個打指令的流暢度,這點對我來說很是困擾,所以最後我選擇常用的指令是 aptitude 而不是 apt-get

不知道samwhelp你是怎麼克服這個困擾的?
還是你根本沒有覺得這是困擾,就是打的慢一些而已,而且也沒有常在裝套件,所以這指令就打的少了,也就沒那麼困擾了?

2015/3/2 12:25
應用擴展 工具箱
回覆: (已解決)Dropbox黏在我電腦裡,刪不掉......
會員五級
註冊日期:
2012/4/22 10:50
所屬群組:
已註冊使用者
等級: 34
HP : 169 / 847
MP : 574 / 18561
EXP: 89
離線
夢見草 寫到:
之前大概有看過介紹,好象說 aptitude 比 apt-get 來的聰明或是套件的管理比較好一些,好象不少人推薦,也有一說,說是未來aptitude將會取代apt-get了....

它們兩個在套件衝突管理的部份,我用起來倒是覺得沒什麼差別,也沒覺得哪一個特別聰明,反倒是真有遇到套件衝突的時候,兩個都得要試一試才行,因為它們兩個還真有不同的解決方案,有時是apt-get移除的套件少,有時是aptitude移除的套件少,沒有哪個特別突出。

我會用aptitude的原因有二:
1. aptitude 這一個指令就可以做大部份的操作了 ,不象apt-get 還分 apt-cache...等等許多指令
比如說,我要裝一個套件,不記得完整套件名,就要用搜尋的
root@xx:#aptitude search vncviewer

p gvncviewer - VNC viewer using gtk-vnc
p gvncviewer:i386 - VNC viewer using gtk-vnc
v vncviewer -
v vncviewer:i386 -
i xtightvncviewer - virtual network computing client software for X
p xtightvncviewer:i386 - virtual network computing client software for X
上面的最前面的字母有意義,就可以知道哪些套件是我們裝過的
i是已安裝
v是虛擬套件
p是未安裝套件

而 apt-get 就不行了,就得用另一個指令
root@xx:# apt-cache search vncviewer

gvncviewer - VNC viewer using gtk-vnc
tightvncserver - virtual network computing server software
xtightvncviewer - virtual network computing client software for X
vnc4server - Virtual network computing server software
x2vnc - Link a VNC and an X display together, simulating a multiheaded display
所顯示的資訊太少

2.打指令的順手度
我在打aptitude這個指令時,我只要打 apti 之就可以按tab鍵補齊指令
而在打apt-get這個指令時,我就要打到 apt-g 才可以按tab鍵補齊指令

apti 只要打4個字
apt-g 就要打5個字
差那一個字,差很多呀~ 經常在打時你就會感覺差很多
尤其是那個 apt-g 裡的那個 - 減號特別難打,小姆指要移動的很遠(不高興你讓我的小姆指太過操勞了) 降低我整個打指令的流暢度,這點對我來說很是困擾,所以最後我選擇常用的指令是 aptitude 而不是 apt-get

不知道samwhelp你是怎麼克服這個困擾的?
還是你根本沒有覺得這是困擾,就是打的慢一些而已,而且也沒有常在裝套件,所以這指令就打的少了,也就沒那麼困擾了?


我還蠻常使用apt-get的。除了「apt-get install」,最近最常打的是「apt-get download」和「apt-get source」。

呵呵,關於你說的「打指令的順手度」這個問題,
我以前是還蠻喜歡用tab的,不過最近幾年,強迫自己打完整的字,
所以通常我是直接打完整的apt-get,已經成為習慣了,所以就沒有卡卡的感覺。
還有以前也不習慣單字裡面有大寫,後來也是打習慣了,漸漸就不是困擾了,反而成為反射性動作。
不過我還是會用tab拉,因為有些單字沒特別去記,還是記不住。

另外,這是我卡住的拉,我一直記不住aptitude,雖然它跟attitude很像。但我內心好像抗拒「aptitude」這個單字。
不過其實這是可以克服的拉,只要多打幾次就會習慣了。
剛發現原來「aptitude」也是個有意義的單字。
apt」也是。

就像apt-get,我以前也會覺得,為啥要打那麼長的字。
還有為啥要分成兩個apt-get和apt-cache,直接一個apt不是很好。印象中分成兩個,好像跟權限的問題有關。
像是一些語言環境的套件管理,也都只有一個指令搞定,如npmcomposer

不過最近幾年打完整的字習慣後,漸漸有不同的感覺,
對用「apt-get」和「apt-cache」,反而趨向好感,而且搭配dpkg來用,感覺更讚。
就連現在apt新版有提供「apt」這個指令。
我也還是習慣用「apt-get」和「apt-cache」。
年紀漸漸大了,有時候就習慣某些作法,沒特地強迫去改,或特別的困擾,就好像會沿用下去了,說穿了,就是我懶,Orz...

另外「apt」目前的功能應該也還沒那麼完整,初步感受,還沒認真使用。

不過我也該找時間來研究一下「aptitude」的用法
您分享的 aptitude search 的用法,讚喔!

結論是,以前有時候觀點,到了某些時間點,有時候會不一樣。以前不喜歡的,現在反而喜歡。
所以針對有些狀況,我就會保留一些彈性的空間,不會很強硬的堅持一定要怎樣。
當然有些時候還是很堅持拉,我龜毛的症狀發作,沒藥醫。



另外在「Ubuntu TW Wiki」查了關於「Aptitude」和「Synaptic」,先紀錄一下,有興趣的可以參考閱讀喔。

2015/3/2 13:16
應用擴展 工具箱

« 1 (2)

 [無發表權] 請登錄或者註冊


可以查看帖子.
不可發帖.
不可回覆.
不可編輯自己的帖子.
不可刪除自己的帖子.
不可發起投票調查.
不可在投票調查中投票.
不可上傳附件.
不可不經審核直接發帖.