Apt-file 命令

OS: Debian based systems
Wiki: apt-file-debianWiki

使用場景

當遇到“某某某命令是在那個包裏的”,或者“我要找某某命令應當下載那個軟件包”的時候可以用到這個命令。

比如說,我想要啓動qt配套的 qt-designer 和 qt-assistant,然後命令行給我報錯,提示:

➜ assistant 
assistant: could not exec '/usr/lib/qt5/bin/assistant': No such file or directory
➜ designer
designer: could not exec '/usr/lib/qt5/bin/designer': No such file or directory

碰到這種情況,我可以使用 apt-file 命令來查找這個二進制文件在哪個包裏面出現,比方說:

➜  apt-file search bin/assistant
qt5-assistant: /usr/lib/qt5/bin/assistant 
qt5-assistant: /usr/lib/x86_64-linux-gnu/qt5/bin/assistant
qtchooser: /usr/bin/assistant

(qtchooser只是一個wrapper,用於啓動sdk中的幫助,而剩下的是真正的二進制程序)

(其實sdk裏面已經包括了designer和assistant, 有qt creator的同學不用費勁去下載這兩個了)

安裝方式

可以使用apt 安裝

sudo apt update -y
sudo apt install apt-file -y

安裝完畢之後還需要通過apt-file更新一下數據庫,讓apt-file有對apt數據庫的訪問權限。(建議每次使用前都更新一下)

sudo apt-file update

其他用法

根據 wiki , apt-file還存在一個被動模式,可以被dpkg調用(好像是), 使用 dpkg -S 加上 文件名 來查詢。

➜  dpkg -S libmp3lame.so.0
libmp3lame0:amd64: /usr/lib/x86_64-linux-gnu/libmp3lame.so.0

官網提示:dpkg -S 的方案只能查詢本地 package , 而 apt-file 可以聯網查詢所有安裝和未安裝的 package.

Apt-get 歷史紀錄查詢

# 查看apt-get 手动安装的记录
zcat /var/log/apt/history.log.*.gz | cat - /var/log/apt/history.log | grep -Po '^Commandline: apt-get install (?!.*--reinstall)\K.*'

# 查看apt 手动安装的历史记录
zcat /var/log/apt/history.log.*.gz | cat - /var/log/apt/history.log | grep -Po '^Commandline: apt install (?!.*--reinstall)\K.*'

使用 SSH 命令代理上網

沒有SSH伺服器?你可以試着在某些公開SSH平台上永久獲得一台。
猛擊右側鏈接永久獲得SSH伺服器: 點擊前往SDF.org

SSR突然用不起來?你的路由器掛掉了?唯一的解決辦法不在牆內?
你需要一個方便而快速的方式直接使用你的伺服器作爲代理,而不通過一些複雜的諸如SSR/V2RAY的上網協議。
請敲入如下命令以使用 SSH 代理:

ssh -qTfnN -D 1080 [email protected]

這個命令會爲你在 后台 開放 1080 端口, 使用加密的 ssh 連接到 服務器,將其用作代理。
你接下來可以配合 swichyOmega 等瀏覽器插件 或者 直接在系統配置代理端口爲 1080/socks5 愉快的上網了!

Edit: 不用嘗試 ssh [email protected], 這個域名只映射了 web 服務.

Sudo 命令免輸入密碼

在網上搜了一下 sudo 免除密碼,發現幾個沒講清楚的地方。

於是我把這些誤區彙總一下,方便以後查看。

正確的 sudo 姿勢 ✔

爲了避免留下錯誤的第一印象,先提出來正確的sudo姿勢。

首先,在你的終端敲入如下指令:

sudo visudo # 用vi編輯 /etc/sudoers

在彈出的窗口中按 G 定位到 最後一行 ,按 o 另起一行,輸入:(複製然後 shift+insert 粘貼)

# Extra users can run sudo without password
# 請將 username 替換爲你的用戶名
username  ALL=(ALL:ALL) NOPASSWD: ALL

Esc , 輸入 :wq 保存退出。

註銷再登錄,sudo su 發現問題解決了!

錯誤的 SUDO 害死人 ✗

錯誤死法一:命令糊塗

糊里糊塗就別寫“ps”啦!

真的如他所說四行任意一條都可以嗎?

首先先不說前兩條屬於離題萬里 是添加到sudo 組而不是免密運行,第三行我實測過就是不行的。

因爲如果你沒有寫在 文件尾部 而是像文章所述寫在 root 下面的話你的用戶設置會被 %admin 組設置給覆蓋掉!最終什麼都不會發生!

