一週實戰Linux

Linux學習筆記

reboot  重啓
shutdown -h now 立刻關機

Linux的文件目錄
Linux的文件系統是採用樹狀目錄結構,在此結構上的
最上層的目錄爲"/"

目錄;
root  存放root用戶的相關文件
home  存放普通用戶的相關文件
bin   存放普通命令,常用命令
sbin  存放需要一定權限纔可以使用的命令
mnt   掛在光驅和軟驅的目錄
boot  存放引導相關的文件
etc   存放配置相關的文件
var   存放經常變化的文件
/dev  系統中的所有設備文件
/tmp  系統中的臨時目錄
/usr  系統應用程序和相關文件
/var  系統中經常變化的文件如日誌文件和用戶郵件

pwd 顯示當前在哪個目錄下

Linux用戶管理
useradd 用戶名     添加用戶
useradd -g group 用戶名 指定創建用戶的所在組
usermod -g group 用戶名 修改用戶所在組
passwd 用戶名      設置用戶密碼
userdel 用戶名  刪除用戶 
userdel -r 用戶名  刪除用戶以及用戶主目錄

init [1.2.3.4.5]
Linux運行級別
0:關機
1,單用戶
2,多用戶狀態 沒有網絡服務
3,多用戶狀態 有網絡服務
4,系統爲使用保留給用戶
5,圖形界面
6,系統重啓
常用的爲3,和5 要修改默認的運行級別可以修改文件
/etc/inittab的id:5:initdefault這一行的數字


ls -a 顯示隱藏文件
mkdir 建立目錄
rmdir 刪除空目錄
touch 建立空文件
cp 拷貝
cp -r 目錄 目錄 拷貝目錄
more 分頁查看文件
ls | more
在linux和unix系統中|就是管道命令 ?
什麼是管道命令:把上一個命令的結果交給|的後面的命令處理

ln -s /root/hello.java toabc3 建立hello.java的鏈接(快捷方式)



grep “kenan” hello.java 在文件中搜索執行制定字符串
grep -n "kenan" hello.java

find 搜索文件和目錄
find / -name hello.java 從根目錄開始查找有沒有hello.java的文件
find / -amin -10 10分鐘存取的文件或目錄
find / -atime -10 10小時存取的文件或目錄
find / -cmin -10  10分鐘修改的文件或目錄
find / -ctime +10 10小時前更改過的目錄或文件
find / -size +10k 查看大於10k的問就愛你

groupadd 組名  -- 添加用戶組

權限:  r可讀   4
        w可寫   2
        x可執行 1
       
vmare下Linux上jdk的安裝步驟:
jdk的安裝步驟:
1,下載jdk在linux上的版本.bin版本
2,將上面下載的文件製作成iso文件掛載到linux操作系統上
    mount /dev/cdrom /mnt/cdrom  (取消掛載  umount /mnt/cdrom)
3,把文件拷貝到/home下
4,cd /home
5,安裝 ./???.bin
6.卸載舊版的jdk
    用root用戶登陸到系統,打開一個終端輸進
    # rpm -qa|grep gcj
    顯示內容其中包含下面兩行信息
    # java-1.4.2-gcj-compat-1.4.2.0-40jpp.112
    # libgcj-4.1.1-52.el5

    卸載
    # rpm -e java-1.4.2-gcj-compat-1.4.2.0-40jpp.112
    # rpm -e libgcj-4.1.1-52.el5

    假如有依靠關係,不讓卸載,就用 rpm -e –-nodeps 卸載就行了
    # rpm -e –-nodeps ?java-1.4.2-gcj-compat-1.4.2.0-40jpp.112
    # rpm -e –noddeps libgcj-4.1.1-52.el
    ?最後再執行rpm -qa|grep gcj
    發現沒東西,代表卸載成功
7,修改/etc/profile(配置文件)配置Javahome,path和classpath

安裝eclipse
1,把安裝文件拷貝到home
    cp sdf /home
