天天看點

環境變量

使用者環境變量修改

按變量的生存周期來劃分,Linux變量可分為兩類,它們的修改方法如下:

(1)永久的:需要修改配置檔案,變量永久生效。

    常見的配置檔案包括:

    (1-1)/etc/profile:對所有使用者生效;此檔案為系統的每個使用者設定環境資訊,當使用者第一次登入時,該檔案被執行;并從/etc/profile.d目錄的配置檔案中搜集shell的設定

        例如:編輯/etc/profile檔案,添加CLASSPATH變量

        # vi /etc/profile

        添加一行:

   export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib

 修改後需要執行重新登入才能生效,也可以執行指令source /etc/profile來生效

    (1-2)/etc/bashrc:對所有使用者生效;為每一個運作bash shell的使用者執行此檔案.當bash shell被打開時,該檔案被讀取

        編輯方法如上,不再贅述

    (1-3)~/.bash_profile:僅會對目前使用者有效;每個使用者都可使用該檔案輸入專用于自己使用的shell資訊,當使用者登入時,該檔案僅僅執行一次

        例如:編輯guok使用者目錄(/home/guok)下的.bash_profile

        $ vi /home/guok/.bash.profile

        添加如下内容:

        export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib

    (1-4)~/.bashrc:僅會對目前使用者有效;該檔案包含專用于你的bash shell的bash資訊,當登入時以及每次打開新的shell時,該該檔案被讀取

        另外,~/.bashrc等中設定的變量(局部)隻能繼承/etc/profile中的變量,他們是"父子"關系

    綜述,對上述檔案修改,添加你需要的變量,在啟動一個shell(終端,terminal)時,你所定義的變量均會生效的。

(2)臨時的:使用export指令聲明即可,變量隻在目前的shell(BASH)或其子shell(BASH)下是有效的,在關閉shell後失效,再打開新shell時就沒有這個變量,需要使用的話還需要重新定義

   在shell的指令行下直接使用[export 變量名=變量值] 定義變量

環境變量的檢視

(1)使用echo指令檢視單個環境變量。例如:

echo $PATH

(2)使用env檢視所有環境變量。例如:

env

(3)使用set檢視所有本地定義的環境變量。例如:

set

另外,unset可以删除指定的環境變量。

常用的環境變量

PATH 決定了shell将到哪些目錄中尋找指令或程式

HOME 目前使用者主目錄

HISTSIZE 曆史記錄數

LOGNAME 目前使用者的登入名

HOSTNAME 指主機的名稱

SHELL 目前使用者Shell類型

LANGUGE  語言相關的環境變量,多語言可以修改此環境變量

MAIL 目前使用者的郵件存放目錄

PS1 基本提示符,對于root使用者是#,對于普通使用者是$

Linux中如何設定服務自啟動

有時候我們需要Linux系統在開機的時候自動加載某些腳本或系統服務,主要用三種方式進行這一操作:

ln -s 在/etc/rc.d/rc*.d目錄中建立/etc/init.d/服務的軟連結(*代表0~6七個運作級别之一) 

chkonfig 指令行運作級别設定 

ntsysv 僞圖形運作級别設定 

注意:   www.2cto.com  

這三種方式主要用于以redhat為基礎的發行版

如果還不知道運作級别是什麼,那麼最好先看看相關資料再實驗

第一種方式:ln -s 建立啟動軟連接配接

在Linux中有7種運作級别(可在/etc/inittab檔案設定),每種運作級别分别對應着/etc/rc.d/rc[0~6].d這7個目錄:

Tips:/etc/rc[0~6].d其實是/etc/rc.d/rc[0~6].d的軟連接配接,主要是為了保持和Unix的相容性才做此策。

這7個目錄中,每個目錄分别存放着對應運作級别加載時需要關閉或啟動的服務,由詳細資訊可以知道,其實每個腳本檔案都對應着/etc/init.d/目錄下具體的服務。   www.2cto.com  

K開頭的腳本檔案代表運作級别加載時需要關閉的,S開頭的代表需要執行:

