15天的苦逼奋斗史

Linux运维是什么?

​ 时代的进步,运维也在升级,已经不仅限于穿着棉袄,背着电脑奔跑在各个冰冷的机房内了。

​ 现如今的运维指互联网运维,通常属于技术部门,与研发,测试,系统管理同为互联网产品技术支撑的4大部门。而如今的Linux系统运维工程师也有不同的方向 云计算运维工程师公有云运维工程师容器云方向自动化运维方向数据库运维方向运维开发工程师,等等

一个网站开发的项目组,都包括哪些技术部门

  1. 前端开发

主要的技术 html css javascripts

html、css、js 三者间的关系. 网页主要有三部分组成,结构 (HTML)、表现 (CSS)、行为 (Javascript)。. html是主体,装载各种dom元素;css用来装饰dom元素;javascript控制dom元素。. 用一扇门比喻三者间的关系是:html是门的门板,css是门上的油漆或花纹,javascript是门的开关

  1. 后端开发

python,golang,java等编程语言,可以解析用户发来的请求,然后再和数据库交互,对数据进行,读取,写入。

  1. 软件测试

开发,代码写好后,交给测试,进行最基本的功能性测试活动,找一找有没有BUG,找出系统缺陷。

  1. 运维部门

    配合,开发,测试,全部流程通过之后,提供线上linux服务器运行环境
    1.上线环节 将代码部署到线上,将网站前端,后端,数据库,全部运行起来后,提供正确的网站访问功能。

2.后期的维护,完成网站的迭代更新,代码更新,每日的数据库备份

用户访问网站背后的通信架构

客户端浏览器 > 前端系统(linux前端服务器组) > 后端系统(linux后端服务器组) >数据库系统(linux数据库服务器组)

127.0.0.1、192.168.0.240、0.0.0.0都是什么作用、以及区别是