2,tar -zxvf xxx.tar.gz
3,啓動eclipse,首先進入圖形界面 startx
4,僅用selinux
    解決方法:關閉selinux即可解決。
    # vi /etc/sysconfig/selinux
    修改:SELINUX=enforcing 爲:SELINUX=disable 禁用SeLinux, 再重啓運行就可以了
5, ./eclipse & 後臺運行eclipse

tomcat的安裝和eclipse一樣解壓即可

Linux分區:
1,硬盤的分區分爲:基本分區和擴展分區
2,基本分區和擴展分區之和小於等於4
3,基本分區可以馬上被使用,不能再分區
4,擴展分區不能被使用,不需要進行再分區
5,由擴展分區再分下去就是邏輯分區
6,邏輯分區沒有數量上的限制
7,在linux中一個分區就是一個目錄

對於IDE硬盤,驅動器標示符爲“hdx~”
1,“hd”表示分區所在設備的類型,這裏指IDE硬盤
2,“x”爲盤號(a 爲基本盤,b爲基本從屬盤,c爲輔助主盤,d爲輔助從屬盤)
3,“~”代表分區,1-4代表主分區和擴展分區,從5開始就是邏輯分區
    hda3 表示第一個IDE硬盤上的第三個主分區或擴展分區
4,對於SCSI硬盤則標識爲sd

磁盤命令
fdisk -l 查看linux系統分區具體情況
df -l    查看磁盤使用情況(df -h  按照GB單位顯示)
df 目錄  查看目錄在哪個分區下

Linux安裝的時候分區原則:
    1,/boot 分區 100MB
    2,swap 交換分區  一般是物理內存的兩倍,不要大於256MB
    3,/ 根分區 儘可能大
    軟件包選擇:
    1,桌面環境 X窗口系統 GNOME桌面環境(服務器不選擇)
    2,編輯器
    3,辦公
    4,圖形

   
shell學習
我們在linux的終端輸入的命令都是shell命令
有shell解析,然後由Linux內核執行,相當於
windows下的批處理程序

