Linux

一、入门

1.概述

(1)Linux是什么

Linux是一个操作系统(OS)
操作系统

(2)Linux的诞生

李纳斯·托瓦兹(Linux Torvalds)
上大学期间,对Unix产生了浓厚兴趣
1991年初,开始基于Minix(Unix的变种)进行开发
1991年6月,确定开发一个类Unix操作系统内核
1991年9月,开发完成内核的0.01版本,命名为Linux

(3)Linux和Unix的渊源

渊源

(4)GNU/Linux

GNU/Linux

(5)Linux的发行版

发行版

(6)Linux VS Windows

特点比较WindowsLinux
费用收费且很贵免费或少许收费
软件与支持数量和质量都有优势,不过大部分为收费软件;由微软官方提供支持和服务开源自由软件,用户可以修改定制和再发布,由于基本免费没有资金支持,部分软件质量和体验欠缺;
由全球所有的Linux开发者和自由软件社区提供支持
安全性三天两头打补丁安装系统更新,还是会中病毒木马要说Linux没有安全问题,那当然是不可能的;
相对来说,肯定比Windows平台要更加安全
使用习惯基本都是纯图形界面下操作使用,依靠鼠标和键盘完成一切操作;
用户上手容易,入门简单
兼具图形界面操作和完全的命令行操作,可以只用键盘完成一切操作;
新手入门较困难,需要一些学习和指导,一旦熟练之后效率极高
可定制性封闭的,系统可定制性很差开源,可定制性非常强
应用场景个人电脑桌面操作系统主要是Windows服务器操作系统主要是Linux;
世界上大部分软件和服务都是运行在Linux之上的。

2.安装

CentOS官网

Linux发行版CentOS安装
下载
下载
选择架构(一般电脑是x86_64)
架构
镜像下载(选择离自己最近的地方)
镜像

Vmware官网

虚拟机Vmware安装
专业版
专业版
下载
试用版
选择对应的系统下载
系统
创建新的虚拟机
创建

二、基础

1.文件与目录结构

快捷键(基于CentOS):
ctrl+alt+F2/…/F6 打开shell控制台(可同时打开多个控制台)
ctrl+alt 鼠标从VMware中退出
基础
[ 用户名@主机名 ~(当前目录位置)] #(输入命令提示符,root超级管理员为#,普通用户为$)
终端命令:
ls(list) 把当前目录下所有文件、文件夹列出
exit 退出当前终端

(1)Linux文件

Linux系统中一切皆文件

(2)Linux目录结构

目录结构
目录
下方带有箭头的文件夹其实是一个跳转链接,我们把它当成文件系统的一部分
目录:
/bin(binary) 二进制的命令目录,里面存放直接可以执行的常用命令文件
/sbin(system binary) 系统级的二进制的命令目录,里面存放超级管理员能用的命令
/lib(library) 库目录,里面存放系统和应用程序所需要的一些共享库文件,类似于windows里的dll文件(动态链接库)
/lib64 64位相关的比较特殊的库文件,和/lib关系类似windows的system和system32
/usr 包含用户的所有的应用程序和所需要的文件和数据
/boot 挂载的引导分区存放处,引导启动所需要的文件和一些核心文件,包括一些链接文件和映像文件
/dev(device) 设备目录,当前管理所有设备的文件
/etc 存放系统管理所需要的配置文件和对应的一些子目录
/home 存放每一个普通用户自己相关的一些个性化的数据、文件
/root 系统超级管理员的主目录
/opt(optional) 可选目录,Linux给第三方软件包留下的位置
/media 媒体目录,可移动媒体设备挂载点,识别一些可移动媒体设备——U盘、光驱······挂载到这里
/mnt(mount) 也是一个挂载目录和/meidia类似
/proc(process) 进程目录,虚拟目录,相当于系统内存里进程的一个映射,存放现有的一些硬件和当前进程的信息
/run 运行目录,存放当前系统运行以来的所有实时信息,重启后内容消失
/srv(service) 存放跟系统服务相关的一些东西
/sys(system) 存放系统硬件信息的相关文件
/tmp(temporary) 临时目录,临时存放的东西
/var(variable) 可变目录,存放一些不断会扩充变化的东西,如各种各样的日志

