Linux基礎與搭建

學習目標

  • 瞭解Linux的簡介與安裝
  • 掌握Linux經常使用的命令
  • 掌握Linux系統上JDKMysqlTomcat的安裝

 Linux簡介

2.1 Unix簡介

Unix是一個強大的多用戶、多任務操做系統。java

1969年在AT&(美國電話電報公司}的貝爾實驗室開發。node

UNIX的商標權由國際開放標準組織(The Open Group)所擁有。mysql

UNIX操做系統是商業版,須要收費,價格比Microsoft Windows正版要貴一些。不過UNIX有免費版的,例如:NetBSD等相似UNIX版本。linux

2.2 linux 簡介

Linux起源於一個學生的簡單需求。Linus Torvalds,Linux的做者與主要維護者,在其上大學時所買得起的惟一軟件是Minix. Minix是一個相似Unix,被普遍用來輔助教學的簡單操做系統。Linus Minix不是很滿意,因而決定本身編寫軟件。他以學生時代熟悉的Unix做爲原型, 在一臺Intel 386 PC上開始了他的工做。他的進展很快,受工做成績的鼓舞,他將這項成果經過互連網與其餘同窗共享,主要用於學術領域。有人看到了這個軟件並開始分發。每當出現新問題時,有人會馬上找到解決辦法並加入其中,很快的, Linux成爲了一個操做系統。值得注意的是Linux並無包括Unix源碼。它是按照公開的POSIX標準從新編寫的。Linux大量使用了由麻省劍橋免費軟件基金的GNU軟件,同時Linux自身也是用它們構造而成。sql

Linux是一套免費的類Unix操做系統shell

Linux是一套無償使用和自由傳播的類Unix操做系統,能夠任意修改其源數據庫

Linux存在着許多不一樣的Linux、版本,但它們都使用了Linux內核。vim

 

Linux可安裝在各類計算機硬件設備中,手機、平板、臺式、筆記本、大型機和超級計算機。windows

Linux操做系統誕生於1991105,芬蘭大學生林納斯一託瓦茲[Linux Torvalds)和後來陸續加入的衆多愛好者共同開發完成。centos

Linux的特色:它是多用戶,多任務,豐富的網絡功能,可靠的系統安全,良好的可移植性。

Linux的基本思想有兩點:第一,一切都是文件;第二每一個軟件都有肯定的用途。

 

1.1 linux的分類

 

1.1.1 Linux根據市場需求不一樣,基本分爲兩個方向:

1)圖形化界面版:注重用戶體驗,相似window操做系統,但目前成熟度不夠

2)服務器版:沒有好看的界面,是以在控制檯窗口中輸入命令操做系統的,相似於DOS,是咱們部署服務器的最佳選擇

 

1.1.2 Linux根據原生程度,又分爲兩種:

1)內核版本:在Linus領導下的內核小組開發維護的系統內核的版本號

2)發行版本:一些組織或公司在內核版基礎上進行二次開發而從新發行的版本

 

 

1.2 Linux主流版本

 

 

 

 

1.2.1 Redhatlinux

Red hat領導着Linux的開發、部署和經營,從嵌入式設備到安全網頁服務器,它都是用開源軟件做爲Internet基礎設施解決方案的領頭羊。

Red Hat解決方案包括Red Hat Linux、開發人員和嵌入式技術,以及培訓、管理和技術支持。(收費)

 

1.2.2 Ubuntu

    Ubuntu(烏班圖)是一個以桌面應用爲主的Linux操做系統

    Ubunt的目標在於爲通常用戶提供一個最新的、同時又至關穩定的主要由自由軟件構建而成的操做系統。爲桌面虛擬化提供支持平臺

 

1.2.3 Centos

CentOSLinux發行版之一。

Red  Hat Enterprise Linux提供的源代碼編譯而成。不少公司使用CentOS替代商業版RedHat 。Red HatCentOS差異不大,Red Hat LinuxCentos系統是免費的. Red Hat Linux服務是收費的』好比免費版本不支持在線升級 

CentOS每一個版本服務都是免費的.

 

 

 

 

 

 

 

安裝虛擬機

 

2.1 什麼是虛擬機

虛擬機:指經過軟件模擬的具備完整硬件系統功能的、運行在一個徹底隔離環境中的完整計算機系統。可使你在一臺機器上同時運行二個或更多WindowsLINUX系統。它能夠模擬一個標準PC環境。這個環境和真實的計算機同樣,都有芯片組CPU、內存、顯卡聲卡網卡軟驅、硬盤、光驅串口並口USB控制器

 

