Linux學習Day5:Vim編輯器、配置網卡、配置Yum軟體倉庫

来源:https://www.cnblogs.com/xuliang-daydayup/archive/2020/02/22/12346260.html
-Advertisement-
Play Games

今天首先學習Vim編輯器的使用,通過它可以對Linux系統的文件進行編寫和修改。在Linux系統中一切都是文件,所以熟練掌握Vim編輯器的使用十分重要。最後通過配置主機網卡的實驗,來加深Vim編輯器中諸多命令、快捷鍵、模式切換方法的理解。 一、Vim文本編輯器 Vim編輯器設置了三種模式,每種模式分 ...


  今天首先學習Vim編輯器的使用,通過它可以對Linux系統的文件進行編寫和修改。在Linux系統中一切都是文件,所以熟練掌握Vim編輯器的使用十分重要。最後通過配置主機網卡的實驗,來加深Vim編輯器中諸多命令、快捷鍵、模式切換方法的理解。

一、Vim文本編輯器


  Vim編輯器設置了三種模式,每種模式分別支持多種不同的命令快捷鍵,三種模式如下所示:

    •   命令模式:控制關標移動,可對文本進行複製、粘貼、刪除和查找工作。
    •   輸入模式:正常的文本錄入。
    •   末行模式:保存或退出文檔,以及設置編輯環境。

   在每次使用Vim編輯器的時候,首先進入命令模式,此時通過按下a、i、o健切換到輸入模式後才能進行文檔編寫工作。編輯完文檔後需要按Esc健返回命令模式,再按下:健進入末行模式,執行文檔的保存或退出操作。註意,輸入模式是無法直接切換至末行模式的。

  命令模式下常見的一些命令如下所示:

命令 作用
dd 刪除(其實是剪切)游標所在的行
5dd 刪除(其實是剪切)從游標處開始的5行
yy 複製游標所在的行
5yy

複製從游標開始處的5行

n 顯示搜索命令定位到的下一個字元串
N 顯示搜索命令定位到的上一個字元串
u 撤銷上一步的操作
p 將之前刪除(dd)或複製(yy)過的數據粘貼到游標的後面

  末行模式主要用於保存或退出文檔,以及設置Vim編輯器的工作環境,還可以讓用戶執行外部的Linux命令或跳轉到所編寫文檔的特定行數。末行模式中常見的命令如下所示:

命令 作用
:w 保存
:q 退出
:q! 強制退出(放棄對文檔的保存)
:wq!

強制保存退出 

:set nu 顯示行號 
:set nonu 不顯示行號 
:命令 執行該命令 
:整數 跳轉到該行 
:s/one/two 將當前游標所在行的第一個one替換成two 
:s/one/two/g 將當前游標所在行的所有one替換成two 
:%s/one/two/g 將全文中的所有one替換成two 
?字元串 在文本中從下至上搜索該字元串 
/字元串 在文中從上至下搜索該字元串

二、編寫簡單文檔


  第1步:使用Vim編輯器新建一個文檔,將其命名為practice.txt。

[root@linuxprobe ~]# vim practice.txt
[root@linuxprobe ~]# 

  第2步:打開practice.txt文件後,就預設進入了命令模式,此時只能執行命令模式的命令。

   第3步:在命令模式按下a、i、o健切換至輸入模式。進入輸入模式後,就可以隨意輸入文本內容。

   第4步:在編寫完了之後,想要保存並退出,必須先按下Esc健切換至命令模式,然後再按下:健切換至末行模式,最後輸入wq!完成保存退出的操作。

  第5步:已成功完成一個文檔的編寫,使用cat命令查看文件的內容。

[root@linuxprobe ~]# cat practice.txt 
Now,you can write it.

 三、配置網卡信息


  網卡IP地址配置的正確是兩台伺服器相互通信的前提。在Linux系統中一切都是文件,因此配置網路服務的工作其實就是在編輯網卡的配置文件。在RHEL7系統中,網卡的配置文件的名稱由首碼ifcfg加上網卡名稱組成,比如ifcfg-eno16777728。現在對一個名稱為eno16777728的網卡設備進行相關配置,具體步驟如下所示:

  第1步:首先切換至/etc/sysconfig/network-scripts目錄中,該目錄存放網卡的配置文件。