在这里插入图片描述

终端命令:
cd(change directory) 切换目录路径 (后面跟上切换到的路径,单独/表示根目录)

2.VI/VIM编辑器

(1)vi/vim是什么

VI是Unix操作系统和类Unix操作系统中最通用的文本编辑器。
VIM编辑器是从VI发展出来的一个性能更强大的文本编辑器。可以主动的以字体颜色辨别语法的正确性,方便程序设计。VIM与VI编辑器完全兼容。
终端
终端命令:
vim 进入vim编辑器
vi 进入vi编辑器
输入目的路径前几个字符按tab键自动填入剩余内容

中文输入:
在应用程序找到系统工具,找到设置
中文输入
添加如下内容
汉语
之后按住 win+空格 键即可修改输入方式

(2)模式

模式
一般模式常用语法

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

编辑模式常用语法
进入编辑模式

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

退出编辑模式
按esc键

指令模式基本语法

命令功能
: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.网络配置

网络配置
网络配置

快捷键:
ctrl+shift+v 粘贴
ctrl+shift+c 复制
方向键上 上一条命令

终端命令:
ping 检测两台机器之间是否能够正常通信
ifconfig(“network interfaces configuring) 获取网络接口配置
service network restart 重启网络

VMware提供了三种网络连接模式:

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

修改虚拟机ip为静态地址:
用vim打开配置文件
用vim打开配置文件
修改为如下配置(网关、域名解析器需和VMware虚拟网络编辑器中的配置一样)
配置
:wq保存退出vim,终端命令service network restart重启网络,命令ifconfig查看修改成功与否
:wq保存退出vim,终端命令service network restart重启网络
连接成功
连接成功
修改IP地址后可能会遇到的问题

  • 物理机能ping通虚拟机,但是虚拟机ping不通物理机,一般都是因为物理机的防火墙问题,把防火墙关闭就行
  • 虚拟机能Ping通物理机,但是虚拟机Ping不通外网,一般都是因为DNS的设置有问题
  • 虚拟机Ping www.baidu.com 显示域名未知等信息,一般查看GATEWAY和DNS设置是否正确
  • 如果以上全部设置完还是不行,需要关闭NetworkManager服务
    终端命令:
    systemctl stop NetworkManager 关闭NetworkManager服务
    systemctl disable NetworkManager 禁用NetworkManager服务
  • 如果检查发现systemctl status network有问题,需要检查ifcfg-ens33

修改主机名
第一种方法:
使用hostname命令查看当前主机名,用vim打开/etc/hostname,在里面修改主机名,保存返回后已修改成功,不过再次查看发现主机名未变,需要重启才能查看到更新主机名
修改主机名
第二种方法:
利用hostnamectl命令查看当前主机名,执行命令hostnamectl set-hostname spark10,将主机名立即修改并可以立即查看
修改主机名
相互之间利用主机名通信设置:

用vim打开/etc/hosts,插入想要的添加的ip和主机名,保存退出即可
进入
添加地址

终端命令:
hostname 查看主机名
hostnamectl 查看和当前主机名有关的一些信息
hostnamectl set-hostname 主机名 直接修改主机名

4.系统管理

(1)Linux中的进程和服务

计算机中,一个正在执行的程序或命令,被叫做“进程”(process)。
启动之后一直存在、常驻内存的进程,一般被称作“服务”(service)。

(2)service 服务管理(CentOS 6 版本-了解)

  • 基本语法
    service 服务名 start | stop | restart | status
  • 经验技巧
    查看服务的方法:/etc/init.d/ 服务名,发现只有两个服务保留在service
    服务