糊塗寫法正確率 1/4, 25%。

錯誤死法二:修改 sudoers 權限

你知道怎麼切換到 root, 好棒棒喔

我且不說這個縫合怪明明已經是 root 了爲什麼還要添加寫權限,這個例子還算是安全的。網上有些教程直接讓你把 sudoers 的權限給予當前用戶,真是嚇得我一跳。系統文件的權限你也是可以隨便交付的,一旦交付這個賬戶就成爲單點故障,一個泄漏全盤泄漏。而且這種認爲 bug 被添加上去之後還不好查,畢竟沒人天天注意各個文件的權限。

錯誤死法三:使用自動應答

C某DN 上的一種普遍方法

這個… 何止是有隱患, 把它用在生產環境簡直就是報復社會。很明顯可以看到這個命令將 /tmp/pass 作爲緩衝區明文保存密碼, 用完連刪都懶得刪…

/tmp 目錄作爲一個權限開放的目錄,別人完全可以監控這個目錄的文件變化。所以就算是 pass 文件刪掉也是不安全的啦!

而且就算就算他直接將 echo 的內容定向到 sudo 裏面,也是不安全的。任何明文儲存的密碼都存在隱患(何況是存在環境變量裏!) sudo 之所以要密碼當然不是爲了來防管理員,如果有人有與你的電腦 “親密接觸” 的機會 , 他可以在很短的時間裏面將你的 管理員密碼 都搞到. ( 不過不要給別人這個機會就是了! )

Ubuntu 美化 – 安裝主題與插件

在執行以下步驟之前,請確認你可以訪問以下這兩個網站:

  • https://extensions.gnome.org/
  • https://www.gnome-look.org/

安裝依賴

在命令行執行以下命令。

sudo apt install gnome-shell-extensions # 安裝插件管理器
sudo apt install gnome-tweak-tool # 安裝主題管理器

訪問 Chrome 在線商店下載 瀏覽器配套插件。(使用其他瀏覽器就去網上搜插件)

點擊前往Chrome在線商店

然後訪問 extensions.gnome.org, 安裝 User Themes 和 Extensions。

配置完成之後訪問 Installed Extensions 應該看到如下畫面。

然後點進以下網址安裝 ocs-url 。這個軟件使你無需手動下載安裝主題,可以一鍵安裝。

OCS-URL: https://www.opendesktop.org/p/1136805/

定製外觀

安裝鼠標指針

我中意的鼠標指針是 Oreo Cursors,鏈接在下方

Oreo Cursors: https://www.gnome-look.org/p/1360254/

安裝完後請到 優化(Tweaks) 中設置。

安裝圖標包

我中意的圖標包是 這款 8.9 分高分的 Material 風格圖標包。

Tela Circle icons: https://www.gnome-look.org/s/Gnome/p/1359276/

這個還有一個姊妹包 叫 Tela icons, 辨識度比這個略高。不過我嫌那個風格不如這個統一,就選擇略這個。

安裝主題

請自行點擊下列鏈接安裝 Materia.

Materia: https://github.com/nana-4/materia-theme

注意! 你在裝完主題之後還可以進行一些配套設置!

Materia配套設置: https://github.com/nana-4/materia-theme#recommendations

安裝 額外的Shell

如果你喜歡一個看起來更加緊湊,更加 responsible 的工作環境,你可以選擇下面一款插件。

Material Shell: https://github.com/material-shell/material-shell

這一款插件算是 Material 在 Linux 上的集大成之作,將 你的 Linux 直接改造成一個類似安卓的界面。充分利用的屏幕空間使得工作區最大化,直接將工作區選項擺在屏幕左邊,而且如果你擁有一個類似 surface 的支持觸屏的設備,這個插件就是你的最佳選擇。
這個插件推薦的主題是 Plata, 但是也和 Materia 主題無縫結合。

定製 Grub

推薦下載這個主題,

Tela Grub theme: https://www.gnome-look.org/p/1307852/

然後解壓後直接

sudo bash ./install.sh

配置完成!

至此所有的配置都已經完成了!

安裝並配置 Fcitx 輸入法

OS: Ubuntu20.04 LTS

剛剛手賤重裝了我的 Ubuntu 系統,发現自帶的輸入法 ibus 中文體驗極差,故更新一篇安裝 fcitx 加配置主題的教程。

iBus 重新定義了 “垃圾”

下載安裝 fcitx

# fcitx-rime 屬於繁體輸入法,可選安裝
sudo apt install fcitx fcitx-googlepinyin fcitx-rime fcitx-module-cloudpinyin