shell種類(常用):
1,Bourne  /bin/sh
2,C       /bin/csh
3,K       /bin/ksh
顯示所有的shell
ls -l /bin/*sh

大陸使用多的是sh 也就是bash
1,查看當前系統使用的是哪種shell
    env   --:查看系統的環境變量 SHELL=/bin/bash
2,更改shell
    chsh -s 新的shell
3,history 查看歷史命令
    history 5 顯示最近使用的5個命令
    !5 執行編號爲5的歷史命令
    !ls  執行最後一次以 ls  開頭的命令
   

ip/tcp
追蹤路由 tracert ip
測試域名是否暢通 ping 域名/ip
在windows下查看ip地址的命令是ipconfig
在linux下查看ip地址的命令是ifconfig

以127開頭的都是本機

Linux網絡環境配置
第一種方法
1,以root登陸
2,運行setup命令,設置ip地址
3,重啓網絡
    /etc/rc.d/init.d/network restart
第二種方法
1,ifconfig eth0 x.x.x.x 對網卡進行配置
2,ifconfig eth0 network x.x.x.x 對子網掩碼設置
這樣配置的網絡會立即生效,但是是臨時的
第三種方法
1,修改/etc/sysconfig/network-scripts/ifcfg-eth0
配置文件
2,需要重啓網絡
    這種方法是最底層的修改方法

在linux中所有的設備都是文件
   
    rpm 軟件管理
1, rpm -qa 查看安裝的所有rpm包
2,安裝rpm包
    rpm -i rpm包全路徑 i=install
    rpm -ivh rpm包全路徑名稱 安裝帶有提示進入條
    v=verbose提示    h=hash進度條
3,卸載
    rpm -e rpm包名稱
    rpm -e --nodeps  忽略依賴卸載

   
samba服務器安裝
1,什麼是samba服務器,可以在windows上訪問linux上的資源
2,檢查系統中是否安裝了samba
    rpm -qa | grep smaba
3,先安裝samba-common
        samba-client
        samba
4,設置samba密碼文件
    cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd
    smbpasswd root
    xxx
    xxx
5,啓動samba服務器
service smb start
            stop
            restart
   
設置任務調度命令 crontab
1,在服務器中的應用
        服務器的定時數據庫備份
2,設置任務
    crontab -e
3,完成這樣的一個任務
    每隔兩分鐘執行 date >> /home/mydate1
    步驟:
        1,crontab -e
        2,2 * * * * date >> /home/mydate1
            第一個參數是分鐘 第二個是小時
            第三個是天       第四個是月
            第五個是星期(每週的第幾天執行)    一共是五個參數  *代表所有的時間點
4,怎樣去調度多個任務?
    1,在crontab -e 中直接寫
    2,可以把所有的任務,寫入一個可執行文件(shell編程)
        * * * * * /root/task.sh
5,  crontab -r  終止任務調度
    crontab -l  列出當前有那些任務調度
   
進程的介紹和管理
進程:就是正在執行的程序
線程:
    1,進程有獨立的運行空間,線程沒有
    2,線程不能獨立存在,有線程創建
在linux中,每個進程都可能有兩種方式存在,前臺和後臺
所謂前臺就是用戶目前的屏幕可以進行操作的
ps命令是用來查看系統中,有那些正在執行
1,ps -a  顯示當前終端的所有的進程信息
2,ps -u   以用戶的格式顯示進程信息
3,ps -x   顯示後臺進程運行的參數
終止進程
kill 1723  終止進程號位1723的進程
kill -9 1234 因爲某些進程會捕捉某些信號,如果不能
結束進程可以用 -9 傳送信息

top 可以動態監控進程
top -d 10  指定10秒更新一次信息

date命令查看系統時間
date MMDDHHMMCCYY.SS
    月月日日時時分分年年年年.秒秒
cal 查看日曆
cal 3 2002 查看2002年3月的日曆
cal 2008 查看 2008年的日曆

netstat顯示網絡統計信息
netstat -nat
netstat -natp  查看連接所在的process進程號
    目前的連接
traceroute 監控網絡狀態
route 查看本機路由的情況

mysql的備份和恢復
備份 mysqldump -u root -p 密碼 數據庫名 > data.bak
恢復 mysql -u root -p 密碼 數據庫名 < data.bak
mysql服務的啓動和停止和重啓
service mysql start
service mysql stop
service mysql restart

Linux的遠程操作工具secure shell(和 linux下的sshd服務通訊,默認監聽22號端口)

etc   --> profile(配置系統環境變量)
home  -->  kenan -->  .bash_profile(用戶的環境變量,對於單個用戶有效)

配置.bashrc文件可以指定某些程序在用戶登錄的時候執行
在/etc和每個用戶下都存在這個文件
   
shell
臨時設置環境變量
export PATH=$path:$HOME/bin:/root/test/t1

shell使用
通配符
    * 代表多個字符
    ?代表一個字符
    touch abc3.tif
    ls -l abc[1-4].tif
alias 定義一個別名
alias llh 'ls -l /home'

Linux啓動過程分析
    1,BIOS自檢
    2,啓動GRUB/LILO
    3,運行Linux內核並檢測硬件
    4,運行系統的第一個進程init
    5,init讀取硬盤引導配置文件/etc/inittab中的信息進行初始化
    6,/etc/rc.d/rc.sysinit 系統初始化腳本
    7,/etc/rc.d/rcX.d/[KS]* 根據運行級別X配置服務
            終止以 K  開頭的服務
            啓動以 S 開頭的服務
    8,/etc/rc.d/rc.local 執行本地特殊配置
    9,其他特殊服務
   
壓縮和解壓縮
1,使用zip和unzip 進行壓縮和解壓縮
    壓縮
        zip aa.zip 文件名
        zip aa.zip 文件名1,文件名2
        zip -r zz.zip 目錄
   
   

本文出自 “Kenan_ITBlog” 博客,請務必保留此出處http://soukenan.blog.51cto.com/5130995/1127159

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章