2.1.1 VMware Workstation(中文名「威睿工做站」)

  • 是一款功能強大的桌面虛擬計算機軟件,收費的。VMware是全球桌面到數據中心虛擬化解決方案的領導廠商

 

2.1.2 Virtualbox

是一款開源虛擬機軟件。VirtualBox、是由德國Innotek公司開發,由Sun出品的軟件,在SunOracle收購後正式改名成Oracle VM VirtualBox

 

2.2 安裝虛擬機

 

 

 雙擊打開基本上傻瓜式安裝這裏不在介紹

 

2.3 虛擬機上安裝centos7

 

2.3.1 建立配置虛擬機

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.3.2 打開虛擬機開始安裝

 

 

 

用鼠標點擊,而後用上下箭頭選中並回車

 

回車 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

開始安裝

 

2.3.3 設置root密碼

 

 

 

 

 

2.3.4 設置普通用戶

 

 

 

 

 

 

 

安裝完成之後,重啓liunx

 

 

 

 

 

3 Linux 目錄結構

 

  • Bin存放可執行文件
  • Boot存放用於系統引導使用的各類文件
  • Dev存放設備文件
  • etc 存放系統配置文件
  • Home 存放用戶文件的根目錄
  • Lib存放和文件系統程序運行所需的共享庫及內核模塊
  • Proc目錄中的數據在內存中如系統核心,外部設備,網絡狀態因爲數據都在內存中,因此不佔用磁盤空間
  • Usr應用程序存放的根目錄usr/bin 存放應用程序 Usr/share  存放共享數據 usr/local 存放軟件升級包
  • Var 放置系統執行過程當中常常變化的文件,如隨時更改的日誌文件var/log

 

 

 

 

==================================================================================================================================================

=========================================================================================================================================================

4 Linux基本命令

Linux基本沒有圖形化頁面,通常使用命令去控制操做系統相似dos命令Linux命令不少,這裏只介紹經常使用的命令。

 

4.1 目錄管理

4.1.1 ls

做用列出目錄內   語法:Is[參數」【文件或目錄]

經常使用: -a-all列出全部文件和目錄.包含隱藏的  -I使用詳細格式列表,此命令很是經常使用  II  /home/ 顯示指定目錄下的內容  -t用文件和目錄的更改時間排序。

           -r反向排序

4.1.2 cd

       做用 切換目錄 語法cd 目錄

       經常使用 cd ~   換當前用戶目錄   cd /  切換到根目錄   cd – 切換上一次訪問目錄  cd .. 切換一級目錄  cd   缺省當前用戶目錄 

4.1.3 pwd

        做用 顯示當前工做目錄  語法: pwd 

4.1.4 mkdir

做用建立目錄  語法mkdir參數    -p父目錄不存在狀況下先生成父目錄(parents)   -v顯示命令執行過程當中的詳細信息 經常使用mkdir –pv ./a/111

4.1.5 rmdir

做用刪除空目錄, 必須空目錄  語法rmdir 目錄名  要想刪除空目錄 需使用 rm –rf 目錄

 

4.2 文件瀏覽

4.2.1 cat     做用;顯示文件內容        語法cat 文件

 

4.3 文件或目錄操做管理  複製、移動、刪除、查找

4.3.1 cp  做用:複製文件或目錄   語法cp [參數] [源文件或目錄] [目標文件或目錄]

-r 遞歸處理 ,指指定目錄下的文件及子文件一併處理    經常使用: cp  –r ./a  ./c  a 目錄下的全部文件拷貝到c目錄

4.3.2 mv 做用:移動或改名現有的文件或目錄 語法:mv [參數] [源文件或目錄][目標文件或目錄]

 經常使用mv  /a/a1.log   b/a1.loga目錄下的文件剪切到b 目錄下    mv /a/a1.log b/b1.log a目錄下的文件剪切到b目錄從新命名爲b1.log

 mv  a  b 把目錄a 名爲b

4.3.3 rm  做用刪除文件或目錄 語法rm [-dfirv] [文件或目錄]

 -f 強制刪除文件目錄   -r 遞歸處理 經常使用:rm a.log  有詢問是否刪除 rm –f a.log直接刪除,不詢問是否刪除  rm –rf a.log 直接級聯刪除,不詢問是否刪除

