歡迎您光臨本站 註冊首頁

Windows用戶入門Linux八問

←手機掃碼閱讀     火星人 @ 2014-03-24 , reply:0

用慣了Windows操作系統的用戶,就像Matrix中那些捨不得拔掉插頭的人們一樣,一旦接觸Linux這樣的操作系統,總是以Windows的思維方式和眼光來使用和看待Linux,往往鬧出很多有趣的笑話。下面我們就來看一看Windows用戶入門Linux都會遇到哪些問題,如何解決這些問題。

cd到哪裡去了

接觸Linux/Unix較少的人,進入Linux的某個目錄,常常會敲入cd命令查看當前路徑。結果當再次運行某個命令時,才發現自己已經換了地點,用了ls/dir后才回到主目錄。

在Linux下,用pwd命令可以查看當前絕對路徑,沒有任何參數的cd會返回用戶目錄。還有「~」符號也是指向用戶目錄的快捷方式。例如,在任何位置運行「~myapp」都會執行用戶目錄下的myapp文件。

當前目錄下的文件找不到

大概很多Linux新手都碰到過這樣的問題:明明這個執行文件就在當前目錄下,可敲入文件名稱系統卻提示找不到該命令?

在Linux下,系統只依據環境變數$PATH來搜索可執行命令,即便該命令就在當前目錄也不例外。在執行當前目錄下的文件時,需要在前面加上「./」,如./myapp。另外一種解決辦法是,在/etc/profile中修改$PATH變數,在最後加上「 :. 」。這樣,系統就多了一個搜索執行文件的位置,就是「.」,也就是當前目錄。該變數生效后,就可以如Windows一樣隨意執行當前文件了。

下載的程序不能執行

一些下載文件通常做成可執行文件,如J2sdk的bin文件。可下載之後執行該程序,系統卻提示沒有該命令或訪問拒絕。難道是下載文件有問題?

這是Windows用戶入門Linux最易受到困擾的地方。Linux並不像Windows那樣以文件後綴名來判斷該文件是否可執行,而是根據文件許可權設置。若當前用戶擁有相對應的x許可權,那麼該文件就是可執行的。例如文件a,所有者是root,許可權是rwxr--r--,那麼就只有root有x許可權,可以執行它。對其它用戶來說,該文件是不可執行的。所以如果執行某些文件失敗,應當首先檢查它的許可權,可以使用chmod +x 文件名,然後再執行。

沒有deltree命令

如何將整個目錄刪除,是Windows用戶在Linux中碰到的又一大問題。根據說明,Linux下刪除文件就是rm命令,可是鍵入rm 目錄名后,提示目錄不能刪除。

Linux中,rm可以執行能想到的任何刪除操作。以至於有經驗的Linux用戶反而害怕rm命令的強大,通常會在環境配置文件/etc/bashrc中加上alias rm rm -i,用rm -i參數取代默認的rm命令,這樣在刪除文件之前會讓用戶確認一次。刪除子目錄可以用「rm -rf 目錄名」,它不管有多少子目錄、多少文件一下子都可刪得乾乾淨淨。

在哪裡設置文件的隱含屬性

在Linux為何不能設置隱含屬性的文件?

其實在Linux中只要是以.開頭的文件,都是自動隱藏的。不信可用ls -a查看主目錄下是不是多了很多諸如.bashrc、.profile之類的文件,它們早就在那裡,只是沒發現而已。

找不到動態連接庫

在運行某些程序的時候,會提示libxx.xx.so無法找到。so文件就是Windows下的dll動態鏈接庫,是不是因為vbrun之類的庫沒有安裝?

這樣解釋基本上正確,但也不盡然。在使用源代碼編譯安裝的時候,可能未指定lib安裝目錄,那麼默認就會安裝到$PREFIX/lib下,也就是軟體安裝目錄下的lib目錄。如果一些其它軟體試圖調用這個目錄下的某個libiray,就可能出現上述情況,因為系統默認存放so文件的地方是/usr/lib。

