版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
Linux物聯(lián)網(wǎng)云平臺開發(fā)基礎(chǔ)及實戰(zhàn)本節(jié)主要講述云計算的虛擬化技術(shù)及云操作系統(tǒng)通過學(xué)習(xí)本節(jié)將能夠?qū)W習(xí)了解云服務(wù)基本技術(shù)。通過本節(jié)學(xué)習(xí)可以:了解云計算概念熟悉虛擬化相關(guān)產(chǎn)品熟悉云計算中的云操作系統(tǒng)體系云計算基礎(chǔ)什么是云計算?維基百科給出了這樣一個非常精辟的解釋:CloudcomputingisastyleofcomputinginwhichdynamicallyscalableandoftenvirtualizedresourcesareprovidedasaserviceovertheInternet.大致意思是:云計算是一種通過網(wǎng)絡(luò),以服務(wù)的方式,提供動態(tài)可伸縮的虛擬化資源的計算模式。云計算基礎(chǔ)虛擬化技術(shù)云操作系統(tǒng)本節(jié)總結(jié)虛擬化是一個廣義的術(shù)語,是指計算元件在虛擬的基礎(chǔ)上而不是真實的基礎(chǔ)上運行,是一個為了簡化管理,優(yōu)化資源的解決方案。如同空曠、通透的寫字樓,整個樓層沒有固定的墻壁,用戶可以用同樣的成本構(gòu)建出更加自主適用的辦公空間,進而節(jié)省成本,發(fā)揮空間最大利用率。這種把有限的固定的資源根據(jù)不同需求進行重新規(guī)劃以達到最大利用率的思路,在IT領(lǐng)域就叫做虛擬化技術(shù)。虛擬化技術(shù)虛擬化架構(gòu)寄居架構(gòu)裸金屬架構(gòu)行業(yè)主流虛擬化廠商主流虛擬化廠商FusionCompute虛擬化引擎FusionComptue是華為自主知識產(chǎn)權(quán),在KVM基礎(chǔ)上開發(fā)的一款虛擬化引擎(FusioncCompute6.2版本后,以KVM為底層),也是云操作系統(tǒng)基礎(chǔ)軟件,主要由虛擬化基礎(chǔ)平臺和云基礎(chǔ)服務(wù)平臺組成,主要負責(zé)硬件資源的虛擬化,以及對虛擬資源、業(yè)務(wù)資源、用戶資源的集中管理。它采用虛擬計算、虛擬存儲、虛擬網(wǎng)絡(luò)等技術(shù),完成計算資源、存儲資源、網(wǎng)絡(luò)資源的虛擬化;同時通過統(tǒng)一的接口,對這些虛擬資源進行集中調(diào)度和管理,從而降低業(yè)務(wù)的運行成本,保證系統(tǒng)的安全性和可靠性,協(xié)助運營商和企業(yè)客戶構(gòu)建安全、綠色、節(jié)能的云數(shù)據(jù)中心。華為虛擬化產(chǎn)品:FusionComputeFusionCompute主要由兩大組件構(gòu)成:CNA(ComputeNodeAgent):計算代理節(jié)點VRM(VirtualizationResourceManagement0):虛擬化資源管理FusionCompute軟件架構(gòu)云計算基礎(chǔ)虛擬化技術(shù)云操作系統(tǒng)本節(jié)總結(jié)云操作系統(tǒng):
云操作系統(tǒng),是以云計算、云存儲技術(shù)作為支撐的操作系統(tǒng),是云計算后臺數(shù)據(jù)中心的整體管理運營系統(tǒng)(也有人認為云計算系統(tǒng)包括云終端操作系統(tǒng),例如現(xiàn)在流行的各類手機操作系統(tǒng),這與先行的單機操作系統(tǒng)區(qū)別不大,在此不做討論),它是指構(gòu)架于服務(wù)器、存儲、網(wǎng)絡(luò)等基礎(chǔ)硬件資源和單機操作系統(tǒng)、中間件、數(shù)據(jù)庫等基礎(chǔ)軟件之上的、管理海量的基礎(chǔ)硬件、軟件資源的云平臺綜合管理系統(tǒng)云操作系統(tǒng)
云操作系統(tǒng)能夠根據(jù)應(yīng)用軟件(如搜索網(wǎng)站的后臺服務(wù)軟件)的需求,調(diào)度多臺電腦的運算資源進行分布計算,再將計算結(jié)果匯聚整合后返回給應(yīng)用軟件。相對于單臺電腦的計算耗時,通過云操作系統(tǒng)能夠節(jié)省大量的計算時間云操作系統(tǒng)架構(gòu)體系 Openstack既是一個社區(qū),也是目前
最流行的開源云操作系統(tǒng),由美國國
家宇航局(NASA)和Rackspace合作
開發(fā)的,旨在為公有云和私有云提供
軟件的開源項目。它提供了一個部署云的
操作平臺工工具集,其宗旨在于,幫助組
織運行為虛擬計算或存儲服務(wù)的云,為公
有云、私有云或其他云提供可擴展的、靈
活的云計算openstackopenstack Openstack的設(shè)計與開發(fā)理念設(shè)計思想開放、靈活、可擴展開放、靈活開源,并盡最大可能重用已有開源項目靈活不使用任何不可替代的私有/商業(yè)組件,使用插件化方式進行架構(gòu)設(shè)計與實現(xiàn)可擴展由多個相互獨立的項目組成,每個項目包含多個獨立服務(wù)組件,無中心架構(gòu)代碼約70%的代碼(核心邏輯)使用python開發(fā) Openstack有著許多版本,在標(biāo)識版本
的時候,采用了A~Z開頭的不同單詞來
表示各種不同的版本。第一個版本A版
(Austin)于2010年10月正式發(fā)布,從 2013年開始,每年大約發(fā)行2個版本,
分別在4月和10月中旬發(fā)布。至今已發(fā)展
至V版(Victoria,截止至2020-10-14)
。Openstack版本
云計算離不開虛擬化,虛擬化是云計算的基層。
虛擬化所虛擬的,不外就是CPU,內(nèi)存,磁盤,操作系統(tǒng),網(wǎng)絡(luò)等基礎(chǔ)資源。所以,Openstack的各個組件功能,都是圍繞管理和調(diào)試這些虛擬資源所開發(fā)的。
Openstack基礎(chǔ)軟件架構(gòu) FusionShpere是在開源openstack基礎(chǔ)上二次開發(fā)的商業(yè)化產(chǎn)品,對比openstack,F(xiàn)usionSphere為用戶提供了一個非常友善,易于管理,功能更完善的操作界面
華為云操作系統(tǒng):FusionSphere本節(jié)總結(jié)了解云計算概念熟悉虛擬化相關(guān)產(chǎn)品熟悉云計算中的云操作系統(tǒng)體系華為在線學(xué)習(xí):/cn/云主機ECS產(chǎn)品介紹:/ecs/index.html云硬盤EVS產(chǎn)品介紹:/evs/index.html本節(jié)主要講述基于華為云平臺的Linux云服務(wù)器的購買及設(shè)置。通過學(xué)習(xí)本節(jié)將能夠?qū)W習(xí)關(guān)于華為云服務(wù)器的相關(guān)功能操作。通過本節(jié)學(xué)習(xí)可以:掌握華為云ECS云主機的使用流程掌握云服務(wù)器上編程開發(fā)環(huán)境的搭建華為ECS云主機Linux開發(fā)項目實踐Linux云服務(wù)器的購買及設(shè)置云服務(wù)器編程環(huán)境配置本節(jié)總結(jié)
打開瀏覽器,輸入網(wǎng)址鏈接,選擇右上方“登錄”。
華為云平臺:
登錄已注冊的用戶名及密碼,單擊進入控制臺,選擇區(qū)域為“華北-北京四”
(可根據(jù)實際所在地區(qū)選擇區(qū)域)
華為云平臺:區(qū)域選擇選擇左側(cè)服務(wù)列表中模塊“網(wǎng)絡(luò)”—>“虛擬私有云”,進入網(wǎng)絡(luò)控制臺
華為云平臺:網(wǎng)絡(luò)控制臺
點擊“創(chuàng)建虛擬私有云”,配置參數(shù),點擊立即創(chuàng)建。區(qū)域:華北-北京四名稱:自定義其他參數(shù)可默認
華為云平臺:創(chuàng)建虛擬私有云
點擊“創(chuàng)建虛擬私有云”,配置參數(shù),點擊立即創(chuàng)建。華為云平臺:創(chuàng)建虛擬私有云
返回虛擬私有云列表,可查看已經(jīng)創(chuàng)建的虛擬私有云
華為云平臺:創(chuàng)建虛擬私有云
返回控制臺,選擇左側(cè)服務(wù)列表中模塊“計算”—>“彈性云服務(wù)器ECS”華為云平臺:彈性云服務(wù)器ECS
單擊“購買彈性云服務(wù)器”,進行基礎(chǔ)配置。計費模式:按需計費區(qū)域:華北-北京四可用區(qū):隨機分配CPU架構(gòu):x86計算規(guī)格:通用計算型,s6.small.11vCPUs/1G(最小化規(guī)格,可根據(jù)實際需求調(diào)整)
華為云平臺:購買ECS
彈性云主機規(guī)格:
華為云平臺:ECS規(guī)格
云主機鏡像:鏡像類型:公共鏡像,鏡像系統(tǒng):CentOS7.664bit(4G)主機安全:不開通系統(tǒng)盤:高IO,40G
華為云平臺:云主機鏡像
網(wǎng)絡(luò):根據(jù)需要創(chuàng)建新的虛擬私有云(根據(jù)提示步驟進行)或選擇之前已創(chuàng)建的虛擬私有云擴展網(wǎng)卡:默認即可安全組:可選擇默認安全組sys-default也可新建安全組彈性公網(wǎng)IP:現(xiàn)在購買線路:靜態(tài)BGP公網(wǎng)帶寬:按帶寬計費帶寬大?。?Mbit/s(規(guī)格最小化,可根據(jù)需求調(diào)整)華為云平臺:網(wǎng)絡(luò)配置 ECS高級配置:云服務(wù)器名稱:ecs-Linux登錄憑證:密碼密碼:可自定義,如Huawei@123)確認密碼:Huawei@123云備份:暫不購買云服務(wù)器組(可選):暫不配置,默認即可高級選項:默認即可華為云平臺:ECS高級配置
確認配置后,請勾選我已經(jīng)閱讀并同意《華為鏡像免責(zé)聲明》,單擊“立即購買”。返回云服務(wù)器列表可查看已創(chuàng)建的云服務(wù)器
華為云平臺:ECS確認配置清單
查看云主機:
到此,Linux云主機創(chuàng)建完成!華為云平臺:查看ECS云主機華為ECS云主機Linux開發(fā)項目實踐Linux云服務(wù)器的購買及設(shè)置云服務(wù)器編程環(huán)境配置本節(jié)總結(jié) JDK是JAVA程序執(zhí)行及開發(fā)必不可少的工具套件,在Linux系統(tǒng)上常用開源的openjdk而不是Oracle公司的JDK.Openjdk與OracleJDK同源,功能大體相當(dāng),但openjdk現(xiàn)由開源組織維護更新,對外提供源碼。而OracleJDK則由Oracle公司維護,功能上的更新更為及時,但只提供JDK的安裝包
登錄云主機,使用以下命令查看yum源是否能夠安裝java: yumlist|grepjava-1.8.0-openjdk-devel云平臺編程環(huán)境配置-1/4使用以下命令安裝openjdkyuminstalljava-1.8.0-openjdk-devel-y
云平臺編程環(huán)境配置-2/4
以管理員權(quán)限打開/etc/bashrc文件,在文件尾部增加以下語句修改系統(tǒng)PATH環(huán)境變量,以便使用新安裝的JDK,然后“wq”保存退出。
命令:vi/etc/bashrc打開配置文件后,增加內(nèi)容: exportPATH=/usr/local/jdk-15.0.2/bin:$PATH
云平臺編程環(huán)境配置-3/4 C、C++開發(fā)環(huán)境使用以下命令安裝相關(guān)軟件即可:
yuminstallgccgcc-c++libstdc++-devel–y
云平臺編程環(huán)境配置-4/4講述了華為云ECS云主機的購買及配置流程講述了云服務(wù)器上編程開發(fā)環(huán)境的搭建
本節(jié)總結(jié)本節(jié)主要講述基于華為云服務(wù)器的云硬盤和云備份的應(yīng)用。通過學(xué)習(xí)本節(jié)將能夠?qū)W習(xí)關(guān)于華為云服務(wù)器的云硬盤及云備份功能。通過本節(jié)學(xué)習(xí)可以:掌握華為云服務(wù)器云硬盤的購買及使用配置掌握華為云服務(wù)器云備份功能華為云服務(wù)器的云硬盤及云備份云硬盤掛載及格式化Linux云服務(wù)器備份本節(jié)總結(jié)購買云硬盤
登錄管理控制臺,選擇“服務(wù)列表>存儲>云硬盤”。進入云硬盤頁面
云硬盤掛載及格式化 ECS高級配置:計費模式:按需計費區(qū)域:華北-北京四可用區(qū):可用區(qū)1磁盤類型:普通I/O(若無此規(guī)格,可選界面存在的規(guī)格)容量:20G云備份:暫不配置更多:暫不配置磁盤名稱:volume-winadded
(用戶可自定義)云硬盤配置
單擊“立即購買”,在“詳情”頁面,您可以再次核對云硬盤信息。確認無誤后,單擊“提交”,開始創(chuàng)建云硬盤。如果還需要修改,單擊“上一步”,修改參數(shù)
云硬盤購買確認掛載云硬盤注意事項:單獨購買的云硬盤為數(shù)據(jù)盤,可以在云硬盤列表中看到磁盤屬性為“數(shù)據(jù)盤”,磁盤狀態(tài)為“可用”。此時需要將該數(shù)據(jù)盤掛載給云服務(wù)器使用。系統(tǒng)盤必須隨云服務(wù)器一同購買,并且會自動掛載,可以在云硬盤列表中看到磁盤屬性為“系統(tǒng)盤”,磁盤狀態(tài)為“正在使用”。當(dāng)系統(tǒng)盤從云服務(wù)器上卸載后,此時系統(tǒng)盤的磁盤屬性變?yōu)椤皢颖P”,磁盤狀態(tài)變?yōu)椤翱捎谩?。(非共享云硬盤可理解為普通電腦購買的SSD硬盤或SATA盤,掛載后對應(yīng)電腦中C、D、E硬盤)掛載云硬盤注意事項掛載云硬盤
在云硬盤列表,找到需要掛載的云硬盤,單擊“掛載”。彈出“掛載”對話框掛載云硬盤掛載云硬盤
選擇云硬盤待掛載的云服務(wù)器,該云服務(wù)器必須與云硬盤位于同一個可用分區(qū),通過下拉列表選擇“掛載點”。掛載云硬盤掛載云硬盤
返回云硬盤列表頁面,此時云硬盤狀態(tài)為“正在掛載”,表示云硬盤處于正在掛載至云服務(wù)器的過程中當(dāng)云硬盤狀態(tài)為“正在使用”時,表示掛載至云服務(wù)器成功,下一步進行初始化才能正常使用。掛載云硬盤查看云硬盤
登錄前面創(chuàng)建的Linux云主機,執(zhí)行以下命令查看新增數(shù)據(jù)盤 fdisk-l
查看云硬盤執(zhí)行以下命令,進入fdisk分區(qū)工具,開始對新增數(shù)據(jù)盤執(zhí)行分區(qū)操作。 fdisk新增數(shù)據(jù)盤,以新掛載的數(shù)據(jù)盤“/dev/vdb”為例: fdisk/dev/vdb
云硬盤分區(qū)
輸入“n”,按“Enter”,開始新建分區(qū)
以創(chuàng)建一個主要分區(qū)為例,輸入“p”,按“Enter”,開始創(chuàng)建一個主分區(qū)。以分區(qū)編號選擇“1”為例,輸入主分區(qū)編號“1”,按“Enter”
云硬盤分區(qū)
以選擇默認初始磁柱編號2048為例,按“Enter”,“Lastsector”表示截止磁柱區(qū)域,可以選擇2048-20971519,默認為20971519。
云硬盤分區(qū)
以選擇默認截止磁柱編號20971519為例,按“Enter”
云硬盤分區(qū)
輸入“p”,按“Enter”,查看新建分區(qū)的詳細信息
云硬盤分區(qū)
輸入“w”,按“Enter”,將分區(qū)結(jié)果寫入分區(qū)表中
如之前分區(qū)操作有誤,請輸入“q”,則會退出fdisk分區(qū)工具,之前的分區(qū)結(jié)果將不會被保留。步驟5執(zhí)行以下命令,將新的分區(qū)表變更同步至操作系統(tǒng)。
partprobe格式化云硬盤
執(zhí)行以下命令,將新建分區(qū)文件系統(tǒng)設(shè)為系統(tǒng)所需格式 mkfs-t文件系統(tǒng)格式/dev/vdb1,以設(shè)置文件系統(tǒng)為“ext4”為例: mkfs-text4/dev/vdb1
格式化云硬盤
執(zhí)行以下命令,新建掛載點,以新建掛載點“/mnt/sdc”為例: mkdir/mnt/sdc
執(zhí)行以下命令,將新建分區(qū)掛載到上步中新建的掛載點下,以掛載新建分區(qū)至“/mnt/sdc”為例: mount/dev/vdb1/mnt/sdc
執(zhí)行以下命令,查看掛載結(jié)果: df-TH
格式化云硬盤
配置開機自動掛載分區(qū),執(zhí)行以下命令查看分區(qū)的UUID,blkid磁盤分區(qū),以查詢磁盤分區(qū)“/dev/vdb1”的UUID為例: blkid/dev/vdb1
編輯fstab文件,將分區(qū)加入開機自動啟動
vi/etc/fstab
按“i”,進入編輯模式,填寫下行內(nèi)容(以下UUID換成自己查詢所得的ID) UUID=8493dccb-1a8c-4225-8e9c-84eb1243cf23/mnt/sdcext4defaults02
執(zhí)行如下命令,將“/etc/fstab”文件所有內(nèi)容重新加載 mount-a
格式化云硬盤華為云服務(wù)器的云硬盤及云備份云硬盤掛載及格式化Linux云服務(wù)器備份本節(jié)總結(jié)云主機備份
云備份(CloudBackupandRecovery)為云內(nèi)的彈性云服務(wù)器(ElasticCloudServer,ECS)、云耀云服務(wù)器(HyperElasticCloudServer,HECS)、裸金屬服務(wù)器(BareMetalServer,BMS)(下文統(tǒng)稱為服務(wù)器)、云硬盤(ElasticVolumeService,EVS)、SFSTurbo文件系統(tǒng)和云下VMware虛擬化環(huán)境,提供簡單易用的備份服務(wù),針對病毒入侵、人為誤刪除、軟硬件故障等場景,可將數(shù)據(jù)恢復(fù)到任意備份點。云備份保障用戶數(shù)據(jù)的安全性和正確性,確保業(yè)務(wù)安全。
云主機備份創(chuàng)建備份,進入云備份(CBR)界面
云主機備份
備份配置:計費模式:按需計費區(qū)域:北京四保護類型:備份選擇服務(wù)器:ecs-linux容量:80GB(需根據(jù)實際情況調(diào)整)自動備份:立即配置,創(chuàng)建備份策略存儲庫名稱:vault-test備份配置
返回云服務(wù)器備份頁面。可以在存儲庫列表看到成功創(chuàng)建的存儲庫模擬數(shù)據(jù)恢復(fù)
當(dāng)服務(wù)器中的磁盤發(fā)生故障、或者由于人為誤操作導(dǎo)致服務(wù)器數(shù)據(jù)丟失時,可以使用已經(jīng)創(chuàng)建成功的備份恢復(fù)服務(wù)器。
前提:需要恢復(fù)的服務(wù)器中的磁盤運行狀態(tài)正常;需要恢復(fù)的服務(wù)器至少存在一個備份,并且需要恢復(fù)的服務(wù)器的備份的“備份狀態(tài)”為“可用”。
登錄云主機,創(chuàng)建一個文件,輸入內(nèi)容“helloworld” vi/root/test模擬數(shù)據(jù)恢復(fù)
在云服務(wù)器備份界面,選擇“存儲庫”頁簽,找到云服務(wù)器對應(yīng)的存儲庫,單擊“操作”列下的“執(zhí)行備份”。選擇綁定存儲庫上需要備份的服務(wù)器,勾選后將在已勾選服務(wù)器列表區(qū)域展示。
查看備份存儲存
擬數(shù)據(jù)丟失,登錄云主機,手動刪除/root/test文件 rm-rf/root/test
查看文件是否已刪除: cat/root/test
模擬數(shù)據(jù)丟失
登錄云備份管理控制臺,選擇“備份副本”頁簽,找到存儲庫和服務(wù)器所對應(yīng)的備份,單擊備份所在行的“恢復(fù)數(shù)據(jù)”。丟失數(shù)據(jù)恢復(fù)
點擊確認,使用備份恢復(fù)服務(wù)器數(shù)據(jù)丟失數(shù)據(jù)恢復(fù)
登錄云服務(wù)器ecs-linux,查看刪除的文件是否被恢復(fù)(需等待,可進行刷新) cat/root/test查看數(shù)據(jù)恢復(fù)結(jié)果本節(jié)總結(jié)掌握華為云服務(wù)器云硬盤的購買及使用配置掌握華為云服務(wù)器云備份功能本節(jié)主要講述在EulerOS虛擬機系統(tǒng)上的Web項目部署操作步驟過程。通過學(xué)習(xí)本節(jié)將能夠?qū)W習(xí)在EulerOS虛擬機系統(tǒng)上的Web項目部署方法。通過本節(jié)學(xué)習(xí)可以:熟悉虛擬機軟件VirtualBox操作掌握EulerOS系統(tǒng)基本操作命令掌握Linux系統(tǒng)上Tomcat服務(wù)的安裝配置掌握Linux系統(tǒng)上Mysql數(shù)據(jù)庫的安裝配置掌握Linux系統(tǒng)上的網(wǎng)絡(luò)管理EulerOS虛擬機系統(tǒng)上的Web項目部署準(zhǔn)備工作Tomcat下載安裝配置Tomcat服務(wù)程序安裝配置mariadb數(shù)據(jù)庫啟動Tomcat服務(wù)本節(jié)總結(jié)檢查確認JDK已正確安裝打開VirtualBox軟件后,啟動EulerOS并登錄系統(tǒng)后,通過命令:“java-version”“javac-version”檢查版本的方式確認JAVA開發(fā)環(huán)境。正確的命令輸出應(yīng)如下:如命令執(zhí)行出錯則需要安裝或配置好環(huán)境后才可以繼續(xù)下一步操作。成績管理系統(tǒng)源碼包解包到EulerOSOBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。通過命令”tarcjvfstudent.tar.gzstudent/”把第三章的學(xué)生成績管理系統(tǒng)源碼打包成student.tar.gz壓縮包。通過虛擬機的共享文件夾方式把student.tar.gz復(fù)制到EulerOS系統(tǒng)中。通過命令”tarxfstudent.tar.gz-C/usr/local”把學(xué)生成績管理系統(tǒng)項目包student.tar.gz解包到/usr/local目錄下。EulerOS虛擬機系統(tǒng)上的Web項目部署準(zhǔn)備工作Tomcat下載安裝配置Tomcat服務(wù)程序安裝配置mariadb數(shù)據(jù)庫啟動Tomcat服務(wù)本節(jié)總結(jié)下載Tomcat服務(wù)程序OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。打開官網(wǎng)下載地址:/download-90.cgi,選擇圖下標(biāo)注的鏈接下載:安裝Tomcat服務(wù)程序及MySql支持包OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。通過命令”sudotarxfapache-tomcat-9.0.44.tar.gz-C/usr/local/”把下載的壓縮包解包到/usr/local目錄下,解包完成后,tomcat服務(wù)程序目錄就是在/usr/local/apache-tomcat-9.044路徑下。從數(shù)據(jù)庫Mysql官網(wǎng)上下載Tomcat支持包://Downloads/Connector-J/mysql-connector-java-8.0.23.tar.gz。下載后把解包得到的mysql-connector-java-8.0.23.jar復(fù)制到Tomcat服務(wù)器擴展庫的所在目錄里:/usr/local/apache-tomcat-9.0.44/lib/EulerOS虛擬機系統(tǒng)上的Web項目部署準(zhǔn)備工作Tomcat下載安裝配置Tomcat服務(wù)程序安裝配置mariadb數(shù)據(jù)庫啟動Tomcat服務(wù)本節(jié)總結(jié)配置Tomcat服務(wù)程序(1/2)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。在Tomcat的conf/Catalina/localhost目錄下新建一個student.xml文件,指定學(xué)生成績管理系統(tǒng)項目源碼的路徑。student.xml文件內(nèi)容:<?xmlversion='1.0'encoding='utf-8'?><Contextpath="student"docBase="/usr/local/student/WebContent/"debug="0"privileged="true"/>配置Tomcat服務(wù)程序(2/2)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。指定以login.jsp為啟動頁面。打開”/usr/local/apache-tomcat-9.0.44/conf/web.xml”配置文件,把第4734行內(nèi)容修改為”<welcome-file>login.jsp</welcome-file>”并保存退出EulerOS虛擬機系統(tǒng)上的Web項目部署準(zhǔn)備工作Tomcat下載安裝配置Tomcat服務(wù)程序安裝配置mariadb數(shù)據(jù)庫啟動Tomcat服務(wù)本節(jié)總結(jié)安裝配置mariadb數(shù)據(jù)庫(1/3)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。安裝mariadb數(shù)據(jù)庫命令:“yuminstallmariadb”啟動mariadb數(shù)據(jù)庫服務(wù)命令:“systemctlstartmariadb.service”安裝配置mariadb數(shù)據(jù)庫(2/3)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。在終端執(zhí)行命令”mysql”進入數(shù)據(jù)庫操作命令界面創(chuàng)建數(shù)據(jù)庫。執(zhí)行sql語句:createdatabasemydb;//創(chuàng)建數(shù)據(jù)庫mydbusemydb;
//指定當(dāng)前使用數(shù)據(jù)庫mydb數(shù)據(jù)表創(chuàng)建,并指定使用UTF-8字符編碼,以便支持中文。執(zhí)行sql語句:createtablestudent(idvarchar(20),namechar(20),ageint,telchar(20),addresschar(250),mathfloat,englishfloat,sciencefloat)CHARSET=UTF8;安裝配置mariadb數(shù)據(jù)庫(3/3)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。增加測試記錄,按順序指定每個字段的值:grantselect,insert,update,deleteonmydb.*towho@"localhost"identifiedby"123456";grantselect,insert,update,deleteonmydb.*towho@"%"identifiedby"123456";數(shù)據(jù)庫訪問的授權(quán),允許用戶who憑密碼123456在本機或通過網(wǎng)絡(luò)遠程操作數(shù)據(jù)庫mydb上所有數(shù)據(jù)表:insertintostudentvalues("02","小剛",22,,"廣東省深圳市",88.5,76.5,92);EulerOS虛擬機系統(tǒng)上的Web項目部署準(zhǔn)備工作Tomcat下載安裝配置Tomcat服務(wù)程序安裝配置mariadb數(shù)據(jù)庫啟動Tomcat服務(wù)本節(jié)總結(jié)開放Tomcat服務(wù)網(wǎng)絡(luò)端口OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。在eulerOS系統(tǒng)防火墻上開放Tomcat服務(wù)器默認使用的8080端口,在終端上執(zhí)行命令:firewall-cmd--zone=public--add-port=8080/tcp--permanent
//防火墻永久開放8080端口firewall-cmd--reload
//重新加載防火墻規(guī)則啟動Tomcat服務(wù)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。啟動mariadb數(shù)據(jù)庫服務(wù)命令:systemctlstartmariadb.service啟動Tomcat服務(wù)器,在終端執(zhí)行Tomcat自帶的啟動腳本:/usr/local/apache-tomcat-9.0.44/bin/startup.sh打開網(wǎng)頁瀏覽器,輸入”localhost:8080/student/”即可打開登錄學(xué)生成績管理系統(tǒng)本節(jié)總結(jié)講述了EulerOS系統(tǒng)上Tomcat服務(wù)的安裝配置講述了EulerOS系統(tǒng)上Mysql數(shù)據(jù)庫的安裝配置述述了EulerOS系統(tǒng)上的網(wǎng)絡(luò)管理本節(jié)主要講述在華為云服務(wù)器上部署Web項目部署操作步驟過程。通過學(xué)習(xí)本節(jié)將能夠?qū)W習(xí)在華為云服務(wù)器上的Web項目部署方法。通過本節(jié)學(xué)習(xí)可以:熟悉華為云服務(wù)器的應(yīng)用操作掌握云服務(wù)器上ftp服務(wù)的安裝配置掌握云服務(wù)器上Tomcat服務(wù)的安裝配置掌握云服務(wù)器上Mysql數(shù)據(jù)庫的安裝配置華為云服務(wù)器上部署Web項目創(chuàng)建彈性云服務(wù)器云服務(wù)器搭建FTP服務(wù)站點云服務(wù)器上搭建Mariadb數(shù)據(jù)庫云服務(wù)器上搭建Tomcat服務(wù)器云服務(wù)器上部署學(xué)生成績管理系統(tǒng)本節(jié)總結(jié)創(chuàng)建彈性云服務(wù)器登錄后,
建立一個低成本的云服務(wù)器。配置參數(shù)如圖下所示:登錄云服務(wù)器系統(tǒng)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。在彈性云服務(wù)器列表頁面,通過”遠程登錄“打開登錄選擇頁面:任意選擇一種方式登錄云服務(wù)器:華為云服務(wù)器上部署Web項目創(chuàng)建彈性云服務(wù)器云服務(wù)器搭建FTP服務(wù)站點云服務(wù)器上搭建Mariadb數(shù)據(jù)庫云服務(wù)器上搭建Tomcat服務(wù)器云服務(wù)器上部署學(xué)生成績管理系統(tǒng)本節(jié)總結(jié)云服務(wù)器搭建FTP服務(wù)站點(1/6)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。安裝vsftpd命令:“yuminstallvsftpd”設(shè)置云服務(wù)器系統(tǒng)啟動后自動開啟FTP服務(wù):“systemctlenablevsftpd.service”啟動FTP服務(wù):“systemctlstartvsftpd.service”增加ftp服務(wù)站點的登錄用戶”ftpuser”并設(shè)置密碼:“useraddftpuser”“passwdftpuser”創(chuàng)建ftp上傳文件的接收目錄,如:”/var/ftp/myftp”:“mkdir/var/ftp/myftp”myftp目錄屬主改為ftp用戶”ftpuser”:“chown-Rftpuser:ftpuser/var/ftp/myftp”
云服務(wù)器搭建FTP服務(wù)站點(2/6)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。配置ftp服務(wù)。打開/etc/vsftpd/vsftpd.conf配置文件,修改以下行內(nèi)容:12anonymous_enable=NO
#不允許匿名登錄FTP服務(wù)器16local_enable=YES
#允許本地用戶登錄FTP服務(wù)器19write_enable=YES
#允許上傳文件24local_root=/var/ftp/myftp
#FTP本地用戶使用的文件目錄101chroot_local_user=YES
#所有用戶都被限制在其主目錄105allow_writeable_chroot=YES#允許用戶寫目錄116listen=YES
#指定通過IPv4的IP地址訪問ftp125listen_ipv6=NO
#不使用IPv6的IP地址130pasv_address=
#ftp服務(wù)器的公網(wǎng)IP地址131pasv_min_port=3000
#被動模式下使用的最小端口132pasv_max_port=3100
#被動模式下使用的最大端口保存修改好的配置文件后,重啟vsftpd服務(wù):“systemctlrestartvsftpd.service”云服務(wù)器搭建FTP服務(wù)站點(3/6)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。在云服務(wù)器上開放ftp服務(wù)所用到的端口號。在彈性云服務(wù)器列表頁面中,點擊云服務(wù)器名稱,進入如下圖的頁面選擇”安全組”里的”配置規(guī)則”云服務(wù)器搭建FTP服務(wù)站點(4/6)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。在”配置規(guī)則”頁面如下圖里選擇”入方向規(guī)則”,然后點擊”添加規(guī)則”云服務(wù)器搭建FTP服務(wù)站點(5/6)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。添加開放FTP服務(wù)所用的TCP協(xié)議的20-21端口號,F(xiàn)TP被動模式下處理客戶端訪問所用的TCP3000-3100端口號,及Tomcat服務(wù)所用的8080端口號:云服務(wù)器搭建FTP服務(wù)站點(6/6)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。在Linux系統(tǒng)上通過終端命令”ftp服務(wù)器的公網(wǎng)IP”登錄FTP服務(wù)器,如”ftp”登錄成功后,設(shè)置被動模式訪問FTP服務(wù)器:“passiveon”通過”put源文件路徑FTP服務(wù)器接收路徑”上傳文件,如:“put/media/sf_E_DRIVE/Another_Day.mp3/Another_Day.mp3”通過”getFTP服務(wù)器共享文件路徑接收文件路徑”下載文件,如:“get/hello.txt/home/stu/hello.txt”華為云服務(wù)器上部署Web項目創(chuàng)建彈性云服務(wù)器云服務(wù)器搭建FTP服務(wù)站點云服務(wù)器上搭建Mariadb數(shù)據(jù)庫云服務(wù)器上搭建Tomcat服務(wù)器云服務(wù)器上部署學(xué)生成績管理系統(tǒng)本節(jié)總結(jié)云服務(wù)器上搭建Mariadb數(shù)據(jù)庫(1/3)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。安裝數(shù)據(jù)庫Mariadb命令:“yuminstallmariadb-server”設(shè)置Mariadb數(shù)據(jù)庫服務(wù)在系統(tǒng)啟動時自動啟動:“systemctlenablemariadb.service”啟動Mariadb數(shù)據(jù)庫服務(wù)命令:“systemctlstartmariadb.service”云服務(wù)器上搭建Mariadb數(shù)據(jù)庫(2/3)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。在云服務(wù)器終端執(zhí)行命令”mysql”進入數(shù)據(jù)庫操作命令界面創(chuàng)建數(shù)據(jù)庫。執(zhí)行sql語句:createdatabasemydb;//創(chuàng)建數(shù)據(jù)庫mydbusemydb;
//指定當(dāng)前使用數(shù)據(jù)庫mydb數(shù)據(jù)表創(chuàng)建,并指定使用UTF-8字符編碼,以便支持中文。執(zhí)行sql語句:createtablestudent(idvarchar(20),namechar(20),ageint,telchar(20),addresschar(250),mathfloat,englishfloat,sciencefloat)CHARSET=UTF8;云服務(wù)器上搭建Mariadb數(shù)據(jù)庫(3/3)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。增加測試記錄,按順序指定每個字段的值:grantselect,insert,update,deleteonmydb.*towho@"localhost"identifiedby"123456";grantselect,insert,update,deleteonmydb.*towho@"%"identifiedby"123456";數(shù)據(jù)庫訪問的授權(quán),允許用戶who憑密碼123456在本機或通過網(wǎng)絡(luò)遠程操作數(shù)據(jù)庫mydb上所有數(shù)據(jù)表:insertintostudentvalues("02","小剛",22,,"廣東省深圳市",88.5,76.5,92);華為云服務(wù)器上部署Web項目創(chuàng)建彈性云服務(wù)器云服務(wù)器搭建FTP服務(wù)站點云服務(wù)器上搭建Mariadb數(shù)據(jù)庫云服務(wù)器上搭建Tomcat服務(wù)器云服務(wù)器上部署學(xué)生成績管理系統(tǒng)本節(jié)總結(jié)安裝配置mariadb數(shù)據(jù)庫(2/3)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。在終端執(zhí)行命令”mysql”進入數(shù)據(jù)庫操作命令界面創(chuàng)建數(shù)據(jù)庫。執(zhí)行sql語句:createdatabasemydb;//創(chuàng)建數(shù)據(jù)庫mydbusemydb;
//指定當(dāng)前使用數(shù)據(jù)庫mydb數(shù)據(jù)表創(chuàng)建,并指定使用UTF-8字符編碼,以便支持中文。執(zhí)行sql語句:createtablestudent(idvarchar(20),namechar(20),ageint,telchar(20),addresschar(250),mathfloat,englishfloat,sciencefloat)CHARSET=UTF8;安裝配置mariadb數(shù)據(jù)庫(3/3)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。增加測試記錄,按順序指定每個字段的值:grantselect,insert,update,deleteonmydb.*towho@"localhost"identifiedby"123456";grantselect,insert,update,deleteonmydb.*towho@"%"identifiedby"123456";數(shù)據(jù)庫訪問的授權(quán),允許用戶who憑密碼123456在本機或通過網(wǎng)絡(luò)遠程操作數(shù)據(jù)庫mydb上所有數(shù)據(jù)表:insertintostudentvalues("02","小剛",22,,"廣東省深圳市",88.5,76.5,92);華為云服務(wù)器上部署Web項目創(chuàng)建彈性云服務(wù)器云服務(wù)器搭建FTP服務(wù)站點云服務(wù)器上搭建Mariadb數(shù)據(jù)庫云服務(wù)器上搭建Tomcat服務(wù)器云服務(wù)器上部署學(xué)生成績管理系統(tǒng)本節(jié)總結(jié)云服務(wù)器上搭建Tomcat服務(wù)器OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。在云服務(wù)器上安裝openjdk:“yuminstalljava-1.8.0-openjdk-devel”通過命令wget從官網(wǎng)下載Tomcat軟件:“wget/tomcat/tomcat-9/v9.0.46/bin/apache-tomcat-9.0.46.tar.gz”下載完成后,把軟件壓縮包解包到/usr/local目錄下:“tarxfapache-tomcat-9.0.46.tar.gz-C/usr/local/”通過Tomcat自帶的啟動腳本啟動服務(wù):“/usr/local/apache-tomcat-9.0.46/bin/startup.sh”在瀏覽器上通過”云服務(wù)器公網(wǎng)IP地址:8080”即可查看到Tomcat默認的啟動頁面云服務(wù)器上部署學(xué)生成績管理系統(tǒng)(1/3)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。打包學(xué)生成績管理系統(tǒng)源碼包student.tar.gz,并通過FTP上傳至云服務(wù)器上在云服務(wù)器上解包源碼包到/usr/local目錄里:“tarxfstudent.tar.gz-C/usr/local/”在Mysql官網(wǎng)下載Tomcat訪問mysql數(shù)據(jù)庫的功能擴展包。下載后,把解包得到的mysql-connector-java-8.0.23.jar復(fù)制到Tomcat的擴展庫目錄里:wget/archives/mysql-connector-java-8.0/mysql-connector-java-8.0.23.tar.gztarxfmysql-connector-java-8.0.23.tar.gzcpmysql-connector-java-8.0.23/mysql-connector-java-8.0.23.jar/usr/local/apache-tomcat-9.0.46/lib/云服務(wù)器上部署學(xué)生成績管理系統(tǒng)(2/3)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。在/usr/local/apache-tomcat-9.0.46/conf/Catalina/localhost/目錄下新建一個student.xml文件,指定學(xué)生成績管理系統(tǒng)項目源碼的路徑。student.xml文件內(nèi)容:<?xmlversion='1.0'encoding='utf-8'?><Contextpath="student"docBase="/usr/local/student/WebContent/"debug="0"privileged="true"/>云服務(wù)器上部署學(xué)生成績管理系統(tǒng)(3/3)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。指定以login.jsp為啟動頁面。打開”/usr/local/apache-tomcat-9.0.46/conf/web.xml”配置文件,把第4734行內(nèi)容修改為”<welcome-file>login.jsp</welcome-file>”并保存退出。關(guān)閉Tomcat服務(wù)后重新打開,讓配置生效:
/usr/local/apache-tomcat-9.0.46/bin/shutdown.sh
/usr/local/apache-tomcat-9.0.46/bin/startup.sh注意:在云服務(wù)器上啟動Tomcat服務(wù)5分鐘后才可以正常訪問。登錄學(xué)生成績管理系統(tǒng)OBS通過智能調(diào)度,并結(jié)合傳輸加速、大數(shù)據(jù)垂直優(yōu)化,為用戶提供高并發(fā)、大帶寬、穩(wěn)定低時延的數(shù)據(jù)訪問體驗。在瀏覽器上通過”云服務(wù)器公網(wǎng)IP地址:8080/student”登錄系統(tǒng)。憑Mariadb數(shù)據(jù)庫授權(quán)訪問的用戶名及密碼登錄系統(tǒng)。本節(jié)總結(jié)講述了云服務(wù)器上ftp服務(wù)的安裝配置講述了云服務(wù)器上Tomcat服務(wù)的安裝配置講述了云服務(wù)器上Mysql數(shù)據(jù)庫的安裝配置謝謝119嵌入式Linux基礎(chǔ)及項目實戰(zhàn)本節(jié)主要講述嵌入式系統(tǒng)基礎(chǔ)架構(gòu)、嵌入式操作系統(tǒng)簡介以及嵌入系統(tǒng)開發(fā)模式等。通過學(xué)習(xí)本節(jié)將能夠?qū)W習(xí)講述嵌入式系統(tǒng)的組成、嵌入式操作系統(tǒng)簡介和嵌入系統(tǒng)開發(fā)模式等。通過本節(jié)學(xué)習(xí)可以:熟悉嵌入式系統(tǒng)定義了解嵌入式系統(tǒng)的組成了解嵌入式操作系統(tǒng)發(fā)展經(jīng)歷階段熟悉嵌入系統(tǒng)開發(fā)模式嵌入式系統(tǒng)基礎(chǔ)嵌入式系統(tǒng)定義嵌入式系統(tǒng)的組成嵌入式操作系統(tǒng)發(fā)展經(jīng)歷階段嵌入系統(tǒng)開發(fā)模式本節(jié)總結(jié)嵌入式系統(tǒng)定義
以應(yīng)用為中心:嵌入式系統(tǒng)是以滿足某特定的應(yīng)用場景而特別制造的,而不是追求通用性。而且系統(tǒng)功能需充分考慮用戶的易用性,能讓用戶經(jīng)過簡單學(xué)習(xí)即可上手。以計算機技術(shù)為基礎(chǔ):嵌入式系統(tǒng)是以計算機系統(tǒng)技術(shù)為核心,集成特定的外圍電路及外圍設(shè)備而形成的一個計算機系統(tǒng)。軟硬件可裁剪:嵌入式系統(tǒng)針對的應(yīng)用場景種類繁多,往往伴隨著差異極大的個性化設(shè)計要求,因此根據(jù)系統(tǒng)需求的不同,綜合功能、成本、功耗方面的要求,靈活裁剪軟硬件,設(shè)計出符合要求的最終系統(tǒng)。專用性:嵌入式系統(tǒng)不強調(diào)性能的突出,結(jié)合系統(tǒng)需求及成本的考慮,以夠用為原則。嵌入式系統(tǒng)的應(yīng)用場合大多對可靠性、實時性有較高要求,這就決定了服務(wù)于特定應(yīng)用的專用系統(tǒng)是嵌入式系統(tǒng)的主流模式,它并不強調(diào)系統(tǒng)的通用性和可擴展。
嵌入式系統(tǒng)是以應(yīng)用為中心,以計算機技術(shù)為基礎(chǔ),能夠根據(jù)用戶需求(功能、可靠性、成本、體積、功耗、環(huán)境等)靈活裁剪軟硬件模塊的專用計算機系統(tǒng)。特點概述:嵌入式系統(tǒng)基礎(chǔ)嵌入式系統(tǒng)定義嵌入式系統(tǒng)的組成嵌入式操作系統(tǒng)發(fā)展經(jīng)歷階段嵌入系統(tǒng)開發(fā)模式本節(jié)總結(jié)嵌入式系統(tǒng)的組成-1/2嵌入式系統(tǒng)主要分成硬件層、硬件抽像層(板級支持包)、系統(tǒng)軟件層及應(yīng)用軟件層。嵌入式系統(tǒng)的組成-2/2硬件層:嵌入式系統(tǒng)硬件組成與通用計算機系統(tǒng)一致,主要由處理器、內(nèi)部存儲器、外部儲器、輸入設(shè)備及輸出設(shè)備。應(yīng)用軟件層:通過操作系統(tǒng)提供的統(tǒng)一標(biāo)準(zhǔn)的應(yīng)用程序調(diào)用接口,調(diào)用系統(tǒng)的各種軟硬件功能完成用戶程序的特定用途。硬件抽像層(板級支持包層):主要根據(jù)操作系統(tǒng)制定的統(tǒng)一標(biāo)準(zhǔn)的驅(qū)動接口,編寫對底層硬件的驅(qū)動代碼。實現(xiàn)當(dāng)操作系統(tǒng)接收到應(yīng)用程序的功能調(diào)用時,系統(tǒng)再通過驅(qū)動代碼使用硬件的功能完成相應(yīng)操作。系統(tǒng)軟件層:即操作系統(tǒng),統(tǒng)一管理系統(tǒng)所有的軟硬資源,并分別提供了統(tǒng)一標(biāo)準(zhǔn)的應(yīng)用程序調(diào)用接口和驅(qū)動程序接口,使應(yīng)用程序和底層硬件分離開來。應(yīng)用程序開發(fā)人員無需關(guān)心底層硬件的工作情況,只需根據(jù)系統(tǒng)提供的接口調(diào)用即可;而硬件抽像層開發(fā)人員無需關(guān)心應(yīng)用程序如何使用,只需要據(jù)系統(tǒng)的驅(qū)動接口要求驅(qū)動好硬件即可。
嵌入式系統(tǒng)基礎(chǔ)嵌入式系統(tǒng)定義嵌入式系統(tǒng)的組成嵌入式操作系統(tǒng)發(fā)展經(jīng)歷階段嵌入系統(tǒng)開發(fā)模式本節(jié)總結(jié)嵌入式操作系統(tǒng)簡介無操作系統(tǒng)階段。嵌入式系統(tǒng)最初的應(yīng)用是基于單片機的,一般沒有操作系統(tǒng)的支持,只能通過匯編語言對系統(tǒng)進行直接控制,運行結(jié)束后再清除內(nèi)存。簡單操作系統(tǒng)階段。此階段嵌入式操作系統(tǒng)雖然還比較簡單,但已經(jīng)初步具有了一定的兼容性和擴展性,內(nèi)核精巧且效率高,主要用來控制系統(tǒng)負載以及監(jiān)控應(yīng)用程序的運行。實時操作系統(tǒng)階段。此階段操作系統(tǒng)的實時性得到了很大改善,已經(jīng)能夠運行在各種不同類型的微處理器上,具有高度的模塊化特點和擴展性。面向Internet階段。嵌入式技術(shù)與Intemet技術(shù)的結(jié)合正在推動著嵌入式技術(shù)的飛速發(fā)展,嵌入式系統(tǒng)的研究和應(yīng)用會出現(xiàn)更多的新的顯著變化嵌入式系統(tǒng)的發(fā)展,歷吏上嵌入式操作系統(tǒng)經(jīng)歷了四個階段:嵌入式系統(tǒng)基礎(chǔ)嵌入式系統(tǒng)定義嵌入式系統(tǒng)的組成嵌入式操作系統(tǒng)發(fā)展經(jīng)歷階段嵌入系統(tǒng)開發(fā)模式本節(jié)總結(jié)嵌入系統(tǒng)開發(fā)模式嵌入式系統(tǒng)在開發(fā)過程一般都采用“宿主機/目標(biāo)板”開發(fā)模式,即利用宿主機(PC機)上豐富的軟硬件資源及良好的開發(fā)環(huán)境和調(diào)試工具來開發(fā)目標(biāo)板上的軟件,然后通過交叉編譯環(huán)境編寫目標(biāo)代碼和生成可執(zhí)行文件,通過串口/USB/以太網(wǎng)等方式下載到目標(biāo)板上,利用交叉調(diào)試器在監(jiān)控程序運行,實時分析,最后,將程序下載固化到目標(biāo)機上,完成整個開發(fā)過程。描述了嵌入式系統(tǒng)定義講解了嵌入式系統(tǒng)的組成講解了嵌入式操作系統(tǒng)發(fā)展經(jīng)歷階段講解了嵌入系統(tǒng)開發(fā)模式本節(jié)主要講述嵌入式Linux開發(fā)環(huán)境的搭建。本節(jié)主要講述嵌入式Linux開發(fā)環(huán)境的搭建、嵌入式開發(fā)工具的安裝及配置。通過本節(jié)學(xué)習(xí)可以:熟悉嵌入式Linux開發(fā)環(huán)境的搭建熟悉VirtualBox虛擬機共享目錄熟悉Linux下的串口調(diào)試助手安裝配置熟悉嵌入系統(tǒng)鏡像的燒寫及測試掌握交叉編譯器的安裝配置嵌入式Linux開發(fā)環(huán)境的搭建安裝編譯器、所需的工具及庫設(shè)置虛擬機共享Windows系統(tǒng)目錄Linux下的串口調(diào)試助手--minicom
安裝minicom程序配置minicom測試串口樹莓派3B+開發(fā)板的系統(tǒng)鏡像燒寫及測試
下載燒寫系統(tǒng)鏡像使能樹莓派的串口輸出樹莓派的串口連接登錄樹莓派的Linux系統(tǒng)交叉編譯器的安裝配置安裝編譯器、所需的工具及庫sudoapt-getinstallgccg++binutilspatchbzip2flexbisonmakeautoconfgettexttexinfounzipsharutilssubversionlibncurses5-devncurses-termzlib1g-devlibssl-devgit啟動并登錄Ubuntu系統(tǒng)后,安裝編譯器及所需的功能庫,執(zhí)行終端命令:嵌入式Linux開發(fā)環(huán)境的搭建安裝編譯器、所需的工具及庫設(shè)置虛擬機共享Windows系統(tǒng)目錄Linux下的串口調(diào)試助手--minicom
安裝minicom程序配置minicom測試串口樹莓派3B+開發(fā)板的系統(tǒng)鏡像燒寫及測試
下載燒寫系統(tǒng)鏡像使能樹莓派的串口輸出樹莓派的串口連接登錄樹莓派的Linux系統(tǒng)交叉編譯器的安裝配置設(shè)置虛擬機共享Windows系統(tǒng)目錄
在VirtualBox軟件界面上的菜單項”設(shè)備”選”共享文件夾”打開共享文件夾設(shè)置窗口,如設(shè)置共享Windows上的E盤分區(qū):
設(shè)置好后可在Ubuntu系統(tǒng)的”/media/”目錄下訪問到Windows共享的目錄嵌入式Linux開發(fā)環(huán)境的搭建安裝編譯器、所需的工具及庫設(shè)置虛擬機共享Windows系統(tǒng)目錄Linux下的串口調(diào)試助手--minicom
安裝minicom程序配置minicom測試串口樹莓派3B+開發(fā)板的系統(tǒng)鏡像燒寫及測試
下載燒寫系統(tǒng)鏡像使能樹莓派的串口輸出樹莓派的串口連接登錄樹莓派的Linux系統(tǒng)交叉編譯器的安裝配置串口串口是嵌入式系統(tǒng)開發(fā)中最常用的調(diào)試接口,因現(xiàn)在大多PC機都沒有把串口外接出來,所以可以采用USB轉(zhuǎn)串口設(shè)備來使用。在Linux系統(tǒng)上minicom是一個Linux系統(tǒng)終端上運行的串口收發(fā)程序,它只顯示串口接收到內(nèi)容,并把用戶的鍵盤輸入通過串口發(fā)出去。嵌入式Linux開發(fā)環(huán)境的搭建安裝編譯器、所需的工具及庫設(shè)置虛擬機共享Windows系統(tǒng)目錄Linux下的串口調(diào)試助手--minicom
安裝minicom程序配置minicom測試串口樹莓派3B+開發(fā)板的系統(tǒng)鏡像燒寫及測試
下載燒寫系統(tǒng)鏡像使能樹莓派的串口輸出樹莓派的串口連接登錄樹莓派的Linux系統(tǒng)交叉編譯器的安裝配置安裝配置minicom(1/2)在終端上執(zhí)行安裝minicom命令:“sudoaptinstallminicom”Ubuntu系統(tǒng)上接入USB轉(zhuǎn)串口:
設(shè)置完成后,在Ubuntu系統(tǒng)即可使用此串口設(shè)備,而且系統(tǒng)里已集成各種USB轉(zhuǎn)串口的設(shè)備驅(qū)動,系統(tǒng)會產(chǎn)生”/dev/ttyUSB0”設(shè)備文件,通過此文件即可操作串口。安裝配置minicom(2/2)在終端上配置minicom,執(zhí)行命令:”sudominicom-s”通過按鍵輸入每個設(shè)置項最左端的字母進入相應(yīng)項的設(shè)置,如按’A’鍵則進入”SerialDevice”項的設(shè)置?!癝erialDevice”項設(shè)置為:“/dev/ttyUSB0”表示minicom收發(fā)USB轉(zhuǎn)串口數(shù)據(jù)?!癇ps/par/Bits”項設(shè)置為:“1152008N1”表示串口的波特率設(shè)為115200,8位數(shù)據(jù)位,沒有校驗,1位停止位?!癏ardwareFlowControl”項設(shè)置為:“No”表示關(guān)閉硬件流控?!癝oftwareFlowControl”項設(shè)置為:“No”表示關(guān)閉軟件流控。配置完成后,按確認鍵返回minicom配置主界面,選中”Savesetupasdft”,保存串口的配置信息為默認配置。以后只需通過命令”minicom”進入,無需再執(zhí)行”minicom-s”進行配置。嵌入式Linux開發(fā)環(huán)境的搭建安裝編譯器、所需的工具及庫設(shè)置虛擬機共享Windows系統(tǒng)目錄Linux下的串口調(diào)試助手--minicom
安裝minicom程序配置minicom測試串口樹莓派3B+開發(fā)板的系統(tǒng)鏡像燒寫及測試
下載燒寫系統(tǒng)鏡像使能樹莓派的串口輸出樹莓派的串口連接登錄樹莓派的Linux系統(tǒng)交叉編譯器的安裝配置測試串口當(dāng)minicom在運行過程中要退出時,先按住”ctrl”鍵后再按下“a”鍵,這時minicom底部會出現(xiàn)黑色的狀態(tài)欄,松開按下的鍵后,只按下“q”鍵,在彈出的選擇框中選擇”yes”即可退出可如圖所示,通過跳線帽或杜邦線把USB轉(zhuǎn)串口的TXD和RXD短接起來,實現(xiàn)串口的自收自發(fā)。USB轉(zhuǎn)串口接入Ubuntu系統(tǒng)后打開minicom程序,minicom會顯示用戶的鍵盤輸入。嵌入式Linux開發(fā)環(huán)境的搭建安裝編譯器、所需的工具及庫設(shè)置虛擬機共享Windows系統(tǒng)目錄Linux下的串口調(diào)試助手--minicom
安裝minicom程序配置minicom測試串口樹莓派3B+開發(fā)板的系統(tǒng)鏡像燒寫及測試
下載燒寫系統(tǒng)鏡像使能樹莓派的串口輸出樹莓派的串口連接登錄樹莓派的Linux系統(tǒng)交叉編譯器的安裝配置樹莓派3B+系統(tǒng)鏡像下載燒寫在樹莓派官網(wǎng)上下載系統(tǒng)鏡像:/raspios_lite_armhf/images/raspios_lite_armhf-2021-05-28/2021-05-07-raspios-buster-armhf-lite.zipSD卡通過讀卡器接入Ubuntu系統(tǒng):設(shè)置完成后,在Ubuntu系統(tǒng)上會產(chǎn)生”/dev/sdb/dev/sdb1”兩個設(shè)備文件。然后把前一步驟下載的系統(tǒng)鏡像燒寫到SD卡上,執(zhí)行終端命令:“sudoddif=./2021-05-07-raspios-buster-armhf-lite.imgof=/dev/sdbbs=1M”燒寫完成后,SD卡也會自動分成boot、rootfs兩個分區(qū),分別存放Linux內(nèi)核及系統(tǒng)文件。嵌入式Linux開發(fā)環(huán)境的搭建安裝編譯器、所需的工具及庫設(shè)置虛擬機共享Windows系統(tǒng)目錄Linux下的串口調(diào)試助手--minicom
安裝minicom程序配置minicom測試串口樹莓派3B+開發(fā)板的系統(tǒng)鏡像燒寫及測試
下載燒寫系統(tǒng)鏡像使能樹莓派的串口輸出樹莓派的串口連接登錄樹莓派的Linux系統(tǒng)交叉編譯器的安裝配置使能樹莓派的串口輸出把燒錄好系統(tǒng)的SD卡從PC機移除后重新接入Ubuntu系統(tǒng),SD卡的兩個分區(qū)會自動掛載到”/media/stu/boot”、”/media/stu/rootfs”目錄。在終端上通過命令打開boot分區(qū)里的config.txt配置文件,執(zhí)行命令:
“sudovim/media/stu/boot/config.txt”
在文件尾部增加一條語句:“enable_uart=1”保存退出后,反掛載sd卡分區(qū),命令:”umount/media/stu/boot””umount/media/stu/rootfs”最后把SD卡插入樹莓派開發(fā)板的卡槽里。嵌入式Linux開發(fā)環(huán)境的搭建安裝編譯器、所需的工具及庫設(shè)置虛擬機共享Windows系統(tǒng)目錄Linux下的串口調(diào)試助手--minicom
安裝minicom程序配置minicom測試串口樹莓派3B+開發(fā)板的系統(tǒng)鏡像燒寫及測試
下載燒寫系統(tǒng)鏡像使能樹莓派的串口輸出樹莓派的串口連接登錄樹莓派的Linux系統(tǒng)交叉編譯器的安裝配置樹莓派的串口連接根據(jù)樹莓派的電路原理圖通過杜邦線連接USB轉(zhuǎn)串口:樹莓派的GPIO14(TXD)-->USB轉(zhuǎn)串口的RXD樹莓派的GPIO15(RXD)-->USB轉(zhuǎn)串口的TXD樹莓派的GND(9/25/39腳)-->USB轉(zhuǎn)串口的GND嵌入式Linux開發(fā)環(huán)境的搭建安裝編譯器、所需的工具及庫設(shè)置虛擬機共享Windows系統(tǒng)目錄Linux下的串口調(diào)試助手--minicom
安裝minicom程序配置minicom測試串口樹莓派3B+開發(fā)板的系統(tǒng)鏡像燒寫及測試
下載燒寫系統(tǒng)鏡像使能樹莓派的串口輸出樹莓派的串口連接登錄樹莓派的Linux系統(tǒng)交叉編譯器的安裝配置登錄樹莓派的Linux系統(tǒng)樹莓派開發(fā)板接通電源啟動后,在Ubuntu系統(tǒng)上打開minicom會接收到開發(fā)板的調(diào)試信息。系統(tǒng)啟動后,以用戶名:“pi”,密碼:”raspberry”登錄系統(tǒng)。嵌入式Linux開發(fā)環(huán)境的搭建安裝編譯器、所需的工具及庫設(shè)置虛擬機共享Windows系統(tǒng)目錄Linux下的串口調(diào)試助手--minicom
安裝minicom程序配置minicom測試串口樹莓派3B+開發(fā)板的系統(tǒng)鏡像燒寫及測試
下載燒寫系統(tǒng)鏡像使能樹莓派的串口輸出樹莓派的串口連接登錄樹莓派的Linux系統(tǒng)交叉編譯器的安裝配置交叉編譯器的安裝配置-1/2下載交叉編譯器
通過瀏覽器登錄arm官網(wǎng)提供的交叉編譯器下載頁面:/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a/downloads選擇下載gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf.tar.xz。交叉編譯器的安裝配置-2/2配置交叉編譯器下載完成后,通過終端命令解包并重命名目錄:sudotarxf./gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf.tar.xz-C/usr/local/sudomv/usr/local/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf//usr/local/gcc-arm8.3把交叉編譯器路徑增加到系統(tǒng)環(huán)境變量PATH中,在終端使用vim打開環(huán)境變量配置文件:vim/etc/bash.bashrc在文件尾增加語句:exportPATH=/usr/local/gcc-arm8.3/bin:$PATH保存退出后,環(huán)境變量在注銷系統(tǒng)重新登錄后生效。
正確配置生效后,在終端輸入arm后按兩下tab鍵,會輸出如圖所示的交叉編譯工具。講解了嵌入式Linux開發(fā)環(huán)境的搭建講解了VirtualBox虛擬機共享目錄設(shè)置方法講解了Linux下的串口調(diào)試助手安裝配置方法講解了樹莓派系統(tǒng)鏡像的燒寫及測試過程講解了交叉編譯器的安裝及配置本節(jié)主要講述在Linux系統(tǒng)上使用Git管理源代碼。通過學(xué)習(xí)本節(jié)將能夠?qū)W習(xí)在Linux系統(tǒng)源代碼Git管理方法。通過本節(jié)學(xué)習(xí)可以:熟悉Git源代碼管理版本備份功能熟悉Git源代碼管理版本回退功能熟悉Git源代碼管理版本恢復(fù)功能使用Git管理源代碼創(chuàng)建版本庫設(shè)置用戶名及郵箱標(biāo)識增加文件到倉庫查看倉庫文件的工作狀態(tài)查看文件修改內(nèi)容版本回退版本恢復(fù)克隆倉庫本節(jié)總結(jié)創(chuàng)建版本庫Git是一個當(dāng)前非常流行的開源的分布式版本控制系統(tǒng),用于敏捷高效地處理任何大大小小的項目源代碼。
什么是版本庫?版本庫又名倉庫,英文名repository,可以簡單的理解一個目錄,這個目錄里面的所有文件都可以被Git管理起來,每個文件的修改,刪除,Git都能跟蹤,以便任何時刻都可以追蹤歷史,或者在將來某個時刻還可以將文件“還原”。創(chuàng)建一個版本庫非常簡單,如在/mygit目錄里新建一個版本庫:cd/mygitgitinit
操作完成后/mygit目錄下會多了一個.git的目錄,這個目錄是Git用于記錄跟蹤管理版本使用的。使用Git管理源代碼創(chuàng)建版本庫設(shè)置用戶名及郵箱標(biāo)識增加文件到倉庫查看倉庫文件的工作狀態(tài)查看文件修改內(nèi)容版本回退版本恢復(fù)克隆倉庫本節(jié)總結(jié)設(shè)置用戶名及郵箱標(biāo)識
因為Git是分布式版本控制系統(tǒng),管理多個開發(fā)人員提交的代碼,所以每位開發(fā)人員需要填寫用戶名和郵箱作為一個標(biāo)識。gitconfig--global"yourname"gitconfig--globaluser.email"yourname@"使用Git管理源代碼創(chuàng)建版本庫設(shè)置用戶名及郵箱標(biāo)識增加文件到倉庫查看倉庫文件的工作狀態(tài)查看文件修改內(nèi)容版本回退版本恢復(fù)克隆倉庫本節(jié)總結(jié)增加文件到倉庫在/mygit目錄下創(chuàng)建一個test.c,文件內(nèi)容如下:#include<stdio.h>intmain(void){printf("111111111111\n");return0;}通過命令:gitaddtest.c增加到倉庫的暫存區(qū):通過命令:gitcommit-m"first"把文件從暫存區(qū)提交到倉庫:使用Git管理源代碼創(chuàng)建版本庫設(shè)置用戶名及郵箱標(biāo)識增加文件到倉庫查看倉庫文件的工作狀態(tài)查看文件修改內(nèi)容版本回退版本恢復(fù)克隆倉庫本節(jié)總結(jié)查看倉庫文件的工作狀態(tài)
在test.c的main函數(shù)里增加一句“printf("222222222222\n");”,通過命令:gitstatus查看倉庫文件狀態(tài),輸出信息如下:root@stu-VirtualBox:/git#gitstatus位于分支master尚未暫存以備提交的變更:
(使用"gitadd<文件>..."更新要提交的內(nèi)容)
(使用"gitcheckout--<文件>..."丟棄工作區(qū)的改動)
修改:test.c
修改尚未加入提交(使用"gitadd"和/或"gitcommit-a")輸出的結(jié)果提示我們:test.c文件已修改,尚沒有增加到倉庫的暫存區(qū)及提交代碼。使用Git管理源代碼創(chuàng)建版本庫設(shè)置用戶名及郵箱標(biāo)識增加文件到倉庫查看倉庫文件的工作狀態(tài)查看文件修改內(nèi)容版本回退版本恢復(fù)克隆倉庫本節(jié)總結(jié)查看文件修改內(nèi)容可通過命令:gitdifftest.c查看文件的修改內(nèi)容,輸出信息如下:root@stu-VirtualBox:/git#gitdifftest.cdiff--gita/test.cb/test.cindex1c0b3bc..5249e62100644---a/test.c+++b/test.c@@-2,6+2,7@@intmain(void){printf("111111111111\n");+printf("222222222222\n");return0;}如圖所示帶“+”的語句就增加的一行代碼。這樣確認無誤后就可以執(zhí)行命令提交代碼到倉庫。gitaddtest.cgitcommit-m"second"使用Git管理源代碼創(chuàng)建版本庫設(shè)置用戶名及郵箱標(biāo)識增加文件到倉庫查看倉庫文件的工作狀態(tài)查看文件修改內(nèi)容版本回退版本恢復(fù)克隆倉庫本節(jié)總結(jié)版本回退
目前為止,對test.c已提交了兩次代碼表示已經(jīng)修改過了兩次??赏ㄟ^命令gitlog查看修改的歷史記錄,命令執(zhí)行后輸出信息如下:root@stu-VirtualBox:/git#gitlogcommitd5e5042c698d67328b3374915a245807b384a74d(HEAD->master)Author:yourname<yourname@>Date:Su
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 廁所改造工程施工方案
- 塑膠場地施工方案
- 架空光纜施工方案
- 屋面拆除施工方案
- 大數(shù)據(jù)驅(qū)動的精準(zhǔn)醫(yī)療-第1篇-深度研究
- 特大斜拉橋施工方案
- 雙面貼施工方案
- 大數(shù)據(jù)在疾病預(yù)測中的應(yīng)用-深度研究
- 工業(yè)機器人應(yīng)用拓展-第1篇-深度研究
- 智能化漏洞檢測-深度研究
- 《電影之創(chuàng)戰(zhàn)紀(jì)》課件
- 社區(qū)醫(yī)療抗菌藥物分級管理方案
- 開題報告-鑄牢中華民族共同體意識的學(xué)校教育研究
- 《醫(yī)院標(biāo)識牌規(guī)劃設(shè)計方案》
- 夜市運營投標(biāo)方案(技術(shù)方案)
- 電接點 水位計工作原理及故障處理
- 國家職業(yè)大典
- 2024版房產(chǎn)代持協(xié)議書樣本
- 公眾號運營實戰(zhàn)手冊
- 教學(xué)查房及體格檢查評分標(biāo)準(zhǔn)
- 西方經(jīng)濟學(xué)(第二版)完整整套教學(xué)課件
評論
0/150
提交評論