Linux基礎及入門介紹

Linux基礎及入門介紹linux

1、linux發展歷程shell

①1969年unix誕生貝爾實驗室數據庫

②譚寧邦:minix unixvim

③斯托曼(stallman),公司:自由軟件基金會(FSF)windows

項目:GNUcentos

規則:GPL(全部人能夠自由傳播,自由修改)安全

④斯托曼:91年開發出linux內核。bash

2、如何選擇linux的發行版本服務器

(一)linux桌面系統網絡

①Ubuntu(烏班圖),開發人員開發平臺

②服務器linux系統:

redhat,centos(去掉redhat收費軟件,去掉紅帽裏面的log)

③安全性較高:debian,freedsd

④數據庫高級服務:openSUSE

⑤新技術、新功能:Fedora(穩定性:Fedora》redhat》centos)

⑥中文版本:紅旗linux,麒麟linux。

3、企業標準選擇系統

(一)系統分類

centos6.,centos7.

官網爲:Centos.org

國內鏡像網站:mirrors.aliyun.com

鏡像源解釋:

LiveDVD:體驗版,寫入到光盤中個,刻錄到u盤中。

bin-DVD:生產中使用的。

torrent:下載種子。

(二)系統位數區別及虛擬機

32位和64位區別

①設計時候定位不一樣。

②安裝配置要去不一樣。

③運算速度不一樣。

④尋址能力不一樣。

4、虛擬機

在一臺計算機上,虛擬出多臺計算機。

(一)學習環境的選擇與推薦配置

Win7/10,intel i5以上cpu,內存8G以上,硬盤500G

虛擬機版本選擇:

windows:Vmware 8.0/12

mac:vmware fusion

(二)虛擬機建立(vmware)

建立新的虛擬機--自定義--稍後安裝操做系統--linux/redha/centos--虛擬機名稱、虛擬機存放位置(vmware)--處理器配置(默認)--內存設置(大於1G)--網絡類型(推擠nat)--磁盤(默認)-建立一個新的磁盤--指定磁盤容量(20G)--指定磁盤位置。

(三)虛擬機常見問題

①權限不夠:右擊以管理員身份運行

②編輯虛擬機配置:

CD/DVD:使用ISO讀取文件,選擇鏡像所在的位置。

③點擊運行虛擬機

Inter-vt-x不支持。

重啓計算機後-F1,F2 進入安全模式:

security-vitualizaition-vitualizaition(開啓)

vmware 相關windows服務沒有開啓:

services.msc 啓動全部vmware

(四)企業級標準安裝centos系統

運行虛擬機:選擇

①install or upgrade an existing system

rescue installled system 啓動救援模式

②media found --skip

③語言選擇:English

④鍵盤:默認

⑤安裝硬件存儲類型:basic storage device

⑥hostname:centos6.9

⑦時區:上海

⑧設置root密碼:123456

⑨分區:

use all space 使用全部空間

replace existing linux system 替換現有linux系統

shrink current system 縮小現有系統

use free space 使用剩餘空間

***create custom layout 建立自定義佈局

/boot 引導系統啓動--200M

swap --內存的1.5倍。交換分區,臨時做爲內存使用

/ 根分區,剩餘多少給多少。一切從根開始(c盤)。

點擊(分區3次,點擊3次):Free,選擇分區,force to be primary partion。--format(格式化)

選擇安裝方式安裝系統:minmal 最小化,customize now(自定義)

base system:base,cmpatibility libraries,debugging tools

deveplopment:deveplopment tools

reboot (重啓)

配置虛擬機網絡:

vmware 編輯虛擬網絡編輯器:點擊nat模式

(五)Linux網絡配置

網絡配置:

①setup-②network-configuration-③device conf -④eth0-⑤network configuration(去掉型號,按空格)-⑥ok-⑦save-⑧saveandquit-⑨quit

網卡的配置生效:

重啓網卡:ifdown eth0;ifup eth0

查看網卡信息:ifconfig

(六)xshell 安裝與優化

經常使用登錄登錄工具:xshell,secureCRT,putty

文件-屬性:進行個性化設置

工具-選項:文件存儲位置

登錄失敗問題排除:

ip地址+端口(22)

vmware 的3種的網絡模式

①電腦pc--皇帝

②虛擬機--貧民百姓

貧民百姓只關注誰給分配房子。

NAT模式:

