<var id="fnfpo"><source id="fnfpo"></source></var>
<rp id="fnfpo"></rp>

<em id="fnfpo"><object id="fnfpo"><input id="fnfpo"></input></object></em>
<em id="fnfpo"><acronym id="fnfpo"></acronym></em>
  • <th id="fnfpo"><track id="fnfpo"></track></th>
  • <progress id="fnfpo"><track id="fnfpo"></track></progress>
  • <tbody id="fnfpo"><pre id="fnfpo"></pre></tbody>

  • x
    x

    Linux常用問題

    發布時間:2011-12-19 20:11    發布者:諸葛孔明
    關鍵詞: linux
    0)序言
    日有一知,當有一錄,自09年來,工作所需,接觸開源平臺,對Linux常有涉獵,其間問題,記錄在案,雖為敝帚,不敢自珍,所記條目,并未嚴格整理,但愿于后來者有所裨益.


    1)常用
    查看某個命令的路徑
    which:查看某個命令的路徑,該命令在PATH變量配置的路徑中尋找命令,并給出第一個查詢結果返回



    查看用戶信息的幾種方法
    finger

    id

    groups



    刪除目錄
    果目錄為空,可以用 rmdir 刪除 如果目錄不為空,可以用rm -rf 刪除



    創建符號鏈接(快捷方式)
    ln -s {target-filename} {symbolic-filename}

    For example create softlink for /webroot/home/httpd/test.com/index.php as /home/vivek/index.php, enter the following command:
    ln -s /webroot/home/httpd/test.com/index.php /home/vivek/index.php
    ls -l



    查看系統啟動日志
    dmesg | more



    grep
    忽略大小寫

    grep -i



    隨機產生網卡地址
    #!/bin/sh
    exec 2>/dev/null
    dd if=/dev/urandom bs=1 count=6 | od -t x1 | sed '2d;s/^0\+ //;s/ /:/g'



    添加path變量的三種方法
    1)修改/etc/profile文件,此修改對全局用戶有效

    2)修改.bashrc文件,可以精確到用戶(只對當前用戶有效)

    3)直接在shell下加入變量,shell退出則失效



    按照時間順序列出文件
    ls –t



    按照時間逆序列出文件(新文件在后)
    ls –rt (r 代表reverse意,可以逆轉所有排序)



    ls在當前目錄下查找某個文件,但不列出子文件夾中的內容
    ls –d "pattern"



    拷貝一個目錄下的所有文件
    cp -R



    修改fstab后如何不重啟加載所有文件系統
    mount –a



    移動文件夾
    mv src dest



    查看linux版本
    1. 查看內核版本命令:
      1) [root@q1test01 ~]# cat /proc/version
       Linux version 2.6.9-22.ELsmp (bhcompile@crowe.devel.redhat.com) (gcc version 3.4.4 20050721 (Red Hat 3.4.4-2)) #1 SMP Mon Sep 19 18:00:54 EDT 2005
      2) [root@q1test01 ~]# uname -a
      Linux q1test01 2.6.9-22.ELsmp #1 SMP Mon Sep 19 18:00:54 EDT 2005 x86_64 x86_64 x86_64 GNU/Linux
      3) [root@q1test01 ~]# uname -r
      2.6.9-22.ELsmp
      2. 查看linux版本:
      1) 登錄到服務器執行 lsb_release -a ,即可列出所有版本信息,例如:
      [root@3.5.5Biz-46 ~]# [root@q1test01 ~]# lsb_release -a
      LSB Version: :core-3.0-amd64:core-3.0-ia32:core-3.0-noarch:graphics-3.0-amd64:graphics-3.0-
      ia32:graphics-3.0-noarch
      Distributor ID: RedHatEnterpriseAS
      Description: Red Hat Enterprise Linux AS release 4 (Nahant Update 2)
      Release: 4
      Codename: NahantUpdate2
      注:這個命令適用于所有的linux,包括Redhat、SuSE、Debian等發行版。
      2) 登錄到linux執行cat /etc/issue,例如如下:
      [root@q1test01 ~]# cat /etc/issue
      Red Hat Enterprise Linux AS release 4 (Nahant Update 2)
      Kernel \r on an \m
      3) 登錄到linux執行cat /etc/redhat-release ,例如如下:
      [root@q1test01 ~]# cat /etc/redhat-release
      Red Hat Enterprise Linux AS release 4 (Nahant Update 2)
      注:這種方式下可以直接看到具體的版本號,比如 AS4 Update 1
      4)登錄到linux執行rpm -q redhat-release ,例如如下:
      [root@q1test01 ~]# rpm -q redhat-release
      redhat-release-4AS-3
      注:這種方式下可看到一個所謂的release號,比如上邊的例子是3
      這個release號和實際的版本之間存在一定的對應關系,如下:
      redhat-release-3AS-1 -> Redhat Enterprise Linux AS 3
      redhat-release-3AS-7.4 -> Redhat Enterprise Linux AS 3 Update 4
      redhat-release-4AS-2 -> Redhat Enterprise Linux AS 4
      redhat-release-4AS-2.4 -> Redhat Enterprise Linux AS 4 Update 1
      redhat-release-4AS-3 -> Redhat Enterprise Linux AS 4 Update 2
      redhat-release-4AS-4.1 -> Redhat Enterprise Linux AS 4 Update 3
      redhat-release-4AS-5.5 -> Redhat Enterprise Linux AS 4 Update 4
      另:第3)、4)兩種方法只對Redhat Linux有效。



    2)啟動相關
    如何自動mount
    添加開機啟動后自動mount的文件系統,可以通過在fstab中添加項完成,比如添加一個windows的共享連接



    修改fstab后如何不重啟加載所有文件系統
    mount –a



    添加一個需要在啟動時運行的服務:
    方法一:在rc3.d中創建一個link

    方法二:在rc.local中加入啟動項



    init.d,rc[X].d 目錄關系
    在這個目錄下的檔案都是連結檔,均指向到 /etc/rc.d/init.d 這個目錄下,而這個 /etc/rc.d/init.d 目錄則是以 Linux 的 rpm 安裝方法時,設定一些服務的啟動目錄。舉個例子來說,如果你要重新啟動 sendmail 的話,而且你的 sendmail 是以 rpm 來安裝的,那么下達 /etc/rc.d/init.d/sendmail restart 就可以直接啟動 sendmail 啰!所以你即可知道 /etc/rc.d/init.d 里面檔案的主要功能!因此,當你的 run-level 內的 scripts 要啟動哪寫服務呢,呵呵!就將檔案連結到該 init.d 目錄下的檔案并加以啟動即可啰!也就是說『當你以 文字模式 ( run-level=3 ) 啟動 Linux 時,你的系統在經過 BIOS、 MBR、 Kernel、 init、/etc/rc.d/rc.sysinit 之后,就會進入 /etc/rc.d/rc3.d 來啟動一些服務』啰!不過,需要注意的是,在 rc3.d (或其它目錄下 rc0.d ~ rc6.d )目錄中 S 開頭的檔案為執行該服務, K 為開頭的檔案則是殺掉該服務的意思。那么那些數字代表的意義為何?那就是啟動的順序啦!例如S12syslog 會比S90crond 更早被執行呢!那么為什么要有這些順序呢?這是有原因的!例如您的主機有要啟動 WWW 好了,那么您的網絡設定應該要先啟動才對吧!所以啰,如果 WWW 先啟動,才驅動網絡,那么 WWW 自然就一定起不來啦!所以各項服務的啟動順序也是相當重要的!目前 Mandrake 當中,可以使用 chkconfig 來設定開機要啟動的服務選項呢!



    3)性能相關
    查看內存信息
    cat /proc/meminfo 查看內存信息



    查看系統磁盤的用量
    df 命令可以

    df –h ,使得展現結果易于人閱讀帶單位,比如將15176390,寫為15G



    4)目錄權限
    -rwxr-xr-x 1 root root 512 11月 5 08:08 net.lo
    drwxr-xr-x 2 root root 48 9月 6 13:06 vmware
    當執行ls -l 或 ls -al 命令后顯示的結果中,最前面的第2~10個字符是用來表示權限。第一個字符一般用來區分文件和目錄:
        d:表示是個目錄,事實上在ext2fs中,目錄是個特別的文件。
        -:表示這是個普通的文件。
        l: 表示這是個符號鏈接文件,實際上他指向另一個文件。
        b、c:分別表示區塊設備和其他的外圍設備,是特別類型的文件。
        s、p:這些文件關系到系統的
    數據結構
    和管道,通常非常少見到。
    下面周詳介紹一下權限的種類和設置權限的方法。
    二、一般權限
    第2~10個字符當中的每3個為一組,左邊三個字符表示所有者權限,中間3個字符表示和所有者同一組的用戶的權限,右邊3個字符是其他用戶的權限。這三個一組共9個字符,代表的意義如下:
    r(Read,讀取):對文件而言,具有讀取文件內容的權限;對目錄來說,具有
    瀏覽
    目 錄的權限。
    w(Write,寫入):對文件而言,具有新增、修改文件內容的權限;對目錄來說,具有刪除、移動目錄內文件的權限。
    x(eXecute,執行):對文件而言,具有執行文件的權限;對目錄了來說該用戶具有進入目錄的權限。
    -:表示不具有該項權限。





    5)軟件安裝
    tar.gz的通用安裝步驟
    tar –xzf:解壓縮

    ./configuration:生成make文件,一般通過prefix參數來配置目標路徑

    make:編譯

    make install:安裝

    查找用rpm安裝的***程序集路徑
    rpm –qa | grep ***

    查看是否安裝某軟件包
    rpm –q 包名稱

    查找用rpm安裝的***程序集路徑
    rpm –qa | grep ***

    使用apt安裝
    sudo apt install apache2 mysql5

    相關介紹

    The Advanced Packaging Tool, or APT, is a free user interface that works with core libraries to handle the installation and removal of software on the Debian GNU/Linux distribution and its variants.[2] APT simplifies the process of managing software on Unix-like computer systems by automating the retrieval, configuration and installation of software packages, either from binary files or by compiling source code.[2]



    6)網絡相關
    查看本機服務端口
    netstat –tln

    查看某端口對應的程序
    lsof –i: 80,或者netstat –anp | grep 端口

    關閉防火墻
    /etc/rc.d/init.d/iptables stop

    打開防火墻
    /etc/rc.d/init.d/iptables start

    查看當iptable前配置
    :iptables –L

    抓包與包分析
    :tcpdump –i eth1 host XXX.XXX.XXX.XXX and port 80

    其他命令如下

    tcpdump 的抓包保存到文件的命令參數是-w xxx.cap
    抓eth1的包
    tcpdump -i eth1 -w /tmp/xxx.cap
    抓 192.168.1.123的包
    tcpdump -i eth1 host 192.168.1.123 -w /tmp/xxx.cap
    抓192.168.1.123的80端口的包
    tcpdump -i eth1 host 192.168.1.123 and port 80 -w /tmp/xxx.cap
    抓192.168.1.123的icmp的包
    tcpdump -i eth1 host 192.168.1.123 and icmp -w /tmp/xxx.cap
    抓192.168.1.123的80端口和110和25以外的其他端口的包
    tcpdump -i eth1 host 192.168.1.123 and ! port 80 and ! port 25 and ! port 110 -w /tmp/xxx.cap
    抓vlan 1的包
    tcpdump -i eth1 port 80 and vlan 1 -w /tmp/xxx.cap
    抓pppoe的密碼
    tcpdump -i eth1 pppoes -w /tmp/xxx.cap
    以100m大小分割保存文件, 超過100m另開一個文件 -C 100m
    抓10000個包后退出 -c 10000
    后臺抓包, 控制臺退出也不會影響:
    nohup tcpdump -i eth1 port 110 -w /tmp/xxx.cap &
    抓下來的文件可以直接用ethereal 或者wireshark打開。 wireshark就是新版的ethereal

    在Linux的系統下如何才能修改IP信息
    以前總是用ifconfig修改,重啟后總是得重做。如果修改配置文件,就不用那么麻煩了~

    A、修改ip地址

    即時生效:

    # ifconfig eth0 192.168.0.20 netmask 255.255.255.0

    啟動生效:

    vi /etc/sysconfig/network-scripts/ifcfg-eth0

    B、修改default gateway

    即時生效:

    # route add default gw 192.168.0.254

    啟動生效:

    vi /etc/sysconfig/network-scripts/ifcfg-eth0

    C、修改dns

    修改/etc/resolv.conf

    修改后可即時生效,啟動同樣有效

    D、修改host name

    即時生效:

    # hostname fc2

    啟動生效:

    修改/etc/sysconfig/network

    新啟動網絡配置

    /etc/init.d/network restart

    注意:修改機器名后,一般需要修改hosts(/etc/hosts)文件,添加機器名對應的ip

    前提: Redhat 系統

    ip, 掩碼:

    編輯 /etc/sysconfig/network-script/ifcfg-eth0
    IPADDR=192.168.0.1
    NETMASK=255.255.255.0

    網關:

    編輯 /etc/sysconfig/network
    NETWORKING=yes
    HOSTNAME=xx
    GATEWAY=192.168.0.100
    DNS:

    編輯 /etc/resolv.conf
    NAMESERVER=202.96.209.5
    注意:上述IP地址都要改成與你的網絡配置相對應的IP地址。



    7)VI
    vim:undo和redo

    :u(撤銷操作數)

    Ctrl+R

    vi查找:

    命令狀態輸入/pattern2search,繼續查找直接按n

    vi粘貼:p

    vi剪切:[number]dd或者d[number]d,,number表示要剪切幾行

    vi拷貝:[number]yy,number是行數

    移動到段尾首尾{}

    Shift+g移動到文檔末尾

    d l 刪除當前字符(與x命令功能相同)
    d 0 刪除到某一行的開始位置
    d ^ 刪除到某一行的第一個字符位置(不包括空格或TA B字符)
    d w 刪除到某個單詞的結尾位置
    d 3 w 刪除到第三個單詞的結尾位置
    d b 刪除到某個單詞的開始位置
    d W 刪除到某個以空格作為分隔符的單詞的結尾位置
    d B 刪除到某個以空格作為分隔符的單詞的開始位置



    8)常用目錄作用
    /bin 存放使用者最長用的命令,如:cp、ls、cat,等等。
    /boot 啟動linux時使用的一些核心文件。
    /dev 是device(設備)的縮寫,這個目錄下是所有linux的外圍設備。 D:\document\Chat\MyIM\MyIM\bin\Release
    /etc 這個目錄用來存放系統管理所需要的配置文件和子目錄。
    /home 用戶的主目錄,比如說有個用戶叫wang,那他的目錄就是/home/wang也可以用~wang來表示。
    /lib 這個目錄是存放著系統最基本的動態連接庫,幾乎所有的應用程序都須用這些共享庫。
    /lost+found 這個目錄平時是空的,當系統不正常關機后,這里就是一些無家可歸文件的避難所。
    /mnt 這個目錄是空的,系統提供這個目錄是讓用戶臨時掛接別的文件系統。
    /proc 這個目錄是一個虛擬目錄,它是系統內存映射,我們可以直接通過訪問這個目錄來獲取系統信息。也就是說,這個目錄的內容不在硬盤上而是在內存中。
    /root 系統管理員(root)的主目錄,作為系統的擁有者的特權。
    /sbin s就是super user的意義,也就是說這里存放的是系統管理員使用的管理程序。
    /tmp 這個目錄是存放一些臨時文件的地方。
    /usr 我們用到的應用程序的文件幾乎都存放這個目錄下:/usr/X11R6存放X_Window的目錄;/usr/bin存放著許多應用程序;/usr /sbin給超級用戶使用的一些管理程序就放在這個里面;/usr/include開發和編譯應用程序所需的頭文件;/usr/lib存放一些常用的動態連接共享庫和靜態歸檔案庫;/usr/local這是提供給一般用戶的/usr目錄,在這里安裝軟件最合適。/usr/man存放幫助文檔。/usr /src開放的源代碼就存在這個目錄下。
    /var 這個目錄存放那些不斷擴充的東西,為了保持usr的相對穩定,那些才、經常被修改的目錄可以放在這個目錄下,如/var/log日志文件。



    9)其他
    關于輸入輸出">" "<"的意義
    cat x y 1> hold 2>&1

    結果就是將標準+錯誤輸出到hold;

    cat x y 2>&1 1> hold 則是將錯誤輸出重定向到標準輸出,而將標準定向到hold。所以錯誤輸出不會進入hold,因為被定向到標準輸出。

    賦值關系

    (1) 1 = hold , 2 += 1;

    (2) 2 += 1 , 1 = hold。



    Shell腳本相關
    shift:將命令行變量列表的第一個變量刪除,第二個變量變為第一位,可理解為變量列表頭指針移動一位

    daemon 語句 和& 符號可以將程序變為后臺輸出



    10)虛擬機安裝Linux的一些問題
    虛擬機安裝花屏調整分辨率

    VitualPC有時安裝Linux后,進入圖形界面會產生花屏,此時需要跳轉到命令行模式,調整Xwin的參數,方法如下

    啟動時,Linux會在加載各啟動項前,提示通過鍵入'I'是否進入交互加載模式(interactive)模式,此時鍵入I,進入交互模式,逐一手動允許系統項,禁止系統啟動xwin

    進入命令行模式后,進入/etc/X11/目錄,修改X11配置文件中的分辨率,色深等,修改完成后重新啟動即可



    Linux新版本??內核在裝入VirtualPC虛擬機時會出現鼠標不能捕獲的問題,可以通過修改grub.conf中內核參數來修正

    定位到kernel

    在其行末尾添加 i8042.noloop

    kernel /vmiluz******* ro root=LABEL=/ *** i8042.noloop



    Windows 2008遠程桌面,消除只允許一個用戶登錄限制

    http://vanderbiest.org/blog/2010 ... in-windows-2008-r2/







    12)CollnetSVN 1.1.0 x86 Linux 安裝
    下載CollnetSVN文件

    cp 到安裝目錄

    切換用戶到一個普通用戶su somebody(一定不能是root,如果實在沒有用戶,可以用adduser 添加一個,再用passwd username 去修改這個用戶的密碼)

    tar –zxf 解壓縮

    用剛才這個普通用戶的身份運行csvn/bin/csvn start 以及 csvn/bin/csvn-httpd start(一定不能用root)

    可以將csvn-httpd添加到啟動項,方法是ln –s /csvn/bin/csvn-httpd S99csvn_httpd,重啟系統就能看到啟動時加載此服務



    11)httpd
    apache配置轉發

        ProxyPreserveHost On
        ServerAdmin a@a.com
        ServerName search.cd-host.net
        DefaultLanguage zh-CN
        AddDefaultCharset utf-8
        ProxyPass /  http://www.missworld.cn:8888/
        ProxyPassReverse /  http://www.missworld.cn:8888/




    啟動light httpd自帶的fastcgi:spawn
    /usr/local/webserver/php/bin/spawn-fcgi -a 127.0.0.1 -p 10080 -C 64 -u www -f /usr/local/webserver/php/bin/php-cgi

    原文地址:http://blog.csdn.net/yizhu2000/article/details/7068842
    本文地址:http://www.portaltwn.com/thread-84254-1-1.html     【打印本頁】

    本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
    您需要登錄后才可以發表評論 登錄 | 立即注冊

    廠商推薦

    • Microchip視頻專區
    • EtherCAT®和Microchip LAN925x從站控制器介紹培訓教程
    • MPLAB®模擬設計器——在線電源解決方案,加速設計
    • 讓您的模擬設計靈感,化為觸手可及的現實
    • 深度體驗Microchip自動輔助駕駛應用方案——2025巡展開啟報名!
    • 貿澤電子(Mouser)專區

    相關視頻

    關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
    電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
    快速回復 返回頂部 返回列表
    精品一区二区三区自拍图片区_国产成人亚洲精品_亚洲Va欧美va国产综合888_久久亚洲国产精品五月天婷