[root@linuxprobe ~]# cd /etc/sysconfig/network-scripts/
[root@linuxprobe network-scripts]# 
[root@linuxprobe network-scripts]# ls
ifcfg-eno16777728  ifdown-ippp  ifdown-routes    ifup          ifup-ipv6   ifup-ppp       ifup-tunnel
ifcfg-lo           ifdown-ipv6  ifdown-sit       ifup-aliases  ifup-isdn   ifup-routes    ifup-wireless
ifdown             ifdown-isdn  ifdown-Team      ifup-bnep     ifup-plip   ifup-sit       init.ipv6-global
ifdown-bnep        ifdown-post  ifdown-TeamPort  ifup-eth      ifup-plusb  ifup-Team      network-functions
ifdown-eth         ifdown-ppp   ifdown-tunnel    ifup-ippp     ifup-post   ifup-TeamPort  network-functions-ipv6
[root@linuxprobe network-scripts]# 

   第2步:使用Vim編輯器修改網卡配置文件ifcfg-eno16777728,逐項寫入如下的配置參數並保存退出。

  TYPE=Ethernet                      //設備類型

  BOOTPROTO=static               //地址分配模式,分為static和dhcp兩種

  NAME=eno16777728             //網卡名稱

  ONBOOT=yes                        //是否啟動

  IPADDR=192.168.10.10         //IP地址

  NETMASK=255.255.255.0      //子網掩碼

  GATEWAY=192.168.10.1        //網關地址,註意“GATEWAY”不要寫錯了,容易寫成“GETEWAY”或“GATAWAY”

  DNS1=192.168.10.1              //DNS地址

[root@linuxprobe network-scripts]# cp ifcfg-eno16777728 ifcfg-eno16777728.cpoy   //在編輯網卡配置文件之前,先做好原文件備份,養成好習慣
[root@linuxprobe network-scripts]# ls
ifcfg-eno16777728       ifdown-post      ifup-bnep   ifup-routes
ifcfg-eno16777728.cpoy  ifdown-ppp       ifup-eth    ifup-sit
ifcfg-lo                ifdown-routes    ifup-ippp   ifup-Team
ifdown                  ifdown-sit       ifup-ipv6   ifup-TeamPort
ifdown-bnep             ifdown-Team      ifup-isdn   ifup-tunnel
ifdown-eth              ifdown-TeamPort  ifup-plip   ifup-wireless
ifdown-ippp             ifdown-tunnel    ifup-plusb  init.ipv6-global
ifdown-ipv6             ifup             ifup-post   network-functions
ifdown-isdn             ifup-aliases     ifup-ppp    network-functions-ipv6
[root@linuxprobe network-scripts]# 
[root@linuxprobe network-scripts]# vim ifcfg-eno16777728
TYPE=Ethernet
BOOTPROTO=static
NAME=eno16777728
ONBOOT=yes
IPADDR=192.168.10.10
NETMASK=255.255.255.0
GATEWAY=192.168.10.1
DNS1=192.168.10.1

  第3步:重啟網路服務並測試網路是否聯通。

[root@linuxprobe network-scripts]# systemctl restart network   //重啟網路服務
[root@linuxprobe network-scripts]# 
[root@linuxprobe network-scripts]# ping 192.168.10.10
PING 192.168.10.10 (192.168.10.10) 56(84) bytes of data.
64 bytes from 192.168.10.10: icmp_seq=1 ttl=64 time=0.050 ms
64 bytes from 192.168.10.10: icmp_seq=2 ttl=64 time=0.095 ms
64 bytes from 192.168.10.10: icmp_seq=3 ttl=64 time=0.093 ms
64 bytes from 192.168.10.10: icmp_seq=4 ttl=64 time=0.092 ms
^C
--- 192.168.10.10 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3004ms
rtt min/avg/max/mdev = 0.050/0.082/0.095/0.020 ms

  知識補充:當你使用的是VMware Workstation安裝的虛擬機,並按照上述方式完成網卡配置操作後,你可能無法ping通外網,如下所示:

[root@linuxprobe ~]# ping www.baidu.com
ping: unknown host www.baidu.com

  原因:IP地址配置不正確

  解決方法:我這裡以虛擬機網卡設置為NAT模式舉例,具體操作步驟如下:

   1、打開VMware Workstation軟體的“虛擬網路編輯器”。

   2、首先點擊“VMnet8”,然後點擊“NAT 設置”。

   3、這裡記住VMnet8網路的相關信息,包括子網IP、網關等,後面在配置虛擬機網卡時,需要保持一致。

   4、修改虛擬機的網卡配置文件。其中192.168.134.1為物理主機地址、192.168.134.2為網關地址,虛擬機地址可以在192.168.134.3~254之間任意設置,我這裡設置為192.168.134.10。

   5、重啟網路服務並測試外網的聯通性。