apt 會自動把 fcitx 以及其依賴裝上。

注意! 某些直接安裝 fcitx-googlepinyin 其實是將 fcitx 作為依賴裝上了,這樣會導致依賴樹的關系雜亂,可能在未來 (你想刪除谷歌拼音的時候造成不可預料的事故)

接著輸入以下命令並按照提示配置輸入法為 fcitx.

im-config

現在重啟系統, 重啟完成之後應該可以看到 fcitx 將 ibus 取而代之了。
現在可以卸載 ibus.

sudo apt purge ibus

配置 中州韻

中州韻 不是默認在輸入法列表里,你需要點擊左下角的加號添加。(之後按 Ctrl + Shift 添加。)
而且我發現中州韻比簡體的谷歌拼音真的要好用太多,強烈推薦。

請在這裏下載輸入法的附加詞庫。

請看這裏配置模糊音方案:

如果你想要針對中州韻輸入法的某一個輸入方案(比如明月拼音),你需要在 ~/.config/fcitx/rime/ 目錄下新建一個專門的 yaml 來配置。比如說 朙月拼音的yaml 可以是 luna_pinyin.custom.yaml , 格式請見Github.

以下配置我希望全局生效,所以在 default.custom.yaml 中配置如下幾行:

# default.custom.yaml
patch:
  # 候選詞個數
  "menu/page_size": 9 

(模糊音請參照正則的語法進行查找替換,我是南方人分不清前鼻音後鼻音,所以配置這兩行。如果你不明白正則的語法請點擊 模糊音 參考大神配置。)

# luna_pinyin.custom.yaml
patch:
  # 模糊音
  'speller/algebra':
    - erase/^xx$/  

    # 模糊音定義
    - derive/([ei])n$/$1ng/            # en => eng, in => ing
    - derive/([ei])ng$/$1n/            # eng => en, ing => in

配置主題

主題配置的話我推薦以下這個主題 (個人感覺比較清爽,你也可以自己選擇。)

目前deepin論壇抽風訪問不了,等恢復訪問後我會繼續把步驟補上。
deepin論壇已經恢復訪問,我將兩款主題的壓縮包連同網頁archive放在我的網盤裏了,鏈接就在下方,請自取~

原帖地址: 點擊前往深度BBS論壇
原帖備份: 點擊前往web.archive.org
附件下載: 點擊從博客網盤下載 alaph 亮色主題
附件下載: 點擊從博客網盤下載 darkK 暗色主題

deepin論壇已經翻修完畢,恢復訪問了。這裏是我找到的使用體驗最好的兩款主題,由同一個大神製作,主題取自搜狗。
是的fcitx 是可以裝 搜狗輸入法的,但是出於一種奇怪的心理,我不想讓國產軟件姦污我這一台乾淨的linux機,所以沒有選擇裝 搜狗輸入法。

兩款可愛的主題截圖

請將兩款主題解壓後分別拷貝到 /usr/share/fcitx/skin/ 目錄下。

安裝 Tor 瀏覽器

OS: Ubuntu20.04 LTS

我主要用 tor 來測試我的網站的部署情況和打開一些不太好打開的網站。(很奇怪,像膜乎之類的網站即使在牆外也打開很慢,但是一掛上 Tor 速度就立馬飛起來。)

網上有相當一部分教程建議從軟件源安裝 tor 瀏覽器, 然而我記得在 Tor 官網上聲稱從軟件源獲取的 Tor-Brower 使用了 Tor 軟件包作為依賴, 但是 Tor 已經很長時間沒有更新, 存在安全隱患, 因此強烈不推薦, 所以我直接從官網下載安裝. 理論上之後 Tor-Browser 都能自動更新, 無需這樣手動安裝.

下載安裝 Tor

請猛擊 Tor 官網鏈接點擊 Linux 按鈕自行下載。

下載完畢後,在檔案所在目錄執行以下操作。

tar -xvJf tor-browser-linux64-10.0.2_en-US.tar.xz
sudo mv tor-browser_en-US/ /opt
sudo chown -R $USER:$USER /opt/tor-browser_en-US/
./start-tor-browser.desktop --register-app

配置完畢之後你可能需要重啓設備。

Tor-Browser 已經能夠啓動了

如果你的代理在歐美,建議直接鏈接到 tor 網路。如果你的代理在日韓, 你可能需要使用網橋。不建議在大陸直接使用tor ( 又被重點關注的風險 ) , 而網橋在大陸也被 Ban 的差不多, 請搭配雙重代理獲得最佳手感.