4.3.4 find

做用查找文件目錄  語法find [][參數]        -name 指定字符串或尋找文件或目錄的範本樣式  經常使用find /usr/ -name ‘ab*’

 

 

4.4 文檔編輯

4.4.1 Vi vim 命令 做用:對文件進行編輯 語法vim [文件名]

 通常操做步驟以下:

 1) 輸入vim文件名」進入「通常模式」 

2) 按下i」從通常模式,進入「插入模式」

3) 按下esc」從「插入模式」退出到「通常模式」

4) 「通常模式」下,輸入「:wq 保存退出編輯。

經常使用命令:

 

4.4.2 建立文件

文件的建立(增)

命令:touch 文件名稱  ----- 空文件

 

 

 

4.5 系統命令

4.5.1 grep

做用用於過濾、搜索特定字符 可配合正表達式使用  語法:grep [option] pattern [file]     -c 輸出匹配的行數  -i  忽略大小寫

4.5.2 ps

做用用來查看系統進程信息 格式ps [參數]   -e 顯示進程  -f 顯示UID,PPIP,C,STIME 信息 

們啓動一個進程

 

查看該進程

從新打開一個終端

 

4336 就是該進程的端口

 

4.5.3 kill

做用終止一個進程 語法kill [參數][程序]  經常使用Kill -9 進程ID  9表示強制終止

,終止上圖中的ping 進程

 

 

4.5.4 Ifconfig

做用顯示系統網絡命令

經常使用

 

4.5.5 ping

做用測試網絡是否連通   語法pingIP地址

 

4.5.6 tar

 做用壓縮命令,文件解壓縮

語法tar 命令

通常壓縮文件的後綴爲.tar.gz

 

l 壓縮

test 的目錄的文件進行壓縮下面命令

 

 

l 解壓縮

把文件解壓縮到當前目錄

  

把壓縮文件解壓縮到指定的目錄。-C 後跟 要解壓縮的路徑

C 字母

 

 

 

4.5.7 關機重啓

重啓:reboot

關機halt

 

4.5.8 修改系統語言

Centos 7已經不採用/etc/sysconfig/i18n這一個文件來作配置cent0s6.5 採用),而改成使用/etc/locale.conf這個來進行語言配置。

使用vim命令進去,vim /etc/locale.conf

進入之後只有簡單的一句LANG="en_US.UTF-8" 這個配置

 

 

4.5.9 其它經常使用命令

 

#以操做防火牆爲例子

啓動一個服務:systemctl start firewalld.service  #防火牆
關閉一個服務:systemctl stop firewalld.service
重啓一個服務:systemctl restart firewalld.service
顯示一個服務的狀態:systemctl status firewalld.service
在開機時啓用一個服務:systemctl enable firewalld.service
在開機時禁用一個服務:systemctl disable firewalld.service
查看服務是否開機啓動:systemctl is-enabled firewalld.service
查看已啓動的服務列表:systemctl list-unit-files|grep enabled
查看啓動失敗的服務列表:systemctl --failed

配置firewalld-cmd

查看版本: firewall-cmd --version

查看幫助: firewall-cmd --help

顯示狀態: firewall-cmd --state

查看全部打開的端口: firewall-cmd --zone=public --list-ports

更新防火牆規則: firewall-cmd --reload

查看區域信息:  firewall-cmd --get-active-zones

查看指定接口所屬區域: firewall-cmd --get-zone-of-interface=eth0

拒絕全部包:firewall-cmd --panic-on

取消拒絕狀態: firewall-cmd --panic-off

查看是否拒絕: firewall-cmd --query-panic

那怎麼開啓一個端口呢

第一步:添加

 

firewall-cmd --zone=public --add-port=80/tcp --permanent

   (--permanent永久生效,沒有此參數重啓後失效)

第二步:從新載入

firewall-cmd --reload

查看

firewall-cmd --zone= public --query-port=80/tcp

刪除

firewall-cmd --zone= public --remove-port=80/tcp –permanent

重啓網絡;

service network restart

 

 

 

4.6 文件權限

權限是Linux中的重要概念,每一個文件/目錄等都具備權限,經過ls -l命令咱們能夠 查看某個目錄下的文件或目錄的權限

示例:在隨意某個目錄下ls -l

 

 

 