解決的辦法有兩個,第一種是創建軟連結的方式,在/usr/lib下生成一個指向該文件的連接,如ln -s /usr/myapp/lib/my.so/usr/lib/my.so。這樣,當軟體在/usr/lib下找到my.so調用時,它實際是調用了/usr/myapp/lib/my.so文件。第二種方法是修改系統尋找so文件的路徑,編輯/etc/ldconf加入相應的路徑。也可以運行命令「ldconfig 路徑名」。

怎樣查找包含指定字元串的文件

Linux中的find命令很強大,可為什麼不支持查找含有某些字元串的文件?

Linux中的find是不支持這種查找方式。但Linux下可以很方便地用grep配合實現這樣的功能。例如,想要查找系統中所有包含「linux」字樣的文件,可以使用下面命令:

find / -name "*" -exec grep -l "linux" {} \



系統引導出了問題不能使用

fdisk /mbr和sys c:



Linux可以從任何環境啟動,只要它自身的系統文件沒有受到破壞。如果製作了一張GRUB啟動盤,這張盤就可以在任何地方啟動任何類型的Linux。例如,如果位於硬碟第二個分區的Linux無法引導,可以使用GRUB啟動,輸入下面代碼:

root (hd0,1)
kernel /boot/vmlinuz-2.4.x ro root=/dev/hda1
initrd /boot/initrd-2.4.x.img
boot



其中一些內核文件依據系統而有所差別,不清楚的時候可以按Tab鍵查看所有可能的項目。

鏈接

Linux小辭典(3)

X-Window

Unix的圖形窗口環境,它又被稱作X11或X,是許多用戶界面都需要的底層編程環境。

KDE

KDE(K Desktop Environment)是Linux最主要的用戶界面(窗口管理器)之一,是用Qt構建的。其網址為http://www.kde.org,最新版本為3.3。

GNOME

GNOME(GNU Network Object Model Environment)是一種用於Linux的用戶界面(窗口管理器),是用Gtk構建的。其網址為http://www.gnome.org,最新版本為2.0。

XFree86 X+Free +Intel x86

XFree86是Linux的一個X-Window系統版本。被GNOME、KDE和其它Linux用戶界面/窗口管理器所使用。其網址為http://www.xfree86.org,最新版本是4.3。

Virtual Desktop

虛擬桌面是一種將用戶的工作區擴展到計算機屏幕邊界以外的方法。該桌面可以上下左右滾動,就好像一個更大的桌面放置在玻璃屏幕後面,並且可以四處移動以顯示圖標、窗口及其它一些「在幕後」或視野以外的對象。

Window Manager

窗口管理器,一個圖形用戶界面(GUI)。它運行於X-Window之上,以便為用戶提供窗口、圖標、任務欄和其它桌面對象。

Kernel

內核是操作系統的核心,其它所有組件都依賴於它。內核管理諸如底層硬體交互及資源共享之類的任務,包括內存分配、輸入/輸出、安全性和用戶訪問。內核的版本序列使用三個數字錶示,例如2.4.10。版本號分為兩種,一種是產品序列用偶數表示;另一種是測試版用奇數表示。版本號越高表示功能越多。目前Linux主要發行版本使用的是2.4.xx內核。

LILO

LILO(LInux LOader)是Linux裝載程序。它是一種使用最多的分區引導管理器實用程序,能夠引導到Linux以外的操作系統。

GURB

GURB(Grand Unified bootload)是一個多重啟動管理器。它可以在多個操作系統共存時選擇引導哪個系統。和LILO相比,GRUB可以引導根分區在8.4GB以外的操作系統,不需要打補丁。GURB被認為是LILO替代者。

[火星人 ] Windows用戶入門Linux八問已經有807次圍觀

http://coctec.com/docs/linux/show-post-138180.html