(3)systemctl(CentOS 7 版本-重点掌握

  • 基本语法
    systemctl start | stop | restart | status 服务名
  • 经验技巧
    查看服务的方法:/usr/lib/systemd/system
    服务
    终端命令:
    setup 进入系统服务设置的图形化界面

系统服务设置
利用setup命令进入系统服务设置的图形化界面
系统服务设置
选择系统服务,回车,看到相关服务,[ ]代表开机不自启,[ *]代表开机自启,在[ ]中选择相应服务按空格即可切换
系统服务设置

(4)系统运行级别

级别
CentOS7的运行级别简化为:
multi-user.target 等价于原运行级别3(多用户有网,无图形界面)
graphical.target 等价于原运行级别5(多用户有网,有图形界面)
终端命令:
systemctl get-default 查看当前运行级别
init 运行级别(数字) 设置当前运行级别

5.远程登录

基于ssh协议的远程登录方式
在windows环境打开cmd命令提示符,利用ssh(需要电脑有ssh功能)即可进行登录(该方式登录简单但功能有限)
远程登录

通常在工作过程中,公司中使用的真实服务器或者是云服务器,都不允许除运维人员之外的员工直接接触,因此就需要通过远程登录的方式来操作。所以,远程登录工具就是必不可缺的,目前,比较主流的有Xshell,SSH Secure Shell,SecureCRT,FinalShell等,可以根据自己的习惯自行选择

Xshell、Xftp免费版网址:https://www.xshell.com/zh/free-for-home-school/

Xshell:远程登陆,可执行Linux命令
Xftp:远程传输文件

(5)关机重启命令

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

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

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

三、实操

1.文件目录类

2.时间日期类

3.用户管理类

4.文件权限类

5.磁盘分区类

6.进程线程类

四、扩展

1.软件包管理

(1)RPM

概述
RPM(RedHat Package Manager),RedHat软件包管理工具,类似windows里面的setup.exe
是Linux这系列操作系统里面的打包安装工具,它虽然是RedHat的标志,但理念是通用的。
名称格式
Apache-1.3.23-11.i386.rpm

  • “apache”软件名称
  • “1.3.23-11”软件的版本号,主版本和此版本
  • “i386”是软件所运行的硬件平台,Intel 32位处理器的统称
  • “rpm”文件扩展名,代表RPM包

查询命令(rpm -qa)

  1. 基本语法
    rpm -qa (功能描述:查询所安装的所有rpm软件包)
    rpm -qi (功能描述:查询所安装的rpm软件包的详细信息)
  2. 经验技巧
    由于软件包比较多,一般都会采取过滤。rpm -qa | grep rpm软件包
  3. 案例实操
    查询firefox软件安装情况
    查询
    查看firefox的详细信息
    查询

卸载命令(rpm -e)

  1. 基本语法
    rpm -e RPM软件包
    rpm -e --nodeps 软件包
  2. 选项说明
选项功能
-e卸载软件包
–nodeps卸载软件时,不检查以来。这样的话,那些使用该软件包的软件在此之后可能就不能正常工作了。

安装命令(rpm -ivh)

  1. 基本语法
    rpm -ivh RPM包全名
  2. 选项说明
选项功能
-iinstall,安装
-v–verbose,显示详细信息
-h–hash,进度条
–nodeps安装前不检查依赖

(2)YUM仓库配置

概述
YUM(全称为Yellow dog Updater,Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装
概述
常用命令

  • 基本语法
    yum [选项] [参数]
  • 选项说明
选项功能
-y对所有提问都回答yes
  • 参数说明
参数功能
install安装rpm软件包
update更新rpm软件包
check-update检查是否有可用的更新rpm软件包
remove删除指定的rpm软件包
list显示软件包信息
clean清理yum过期的缓存
deplist显示yum软件包的所有依赖关系

修改网络YUM源
默认的系统YUM源,需要连接国外apache网站,网速比较慢,可以修改关联的网络YUM源为国内镜像的网站,比如网易163,aliyun等

  1. 安装wget,wget用来从指定的URL下载文件
    安装

  2. 在/etc/yum.repos.d/目录下,备份默认的repos文件
    备份

  3. 下载网易163或者是aliyun的repos文件,任选其一
    下载

  4. 使用下载好的repos文件替换默认的repos文件
    例如:用CentOS7-Base-163.repo替换CentOS-Base.repo
    替换

  5. 清理旧缓存数据,缓存新数据
    缓存
    yum makecache就是把服务器的包信息下载到本地电脑缓存起来

  6. 测试
    测试

2.克隆虚拟机

3.Shell编程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值