操作系统-Linux

一、什么是Linux?

Linux是一款操作系统 - Windows、Mac、Unix、Dos、Android、IOS.....
思考:大家都在用Windows操作系统,为什么要学Linux?

内核?发行版?

二、Linux的安装

2.1 Linux虚拟机的安装

什么是虚拟机(VM)?

2.1.1 Linux虚拟机安装的步骤

 


 

 

 

 

 

2.1.2 Centos7的引导步骤

 


 

 

 

 

 

 

 

 

 

2.2 云服务器的使用(阿里云、腾讯云)

阿里云的试用网址:
阿里云免费试用 - 阿里云
腾讯云的试用网址:
云产品免费体验馆_云产品免费试用_个人云产品试用-腾讯云
阿里云的活动页:
金秋十月,注册抽好礼
腾讯云的活动页:
上云精选_云服务器秒杀_开发者上云推荐-腾讯云

2.3 远程连接Linux系统

什么是远程连接Linux?
通常我们需要借助一些远程连接工具,通过ssh协议连接到Linux系统上,通过远程连接工具操作Linux系统

1)获取Linux服务器的IP地址


2)操作Xshell远程连接工具(SSH)

 

思考:为什么需要远程连接操作Linux?

PS、VMware的常见问题


解决方式:

1、百度你的机型的BIOS系统的进入方式
2、重启你的笔记本,进入BIOS系统
3、选择开启VT虚拟机化功能 - Enable
4、F10 保存重启

三、Linux的相关命令

Linux文件系统的结构

/:根目录,所有的目录、文件、设备都在/之下,/就是Linux文件系统的组织者,也是最上级的领导者。
/bin:bin 就是二进制(binary)英文缩写。在一般的系统当中,都可以在这个目录下找到linux常用的命令。系统所需要的那些命令位于此目录。
/etc:etc这个目录是linux系统中最重要的目录之一。在这个目录下存放了系统管理时要用到的各种配置文件和子目录。要用到的网络配置文件,文件系统,x系统配置文件,设备配置信息,设置用户信息等都在这个目录下。
/home:如果建立一个用户,用户名是"xx",那么在/home目录下就有一个对应的/home/xx路径,用来存放用户的主目录。
/root:Linux超级权限用户root的家目录。
/lib:lib是库(library)英文缩写。这个目录是用来存放系统动态连接共享库的。几乎所有的应用程序都会用到这个目录下的共享库。因此,千万不要轻易对这个目录进行什么操作,一旦发生问题,系统就不能工作了。
/usr(unix shared resources):这是linux系统中占用硬盘空间最大的目录。用户的很多应用程序和文件都存放在这个目录下。在这个目录下,可以找到那些不适合放在/bin或/etc目录下的额外的工具
/usr/local:这里主要存放那些手动安装的软件
/var  (variable)用于存放运行时需要改变数据的文件
/boot:Linux的内核及引导系统程序所需要的文件目录,比如 vmlinuz initrd.img 文件都位于这个目录中。在一般情况下,GRUB或LILO系统引导管理器也位于这个目录。
/cdrom:这个目录在刚刚安装系统的时候是空的。可以将光驱文件系统挂在这个目录下。例如:mount /dev/cdrom /cdrom
/dev:dev 是设备(device)的英文缩写。用于存放设备文件
/mnt:这个目录一般是用于存放挂载储存设备的挂载目录的,比如有cdrom等目录。可以参看/etc/fstab的定义。

3.1 基本命令

xxxx --help

进入命令的帮助界面

ifconfig

查看系统的网卡相关信息

su xxxx

切换当前系统的账户(root账户可以直接切换到其他账户,其他账户切换到root账户需要密码)

pwd

打印当前的所处路径

cd 相对路径/绝对路径

进入指定的文件夹(目录)
~表示Home路径
..表示上一级目录
.表示当前目录

ls & ll

打印当前目录下的所有文件和子目录

clear

清空命令行

3.2 文件夹的相关操作

mkdir xxx

创建文件夹(目录)
-p 表示可以级联创建

mv xx/a xx/b

将a文件夹移动(剪切)到b文件夹下

cp xx/a xx/b

将a复制到b文件夹下
默认只能copy文件,如果要copy文件夹需要参数:-r

rm

删除文件或者文件夹
-r:代表可以级联删除文件夹
-f:无需询问直接强制删除

3.3 文件的相关操作

vim xxx

创建并且编辑文件

:wq

在编辑页面中保存当前的修改并且退出

:q!

在编辑页面中放弃当前的修改并且强制退出

i - 当前光标前输入     I - 行首输入
a - 当前光标后输入    A - 行末输入
o - 下一行输入       O - 上一行输入

:set number

显示行号

gg

跳转到首行

G

跳转到末行

:n

跳转到第n行

u(在基本模式下输入)

撤销操作

ctrl+r(在基本模式下输入)

反撤销操作

y[n]y(在基本模式下输入)

复制当前光标下的n行

p(在基本模式下输入)

粘贴

d[n]d(在基本模式下输入)

删除当前光标下的n行

x(在基本模式下输入)

删除当前光标的值

cat xxx

查看文件内容

more xxx

逐步展示文件内容 (回车/空格 往后查看)

tail xxx

从尾部查看文件内容
tail -f 通常用来查看日志文件

/ 关键字

文件内查询
n - 往下找  shift+n - 往上找

:n,$s/旧内容/新内容/g

文件替换

3.4 文件压缩和解压缩

tar -zcf 压缩包的名字.tar.gz  待压缩的文件....

压缩文件

tar -zxf 压缩包的名字.tar.gz

解压压缩包

3.5 用户&用户组的基本命令

groupadd xxx

创建一个用户组

groupmod -n 新组名  旧组名

修改组的名称

