Windows

作為前 Windows 使用者,如何適應 Linux?

  • January 19, 2022

我已經全職使用 linux 大約 8 年了。有時我會幫助其他人從 windows 遷移到 linux。因為我不經常使用windows,所以我經常發現自己忘記了一些作業系統之間的差異。

我想要一份可以給這些使用者的指南,以幫助他們更適應使用 linux。該指南應包括驅動器安裝系統(C:\bar\/foo/bar/)和軟體安裝等內容。

那裡有很多名為“從 Windows 遷移/移動到 linux”或類似的指南,但幾乎所有這些指南似乎都充滿了 linux 宣傳或安裝說明。這對於其他目的來說很好,但我想要一個已經決定搬家的人的指南(例如,因為他們喜歡開源的概念),並且已經為他們安裝了系統。所以安裝後“我已經從 Windows 遷移到 linux,現在怎麼辦?” 一種涵蓋普通 Windows 使用者(使用電腦進行網上沖浪、文件編輯、看電影、玩遊戲等的人)可能遇到的實際差異(即非哲學或高度技術性)的指南。有沒有這樣的指南?

Microsoft Windows 和 GNU/Linux 以及其他類 UNIX 系統基於非常不同的使用者互動方法。事實上,最煩人的事情之一是當人們試圖映射概念時,例如,當有人抱怨某些發行版預設不提供圖形登錄螢幕時,因為它“違反直覺”(閱讀:它違背了終生使用 Windows NT 的人)。

關於這一點的最佳建議是:把你的期望留在門口,不要尋找“對等”,相反,把它當作你正在嘗試學習的一門與你的母語完全不同的外語。詢問如何做到這一點以及如何做到這一點將幫助您學習一些東西,但請始終記住,您需要學習新的邏輯,新的哲學,以及您開始了解的系統背後的設計決策和期望使用與您來自的系統有很大不同。

恕我直言,一個好主意確實是總結一些更重要的差異,以便新人熟悉它們並知道有什麼要學習的。

  • 就像 sr_ 提到的,命令行。即使 Windows 的非 NT 分支是在命令行作業系統之上啟動的,它也與 UNIX shell 相去甚遠。

    • 告訴使用者 shell 以及你可以用它們做什麼,如果他們知道 MS-DOS 或 Windows 命令提示符,警告他們功能和特性有很大不同,知道 UNIX shell 可以同時完成多項任務例如,一堆文件。它使您可以從小而簡單的實用程序建構塊。UNIX shell 是許多人在 UNIX 世界的日常生活中唯一需要的東西。
    • 向使用者解釋 shell 和終端(或終端仿真器)之間有更清晰的分離也是我要做的事情,這將有助於消除未來可能出現的一些誤解,並提供一個在 UNIX 領域的選擇範例。Shell 是您用來執行命令、啟動程序和執行shell 腳本的東西。有幾個貝殼。
    • 與 Windows NT 不同,Windows NT 啟動圖形界面並從圖形環境啟動東西,X 更像是 UNIX 下的使用者程序,您可以從文本終端啟動,即使許多發行版預設啟動一些圖形啟動時的登錄螢幕。
  • 文件系統

    • 不同的規則,不同的約定。你可以使用你想要的文件名,但是除了被皺眉之外,空格實際上會在很多地方中斷。告訴他們不要在名稱中使用空格可能是個好主意,如果他們想使用腳本進行一些批處理,這會省去頭疼的問題。
    • 不同的文件系統沒有單獨的根,只有一個根/可以統治它們。安裝後,您不會完全看到一個文件系統與另一個文件系統之間的區別(除非由於文件系統限製而不允許您執行某些操作,例如 FAT 中的名稱)。
    • 告訴他們有關連結的資訊可能會很有趣,這些連結實際上在 Windows NT 下可用,但最終使用者並不經常使用。並解釋這不是“桌面快捷方式”的代名詞。
    • 傳統方法是將文件系統列在fstab. 儘管存在一些技巧來處理您朋友的隨身碟和一些隨機文件,但值得一提的是,它有一個fstab以及它的作用。然後告訴他們有關pmount或其他工具可以讓他們在執行中安裝,例如,筆式驅動器。
  • 權限:處理可熱插拔的設備,如 pendrives,或用於寫入內容的設備(如 DVD 刻錄機),或者說網路攝像頭和藍牙加密狗,需要使用者獲得使用設備的權限。這是一件好事,但有些使用者可能會對此產生衝突,以至於有些人甚至開始製作工具,讓通過圖形登錄螢幕登錄的人自動使用這些設備…… Windows 也有類似的分離,但是由於設計不良的工具的回饋循環會因非管理員帳戶而失敗,因此不鼓勵人們在 Windows 下使用非特權帳戶,人們最終基本上沒有意識到將管理帳戶留給管理帳戶的想法目的,使用不那麼特權的帳戶使用其他所有內容。告訴他們susudo(如果他們使用的話),關於用於權限管理的組(例如,Gentoo 下的外掛開發和遊戲)。

    • (同時,警告他們,組中的更改只有在您從真實終端登錄後才會生效,任何正在執行的帳戶都不會看到這一點;我不知道 Windows 是如何做到這一點的,但我見過很多人在這個問題上發生衝突……)
  • 選擇:有很多方法可以做同樣的事情,有很多事情你可以為同樣的目的做。不同的外殼,不同的視窗管理器,不同的網路瀏覽器,不同的終端模擬器。提醒他們,他們看到的第一件事並不是他們可以使用的唯一東西,即使發行版預設使用它,也有可能有替代品。

  • 包管理:告訴他們 Linux 如何處理包管理,並提示不要盲目地從包管理器中安裝包,就像從程序網站下載普通的 .EXE 一樣。

TL;DR實際上應該是:不要假設事物類似於 Windows,請記住您正在處理不同的作業系統,在不同的世界中。

引用自:https://unix.stackexchange.com/questions/62708