Linux相关知识-基础篇

概述

学了Linux可以干什么

在这里插入图片描述

Linux是什么

在这里插入图片描述

linux操作系统与windows,macOS并重

Linux基础篇

1、桌面和终端基础操作

  • 进入终端:点击应用程序,从中选择系统工具,最下方可看到终端图标,点击进入终端
    在这里插入图片描述

  • 将图形化界面转换为命令行界面:同时点击ctrl+alt+F1~F6中任意(如果无法转换同时点击Fn键)
    在这里插入图片描述

显示电脑文件目录:

[root ~]# ls
anaconda-ks.cfg       公共  视频  文档  音乐
initial-setup-ks.cfg  模板  图片  下载  桌面

退出终端界面:

[root ~]# exit

2、Linux文件系统

2.1 文件系统和挂载点

2.1.1 Linux的文件

Linux系统中一切皆文件

2.1.2 linux目录结构

在这里插入图片描述

  • 目录存放内容具体解析

/bin: 二进制命令集,是Binary的缩写,这个目录存放着直接可以执行的常用命令。
/sbin:s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。
/home:存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
/root:该目录为系统管理员,也称作超级权限者的用户主目录。
/lib:系统开机所需要最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。
/lost+found:这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
/etc:所有的系统管理所需要的配置文件和子目录。
/usr/local:这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似与windows下的program files目录。
/boot:存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。
/proc:这个目录是一个虚拟的目录,它是系统内存的映射,访问这个目录来获取系统信息。
/srv:service的缩写,该目录存放一些服务启动之后需要提供的数据。
/sys:这是linux2.6n内核的一个很大的变化,该目录下安装了2.6内核中新出现的一个文件系统sysfs。
/tmp:这个目录是用来存放一些临时文件的。 /dev:类似windows的设备管理器,把所有的硬件用文件的形式存储。
/media(CentOS6):linux系统会自动识别一些设备,例如U盘光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。CentOS7迁移到/run/media。
/mnt:系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将外部的存储挂载在/mnt/上,然后进入该目录就可以查看里面的内容了。
/opt:这是给主机额外安装软件所摆放的目录,如安装mysql数据库就可放到该目录下。默认为空。
/usr/local:这是另一个给主机额外安装软件所安装的目录,一般是通过编译源码的方式安装的程序。
/var:这个目录中存放着在不断扩充着的东西,习惯将经常被修改的目录放在这个目录下,包括各种日志文件。
/selinux:SELinux是一种安全子系统,它能控制程序只能访问特定文件。

3、VI/VIM 编辑器

3.1 vi/vim是什么

  • VI是Unix操作系统和类Unix操作系统中最通用的文本编辑器。
  • VIM编辑器是从VI发展出来的一个性能更强大的文本编辑器。可以主动的以字体颜色辨别语法的正确性,方便程序设计。VIM与VI编辑器完全兼容。

3.2 模式转换方法

在这里插入图片描述

3.3 一般模式

用户刚刚启动
vi/vim,便进入了一般模式。在这个模式中,你可以使用【上下左右】按键来移动光标,你可以使用【删除字符】或【删除整行】来处理档案内容,也可以使用【复制、粘贴】来处理你的文件数据。此状态下敲击键盘动作会被vim识别为命令,而非输入字符。

输入:set nu进入命令模式,在此中存在行号,若想退出输入set nonu
常用语法

语法功能描述
yy复制光标当前一行
y 数字 y复制一段(从第几行到第几行)
p箭头移动到目的行粘贴
u撤销上一步
dd删除光标当前行
d 数字 d删除光标(含)后多少行
x剪切一个字母,相当于 del
X剪切一个字母,相当于 Backspace
yw复制一个词
dw删除一个词
操作符+^移动/操作到行头
操作符+$移动/操作到行尾
w移动到下一个词(词头的位置)
e 移动到当前词尾
G移动到页尾
gg移动到当前的开头
数字(n)+G移动到目标n行

3.4 编辑模式

在一般模式中可以进行删除、复制、粘贴等的动作,但是却无法编辑文件内容的,要等到按下[i, I, o, O, a,
A]等任何一个字母之后才会进入编辑模式。
通常在Linux中,按下这些按键时,在画面的左下方会出现[INSERT或REPLACE]的字样,此时才可以进行编辑。而如果要回到一般模式时,则必须要按下[Esc]这个按键即可退出编辑模式。

(1) 进入编辑模式

常用语法

按键功能
i当前光标前
a当前光标后
o当前光标行的下一行
I光标所在行最前
A光标所在行最后
O当前光标行的上一行

(2)退出编辑模式

按『Esc』键退出编辑模式,之后所在的模式为一般模式。

3.5 命令模式