groupdel 组名

删除组

groups

展示当前用户所在组

useradd [参数] xxx

添加用户
-g 指定组
-G 指定多个组
-u 指定id
-p 指定密码(密文)

usermod 旧用户名

修改用户名

userdel 用户名

删除用户

passwd 用户名

设置/修改用户密码(明文)

3.6 权限的相关命令

3.6.1 介绍文件描述符


x-xxx-xxx-xxx

1位:文件类型(一切皆为文件)

    • 普通文件(可执行文件、配置文件...)

  • l 链接文件
  • d 目录

2位~4位:所属用户对这个文件(文件夹)的操作权限

5位~7位:所属用户的同组用户对这个文件(文件夹)的操作权限
8位~10位:非同组用户对这个文件(文件夹)的操作权限

rwx

r: 可读
w:可写
x:可执行

3.6.2 Linux的授权方式

字符授权:

chmod (u/g/o)(+/-/=)(r/w/x) 文件/文件夹

数字授权:

chmod nnn 文件/文件夹
r - 4
w - 2
x - 1
-R 递归授权
注意:root用户需要当前权限描述符中任意部分包含该权限,就可以操作该文件

3.7 其他命令

ping

尝试给目标地址发送数据包,检查响应数据包

df df -h

查看磁盘使用信息

free

查看内存的使用情况

poweroff

关机

reboot

重启

netstat -natp

查看服务器的网络通讯信息

uname -a

查看内核版本

四、虚拟机的网络配置

ip地址

当前机器在网络上的一个唯一标识
形式:xxx.xxx.xxx.xx (点分字节)
本质:int值 - 32位整型 byte

子网掩码

检测ip网段的工具

网关

帮助你上网的设备

dns服务器

域名解析服务器

VMware虚拟机的网络模型

桥接模式 -  虚拟机直接和宿主机共享网卡(虚拟机会变成宿主机的真实网段)
Nat模式 - 虚拟机和宿主机之间通过虚拟网卡形成了一个小型的局域网

设置虚拟机的静态ip

打开网卡的配置文件:
vim /etc/sysconfig/network-scripts/ifcfg-网卡名称
编写内容:

.....
BOOTPROTO=static
.....
IPADDR=192.168.195.188
NETMASK=255.255.255.0
GATEWAY=192.168.195.2
DNS1=192.168.195.2

五、Linux中的进程和服务

什么是服务?

服务就是运行在后台的进程

相关命令

ps -aux | grep xxx - 查看当前服务器正在运行的进程 - (瞬时状态)


top - 类似window任务管理器 - (持续状态)
kill -9 xxx - 根据pid结束相应的进程
setup - 查看系统服务
systemctl start/stop/restart/loader/status 服务名称 - 开启/结束/重启/重新加载相应的服务/查看状态
systemctl enable/disable 服务名称 - 设置/关闭服务的开机自启

Linux中的防火墙

/usr/lib/firewalld/services/ssh.xml - 添加需要访问的端口

六、Linux的软件安装(RPM和YUM安装)

6.1 RPM安装

rpm全称为RedHat Package Manager(RedHat软件包管理工具),是一种软件包的打包及安装工具,
能够使用与大部分Linux发行版中

rpm的相关命令

rpm -qa | grep xxxx  - 查看当前系统是否安装某软件
rpm -qi xxxx - 查看软件的安装详情
rpm -ivh xxxxx - 安装指定的rpm包
rpm -e [--nodeps] xxxxxx - 卸载指定的rpm包(强制卸载)

6.2 YUM安装

yum是一个软件包管理器。
基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,
而且可以自动处理依赖性关系,并且一次性安装所有依赖的软件包

yum的相关命令

yum list | grep xxx - 查询当前yum源上是否存在相关软件
yum install -y  xxxx - 安装软件
yum remove -y  xxx - 卸载软件

6.3 软件的安装

1)jdk安装


源码安装:
    1、上传压缩包,并且解压

tar -zxf jdk-8u171-linux-x64.tar.gz

 2、解压文件夹改名

mv jdk1.8.0_171/ jdk8

 3、配置环境变量

vim /etc/profile
编写如下内容:
export JAVA_HOME=/usr/local/software/jdk8
export PATH=$PATH:$JAVA_HOME/bin
保存退出后,设置环境变量立马生效
source /etc/profile

rpm包安装:

rpm -ivh jdk-8u191-linux-x64.rpm

2)tomcat
1、解压压缩包

tar -zxf apache-tomcat-8.5.34.tar.gz

 2、启动tomcat

cd tomcat8/bin
启动tomcat
./startup.sh

3)mysql


yum安装mysql
1、确保当前系统没有安装过mysql

rpm -qa | grep mysql

 2、检查yum源上的mysql版本

yum list | grep mysql

 3、下载更换yum源

下载源rpm安装包
wget https://repo.mysql.com/mysql80-community-release-el7-3.noarch.rpm
安装rpm
rpm -ivh mysql57-community-release-el6-8.noarch.rpm
配置mysql源信息
vim /etc/yum.repos.d/mysql-community.repo
修改33行,将6改成7
 33 baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/

 4、进行yum安装

yum install -y mysql-community-server.x86_64

 5、启动mysql服务

systemctl start mysqld

6、查看MySQL生成的随机密码

grep 'password' /var/log/mysqld.log |head -n 1

7、登录mysql修改密码

mysql -uroot -p
登录之后第一次修改密码
set password=password('ROOTroot123_');

 8、开放MySQL的远程访问

创建远程访问用户:
create user 'root'@'%' identified by 'root';
授权当前用户:
grant all privileges on *.* to 'root'@'%';

 9、配置MySQL库的默认编码集

vim /etc/my.cnf
添加内容:
[mysqld]
character-set-server=utf8

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值