①電腦pc---皇帝

②nat----宰相

③虛擬機---貧民百姓

貧民百姓的房子是宰相分配的,與皇帝無關。

虛擬機的ip是nat分配的,電腦環境不管怎麼變化,都不會影響虛擬機。

好處:不管何處,鏈接虛擬機均可以使用相同的IP。

橋接模式:

①電腦pc--皇帝

②虛擬機--貧民百姓

只要更換環境,電腦和虛擬機的ip地址都會變化。

僅主機模式:

①電腦pc--皇帝

②虛擬機--貧民百姓

虛擬機貧民百姓被控制了,沒法與外界聯繫,沒法上網。

遠程鏈接排錯:屌絲去洗浴中心之路

①查看道路是否暢通

ping服務器的ip地址(本地shell進行ping測試)

②是否有人打劫

③查看是否提供服務

本地測試:telnet ip 端口

5、知識回顧

(一)基礎知識

1.1解釋下什麼是GPL,GNU,自由軟件

GNU:GNU is not unix

自由軟件:gawk,bash,gcc,cmacs

GPL:通用許可證

1.2.如何選擇linux操做系統發行版本?

redhat ,centos

1.3linux下面進行分區的幾種方法?

/boot 引導分區

swap 交換分區

/ 根目錄

1.4遠程鏈接排錯問題?

使用ping和telnet命令在本地進行測試:ip和端口。

(二)初次接觸linux必會規則

[root@centos6-kvm2 ~]#

用戶名,主機名,當前位置,提示符

linux系統命令操做語法的命令

命令和參數之間要有空格。

6、linux使用命令

/ 一切從根從開始。(斜線方向和win相反)

(1)建立一個目錄(directory):

mkdir /data

ls #list 列表,顯示目錄裏面的內容。

ls -l /data #查看目錄裏詳細信息(tap鍵能夠自動補全)。

(2)進入到某個目錄:

cd /data

絕對路徑:從根開始的路徑,最前面有個/,如:/data,/etc/hosts

相對路徑:不是從根目錄開始,前面無/。

pwd #查看當前目錄位置。

(3)建立文件:

touch /data/oldboy.txt

ls -l /data/

(4)編輯文件內容

vim /data/oldboy.txt

編輯文件:i

保存編輯文件:esc ,:wq!(q!強制退出,不保存編輯內容)。

(5)查看文件內容

查看編輯文件的內容:cat /data/oldboy.txt

(6) echo 命令使用

echo hello world

將內容追加到文件最後一行:(》重定向符號)

echo hello world >>/data/oldboy.txt

⑥在文件中放入多行內容

cat >>/data/oldboy.txt<<EOF

i

am

。。。

EOF(end of file ,也可使用其餘符號,和上面配對使用便可)

(7)重定向符號

標準輸出重定向(>),將文件內容清空後再寫入。

追加劇定向(>>),把內容放在文件最後一行。

重定向符號前有1(1>>,1>),將正確的內容重定向至文件。

重定向符號前有2(2>,2>>),將錯誤的內容重定向至文件。(錯誤命令執行的結果),如:eho hello >>/data/oldboy.txt 2>>/data/oldboy.txt。能夠簡寫成:eho hello >> /data/oldboy.txt 2>&1 #把錯誤的對的信息都放入。

小於號(<):輸入重定向

xargs #分組命令

[root@centos6-kvm2 ~]# mkdir /data
[root@centos6-kvm2 ~]# touch /data/num.txt
[root@centos6-kvm2 ~]# echo 1 2 3 4 5 >>/data/num.txt
[root@centos6-kvm2 ~]# xargs -n2 </data/num.txt 
1 2
3 4
5
[root@centos6-kvm2 ~]#

兩個大魚號(>>):

[root@centos6-kvm2 ~]# cat >> /data/num.txt << EOF
> I AN
> STUDING
> LINX
> EOF
[root@centos6-kvm2 ~]#

(8)複製(cp)

複製文件:

cp /data/oldboy.txt /data/num.txt

備份:

cp /data/oldboy.txt /data/oldboy.txt .bak

複製目錄:

cp /data /temp (omitting directory 忽略這個目錄)

cp -r /data /temp (遞歸複製)

複製目錄也能夠:cp -a /data /tmp (-a,-pdr,複製全部:-p保持屬性)

(9)將文件移動(mv,剪切)

