Selaa lähdekoodia

新增交换机安装和linux配置文档

seamew 1 vuosi sitten
vanhempi
commit
78ec495845

+ 96 - 0
linux/linux常见命令/linux命令.md

@@ -0,0 +1,96 @@
+# 什么是source命令?
+
+运行shell时,会同时存在两种变量:
+
+- **1) 局部变量** 局部变量在脚本或命令中定义,仅在当前shell实例中有效,其他shell启动的程序不能访问局部变量。
+- **2) 环境变量** 所有的程序,包括shell启动的程序,都能访问环境变量,有些程序需要环境变量来保证其正常运行。必要的时候shell脚本也可以定义环境变量。
+
+在 Linux 中,source 命令用于执行指定的 shell 脚本文件,并将脚本文件中的所有命令都当作当前 shell 环境的命令来运行。简单地说,source 命令可以让你在当前的 shell 环境中执行一个脚本文件,并将其中定义的环境变量和函数等内容加载到当前的 shell 环境中。
+
+具体而言,source 命令可以实现如下功能:
+
+1. 在当前 shell 环境中载入指定脚本文件的内容,包括环境变量、函数等。
+2. 不创建新的子 shell 进程,而是在当前 shell 环境中执行脚本文件中的命令,从而实现在当前 shell 中设置环境变量或执行函数等操作。
+
+使用 source 命令的常见场景包括:
+
+1. 执行 shell 脚本文件,以实现设置环境变量、执行别名或函数等功能。
+2. 加载特定的 shell 配置文件,例如 ~/.bashrc 或 /etc/profile,以初始化 shell 环境。
+
+总之,source 命令可以帮助你在当前的 shell 环境中执行指定的脚本文件,并将其中定义的环境变量、函数等内容加载到当前的 shell 操作中,非常有用。
+
+## 简单例子
+
+```sh
+export var=999
+```
+
+如果`./my.sh`,运行后,执行`echo $var`是空的。
+
+如果`source ./my.sh`运行后,执行`echo $var`会显示999。
+
+因为调用`./my.sh`来执行`shell`是在一个子`shell`里运行的,所以执行后,里面定义的变量并没有反应到本`shell`里,但是 `source`不同,是在本`shell`中执行的,所以本shell能够看到其定义的变量。
+
+# export命令
+
+在 Linux 中,export 命令用于向当前 shell 环境中添加新的环境变量,使其能被当前 shell 环境及其子进程所访问和使用。简单地说,export 命令可以将一个变量设置为环境变量,从而可以在当前 shell 会话中以及当前 shell 的子进程中使用该变量。
+
+具体而言,export 命令可以实现如下功能:
+
+1. 将指定的变量设置为当前 shell 环境的环境变量。
+2. 将环境变量持久化保存到系统文件中,以便在下次启动时仍然可用。
+3. 环境变量的作用范围不仅限于当前 shell 环境,还包括当前 shell 环境的所有子进程,因此可以实现父子进程之间的环境变量共享。
+
+使用 export 命令可以将一个普通变量设置为环境变量,例如:
+
+```shell
+MY_VAR="hello"
+export MY_VAR
+```
+
+这样就将 MY_VAR 变量设置为当前 shell 环境的环境变量,以便在当前 shell 会话和当前 shell 的子进程中使用。
+
+同时,你也可以直接在一行中同时定义和导出一个环境变量,例如:
+
+```shell
+export MY_VAR="hello"
+```
+
+这样也可以将 MY_VAR 设置为环境变量,并将其导出到当前 shell 环境中。
+
+总之,export 命令可以将指定变量设置为环境变量,并将其在当前 shell 环境及其子进程中进行共享和使用,非常有用。
+
+# #!/bin/bash 作用
+
+`#!/bin/bash` 是一种脚本文件的头部声明,也称为 Shebang 或 Hashbang。在 Linux 和 Unix 系统中,这行命令用于指定解释器的路径,让操作系统知道该如何执行该脚本文件。
+
+具体而言,当一个脚本文件被执行时,操作系统会读取脚本文件的第一行,如果该行指定了解释器的路径,操作系统就会使用该解释器来执行该脚本文件;否则,操作系统会使用默认的解释器来执行该脚本文件(在大多数情况下是 /bin/sh)。
+
+因此,在编写 Shell 脚本时,将 `#!/bin/bash` 添加到脚本文件的开头可以确保脚本文件将使用 Bash 解释器来执行,而不是其他解释器。同时,还可以通过修改 Shebang 行的内容来指定使用其他解释器来执行脚本文件。
+
+需要注意的是,`#!/bin/bash` 命令在脚本文件的开头必须是第一行,并且不能有任何空格或其他字符紧随其后,否则该命令将不会被正确识别,从而导致脚本无法执行。
+
+总之,`#!/bin/bash` 命令的作用是指定解释器的路径,让操作系统知道该如何执行该脚本文件。在编写 Shell 脚本时,通常需要添加该命令到脚本文件的开头。
+
+# -e作用
+
+`-e` 是 Bash 脚本中的一个选项,用于指定在脚本执行过程中如果出现错误就立即退出并返回非零(非正常)状态码。
+
+具体而言,当在 Bash 脚本中添加了 `set -e` 命令后,表示开启了该选项(也可以使用 `set -o errexit`),此时如果在脚本的任何一行命令或管道执行失败,Bash 就会立即退出并返回非零状态码。这个特性可以确保脚本在执行过程中出现错误后可以立即停止执行,避免产生更多的错误。
+
+举个例子,假设有一个名为 `test.sh` 的 Shell 脚本文件,它的内容如下:
+
+```shell
+#!/bin/bash
+set -e
+
+echo "start"
+command_not_exist
+echo "end"
+```
+
+其中,`set -e` 指定了开启 `-e` 选项,`command_not_exist` 是一条不存在的命令。
+
+如果在执行该脚本时,命令 `command_not_exist` 执行失败,那么该脚本就会立即退出,并且不会输出 "end"。同时,脚本会返回一个非零状态码(通常是 1),表示脚本执行过程中发生错误。
+
+总之,`-e` 选项可以确保在 Bash 脚本执行过程中出现错误就立即退出并返回非零状态码,从而更好地确保脚本执行的可靠性。