是以,當我們需要開機啟動自己的腳本時,隻需要将可執行腳本丢在/etc/init.d目錄下,然後在/etc/rc.d/rc*.d中建立軟連結即可:

  www.2cto.com  

[root@localhost ~]# ln -s /etc/init.d/sshd /etc/rc.d/rc3.d/S100ssh

此處sshd是具體服務的腳本檔案,S100ssh是其軟連結,S開頭代表加載時自啟動。

如果需要在多個運作級别下設定自啟動,則需建立多個軟連結,這種方式比較繁瑣,适用于自定義的服務腳本。

如果系統中已經存在某些服務(比如安裝apache時就會有httpd服務項),可以使用下面的兩種方式:

第二種方式:chkconfig

如果需要自啟動某些服務,隻需使用chkconfig 服務名 on即可,若想關閉,将on改為off。

在預設情況下,chkconfig會自啟動2345這四個級别,如果想自定義可以加上--level選項:

上面我們先将sshd服務的所有啟動級别關閉,然後使用--level選項啟動自定義級别;

Tips:--list選項可檢視指定服務的啟動狀态,chkconfig不帶任何選項則檢視所有服務狀态。

第三種方式:ntsysv 僞圖形   www.2cto.com  

ntsysv和chkconfig其實是一樣的,隻不過加上了圖形而已;

啟動ntsysv有兩種方式,一是直接在指令行中輸入ntsysv,二是使用setup指令,然後選擇系統服務:

預設情況下,目前運作級别為多少,在ntsysv中設定的啟動服務的級别便是多少,比如,我目前的運作級别是3,那麼我在僞圖形界面中選擇啟動服務後,它的運作級别也會是3。

如果想自定義運作級别可使用ntsysv --level方式:

以上三種操作需要保證服務腳本檔案可執行,并且要有root權限,其中,第一種方式多用于自定義腳本,第二、三種多用于系統已存在的服務,比如ftp、samba、ssh、httpd等等,并且,要做相關設定需要弄清楚運作級别的問題。

Tips:如果想手動啟動某服務,傳統的方式是 /etc/init.d 服務名 start。

實際上還可以這樣,service 服務名 start:

檢視CPU資訊 

使用下面的指令,就可以檢視到CPU的詳細資訊了。一般來講,多核的CPU,或者支援超線程的CPU,或者實體上的多個CPU,就會顯示出對應的條數的資訊。比如說雙核的CPU就會顯示2條CPU資訊,雙核超線程的CPU就會顯示出4條CPU資訊。雖然條數多了,但是基本資訊都一樣。 

#cat /proc/cpuinfo 

檢視記憶體資訊 

與檢視CPU資訊對應的,檢視記憶體資訊的指令就是: 

#cat /proc/meminfo 

檢視硬碟分區資訊 

使用下面的指令,可以看到目前硬碟的分區資訊,以及容量大小、已使用的空間和剩餘空間大小,還可以檢視每個分區的挂載點: 

#df -lh   www.2cto.com  

檢視硬碟的型号資訊 

可以使用下面的指令顯示實體硬碟的個數以及對應的接口,還有硬碟的具體型号資訊: 

#cat /proc/scsi/scsi 

硬碟大小

[root@ ~]# fdisk -l |grep Disk

Disk /dev/sda: 300.0 GB, 300000000000 bytes

linux 檢視檔案屬性指令

ls

    ls -a 檢視所有檔案

    ls -l 檢視詳細的屬性  

lsattr(chattr)

    檢視檔案的擴充屬性,

    如果檔案被 chattr +i   添加了寫保護,

    用lsattr可以看到添加的屬性

    lsattr [-adRvV] [檔案或目錄...]選項介紹:

    -a: 顯示所有檔案和目錄,包括隐藏檔案;

    -d: 顯示目錄名稱,而非其内容;

    -R: 遞歸處理,将指定目錄下的所有檔案及子目錄一并處理;

    -v: 顯示檔案或目錄版本;

    -V: 顯示版本資訊

file

檢視檔案的類型

stat

    檢視檔案的狀态 

上一篇: 滑鼠手勢
下一篇: Git 版本控制

繼續閱讀