[root@linuxprobe network-scripts]# systemctl restart network
[root@linuxprobe network-scripts]#
[root@linuxprobe network-scripts]# ping www.baidu.com
PING www.a.shifen.com (14.215.177.38) 56(84) bytes of data.
64 bytes from 14.215.177.38: icmp_seq=1 ttl=128 time=20.7 ms
64 bytes from 14.215.177.38: icmp_seq=2 ttl=128 time=22.0 ms
64 bytes from 14.215.177.38: icmp_seq=3 ttl=128 time=20.9 ms
^C
--- www.a.shifen.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2004ms
rtt min/avg/max/mdev = 20.786/21.240/22.011/0.572 ms

 四、配置Yum軟體倉庫


  Yum軟體倉庫的作用是為了進一步簡化RPM管理軟體的難度以及自動分析所需軟體包及其依賴關係的技術。可以把Yum想象成是一個碩大的軟體倉庫,裡面保存有幾乎所有的常用工具,而且只需說出想要的軟體包名稱,系統自動就會幫你搞定一切。搭建並配置Yum軟體倉庫的大致步驟如下所示:

  第1步:切換至/etc/yum.repos.d/目錄中,該目錄存放Yum軟體倉庫的配置文件。

[root@linuxprobe ~]# cd /etc/yum.repos.d/

  第2步:使用Vim編輯器新建一個名為rhel7.repo的配置文件,文件名稱可以隨意,但是尾碼必須是.repo,逐項寫入下麵的配置參數並保存退出。

  [rhel7]        //Yum軟體倉庫的唯一標識符,避免與其他倉庫衝突。

  name=rhel7      //Yum軟體倉庫的名稱描述,方便識別倉庫。

  baseurl=file:///media/cdrom        //設置Yum倉庫的地址,提供方式包括:(ftp://....)、(http://....)、(file:///...)。

  enabled=1       //設置此源是否可用,1為可用,0為禁止。

  gpgcheck=1     //設置此源是否校驗文件,1為校驗,0為不校驗。

  gpgkey=file:///media/cdrom/RPM-GPG-KRY-redhat-release       //若上面參數開啟校驗,那麼請指定公鑰文件地址。

[root@linuxprobe yum.repos.d]# vim rhel7.repo
[rhel7]
name=rhel7
baseurl=file:///media/cdrom
enabled=1
gpgcheck=0    //這裡不校驗文件

  第3步:按照配置參數的路徑掛載光碟,並把光碟掛載信息寫入到/etc/fstab文件中。

[root@linuxprobe yum.repos.d]# mkdir -p /media/cdrom     //創建光碟掛載目錄
[root@linuxprobe yum.repos.d]# 
[root@linuxprobe yum.repos.d]# mount /dev/cdrom /media/cdrom     //掛載光碟
mount: /dev/sr0 is write-protected, mounting read-only
[root@linuxprobe yum.repos.d]# 
[root@linuxprobe yum.repos.d]# vim /etc/fstab     //將光碟掛載信息寫入/etc/fstab文件
/dev/mapper/rhel-root   /                       xfs     defaults        1 1
UUID=ba40f004-d75d-400f-b0e0-c4d395261e14 /boot                   xfs     defaults        1 2
/dev/mapper/rhel-swap   swap                    swap    defaults        0 0
/dev/cdrom              /media/cdrom            iso9660 defaults        0 0      //光碟掛載信息

  第4步:此時切換至/media/cdrom目錄,可以查看光碟信息。

[root@linuxprobe yum.repos.d]# cd /media/cdrom/
[root@linuxprobe cdrom]# ls
addons  EULA  images    LiveOS      Packages       repodata                 RPM-GPG-KEY-redhat-release
EFI     GPL   isolinux  media.repo  release-notes  RPM-GPG-KEY-redhat-beta  TRANS.TBL
[root@linuxprobe cdrom]# 

  第5步:使用“yum install -y httpd”命令,檢查Yum軟體倉庫是否可用。

[root@linuxprobe ~]# yum install -y httpd
Loaded plugins: langpacks, product-id, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
rhel7                                                                                                          | 4.1 kB  00:00:00     
(1/2): rhel7/group_gz                                                                                          | 134 kB  00:00:00     
(2/2): rhel7/primary_db                                                                                        | 3.4 MB  00:00:00     
Resolving Dependencies
--> Running transaction check
---> Package httpd.x86_64 0:2.4.6-17.el7 will be installed
--> Processing Dependency: httpd-tools = 2.4.6-17.el7 for package: httpd-2.4.6-17.el7.x86_64
--> Processing Dependency: /etc/mime.types for package: httpd-2.4.6-17.el7.x86_64
--> Processing Dependency: libapr-1.so.0()(64bit) for package: httpd-2.4.6-17.el7.x86_64
--> Processing Dependency: libaprutil-1.so.0()(64bit) for package: httpd-2.4.6-17.el7.x86_64
--> Running transaction check
---> Package apr.x86_64 0:1.4.8-3.el7 will be installed
---> Package apr-util.x86_64 0:1.5.2-6.el7 will be installed
---> Package httpd-tools.x86_64 0:2.4.6-17.el7 will be installed
---> Package mailcap.noarch 0:2.1.41-2.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

======================================================================================================================================
 Package                           Arch                         Version                             Repository                   Size
======================================================================================================================================
Installing:
 httpd                             x86_64                       2.4.6-17.el7                        rhel7                       1.2 M
