编写函数,实现OS的版本判断OS (){cat /etc/os-release | sed -nE 's/^PRETTY_NAME="(.*)"/\1/gp'}编写函数,实现取出当前系统eth0的IP地址IP (){ip addr show dev eth0 | sed -En 's/inet *(([0-9]{1,3}\.){3}[0-9]{1,3})\/.*/\1/gp' | tr -d "
函数返回函数体中定于返回值,不能使用exit,因为函数是在当前shell中执行,使用exit会退出当前shell,如下所示可以使用return 命令,执行函数退出的状态码,return 0 无错误返回 return 1-255 有错误返回 return 从函数中返回,即最后命令状态环境函数在脚本中调用函数无法传递到shell中子进程中,通过定义环境函数,可以使子进程调用函数
函数function是由多个shell组成的语言块,实现代码重用和模块化编程,与shell类型,不同点为shell程序运行会单独开启进程,而函数不会开启进程,是在当前shell环境中运行,可影响当前shell的变量。函数定义格式function_name (){command}或者function function_name (){command}函数查看及删除declare -F 查看所有定义
1、判断/var目录下所有文件的类型#!/bin/bashcd /varFile=`ls /var`for i in *; do file_type=`ls -ld $i |cut -b1` case $file_type in d) echo "$i is 目录" ;; l) echo "$i is 链接文件" ;; -) echo "$i is 普通文件
shell 循环语句
#!/bin/bashread -p "请输入行数:" linefor ((i=1;i<=line;i++));do for ((k=1;k<=line-i;k++));do echo -e " \c" done for ((j=1;j<=2*i-1;j++));do echo -e "*\c" done echo done
制作99乘法表#!/bin/bashfor i in {1..9}; do for j in `seq $i`;do echo -e "$i*$j=$[$i*$j]\t\c" #\t插入tab键,\c不插入换行符 doneecho done
1、修改网卡名称#修改配置文件为下面形式root@ubuntu1804:~#vi /etc/default/grubGRUB_CMDLINE_LINUX="net.ifnames=0"#或者sed修改root@ubuntu1804:~# sed -i.bak '/^GRUB_CMDLINE_LINUX=/s#"$#net.ifnames=0"#'/etc/default/grub#生效新的grub
将多块网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡。直接给两块网卡设置同一IP地址是不可以的。通过 bonding,虚拟一块网卡对外提供连接,物理网卡的被修改为相同的MAC地址。bonding模式共7种模式0-6modemode 0(balance-rr):轮询策略;mode 1(active-backup):主备策略mode 3(broadcast):广播策略,在所有接口上传所有
网络配置基本文件IP、MASK、GW、DNS相关的配置文件:/etc/sysconfig/network-scripts/ifcfg-IFACE设置 说明TYPE 接口类型;常见有的Ethernet, BridgeNAME 此配置文件应用到的设备DEVICE 设备名HWADDR 对应的设备的MAC地址UUID 设备的惟一标识BOOTPROTO激活此设备时使用的地址配置协议,常用的dhcp, sta
1、网卡命名相关配置文件:/etc/udev/rules.d/70-persistent-net.rules修改网卡名为eth0[09:19:05root@LGW-Linux-7dev]#cp -a /etc/default/grub /etc/default/grub.bak 备份grub文件[09:20:13root@LGW-Linux-7default]#vim grub 编辑grub文件
LVM介绍lvm:logical volume manager可以允许对卷进行方便操作的抽象层,包括重新设定文件系统的大小,允许在多个设备重新组织文件系统实现过程1、将设备指定为物理卷 pvcreate2、用一个或多个物理卷创建一个卷组,物理卷用固定大小的物理区域PE定义 vgcreate3、在物理卷上创建逻辑卷,由多个PE组成,逻辑卷的大小容量应是PE的整数倍 lvcreate创建逻辑卷1、安装
1、dd命令格式 dd if=/PATH/FROM/SRC of=/PATH/TO/DEST bs=# count=# 常用选项: if=file 从所命名文件读取而不是从标准输入 of=file 写到所命名的文件而不是到标准输出 ibs=size 一次读size个byte obs=size 一次写size个byte bs=siz
使用光盘使用光盘需要进行挂载操作mount /dev/cdrom /mnt创建ISO文件[14:30:43root@LGW-Linux-7data]#mount /dev/cdrom /mntmount: /dev/sr0 is write-protected, mounting read-only[14:33:06root@LGW-Linux-7data]#cp /mnt
swap交换分区是系统ram不足的时候,使用系统磁盘作为ram的补充,也叫虚拟内存。因使用的是系统磁盘,在性能上与ram上有所差异,当配置过多的swap空间时,会掩盖内存泄漏问题以及造成存储空间浪费情况;一般情况下,swap空间官方推荐如下系统中ram容量推荐swap空间低于2GBRAM量的2倍2-8GB等于RAM量8-64GB4GB到ram容量的0.5倍超过64GB独立负载(至少4GB)ram使
1.控制组策略的注册表在注册表中控制USB设备对应的项为:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\usbstor下的 “Start”键值默认情况下一般键值为3,如下图:如果需要将USB设备禁用,只需要将其设置为4即可2. 通过组策略修改注册表键值新建一个脚本,另存为bat格式,内容如下:echo Windows Regis
在服务器上新建文件夹,文件夹共享,权限设置为everyone完全控制登录域控服务器,打开组策略管理工具;在用户的OU下新增组策略;右键点击组策略,编辑组策略设置,定位到用户配置的计划任务中; 右键单击任务计划,选择新建-计划任务; 新增的计划任务,填写相应的任务名称;运行设置为:C:\Windows\System32\wusa.exe 运行参数设置为:\\上图所示共享路径Windows6.
安装新服务器操作系统为规划使用一台新的服务器安装Windows Server 20012 R2 标准版中文版操作系统。服务器分区为NTFS分区,C分区为100GB,D分区为100GB。内存设置为4GB。为新安装的操作系统安装最新的补丁更新,均安装Windows Server 2012 R2 标准版最新的安全补丁更新;将服务器加入到AD域中部署WSUS补丁更新服务器及配置打开“服务器管理器”
挂载:将文件系统与根文件系统某现场的目录建立起关联关系,进而使用此目录作为其他文件访问入口行为卸载:为解除次关联关系的过程挂载点下原有文件在挂载完成后会被临时隐藏,因此挂载点一般目录为空进程正在使用的设备无法被卸载挂载文件系统命令mount格式:mount [-fnrsvw] [-t vsfstype] [-o options] device mountpointdevice:设备&n
管理分区磁盘想要在系统中使用,必须需要先创建分区,然后将分区进行格式化文件系统,然后在挂载在目录上,系统层面才能够查看使用;基于分区管理,有以下命令 lsblk 列出设备情况包括分区 fdisk管理mbr分区 gdisk管理gpt分区 parted高级分区操作,因命令实时生效,不推荐使用parted格式:part
分区方式两种分区方式MBR GPTMBRMBR 也就是主引导记录,位于硬盘的 0 磁道、0 柱面、0 扇区中,主要记录了启动引导程序和磁盘的分区表。使用32位表示扇区数,即可用2^32*512bytes共2TB。0磁道0扇区:512bytes446bytes: boot loader64bytes:分区表,其中每16bytes标识一个分区2bytes: 55AAMBR分区中一块硬盘最多
1、将MBR备份并拷贝到其他服务器上用于存储dd if=/dev/sda of=/data/mbr.img bs=1 count=64 skip=446***dd命令注释#if=文件名:输入文件名,缺省为标准输入。#of=文件名:输出文件名,缺省为标准输出。即指定目的文件。< of=output file >#bs=bytes:同时设置读入/输出的块大小为bytes个字节。#cbs=b
设备文件linux系统的理念为一切皆文件,设备文件:关联至一个设备驱动程序,进而能够跟之对应的硬件设备进行通信设备号码: 主设备号:major number标识设备类型 次设备号 minor number标识设备类型设备类型:块设备:block,存取单位块,磁盘 字符设备:char
1、匹配root行,加-e为扩展正则表达式,不加为基本正则表达式2、删除root行,删除匹配root的行3、匹配网卡的ip地址4、打印尾行5、显示非#开头的行6、取目录名和基民7、磁盘空间使用率8、修改内核参数,如在fstab中添加增减等9、引用变量10、删除系统/etc/grub2.cfg文件中所有以空白开头的行首的空白字符11、删除/etc/fstab文件中所有以#开头,后面至少跟一个空白字符
sed(Stream editor)流编辑器,也叫行编辑器。sed是从管道或文件中读取一行,处理一行,然后输出一行,再处理一行,在输出一行,直到全部处理完成;每当处理一行时,会把当前处理行存储在临时缓冲区中,称为模式空间(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容打印到屏幕;特点:打开速度快,执行速度快。sed命令格式sed [option] ..
Veeam容灾演练场景模拟Veeam宕机场景,恢复Veeam,并将原来Veeam中已备份的机器还原到虚拟化环境上。部署安装Veeam服务器服务器配置对服务器进行系统安装、改名、加域等操作。Veeam软件安装在准备好的物理机上分别进行如下步骤,使用域管理员登陆,安装Veeam Backup & Replication角色。Veeam安装完成后,打开控制台并安装License许可。对接
1、安装工作,找到apache的官网,找到最新版本的apache下载链接,在github上找到下载链接2、使用wget命令将apache下载到本地3、使用tar命令将文件解压到服务器磁盘上4、进入到解压的目录中,查看makefile文件5、查看readme文件,提前准备先决条件6、安装先决条件7、执行buildconf生成configure配置文件出现问题,无法找到apr,需要去apache官网去
apt是ubuntu系统的包管理工具,类似于与yum,工作原理主要是访问/etc/apt/sources.list源列表进行下载安装;dpkg包管理器安装包 dpkg -i package.deb删除包,不会自动删除依赖 dpkg -r package删除包及配置文件 dpkg -P package列出当前已安装包 dpkg -l显示包的简要说明 dpkg -l
由上文表示,软件编译分为预处理-编译-汇编-链接4个步骤,并介绍了使用gcc命令将c语言的源代码编译成可执行文件,现实中的程序包由多个源码文件组成,本文介绍如何将多个源码文件编译成程序包;C/C++源码编译:使用make项目管理器进行编译,主要有 configure脚本-makefile.in-makefile相关工具:autoconf:生产configure脚本 &nb
企业中因安全及网络等因素考虑,需要自建yum仓库服务器,用于企业内部服务器安装软件,如企业内部服务器无外网权限等,本文介绍如何搭建yum仓库服务器,主要分为两种方式,1、使用镜像安装本地yum服务器 2、使用第三方源搭建yum服务器镜像搭建yum服务器1、安装httpd服务器,并启用[14:02:19root@LGW-Linux-7log]#yum install -y httpd
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号