mv /data/oldboy.txt /temp

ls -l /data/oldboy.txt

注意:vmware快照功能。

(10)進入目錄刪除文件

cd /tmp/data

ls -l #查看當前目錄內容

rm oldboy.txt #-f,強制刪除

rm -r /data #刪除目錄-r,-rf強制刪除

注意:快捷鍵

ctrl +c #退出

ctrl + l #清屏

(11)find 命令使用

find /root/ -type f -name "oldboy.txt"

-type :類型,f文件,d目錄

-name :名字,使用雙引號。範圍查找:「*.txt」

管道符:|,把前面命令的結果,傳遞給後面的命令。管道符和xargs 搭檔使用。

[root@centos6-kvm2 /]# find /data/ -type f -name "num.txt" | xargs ls -l
-rw-r--r-- 1 root root 28 Dec 11 00:01 /data/num.txt
[root@centos6-kvm2 /]#

(12)退出至上一級目錄

cd ..#退至上一級目錄

cd ../#退至根目錄

注意:(.)一個點表示當前目錄。

(13)刪除文件中固定的內容

grep :查找內容所在的行,-v,取相反的內容

[root@centos6-kvm2 /]# grep -v 'AM' /data/num.txt

head #默認取前10行,-nxx,取前xx行。

[root@centos6-kvm2 /]# head /data/num.txt -n 2

tail:#默認取後10行,-nxx,取後xx行。

[root@centos6-kvm2 /]# tail -2 /data/num.txt

awk:過濾,!表示取反。

[root@centos6-kvm2 /]# awk '!/OLDBOY/' /data/num.txt

sed:過濾

[root@centos6-kvm2 /]# sed '/OLDBOY/d' /data/num.txt

(14)使用一條命令建立目錄(多級)

mkdir -p /oldboy/test #-p,建立多級命令;-v顯示建立過程。

(15)已知tmp下已經存在test.txt文件,如何執行命令才能把/mnt/test.txt拷貝到tmp下覆蓋掉/tmp/test.txt,而讓系統不提示是否覆蓋(root權限下)。

強制:不提示確認鍵

方法1:反斜線
方法2:使用命令的絕對路徑,全路徑(如:which cp)

-i #命令提示參數,linux別名中帶有-i

linux別名:防止危險命令,簡化命令。

臨時設置linux別名:

查看系統中別名:alias cp

配置別名:

執行rm 讓其顯示 do not rm:

alias rm='echo do not rm'

永久設置linux別名:

vim /etc/profile

alias rm='echo do not rm'

source /etc/profile #使其生效。

移動光標至最後一行:G

移動光標至第一行:gg

在光標所在位置的下一行插入一行,並進入編輯模式:o

在vim /root/.bashrc 中有:rm,cp,mv -i的別名,若是要修改,須要將這個文件中的別名註釋掉。

命令前加,臨時取消別名。

(16)取出某一行或者多行

sed -n '20p' /data/num.txt

sed 默認取出全部內容,-n參數,只取出所選擇的內容。

[root@centos6-kvm2 /]# sed -n '10,15p' /data/num.txt 
[root@centos6-kvm2 /]# sed -n '10p' /data/num.txt

head +tail組合:

[root@centos6-kvm2 /]# head -15 /data/num.txt | tail -5

awk:

[root@centos6-kvm2 /]# awk 'NR==10,NR==15' /data/num.txt 
1
1
1

1
4
[root@centos6-kvm2 /]# sed -n '10,15p' /data/num.txt 
1
1
1

1
4
[root@centos6-kvm2 /]#

小結:

1取出文件某一行

awk:三劍客之老三,擅長取列,NR表示行號。

sed :三劍客之老二,取行,與p配合使用。-n取消默認輸出

'10p','10,15p'

head + tail組合使用。

grep -A10,找到顯示的內容及接下來的行。

(17)替換文件工做

找出文件

find /data/ -type f -name '*.text'

把oldboy文件的內容替換成oldgirl

[root@centos6-kvm2 /]# sed -i 's#OLDBOY#OLDGIRL#g' /data/num.txt

把find命令找到內容交給後面命令處理

[root@centos6-kvm2 /]# find /data/ -type f -name num.txt | xargs  sed -i 's#OLDBOY#OLDGIRL#g' /data/num.txt

注意:linux命令幫助,man 命令

相關文章
相關標籤/搜索