day01Linux笔记
互联网公司一个技术组,都有什么职位?
ceo
cto
前台小姐姐
前端小姐姐
测试工程师
项目经理(被打那个人)
Ui设计(网站视觉设计)
数据分析(python)
后端开发工程师
运维工程师(linux运维)(背锅侠)
运维开发工程师(python开发+linux技能)
桌面运维,维护打印机,维护笔记本
DBA(数据库管理员)
网络运维(管理网络,路由器,交换机等等)
存储工程师
软件开发的生命周期:
1.产品提需求
2.数据库设计(开发阶段),后端开发
3.前端页面开发
4.代码测试,单元测试,没有bug了
5.此时代码测试没有bug了,还不足以支撑一个并发的网站
6.此时运维工程师,负责产品上线,将代码部署到linux服务器上,对外提供访问
django并发性很差+nginx,支持负载均衡,支持反向代理,让你的网站足以支撑10万+并发
mysql数据都放在磁盘上,受到磁盘性能的影响,机械硬盘速度只有固态硬盘的1/10速度
mysql的主从复制,防止单点机器故障,数据受影响
使用redis缓存数据库,数据都放在内存当中,
假如你本来是2台服务器,支撑网站在运行
突然来了个秒杀活动,并发怼到了几十万
学习消息队列,让你的网站,足以支撑秒杀的并发危险性
部署django的流程
1.代码拷贝
2.python解释器安装
3.python模块安装
4.可以正常运行代码
docker容器技术,解决你所有的软件部署问题
服务器硬件学习:
笔记本的外观有什么?
1.显示屏
2.内置键盘
3.usb接口
4.触摸板
5.网口
6.电源接口
7.散热口
8.摄像头
9.电源开关
笔记本内部有啥
1.主板
2.cpu
3.内存条
4.磁盘
5.网卡
6.电池
7.显卡
8.光盘驱动
9.内置音响
人的大脑记忆,如同计算机的内存条,如果进程不重启,服务器不重启,内存中的数据也不丢
python后端开发
10-15 python精通 80%的技能
python运维开发
15-20之间 50python%技能 50%linux技能
服务器硬件厂商:
1.dell
2.hp
3.联想
4.浪潮
5.ibm
服务器指的是网络中能对其他机器提供某些服务的计算机系统,相对普通PC,服务器指的是高性能计算机,稳定性、安全性要求更高
服务器的高性能体现在高速的运转能力,长时间的可靠运行,强大的数据吞吐能力
服务器分类:互联网公司,怎么选择服务器?一般有什么
1.物理服务器,有钱的大公司,买自己的服务器,建造自己的机房(零度,无尘,无静电)防止机器短路,数据丢失
-有钱的公司,bat,建造自己的机房
-中等的公司,普通的外企,也有自己的服务器,但是服务器,托管在别人的机房(世纪互联这家公司)
2.云服务器,阿里云,腾讯云(便宜,省钱,无烦恼),初创型的小公司
3.vmware虚拟化技术
shell
我们输入linux命令发给 linux操作系统 ,shell将我们输入的命令,翻译给操作系统去执行
linux的发行版:各个厂家进行自己的定制开发,衍生出不同的发行版
不同的发行版,命令大同小异
centos 社区版的redhat,免费使用,功能和redhat一模一样
ubuntu 作为很多个人学习的linux平台,也常用在物联网嵌入式中
redhat 红帽子,企业版linux,收费使用,redhat资格认证才可以进行linux运维维护,rhcsa红帽管理员,rhce红帽工程师,rhca(红帽架构师)
手机
linux的安装学习方式:
1.准备一个镜像文件,系统文件 centos-7.iso
2.刻录usb镜像
1.裸机安装,单独的状linux
2.双系统 windows+linux
3.vmware虚拟化技术
-个人学习版, vmware workstation
-性能较低,根据你笔记本的硬件资源来分配 ,性能越高,分配的虚拟机越多
-企业版虚拟化 vmware vsphere
26台dell实体服务器,通过虚拟化技术,分配了100+的redhat 100+的centos
都是在一个物理机器上,安装多个操作系统
windows系统之上
+
vmware软件(用于安装centos操作系统)
+
xshell远程登录工具
linux的默认终端有7个,7个屏幕
ctrl + alt + f1-f7
root是linux的超级用户账号
输入密码
使用linux的步骤
1.配置远程连接工具 xshell
2.通过命令,远程连接服务器
ssh这个命令,
语法格式:
ssh root@服务器地址
ssh [email protected](局域网,私有的ip地址,)
3.在公司当中,刚入职,运维也会给你账号 密码 服务器ip地址
账号是 sundage
密码是 sundage666
服务器ip 123.206.16.61(公网)
ssh [email protected] 登录公司的服务器,输入自己的密码
4.首次远程登录linux的界面
Last login: Sun Apr 28 11:33:23 2019
[root@localhost ~]#
[root@localhost ~]# 这是linux的命令提示符
5.不管是xshell还是secureCRT都是封装了远程连接的命令 ssh
6.windows是反斜杠,linux是正斜杠的目录分隔符
7.linux的目录结构,是 以 / 这个根目录 为源头划分
8.绝对和相对路径的概念
绝对路径:以根目录为起点的路径,就是绝对路径,如 /opt/rh
相对路径: 不是根目录为起点的目录,就是相对路径
. 当前目录
.. 上一级目录
./ 当前目录下的某些内容
9.学习基本的linux目录操作命令
文件夹的操作
pwd 打印当前工作的目录 print work 目录(我在哪的命令)rm
ls list的意思,查看当前文件夹有哪些
man 手册 ,解释linux的命令如何使用
cd 更改工作目录的命令
cd tmp
增
创建文件夹 文件夹是蓝色的
语法格式:
mkdir 文件夹的名字
删
炸弹命令,删库到跑路
rm remove删除命令
语法格式是
rm 加上要删除的内容,文件夹,或文件
rm 什么都不加,其实是 rm -i 文件, 确认是否删除文本
rm想删除文件夹
rm -r 文件夹
-r 参数是递归删除的意思
-f force参数,强制删除,不提示
rm -rf 文件夹 #强制删除这个文件夹,且不提示
改
mv命令,重命名,移动文件位置
mv 一脸懵逼 二脸懵逼
查
ls 查看文件夹内容
linux隐藏文件都是以.开头
ls -a 显示文件夹所有内容,以及隐藏文件
cd ../tmp/一脸懵逼/
cd /tmp/一脸懵逼/
文件的操作
增
touch 普通文本是白色的
touch 文本名
删
改
查
linux的环境变量 PATH变量
echo $name #打印出变量的值
windows的环境变量
python36
C:\Python36\Scripts\;
C:\Python36\;
C:\Program Files\Bandizip\;
linux的环境变量 PATH的变量控制
PATH的作用?
定义了一对文件夹的路径,当我输入命令的时候,计算机优先去PATH中寻找路径,是否有这个命令
echo $PATH
/opt/python36/bin/:
/usr/local/sbin:
/usr/local/bin:
/usr/sbin:
/usr/bin:
/root/bin:
1.如何配置python3的环境变量
/opt/python36/bin/python3.6 解释器
1.服务器有哪些硬件?
2.内存,CPU,硬盘的作用?
3.服务器常见品牌?
4.操作系统的作用?
5.开源软件的特性,以及开源许可的协议
6.linux优点
7.说出常见的linux发行版
8.用虚拟机学linux的好处是?
命令练习题:
1.安装好linux操作系统
2.在/tmp/目录下创建 oldboy文件夹,绝对路径和相对路径两种方式
3.再在/tmp/oldboy下创建s19文件夹,并且创建好nantongxue nvtongxue 两个文件夹
4.在nantongxue文件夹下,创建wengang普通文本
5.删除 s19文件夹里面所有的内容
6.请问linux中 . .. ./ - ~ 的含义
当前目录 上一级目录 当前目录 上次所在的目录 跟目录
7.默写linux文件增删改查的命令 及其含义
touch rm mv ls
8.如何查看linux中PATH变量的值?
echo $PATH
9.linux中如何设置变量name,值为"你个遭老头子,坏得很",并且输出name变量的值?
[root @localhost ~]#echo $variable
10.linux如何查看ip地址?
ifconfig
11.远程连接服务器的命令是什么?
[email protected]'s password
12.linux显示当前工作目录的命令?
./configure --prefix=/opt/python --enable-shared CFLAGS=-fPIC
13.linux显示当前登录用户的命令?
whoami
14.ip,port分别是什么作用?
Ip 是地址 port是接口