在一般模式当中,输入[: / ?]3个中的任何一个按钮,就可以将光标移动到最底下那一行。
在命令模式中,可以提供[搜寻资料]的动作,而读取、存盘、大量取代字符、离开 vi 、显示行号等动作是在此模式中达成的。

常用语法

命令功能
:w保存
:q退出
:!强制执行
:wq保存并退出
:q!不保存强制退出
/要查找的词 n 查找下一个,N 往上查找
:noh取消高亮显示
:set nu显示行号
:set nonu关闭行号
: s/old/new替换当前行匹配到的第一个old为new
: s/old/new/g替换当前行匹配到的所有old为new
:%s/old/new替换文档中每一行匹配到的第一个old为new
:%s/old/new/g替换文档中匹配到的所有old为new

3.6 vi/vim键盘图

在这里插入图片描述

4、网络配置

4.1 VMware 提供的三种网络连接模式

  • 桥接模式
    虚拟机直接连接外部物理网络的模式,主机起到了网桥的作用。这种模式下,虚拟机可以直接访问外部网络 并且对外部网络是可见的
  • NAT模式
    虚拟机和主机构建一个专用网络,并通过虚拟网络地址转换(NAT)设备对IP进行转换。虚拟机通过共享主机可以访问外部网络,但外部网络无法访问虚拟机,构建了一个虚拟的子网。
  • 仅主机模式
    虚拟机只与主机共享一个专用网络,与外部网络无法通信。

4.2 查看虚拟网络编辑器

1)首先点击编辑在中找到虚拟网络编辑器选项点击
在这里插入图片描述

2)可看到与主机连接的三种模式

在这里插入图片描述

4.3 静态网络IP

1)查看当前网络接口的配置信息

[root ~]# ifconfig

2)测试主机之间的连接性

oot ~]# ping +主机名

也可连接百度如下

oot ~]# ping www.baidu.com

3)修改静态网络IP

  • 在终端输入以下内容进入网络IP文件中