NAT是什么

  NAT(Network Address Translation),是指网络地址转换。当在[专用网](https://baike.baidu.com/item/专用网/1006818)内部的一些主机本来已经分配到了本地IP地址(即仅在本专用网内使用的专用地址),但又想和因特网上的主机通信(并不需要加密)时,可使用NAT方法。

Linux 操作系统特点

  • 是开放源代码的程序软件,可自由修改;
  • Unix系统兼容,具备几乎所有Unix的优秀特性;
  • 可自由传播,无任何商业化版权制约;
  • 适合 Intel 等 x86 CPU 系列架构的计算机,可移植性很高

操作指令

su命令

su   用于切换系统不同的用户

由su,命令可以涉及出useradd  用于添加新用户的名字

[root@localhost ~]# su - yuchao01
Last login: Sat Mar  5 15:26:26 CST 2022 on pts/0
[yuchao01@localhost ~]$ su - root
Password: 
Last login: Sun Mar  6 13:20:21 CST 2022 from 192.168.26.1 on pts/0
[root@localhost ~]#

uname命令

使用nmame命令时,一般会固定搭配-a参数来完整的查看当前系统的内核名称,主机名,内核发行版本、节点名、系统时间、硬件名称、硬件平台、处理器类型以及操作系统名称等信息

[root@localhost ~]# uname -a
Linux localhost.localdomain 3.10.0-862.el7.x86_64 #1 SMP Fri Apr 20 16:44:24 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

ls命令

ls命令,平铺显示目录下的文件列表
[root@localhost ~]# ls
anaconda-ks.cfg  法师  王者荣耀

ls -l      各文件完整的信息
[root@localhost ~]# ls -l
total 4
-rw-------. 1 root root 1257 Mar  4 18:34 anaconda-ks.cfg
drwxr-xr-x. 3 root root   20 Mar  4 19:34 法师
drwxr-xr-x. 2 root root    6 Mar  4 19:22 王者荣耀

ls -h   与l一起,便于阅读的格式输出大小,kb,mb
[root@localhost ~]# ls -lh
total 4.0K
-rw-------. 1 root root 1.3K Mar  4 18:34 anaconda-ks.cfg
drwxr-xr-x. 3 root root   20 Mar  4 19:34 法师
drwxr-xr-x. 2 root root    6 Mar  4 19:22 王者荣耀

ls -a     显示隐藏文件,在Linux系统中以.(点)开头的文件,表示隐藏
[root@localhost ~]# ls -a
.  ..  anaconda-ks.cfg  .bash_history  .bash_logout  .bash_profile  .bashrc  .cshrc  .tcshrc  法师  王者荣耀

pwd命令

pwd命令,显示当前目录
[root@localhost ~]# pwd
/root

cd命令

cd命令   切换目录,涉及到文件的相对路径,绝对路径
[root@localhost ~]# ls
anaconda-ks.cfg  法师  王者荣耀
[root@localhost ~]# pwd
/root
[root@localhost ~]# cd 法师
[root@localhost 法师]# 

特殊目录

. 的作用 显示当前位置
[root@localhost ~]# ls .
anaconda-ks.cfg  法师  王者荣耀

.. 的作用 显示上一层的位置
[root@localhost ~]# ls ..
bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var  王者荣耀

- 的作用上一次的目录
[root@localhost ~]# cd -
/root/法师
[root@localhost 法师]# cd -
/root

~ 的作用,当前用户家目录
[root@localhost ~]# su - yuchao01
Last login: Sun Mar  6 16:18:59 CST 2022 on pts/0
[yuchao01@localhost ~]$ pwd
/home/yuchao01
[yuchao01@localhost ~]$ su - root
Password: 
Last login: Sun Mar  6 16:19:10 CST 2022 on pts/0
[root@localhost ~]# pwd
/root
[root@localhost ~]# 

clear 命令

clear 用来清除终端屏幕,也可用快捷键Ctrl+L

shutdown命令

shutdown 用安全方式关机

shutdown -r    重启

shutdown  -h   停机

man命令

man命令    Linux的帮助手册

hisyory命令

history    显示执行过的命令,有数量限制,默认1000个

history  3    显示最后3条

history  -c   清除历史记录

hostnamectl命令

hostnamectl set-hostname     修改主机名

houstname      查看主机名

mkdir命令

mkdir 创建文件夹,可创建多个,还可以加参数-p,递归创建
[root@localhost ~]# mkdir cc
[root@localhost ~]# ls
anaconda-ks.cfg  cc  法师  王者荣耀

rmdir命令

rmdir  删除空目录,不为空无法删除

rm -r     逐级删除

rm -f     强制删除

touch命令

louch   创建文件,可一次性创建多个

echo命令

echo  打印当前文字
[root@localhost ~]# echo '哇哦!!!***'
哇哦!!!***
[root@localhost ~]# echo "哇哦"
哇哦

由此有引号的作用

双引号 可以识别特殊符号

[root@localhost hhh]# echo "a阿卡丽附加按底价 ????Z!!!"
bash: !": event not found

单引号 不做特殊转义,只是简单的字符串

[root@localhost ~]# echo '哇哦!!!***'
哇哦!!!**

tab命令

tab 命令   命令、路径自动补全

重定向符号

>   重定向覆盖输出符  ,数据从左边,覆盖写入到右边 

<   重定向覆盖输入符,数据从右边,覆盖写入到左边

>>  重定向追加输出符, ,数据从左边,追加写入到右边 

<<  重定向覆盖输入符,数据从右边,追加写入到左边

cat命令

cat 适合读取小文件,不能读取大文件,一次性将文件内容全部读取到内存中,且输出到屏幕上

cat  -n  显示行号

也可以一次性读取多个文件
[root@localhost opt]# cat -n  doupo.txt   hehe.txt   hello_python.txt

cat  -b 只会对有内容的行,显示其行号,空行不显示

cat   还可根据重定向符号文本内追加内容
cat >> 古诗2.txt <<EOF
你的数据在这里写。。。
EOF

EOF是一个关键字,end of file  ,文件的结束

tac命令

将文件从后,向前,倒着查看
[root@localhost opt]# cat  -n hehe.txt 
     1	yuchao
     2	yejingyang
     3	chenliangliang
[root@localhost opt]# 
[root@localhost opt]# 
[root@localhost opt]# tac hehe.txt 
chenliangliang
yejingyang
yuchao

more与less命令

more和cat都是一次性读取所有内容到内存,不适合读取大文件,占资源

less命令是显示多少文本,消耗多少内存,省资源。

空格,翻篇

回车 下一行

head和tail命令

head   与   tail   默认都是10行
head  -数字    查看前几行的内容
tail  -数字     查看后几行的内容
tail  -f  
1.要求被检测的文件,存在

2.可以tail -f检测

tail  -F
能够对文件进行刷新读取,即使该文件不存在,也可以检测

wc命令

统计命令
wc   -l    统计总行数

wc  -w    统计单词数

du命令

ls -lh     统计文件的大小

du    查看文件或目录(递归显示子目录)占用磁盘空间

du -s     只显示汇总的大小,统计文件夹的大小
[root@localhost opt]# du -s .
105072KB	.

du -h     表示以高可读性的形式进行显示,如果不写-h,默认以KB的形式显示文件大小
[root@localhost /]# du -h /opt
103M	/opt

find命令

find命令是递归查找   一级一级的查
模糊查找   find   /(根目录) -name "(查找的东西)"
# -type  f   找到文本类型的数据 
# -type  d    找到文件夹类型的数据
还可以找文件的大小
指令    -size      +  代表超过的    -代表不超过的
举例   找出系统上超过20M的压缩包
[root@localhost ~]# find / -name "*.gz" -size +20M
/tmp/all_test1/all_test.tar.gz
[root@localhost ~]# ll -h /tmp/all_test1/all_test.tar.gz
-rw-r--r--. 1 root root 30M Mar  7 19:48 /tmp/all_test1/all_test.tar.gz
find -o  可以找出多种类型的文件

grep命令

grep是对数据进行过滤查找关键字
    用于排除数据
    grep   '关键字'   文件名
grep  -n  显示存在该关键字的行号  严格区分大小写

grep  -i    显示无论大小写的关键字
利用grep找出nginx软件,配置文件中,定义的网站监听端口号
[root@localhost opt]# grep -n -i 'listen'  /etc/nginx/nginx.conf
39:        listen       80;

文件创建时间,访问时间,修改时间

access time       查看了文件,就会修改这个时间
change time       文件属性发生变化就会改变时间
modify time       修改了文件内容,就会修改这个时间
修改时间
touch  -d  "要改的时间"  -a(访问时间) +要改的文件
                        -m(修改时间)
                        -c(文件属性时间)
     不管是改访问时间还是修改时间都能改变文件属性时间          
找出七天前的文件    
find / -typo f -name '*.log' -mtime  +6

找出七天内的文件    
find / -typo f -name '*.log' -mtime  -8

找出正好七天的文件    
find / -typo f -name '*.log' -mtime  7

简单的网站部署

  1. 安装 yun install nginx -y这个软件包

  2. 下两个软件仓库

    配置阿里云的软件仓库
    https://developer.aliyun.com/mirror/

    这里配置下载2个软件仓库 (centos和redhat系统的关系)

    wget -O 指定文件存放到哪里 资源的下载链接

    直接下载Centos-7.repo这个文件,到当前目录

    wget https://mirrors.aliyun.com/repo/Centos-7.repo

    不但下载资源,且指定到某一个路径下

    wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

    wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

  3. 有了软件仓库,就可以下载相应的各种应用了

  4. 启动niginx应用

    [root@localhost opt]# systemctl start nginx 
    
  5. 应用启动,查看他的运行

    命令、ps -ef |grep nginx
    
  6. 网站的运行,默认端口是 http的80端口,用自己的浏览器去访问他

  7. 访问时要关闭服务器的防火墙

    [root@localhost opt]# iptables -F
    
  8. 程序运行了,就代表80端口启动服务

    #停止他的服务
    [root@localhost opt]# systemctl stop nginx
    
    再次重新启动
    systemctl restart nginx
    
  9. 也可以修改配置,做自己的网页

    1、找到/usr/share/nginx/html
    2、vim index.html  编辑你的这个80端口的程序
    3、无需重启,网站自动更新
    
posted @ 2022-03-15 18:53  张开嘴  阅读(63)  评论(0编辑  收藏  举报