Installing for dependencies:
 apr                               x86_64                       1.4.8-3.el7                         rhel7                       103 k
 apr-util                          x86_64                       1.5.2-6.el7                         rhel7                        92 k
 httpd-tools                       x86_64                       2.4.6-17.el7                        rhel7                        77 k
 mailcap                           noarch                       2.1.41-2.el7                        rhel7                        31 k

Transaction Summary
======================================================================================================================================
Install  1 Package (+4 Dependent packages)

Total download size: 1.5 M
Installed size: 4.3 M
Downloading packages:
--------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                  45 MB/s | 1.5 MB  00:00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : apr-1.4.8-3.el7.x86_64                                                                                             1/5 
  Installing : apr-util-1.5.2-6.el7.x86_64                                                                                        2/5 
  Installing : httpd-tools-2.4.6-17.el7.x86_64                                                                                    3/5 
  Installing : mailcap-2.1.41-2.el7.noarch                                                                                        4/5 
  Installing : httpd-2.4.6-17.el7.x86_64                                                                                          5/5 
rhel7/productid                                                                                                | 1.6 kB  00:00:00     
  Verifying  : mailcap-2.1.41-2.el7.noarch                                                                                        1/5 
  Verifying  : httpd-tools-2.4.6-17.el7.x86_64                                                                                    2/5 
  Verifying  : apr-1.4.8-3.el7.x86_64                                                                                             3/5 
  Verifying  : apr-util-1.5.2-6.el7.x86_64                                                                                        4/5 
  Verifying  : httpd-2.4.6-17.el7.x86_64                                                                                          5/5 

Installed:
  httpd.x86_64 0:2.4.6-17.el7                                                                                                         

Dependency Installed:
  apr.x86_64 0:1.4.8-3.el7    apr-util.x86_64 0:1.5.2-6.el7    httpd-tools.x86_64 0:2.4.6-17.el7    mailcap.noarch 0:2.1.41-2.el7   

Complete!

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 通過前面的文章的學習,我們已經有實現了使用ABP提供的WebAPI方式+EasyUI來實現增刪改查的功能。之前我們把一些基本的信息已經完成了,如貨物信息,供應商信息。有了前面的基礎信息,我們可以實現入庫管理功能。從本章開始我們來學習一個入庫單功能,這個將會涉及DataGrid的主從功能。 一... ...
  • 本筆記摘抄自:https://www.cnblogs.com/PatrickLiu/p/8109100.html,記錄一下學習過程以備後續查用。 一、引言 今天我們要講行為型設計模式的第八個模式--職責鏈模式。讓我們看看現實生活中某公司採購流程的例子吧,理解起來可能更容易。某公司的規章制度 規定,採 ...
  • 本筆記摘抄自:https://www.cnblogs.com/PatrickLiu/p/8057654.html,記錄一下學習過程以備後續查用。 一、引言 今天我們要講行為型設計模式的第七個模式--策略模式。在現實生活中,策略模式的例子也非常常見,例如:在一個公司中,會有各種工作人員:有普 通員工、 ...
  • 本筆記摘抄自:https://www.cnblogs.com/PatrickLiu/p/8032683.html,記錄一下學習過程以備後續查用。 一、引言 今天我們要講行為型設計模式的第六個模式--狀態模式。無論是現實世界,還是面向對象的OO世界,裡面都有一個東西,那就是對象。有對象當然就有 狀態了 ...
  • 抗疫時期,想到弄個微信程式用於社區出入和復工復產人員流動登記,老早就買的盛派的書和視頻,一直沒時間看,趁這個需求,下載盛派weixinDSK開始學習,先是打開盛派的網站陸續無法打開, 幫助文檔也沒能搶救性下載,估計是盛派在遷移啥東西。項目生成工具也不能用了 試著把GitHub上下載的sample部署 ...
  • 本筆記摘抄自:https://www.cnblogs.com/PatrickLiu/p/7966240.html,記錄一下學習過程以備後續查用。 一、引言 今天我們要講行為型設計模式的第五個模式--中介者模式,先從名字上來看。中介者模式可以理解為在兩個或多個對象中間增加一個“中間對象”,由增加 的“ ...
  • SecureCRT的下載、安裝( 過程非常詳細!!值得查看) 簡單介紹下SecureCRT 一、SecureCRT的下載 二、SecureCRT的安裝 簡單介紹下SecureCRT SecureCRT是一款支持SSH(SSH1和SSH2)的終端模擬程式,簡單地說是Windows下登錄UNIX或Lin ...
  • grub:GRand Unified Bootloader grub 0.x:grub legacy(centos5,6) grub 1.x:grub2(centos7) grub legacy(grub 0.x) stage1:mbr stage1_5:mbr之後的扇區,讓stage1中的boot ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...