[root ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
  • 在文件中修改修改输入以下部分内容,修改完后按键盘esc退出编辑模式,然后输入:wq回车即可退出文件
    在这里插入图片描述

  • 输入以下内容重启网络,点击确定后,修改的IP地址生效,

[root ~]# service network restart
Restarting network (via systemctl):                        [  确定  ]

4.4 修改IP地址后可能遇到的问题

(1)物理机能ping通虚拟机,但是虚拟机ping不通物理机,一般都是因为物理机的防火墙问题,把防火墙关闭就行
(2)虚拟机能Ping通物理机,但是虚拟机Ping不通外网,一般都是因为DNS的设置有问题
(3)虚拟机Ping www.baidu.com 显示域名未知等信息,一般查看GATEWAY和DNS设置是否正确
(4)如果以上全部设置完还是不行,需要关闭NetworkManager服务

systemctl stop NetworkManager 关闭
systemctl disable NetworkManager 禁用

(5)如果检查发现systemctl status network有问题,需要检查ifcfg-ens33

4.5 修改主机名

  1. 基本语法
    hostname (查看当前服务器的主机名称)
  2. 案例实操
  • 查看当前服务器主机名称
[root ~]# hostname
  • 如果感觉此主机名不合适,我们可以通过编辑/etc/hostname文件 进行修改。
[root ~]# vi /etc/hostname

注意:修改完成后重启生效。

  • 修改主机名的简洁方式
[root ~]# hostnamectl set hostname +新名字

4.6 修改hosts映射文件

  1. 修改 linux 的主机映射文件(hosts 文件)后续在 hadoop 阶段,虚拟机会比较多,配置时通常会采用主机名的方式进行配置,比较简单方便,不用刻意记 ip 地址。
  • 打开/etc/hosts
[root ~]# vim /etc/hosts
  • 添加如下内容
192.168.2.100 hadoop100
192.168.2.101 hadoop101
192.168.2.102 hadoop102
192.168.2.103 hadoop103
192.168.2.104 hadoop104
  1. 修改 windows 的主机映射文件(hosts 文件)
  • 按C:\Windows\System32\drivers\etc路径进入打开 hosts 文件并添加如下内容
192.168.2.100 hadoop100
192.168.2.101 hadoop101
192.168.2.102 hadoop102
192.168.2.103 hadoop103
192.168.2.104 hadoop104
  • 将文件另存为桌面
  • 修改文件名去掉后缀.txt
  • 将该文件拖拽到存放原hosts文件的目录下面
  • 电脑显示是否替换该文件,点击替换,即完成
  1. 在Windows里面实现远程登录虚拟机
  • 同时点击徽标键+r打开运行窗口
  • 输入cmd点击确认
  • 输入以下内容

C:\Users\86178>ssh 用户@主机名/IP地址

5、系统管理

5.1 Linux中的进程和服务

  • 计算机中,一个正在执行的程序或命令,被叫做“进程”(process)。
  • 启动之后一直存在、常驻内存的进程,一般被称作“服务”(service)。
    5.2 service服务管理(CentOS 6版本)
    (1) 基本语法
service 服务名 start(开启) | stop(停止) | restart(重启) | status(查看当前服务的状态)
  • 查看服务的方法:
/etc/init.d/服务名
  • 查看该文件中所含有的内容:
[root ~] ls /etc/init.d/

(2) 案例实操

  • 查看网络服务的状态
[root ~]#service network status

5.3 systemctl服务管理(CentOS 7版本)

CentOS7采用systemd管理,服务独立的运行在内存中,服务响应速度快,但占用更多内存。独立服务的服务启动脚本都在目录/usr/lib/systemd/system里。

  • systemd的新特性:
    系统引导时实现服务的并行启动;
    按需激活进程;
    系统实现快照;
    基于依赖关系定义服务的控制逻辑;
    systemctl可用于内省和控制“systemd”系统和服务管理器的状态。

(1) 基本语法

systemctl start(开启) | stop(关闭) | restart(重启) | status(查看) 服务名
查看服务的方法:/usr/lib/systemd/system


(2) 案例实操
- 重启防火墙服务

```dart
[root@hadoop100 ~]# systemctl restart firewalld

5.4. 系统运行级别

(1) Linux 的进程运行级别[CentOS 6]
在这里插入图片描述

(2)CentOS7 的运行级别简化为:

  • multi-user.target 等价于原运行级别 3(多用户有网,无图形界面)
  • graphical.target 等价于原运行级别 5(多用户有网,有图形界面)

(3) 查看当前运行级别:
systemctl get-default

(4) 修改当前运行级别(如果级别为5)

[root ~]# init 3

5.5 chkconfig设置后台服务的自启配置(CentOS 6版本)

(1) 基本语法

chkconfig(查看所有服务器自启配置)
chkconfig 服务名 off(关掉指定服务的自动启动)
chkconfig 服务名 on(开启指定服务的自动启动)
chkconfig 服务名 --list(查看服务开机启动状态)

(2) 案例实操

  • 开启/关闭 network(网络)服务的自动启动
[root ~]#chkconfig network on
[root ~]#chkconfig network off
  • 开启/关闭 network 服务指定级别的自动启动
[root ~]#chkconfig --level 指定级别 network on
[root ~]#chkconfig --level 指定级别 network off

5.6. systemctl设置后台服务的自启配置(CentOS 7版本)

(1) 基本语法

systemctl list-unit-files(查看服务开机启动状态)
systemctl disable service_name(关掉指定服务的自动启动)
systemctl enable service_name(开启指定服务的自动启动)

(2)案例实操

  • 开启/关闭 iptables(防火墙)服务的自动启动
[root ~]# systemctl enable firewalld.service
[root ~]# systemctl disable firewalld.service

5.7. 关闭防火墙

(1) 临时关闭防火墙

  • 查看防火墙状态
[root~]# systemctl status firewalld
  • 临时关闭防火墙
[root~]# systemctl stop firewalld

(2) 开机启动时关闭防火墙

  • 设置开机时开启防火墙
[root~]# systemctl enable firewalld.service
  • 设置开机时关闭防火墙
[root~]# systemctl disable firewalld.service

5.8. 关机重启命令

在 linux 领域内大多用在服务器上,很少遇到关机的操作。毕竟服务器上跑一个服务是永无止境的,除非特殊情况下,不得已才会关机。
(1) 基本语法
sync(将数据由内存同步到硬盘中)
halt(停机,关闭系统,但不断电)
poweroff(关机,断电)
reboot(就是重启,等同于 shutdown -r now)
shutdown [选项] 时间

选项功能
-H相当于–halt,停机
-r-r=reboot 重启
参数功能
now立刻关机
时间等待多久后关机(时间单位是分钟)

(2) 经验技巧

Linux系统中为了提高磁盘的读写效率,对磁盘采取了“预读迟写”操作方式。当用户保存文件时,Linux核心并不一定立即将保存数据写入物理磁盘中,而是将数据保存在缓冲区中,等缓冲区满时再写入磁盘,这种方式可以极大的提高磁盘写入数据的效率。但是,也带来了安全隐患,如果数据还未写入磁盘时,系统掉电或者其他严重问题出现,则将导致数据丢失。使用sync指令可以立即将缓冲区的数据写入磁盘。

(3) 案例实操

  • 将数据由内存同步到硬盘中
[root~]#sync
  • 重启
[root~]# reboot
  • 停机(不断电)
[root ~]#halt
  • 计算机将在 1 分钟后关机,并且会显示在登录用户的当前屏幕中
[root~]#shutdown -h 1This server will shutdown after 1 mins’
  • 立马关机(等同于 poweroff)
[root~]# shutdown -h now
  • 系统立马重启(等同于 reboot)
[root ~]# shutdown -r now
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值