+ 49 - 0
linux/linux服务器运维/vmware exsi/11、交换机安装.md

@@ -0,0 +1,49 @@
+## 安装VPS交换机
+
+1. 在vsphere中选择部署OVF模板
+
+![image-20230525143835817](assets/image-20230525143835817.png)
+
+2. 选择三个模板文件
+
+![image-20230525143521677](assets/image-20230525143521677.png)
+
+3. 按照具体选择虚拟机位置
+
+![image-20230525143554957](assets/image-20230525143554957.png)
+
+4. 选择一个exsi机器,这里选择默认的即可
+
+![image-20230525143606116](assets/image-20230525143606116.png)
+
+5. 选择安装磁盘
+
+![image-20230525143655534](assets/image-20230525143655534.png)
+
+6. 网络选择自定义的server网络
+
+![image-20230525143806979](assets/image-20230525143806979.png)
+
+7. 打开虚拟机配置IP,网关,子网掩码
+
+![image-20230525161825139](assets/image-20230525161825139.png)
+
+8. 打开上述配置的IP,默认用户名密码是nsroot
+
+![image-20230525161811186](assets/image-20230525161811186.png)
+
+9. 安装配置完毕
+
+![image-20230526141545083](assets/image-20230526141545083.png)
+
+## 升级
+
+1. 登录citrix站点,下载最新的安装包
+2. FTP 客户端上传安装包到此设备
+3. 将升级所需要的安装包从计算机复制到设备上的 /var/nsinstall 目录。
+4. 使用安全的SSH客户端打开与设备的 SSH 连接。
+5. 在命令提示窗口中,键入: `shell`
+6. 进入安装目录,在命令提示符下键入:`cd /var/nsinstall`
+7. 需要解压安装软件,输入:tar –xvzf build_X_XX.tgz,其中 Build_x_xx.tgz 是要升级到的内部版本的名称。
+8. 开始安装,在命令提示符下键入:`./installns`
+9. 安装完成后,重新启动服务器

BIN
linux/linux服务器运维/vmware exsi/assets/image-20230525143430499.png


BIN
linux/linux服务器运维/vmware exsi/assets/image-20230525143440631.png


BIN
linux/linux服务器运维/vmware exsi/assets/image-20230525143521677.png


BIN
linux/linux服务器运维/vmware exsi/assets/image-20230525143554957.png


BIN
linux/linux服务器运维/vmware exsi/assets/image-20230525143606116.png


BIN
linux/linux服务器运维/vmware exsi/assets/image-20230525143637427.png


BIN
linux/linux服务器运维/vmware exsi/assets/image-20230525143655534.png


BIN
linux/linux服务器运维/vmware exsi/assets/image-20230525143806979.png


BIN
linux/linux服务器运维/vmware exsi/assets/image-20230525143835817.png


BIN
linux/linux服务器运维/vmware exsi/assets/image-20230525161811186.png


BIN
linux/linux服务器运维/vmware exsi/assets/image-20230525161825139.png


BIN
linux/linux服务器运维/vmware exsi/assets/image-20230526141545083.png


+ 37 - 0
linux/linux服务器配置/配置基础环境.md

@@ -0,0 +1,37 @@
+```sh
+#!/bin/bash
+set -e
+
+# 关闭防火墙
+systemctl stop firewalld && systemctl disable firewalld
+# 配置yum源
+yum install wget -y
+mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
+wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
+yum clean all 
+yum makecache
+# 配置时间同步
+yum install ntp -y
+systemctl enable ntpd && systemctl start ntpd
+timedatectl set-timezone Asia/Shanghai
+
+# 安装必要软件
+yum install git vim -y
+
+# 安装java
+yum -y remove *java*
+yum install -y java-1.8.0-openjdk*
+
+# 安装maven
+yum install maven
+sed -i '/<mirrors>/,/<\/mirrors>/c\
+  <mirrors>\
+    <mirror>\
+      <id>alimaven</id>\
+      <url>https://maven.aliyun.com/repository/public</url>\
+      <mirrorOf>central</mirrorOf>\
+    </mirror>\
+  </mirrors>
+' /etc/maven/settings.xml
+```
+