r:表明權限是可讀,r也能夠用數字4表示

w:表明權限是可寫,w也能夠用數字2表示

x:表明權限是可執行,x也能夠用數字1表示

 

屬主(user

屬組(group

其餘用戶

r

w

x

r

w

x

r

w

x

4

2

1

4

2

1

4

2

1

 

修改文件/目錄的權限的命令:chmod

示例:修改/test下的aaa.txt的權限爲屬主有所有權限,屬主所在的組有讀寫權限

其餘用戶只有讀的權限

chmod u=rwx,g=rw,o=r aaa.txt

 

上述示例還可使用數字表示

chmod 764 aaa.txt

==================================================================================================================================================

 ==================================================================================================================================================

 

 

 

 

 

4.7 虛擬機網絡配置

三種模式:Bridge橋接模式、NAT模式、Host-only僅主機模式:

 

4.7.1 橋接模式

虛擬機使用真實網卡進行通訊,配置簡單;只要和真實計算機在同一個網段內,就能夠直接通訊;局域網內若是有其餘計算機,也能夠進行訪問。缺點:會佔用網段內的一個IP地址。(相似於一臺真正獨立的計算機)

 

參考http://blog.csdn.net/ltr15036900300/article/details/48828207

 

4.7.2 NAT模式

 

使用虛擬網卡VMnet8進行通訊;只能和本機進行通訊;在此基礎上,虛擬機可經過主機訪問互聯網

 

4.7.3 僅主機模式

 

使用虛擬網卡VMnet1進行通訊;只能和本機進行通訊;不能訪問互聯網。

 

參考:http://blog.csdnnet/ltr15036900300/article/details/4882820

 

VMwarecentos橋接模式靜態ip配置

 

 

 

4.8 遠程鏈接工具 ssh鏈接該靜態ip

實際開發中,Linux服務器都有固定的機房,咱們通常要經過遠程的方式去鏈接Linux並操做它,Linux遠程的操做工具備不少,企業中經常使用的有PuttyXshellsecureCRTSSH Secure等。

 

服務器上 ifconfig---獲得主機ip,打開ssh鏈接輸入

IP--------

Root

22

1111111

 

一、 使用putty 鏈接

 

 

 

 

 

 

 

 

 

 

4.9 安裝jdk      ssh中上傳下列文件安裝

rpm與軟件相關命令 至關於window下的軟件助手 用來管理軟件

 

4.9.1 卸載openjdk

Centos 默認安裝了open jdk , 咱們經過命令一下

輸入 rpm -qa | grep java

-q :表示查詢單個文件

-qa :表示查詢全部

 

執行卸載命令: 卸載jdk 1.8 jdk 1.7

rpm -e --nodeps java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64

rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.102-3.b13.el7_2.x86_64

rpm -e --nodeps  java-1.7.0-openjdk-1.7.0.111-2.6.7.8.el7.x86_64

rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.111-2.6.7.8.el7.x86_64

 

4.9.2 上傳jdk linux

經過工具把windowsjdk上傳centos。該工具咱們使用

 

點擊上圖進行 工具安裝。

安裝完成功之後,運行,輸入地址和密碼

 

 

 

 

l 把本機的jdk 上傳linux

 

頁面左側爲windows內容右側centos 目錄,選擇要上傳的文件,右鍵上傳即.

 

1.1.1 解壓縮jd

把壓縮文件解壓到 指定的目錄 /usr/local/

tar jdk-8u144-linux-x64.tar.gz  -C /usr/local/

 

4.9.3 配置jdk

 

把下面的文件加入到profile ,如上圖

 

export JAVA_HOME=/usr/local/jdk1.8.0_144

export PATH=$JAVA_HOME/bin:$PATH

 

4.9.4 加載配置即便配置生效

 

source /etc/profile

 

4.9.5 測試 jdk配置是否成功

 

出現上面提示表示成功

 

4.10 安裝mysql

4.10.1 安裝mysql

1.下載安裝包

本教程提供mysql-5.6.37-linux-glibc2.12-x86_64.tar.gz

 

2.卸載系統自帶的Mariadb

打開Terminal終端:

  // 查詢出來已安裝的mariadb,mariadbmysql 的一個分支

[root@localhost ~]# rpm -qa|grep mariadb

// 卸載mariadb,文件名爲上述命令查詢出來的文件

 [root@localhost ~]# rpm -e --nodeps [查詢出來的文件名]

 

三、刪除etc目錄下的my.cnf

[root@localhost ~]# rm /etc/my.cnf

 

四、執行如下命令來建立mysql用戶組

[root@localhost ~]# groupadd mysql

 

五、執行如下命令來建立一個用戶名爲mysql的用戶並加入mysql用戶組

[root@localhost ~]# useradd -g mysql mysql

 

六、上傳安裝包

用工具上傳到soft

 

七、把安裝包解壓放到 /usr/local/ 目錄下(經過mv 要移動的文件  /usr/local/)

  1. 解壓tar –zxvf /soft/mysql-5.6.37-linux-glibc2.12-x86_64.tar –C /usr/local/
  2. 更名:切到local 目錄下

 

八、將解壓好的文件夾重命名爲mysql

mv mysql-5.6.37-linux-glibc2.12-x86_64  mysql

 

9、進入安裝mysql軟件目錄

[root@localhost ~]# cd /usr/local/mysql

[root@localhost mysql]# chown -R mysql:mysql ./       修改當前目錄擁有着爲mysql用戶

[root@localhost mysql]# ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ 安裝數據庫

注:若執行以上最後一個命令出現如下問題:

FATAL ERROR: please install the following Perl modules before executing

./scripts/mysql_install_db:Data::Dumper

 

解決方法 :安裝autoconf庫

命令: yum -y install autoconf   //此包安裝時會安裝Data:Dumper模塊

安裝完成從新執行上述最後一個命令

從新回到上述第三個命令繼續操做:

[root@localhost mysql]# chown -R mysql:mysql data 修改當前data目錄的擁有者爲mysql用戶

到此數據庫安裝完畢!

 

4.10.2 配置MySQL

1、複製啓動腳本到資源目錄

[root@localhost mysql]# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld

二、增長mysqld服務控制腳本執行權限

[root@localhost mysql]# chmod +x /etc/rc.d/init.d/mysqld

三、將mysqld服務加入到系統服務

[root@localhost mysql]# chkconfig --add mysqld

四、檢查mysqld服務是否已經生效

[root@localhost mysql]# chkconfig --list mysqld

命令輸出相似下面的結果:

mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off

代表mysqld服務已經生效,在二、三、四、5運行級別隨系統啓動而自動啓動,之後可使用service命令控制mysql的啓動和中止

命令爲:service mysqld start和service mysqld stop

 

五、啓動mysqld

[root@localhost mysql]# service mysqld start

六、將mysql的bin目錄加入PATH環境變量,編輯 ~/.bash_profile文件

[root@localhost mysql]# vim ~/.bash_profile

在文件最後添加以下信息:

export PATH=$PATH:/usr/local/mysql/bin

而後按ESC鍵

繼續 shift鍵加冒號打出來=>  :

接下來輸入wq回車便可

執行下面的命令是修改的內容當即生效:

[root@localhost mysql]# source ~/.bash_profile

七、以root帳戶登陸mysql,默認是沒有密碼的

[root@localhost mysql]# mysql -uroot -p

要輸入密碼的時候直接回車便可。

八、設置root帳戶密碼爲root(也能夠修改爲你要的密碼)

mysql>use mysql

mysql>update user set password=password('root') where user='root' and host='localhost';

mysql>flush privileges;

九、設置遠程主機登陸,注意下面的your username 和 your password改爲你須要設置的用戶和密碼

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH

GRANT OPTION;

 

10、若是windows客戶端要訪問mysql .須要執行防火牆的配置

 

4.10.3 配置防火牆

開放Linux的對外訪問的端口3306

 

firewall -cmd --zone=public –add -port=3306/tcp --permanent

 

--permanent永久生效,沒有此參數重啓後失效)

#從新載入

 

firewall -cmd –reload

 

 

 

4.11 安裝tomcat

 

1)上傳Tomcatlinux

 

2)解壓Tomcat/usr/local

 

3)開放Linux的對外訪問的端口8080

 

添加

firewall-cmd --zone=public --add-port=8080/tcp --permanent    (--permanent永久生效,沒有此參數重啓後失效)

從新載入

firewall-cmd --reload

 

 

 (--permanent永久生效,沒有此參數重啓後失效)

 

 

4)啓動關閉Tomcat

進入tomcatbin下啓動:./startup.sh

進入tomcatbin下關閉:./shutdown.sh

相關文章
相關標籤/搜索