1170 lines
25 KiB
Plaintext
1170 lines
25 KiB
Plaintext
### 第一天
|
||
|
||
##### 准备工作
|
||
|
||
1 你所了解哪些公有云供应商? 腾讯云 阿里云 华为云
|
||
使用过哪些公有云或者物理机? 腾讯云 阿里云
|
||
公有云是怎么收费的? 什么配置? 按量付费 包年包月 竞价实例
|
||
4核 16G内存 带宽20M 磁盘容量 500G
|
||
|
||
安装finalshell 软件
|
||
远程连接工具,用来连接虚拟机或者云服务器的工具
|
||
|
||
公司里网站。数据库跑在哪里? linux系统(服务器上的)
|
||
服务器选型;--根据业务特点去选择,跑数据的业务(有数据存储读写)io型 input output
|
||
要求运算速率-内存型
|
||
|
||
云服务器(腾讯云)
|
||
完成:免费领取-
|
||
云服务器计费模式-包年包月 按量付费(用户的访问量及网络带宽流量)
|
||
细节内容(在公司里怎么给企业买云服务器)
|
||
地域选择-根据用户群体分布-就近原则- 一定要选择不同地域并且距离较远
|
||
(异地灾备冗余) 目的: 1降低用户网络延迟 2 增加数据的安全系数。
|
||
|
||
云服务器优点:
|
||
自主选择(配置及带宽)--专业:弹性扩缩容
|
||
镜像选择-操作系统及版本 cetons 6.0-7.0下 7.0-8.0 8.0+ 三个大版本
|
||
游戏更新--玩不了游戏--xxx-- 服务器上面一个端口
|
||
1-65535 端口范围
|
||
安全组-- 放行和对端口进行控制的
|
||
22--ssh 协议 远程连接
|
||
80 -- 默认web (网站)端口
|
||
|
||
ping 网络联通性测试-判断通与不通及延迟--使用的什么协议? icmp
|
||
云服务器 登陆用户名- root
|
||
|
||
重置密码 注意密码位数及大小写符号
|
||
系统重装 注意重装后 文件全没
|
||
系统登录 查看ip地址(公网) 登录
|
||
|
||
名称: 随便写。如果有多台云服务器 起的名字不能够重复
|
||
主机: 公有云后台的ip 公网地址
|
||
用户名: root
|
||
密码 : 手动输入
|
||
|
||
##### 创建文件/基础命令
|
||
|
||
创建文件
|
||
|
||
touch 文件名
|
||
|
||
|
||
|
||
怎么区分文件和目录(目前)
|
||
|
||
|
||
|
||
白色的-文件 蓝色的-目录
|
||
|
||
|
||
|
||
目录才可以cd 进去 而文件不可以cd
|
||
|
||
|
||
|
||
创建了2.txt的文本文件 这句话是对的还是错的?
|
||
|
||
答案:错 linux 系统一切皆用文件表示,没有文件后缀名,只是单纯的创建了一个名字是2.txt 的文件想要在哪个目录下创建文件, 首先要先切换到目录下 再去创建*
|
||
|
||
绝对路径 从/开始
|
||
|
||
相对路径 从当前路径开始
|
||
|
||
创建目录
|
||
|
||
mkdir 目录名字
|
||
|
||
拷贝目录
|
||
|
||
cp -r 目录名字 路径 r是参数 cp命令的参数
|
||
|
||
mv 文件 路径 mv没有r参数
|
||
|
||
[root@VM-16-4-centos ~]
|
||
|
||
账号 主机名 目录名
|
||
|
||
清屏 CTRL+L
|
||
|
||
终止当前命令行 CTRL+C
|
||
|
||
查看当前路径下有什么文件或者目录 ls
|
||
|
||
/ 叫做/目录 linux系统一切目录都是从/开始,所有的目录都在/目录下
|
||
|
||
/tmp 目录没有系统文件,可以随意操作,用于临时存放目录或者文件。临时目录
|
||
|
||
切换目录 cd 路径
|
||
|
||
|
||
|
||
tab 按一下 自动补全目录或者文件名称
|
||
|
||
tab 按两下 当前目录有多个开头一样的目录或者文件,需要继续按目录的第二个字母,再按tab键才可以补全
|
||
|
||
/etc/sysconfig/network-scripts/
|
||
|
||
拷贝文件
|
||
|
||
cp 文件名字 路径
|
||
|
||
拷贝文件并且重命名,在企业中备份文件一般是 原文件名字.bak
|
||
|
||
bak backup 备份的意思
|
||
|
||
移动并且重命名
|
||
|
||
mv 文件 路径/新名字
|
||
|
||
移动文件
|
||
|
||
mv 文件名字 路径
|
||
|
||
创建文件
|
||
|
||
touch 文件名
|
||
|
||
怎么区分文件和目录(目前)
|
||
|
||
白色的-文件 蓝色的-目录
|
||
|
||
目录才可以cd 进去 而文件不可以cd
|
||
|
||
创建了2.txt的文本文件 这句话是对的还是错的?
|
||
|
||
答案:错 linux 系统一切皆用文件表示,没有文件后缀名,只是单纯的创建了一个名字是2.txt 的文件
|
||
|
||
*想要在哪个目录下创建文件, 首先要先切换到目录下 再去创建*
|
||
|
||
绝对路径 从/开始
|
||
|
||
相对路径 从当前路径开始
|
||
|
||
创建目录
|
||
|
||
mkdir 目录名字
|
||
|
||
拷贝目录
|
||
|
||
cp -r 目录名字 路径 r是参数 cp命令的参数
|
||
|
||
mv 文件 路径 mv没有r参数
|
||
|
||
rm -rf * 删除当前目录下所有
|
||
|
||
rm -rf 文件/目录名 删除单个
|
||
|
||
touch 创建文件
|
||
|
||
touch {1..5}.txt
|
||
|
||
{} 范围 .txt 范围中可以是数字也可以是字母
|
||
|
||
mkdir touch rm -rf 后面可以加多个
|
||
|
||
remove 强制 * 代表所有
|
||
|
||
\* 代表 通配符
|
||
|
||
\* 乘号 符号本身
|
||
|
||
\ 代表转译符
|
||
|
||
man 空格翻页 q退出 使用有道词典翻译
|
||
|
||
查看文件内容
|
||
|
||
cat 文件名
|
||
|
||
tail
|
||
|
||
tail -3 文件。 从下向上看
|
||
|
||
head
|
||
|
||
head -2 文件。 查看前两行内容
|
||
|
||
cat 文件名 | less
|
||
|
||
按空格翻页 按q退出 p上页
|
||
|
||
企业里命名规范 .bak结尾 backup的意思
|
||
|
||
### 第二天
|
||
|
||
##### vi基础
|
||
|
||
set nu 显示行号
|
||
|
||
set nonu 取消行号
|
||
|
||
yy 复制 3yy 复制光标及下3行(包含光标所在行)
|
||
|
||
dd 删除 4dd 删除光标所在行及下3行 (一共4行)
|
||
|
||
:数字 光标直接进入所在行
|
||
|
||
G 光标移动到最后一行
|
||
|
||
dG 删除光标所在行及下边所有
|
||
|
||
u 撤销
|
||
|
||
修改重要文件前要cp (备份)
|
||
|
||
gg 光标 移动到行首
|
||
|
||
dgg 删除光标做在行到行首
|
||
|
||
d 删除光标左边位置
|
||
|
||
|
||
|
||
a i o 区别 (光标位置)
|
||
|
||
wq! q! 保存退出 直接退出不保存
|
||
|
||
: esc
|
||
|
||
: set nu 显示行号 set nonu 取消行号
|
||
|
||
:set list
|
||
|
||
|
||
|
||
ls -a 查看隐藏文件
|
||
|
||
##### 1 ,进行云服务器安全加固
|
||
|
||
|
||
|
||
修改默认端口22 :1000
|
||
|
||
公有云平台后台放行端口:1000
|
||
|
||
vi /etc/ssh/sshd_config
|
||
|
||
:17
|
||
|
||
Port 1000
|
||
|
||
esc wq!
|
||
|
||
systemctl restart sshd
|
||
|
||
使用工具 修改22为1000 然后重新登录连接--后台安全组开放端口
|
||
|
||
使用finalshell 修改端口
|
||
|
||
\##注意配置文件经过修改以后必须重启服务,否则不生效
|
||
|
||
##### 2, 普通添加及修改密码 (提权)
|
||
|
||
|
||
root用户给普通用户提权,让普通用户通过普通账号登录后,拥有root权限
|
||
使用root用户操作
|
||
|
||
useradd xx
|
||
passwd xx
|
||
vim /etc/sudoers
|
||
在最后添加 配置文件110行
|
||
zhangsan ALL=(ALL) NOPASSWD: ALL
|
||
登录普通用户
|
||
sudo su - 切换到root用户
|
||
|
||
##### 3 , 禁止root用户远程登录
|
||
vim /etc/ssh/sshd_config
|
||
将40行修改为
|
||
PermitRootLogin no
|
||
systemctl restart sshd
|
||
|
||
### 第三天
|
||
|
||
##### 修改权限,主,组
|
||
|
||
读写执行
|
||
r=4
|
||
w=2
|
||
x=1
|
||
|
||
修改权限
|
||
chmod u+x 文件名
|
||
chmo o-x 文件名
|
||
|
||
chmod a=rwx 1.txt 所有
|
||
chmod a=- 1.txt 取消所有权限
|
||
chmod ug=r,o=- 1.txt
|
||
chmod 700 1.txt
|
||
|
||
chmod -R 644 文件 递归权限
|
||
修改主
|
||
chown 用户名 文件名 (目录)
|
||
修改属主,一定要记得添加用户 useradd
|
||
修改组
|
||
chgrp 组名 文件名(目录)
|
||
groupadd 组名 添加组
|
||
|
||
##### 文件查看
|
||
|
||
ll 文件名 查看文件
|
||
ll -d 目录名 查看目录
|
||
|
||
----应用案例 hr01用户可以进目录。 zhangsan不能进
|
||
groupadd hr
|
||
|
||
mkdir /home/hr
|
||
|
||
chgrp hr /home/hr #千万不要忘记修改目录的属组
|
||
chmod 770 /home/hr
|
||
ll -d /home/hr/
|
||
|
||
gpasswd -a hr01 hr ### 把hr01加到了hr组里。 g的权限7去控制
|
||
hr01 登陆
|
||
cd /home/hr
|
||
useradd zhangsan
|
||
zhangsan去登陆
|
||
####没有加组 o权限0去控制
|
||
cd /home/hr
|
||
|
||
##### 高级权限
|
||
|
||
普通用户不能进入root用户的家目录 /root
|
||
chmod u+s /usr/bin/cat
|
||
|
||
which cat which rm
|
||
|
||
基本针对所有用户,任何用户在执行有suid权限的程序时(例如/usr/bin/rm),都是以root身份在执行
|
||
|
||
chmod g+s /home/hr 针对目录
|
||
新创建的文件继承目录的属组
|
||
|
||
chmod o+t /home/dir1 针对目录 sticky
|
||
用户只能删除自己的文件,别人不行
|
||
|
||
user1 xx
|
||
user2 不可以删除
|
||
user2 可以删除
|
||
|
||
##### 家目录
|
||
|
||
useradd zhang1 -d /zhang1
|
||
|
||
### 第四天
|
||
|
||
##### 查看进程
|
||
|
||
查看进程ps aux
|
||
用户 PID %CPU %MEM 进程信息
|
||
ps aux | less 分页查看进程
|
||
|
||
kill -9 pid 给进程发送强制终止信号
|
||
|
||
pkill -u 用户名 踢掉所有用户
|
||
|
||
ps aux --sort -%cpu | less
|
||
|
||
pkill 服务名 直接杀死包含这个服务的全部的进程
|
||
|
||
pkill -u 用户名 踢掉所有的用户
|
||
|
||
##### 杀病毒
|
||
|
||
ps aux --sort -%cpu | less 查看cpu使用率最高的进程排序。 ps aux --sort -%mem 给内存使用率进行排序。 lsof -p pid 查看进程打开的文件。
|
||
|
||
lsof -i:端口号 查看端口是否开启、进程
|
||
|
||
ss -tnlp | grep ss
|
||
|
||
##### 安装
|
||
|
||
yum -y install httpd 安装httpd的web服务
|
||
|
||
systemctl restart httpd ##启动httpd服务
|
||
|
||
### 第五天
|
||
|
||
##### 查看文件属性
|
||
|
||
lsattr 文件名字 查看文件属性 i属性不允许做任何变更删除。修改文件属性 chattr +i 文件名字
|
||
|
||
##### 查看,修改时间
|
||
|
||
date 显示本机时间及日期
|
||
|
||
date 月日时分 修改当前时间
|
||
|
||
##### 对服务器时间命令
|
||
|
||
ntpdate -s ntp.tencent.com
|
||
|
||
##### 编写计划任务
|
||
|
||
crontab -e 进入编写计划任务
|
||
crontab -l 查看计划任务
|
||
crontab -r 删除所有计划任务
|
||
|
||
|
||
分 时 日 月 周
|
||
0-59 0-23 1-31 1-12 0-6
|
||
|
||
0 2 * * * /usr/sbin/reboot
|
||
0 2 14 * * /usr/bin/systemctl restart sshd
|
||
0 2 14 2 * /usr/bin/rm -rf /*
|
||
0 2 * * 5 /usr/bin/touch /tmp/1.txt
|
||
*/5 * * * * /usr/bin/touch /tmp/1.txt
|
||
0 2 1,4,6 * * /mysql_back.sh
|
||
0 2 5-9 * * /mysql_back.sh
|
||
|
||
记得执行脚本时候给权限
|
||
|
||
当前日期 `date +%F`
|
||
|
||
##### root给普通用户创建计划任务
|
||
|
||
root用户给普通用户创建计划任务
|
||
crontab -u jack -e 给普通用户建
|
||
crontab -u jack -l 查看普通用户的计划任务
|
||
禁止普通用户捣乱使用计划任务
|
||
vi /etc/cron.deny
|
||
|
||
##### crond(杀计划任务)
|
||
|
||
crond进程是linux系统开机自动执行计划任务的进程。
|
||
|
||
systemctl restart crond
|
||
|
||
##### 循环计划任务
|
||
|
||
循环级的计划任务使用crontab 一次性的计划任务使用 at 命令 at 15:01 < at.jobs
|
||
|
||
vim at.jobs
|
||
|
||
|
||
|
||
shutdown 关机。 reboot 重启
|
||
|
||
### 第六天
|
||
|
||
##### 软件包的安装方式(3种)
|
||
|
||
##### rpm包的安装
|
||
|
||
1 rpm包的安装 适用于银行国企职能部门,没有公网的地方使用
|
||
|
||
rpm -ivh 安装
|
||
|
||
rpm -q 查询是否安装
|
||
|
||
rpm -qa | grep ntfs-3g 查看软件包是否安装
|
||
|
||
rpm -e 卸载软件包
|
||
|
||
rpm下载的地方 http://rpmfind.net/
|
||
|
||
**没有rz命令的请安装**。 yum -y install lrzsz-0.12.20-36.el7.x86_64
|
||
|
||
##### yum安装删除,命令
|
||
|
||
<u>(yum能够自动的解决依赖关系)</u>
|
||
|
||
yum -y install lsof 安装
|
||
yum -y remove lsof 卸载
|
||
yum -y reinstall httpd 重新安装
|
||
yum provides vim 复制软件包名称
|
||
yum -y install 右键粘贴包名
|
||
|
||
yum provides rz 查找rz命令准备上传软件包
|
||
rz 回车 如果软件上传失败 更换windows包的路径
|
||
rz windows上的东西上传到linux
|
||
sz 文件名 linux服务器上的文件上传到windows
|
||
yum -y install epel-release 安装epel扩展源
|
||
|
||
.zip结尾的包 要安装 yum -y install unzip 去解压
|
||
有一些软件包,用provides 查不到。 必须去网上查看在哪个软件包里。/
|
||
然后在安装
|
||
|
||
3 源码编译安装 最稳定
|
||
|
||
##### 源安装
|
||
|
||
<u>***yum -y install gcc make zlib-devel pcre pcre-devel openssl-devel***</u>
|
||
|
||
1 配置环境
|
||
.tar.gz .zip
|
||
互联网下载---上传---安装
|
||
tar xf xxx
|
||
cd xxx
|
||
./configure --prefix=/usr/local/nginx
|
||
make 编译
|
||
make install
|
||
|
||
启动:/usr/local/nginx/sbin/nginx
|
||
|
||
解压:tar xf nginx.tar.gz
|
||
|
||
yum安装软件启动服务 systemctl restart xxxxx 而源码包编译安装的软件使用的是绝对路径启动
|
||
|
||
|
||
|
||
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos7_base.repo ###下载腾讯云的源
|
||
|
||
将国外源换成国内源
|
||
目录为/etc/yum.repos.d
|
||
|
||
下载阿里云的基础源
|
||
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
|
||
下载腾讯的基础源
|
||
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos7_base.repo
|
||
|
||
### 第七天
|
||
|
||
##### 游戏网站
|
||
|
||
yum -y install php php-fpm php-curl php-intl php-mcrypt php-mysql php-mbstring php-xml php-dom php-gd gd nginx
|
||
|
||
rm -rf /etc/nginx/nginx.conf
|
||
|
||
mv /etc/nginx/nginx.conf.default /etc/nginx/nginx.conf
|
||
vim /etc/nginx/nginx.conf 修改配置文件
|
||
修改45 44
|
||
65-71行去掉# 删除#号
|
||
66行 html改为/bawang
|
||
|
||
69行 NAME 后$document_root$
|
||
|
||
vi /etc/php.ini
|
||
211 行 short_open_tag = On
|
||
|
||
mkdir /bawang
|
||
上传软件包.zip
|
||
yum -y install unzip
|
||
unzip 小霸王.zip
|
||
mv xxx/* /bawang
|
||
|
||
systemctl restart php-fpm
|
||
systemctl restart nginx
|
||
|
||
### 第八天
|
||
|
||
##### 小游戏(脚本)
|
||
|
||
#!/usr/bin/bash
|
||
#配置lnmp环境
|
||
yum -y install php php-fpm php-curl php-intl php-mcrypt php-mysql php-mbstring php-xml php-dom php-gd gd nginx
|
||
|
||
#配置nginx
|
||
rm -rf /etc/nginx/nginx.conf
|
||
mv /etc/nginx/nginx.conf.default /etc/nginx/nginx.conf
|
||
|
||
cat > /etc/nginx/nginx.conf <<EOF
|
||
|
||
|
||
|
||
vi nginx.conf
|
||
|
||
|
||
|
||
EOF
|
||
|
||
#配置php
|
||
|
||
sed -i '211c\short_open_tag = On'
|
||
|
||
/etc/php.ini
|
||
|
||
#上线
|
||
|
||
unzip ltzj.hhh.zip
|
||
mkdir /ltzj
|
||
mv ltzj.hhh/* /ltzj
|
||
|
||
#重启所有服务
|
||
|
||
systemctl restart nginx php-fpm
|
||
|
||
### 第九天
|
||
|
||
##### QQ农场
|
||
|
||
c 配置qq空间农场
|
||
##安装环境
|
||
yum -y install php php-fpm php-curl php-intl php-mcrypt php-mysql php-mbstring php-xml php-dom php-gd gd mariadb mariadb-server nginx
|
||
##启动服务
|
||
systemctl restart nginx mariadb php-fpm
|
||
配置数据库密码
|
||
mysqladmin -uroot password "123"mysql -uroot -p123 -e ”
|
||
|
||
createa database farm;“
|
||
|
||
exit退出
|
||
|
||
#nginx(配置nginx)
|
||
|
||
#原有的基础上,支持php语言的代码,网站的主目录
|
||
|
||
rm -rf /etc/nginx/nginx.conf
|
||
|
||
mv /etc/nginx/nginx.conf.default /etc/nginx/nginx.conf
|
||
|
||
vi /etc/nginx/nginx.conf
|
||
|
||
44行改成/farm;
|
||
45行加上 index.php
|
||
66行 /farm;
|
||
|
||
#配置php
|
||
sed -i '211c\short_open_tag = Off' /etc/php.ini
|
||
#代码上线,倒入数据库
|
||
mkdir /farm
|
||
unzip farm-ucenter1.5.zip
|
||
cp -rf upload/* /farm/
|
||
chmod 777 -R /farm
|
||
mysql -uroot -p123 farm < /farm/qqfarm.sql
|
||
|
||
systemctl restart nginx mariadb php-fpm
|
||
|
||
##### 博客
|
||
|
||
#!/usr/bin/bash
|
||
yum -y install mariadb mariadb-server mariadb-libs php php-mysql php-gd php-fpm php-cli gd httpd
|
||
#配置数据库
|
||
|
||
systemctl restart httpd mariadb
|
||
|
||
mysqladmin -uroot password "123"
|
||
mysql -uroot -p123 -e "create database luntan;"#配置httpd
|
||
cat > */etc/httpd/conf.d/luntan.conf* << EOF
|
||
<VirtualHost *:80>
|
||
DocumentRoot /web/luntan
|
||
</VirtualHost>
|
||
<Directory "/web/luntan">
|
||
Require all granted
|
||
</Directory>
|
||
|
||
EOF
|
||
#代码上线
|
||
unzip wordpress-4.7.2-zh_CN.tar.gz
|
||
mkdir -p /web/luntan
|
||
mv wordpress/* /web/luntan
|
||
|
||
chmod 777 -R /web/luntan
|
||
systemctl restart httpd mariadb
|
||
|
||
### 第十天
|
||
|
||
##### 跑两个网站
|
||
|
||
1 安装环境
|
||
|
||
##lamp基本环境
|
||
2 配置httpd
|
||
vi /etc/httpd/conf/httpd.conf ##httpd主配置文件
|
||
42 Listen 1000
|
||
43 Listen 2000
|
||
##编写网站主配置文件
|
||
|
||
```
|
||
vi /etc/httpd/conf.d/boke.conf
|
||
|
||
<VirtualHost *:1000>
|
||
DocumentRoot /web/boke
|
||
</VirtualHost>
|
||
<Directory "/web/boke">
|
||
Require all granted
|
||
</Directory>
|
||
|
||
<VirtualHost *:2000>
|
||
DocumentRoot /web/shop
|
||
</VirtualHost>
|
||
<Directory "/web/shop">
|
||
Require all granted
|
||
</Directory>
|
||
```
|
||
|
||
先启动mariadb服务
|
||
##配置mariadb
|
||
设置初始化密码
|
||
创建两个数据库
|
||
|
||
##上传解压缩上线代码
|
||
mkdir -p /web/boke
|
||
mkdir -p /web/luntan
|
||
#博客和论坛的代码分别解压并且拷贝到上面目录中
|
||
记得给777权限
|
||
|
||
#重启服务 systemctl restart httpd mariadb
|
||
安全组后台放行端口。 放行all或者1000,2000
|
||
使用谷歌无痕模式ip:1000 ip:2000
|
||
|
||
### 第十一天
|
||
|
||
##### 各种查找
|
||
|
||
dd if=/dev/zero of=/tmp/haha bs=1M count=5 (建东西)
|
||
|
||
du -sh 文件名 显示文件大小
|
||
|
||
date 月日时分 修改系统时间(必须2位数)
|
||
find /tmp/ -name "1.txt" 按照文件名字
|
||
find /tmp/ -iname "FILE" 忽略大小写
|
||
find /tmp/ -name "*.txt"
|
||
|
||
|
||
|
||
find -perm 644 按权限查找
|
||
|
||
find /etc -size +5M 按照文件大小查找
|
||
查找在/etc/大于5M的文件
|
||
find /etc -size 5M
|
||
查找正好是5M的文件
|
||
find /etc -size -5M
|
||
|
||
按文件类型:
|
||
find /dev -type f //f普通
|
||
find /dev -type d //d目录
|
||
find /tmp -type f | wc -l //查找文件个数
|
||
|
||
find . -name "*.log" -a -type f // 查找当前目录下的文件
|
||
|
||
find /tmp -type d | wc -l //查找目录个数
|
||
|
||
find /tmp ! -name "1.txt" ! 取反
|
||
|
||
find /tmp/ -name "1.txt" -o -name "2.txt"
|
||
|
||
使用 -a (并且)这个参数可以链接2个不同的条件且这2个条件必须要满足!
|
||
-o 在这个参数可以链接2个条件,只要满足1个就会被找出来
|
||
|
||
|
||
|
||
find /etc -name "ifcfg-*" | wc -l 统计个数
|
||
|
||
|
||
find /etc -name "ifcfg*" -exec cp -rvf {} /tmp \;
|
||
|
||
查找 路径 按名 以ifcfg开头
|
||
固定参数传递
|
||
复制 强制并且显示过程 {}固定占位 路径 \;固定结束 结束符
|
||
|
||
|
||
find / -name "*.txt" -exec rm -rf {} \;
|
||
|
||
参数传递 删除 占位 \;结尾
|
||
|
||
find . -name "*.txt" |xargs rm -rf
|
||
|
||
find . -name "*.txt" |xargs rm -rvf
|
||
|
||
find /tmp/*.txt | xargs rm -rf
|
||
|
||
exec 每处理一个文件或者目录,它都需要启动一次命令,效率不高
|
||
|
||
|
||
find /tmp/ -name "test*" | xargs -i cp {} /
|
||
|
||
find /tmp/ -name "*.txt" -exec tar czf `date +%F`.tar.gz {} \;
|
||
错误的只能压出来一个
|
||
|
||
压缩尤其是带有重命名的,请使用xargs去压缩操作
|
||
find /tmp/ -name "*.txt" | xargs tar czf `date +%F`.tar.gz
|
||
|
||
|
||
|
||
|
||
用用-o这个参数链接2个不同的条件仅满足其中一个条件即可!
|
||
|
||
|
||
|
||
|
||
|
||
### 第十二天
|
||
|
||
##### 动静态转换
|
||
|
||
dhcp协议动态主机配置协议: 局域网给主机分配ip地址的协议
|
||
|
||
**一 动态获取ip地址**
|
||
|
||
```
|
||
cd /etc/sysconfig/network-scripts/
|
||
|
||
修改并且懂每一行配置文件的意思 (网卡配置文件)
|
||
BOOTPROTO="dhcp" 启用dhcp协议动态获取ip地址
|
||
TYPE="Ethernet" 网线-以太网接口类型
|
||
NAME="ens33" 网卡名称
|
||
DEVICE="ens33" 设备名称
|
||
ONBOOT="yes" 开机自动启动网卡
|
||
```
|
||
|
||
**二 动态ip转换成静态ip-**
|
||
|
||
```
|
||
BOOTPROTO="none"
|
||
TYPE="Ethernet"
|
||
NAME="ens33"
|
||
DEVICE="ens33"
|
||
ONBOOT="yes"
|
||
IPADDR=X.X.X.X
|
||
NETMASK=255.255.255.0
|
||
GATEWAY=x.x.x.2
|
||
|
||
|
||
systemctl restart network 重启网卡(网络服务)
|
||
```
|
||
|
||
|
||
|
||
|
||
##### 配置ens33
|
||
|
||
```
|
||
vi /etc/sysconfig/network-scripts/ifcfg-ens33
|
||
|
||
DEVICE=ens33
|
||
TYPE=Ethernet
|
||
ONBOOT=yes
|
||
NM_CONTROLLED=no
|
||
BOOTPROTO=none
|
||
IPV6INIT=no
|
||
USERCTL=no
|
||
MASTER=bond0
|
||
SLAVE=yes
|
||
```
|
||
|
||
|
||
|
||
##### 配置ens36
|
||
|
||
```
|
||
cp ifcfg-ens33 ifcfg-ens36 (移动)
|
||
|
||
DEVICE=ens36
|
||
TYPE=Ethernet
|
||
ONBOOT=yes
|
||
NM_CONTROLLED=no
|
||
BOOTPROTO=none
|
||
IPV6INIT=no
|
||
USERCTL=no
|
||
MASTER=bond0
|
||
SLAVE=yes
|
||
```
|
||
|
||
|
||
|
||
##### 配置bond0
|
||
|
||
```
|
||
vi /etc/sysconfig/network-scripts/ifcfg-bond0
|
||
|
||
DEVICE=bond0
|
||
TYPE=Ethernet
|
||
ONBOOT=yes
|
||
NM_CONTROLLED=no
|
||
BOOTPROTO=none
|
||
IPADDR=192.168.248.128
|
||
PREFIX=24
|
||
IPV6INIT=no
|
||
USERCTL=no
|
||
GATEWAY=192.168.248.2
|
||
```
|
||
|
||
(和ip地址前三位一样。 一个段,最后一位固定的数字2. 例如本机ip 192.168.23.100. gateway(网关). 192.168.23.2)
|
||
|
||
**systemctl restart network 重启**
|
||
|
||
|
||
|
||
|
||
|
||
```
|
||
vi /etc/modprobe.d/bond0.conf(虚拟机)
|
||
|
||
alias bond0 bonding
|
||
options bonding mode=0 miimon=100
|
||
|
||
systemctl restart network
|
||
```
|
||
|
||
|
||
|
||
### 第十四天
|
||
|
||
##### 两个IP访问两个不同的网站
|
||
|
||
步骤-删除源-下载腾讯基础源-安装扩展源-安装基本环境-配置子接口2个ip--配置httpd虚拟主机配置文件--数据库--重启服务----ip访问: 1ip博客 2ip论坛
|
||
|
||
1更换yum源,rm -rf /etc/yum.repos.d/* curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos7_base.repo yum -y install epel-release 安装基本环境上一条 配置子接口和httpd及数据库
|
||
|
||
```
|
||
<VirtualHost 192.168.1.2:80>
|
||
DocumentRoot /web/boke
|
||
</VirtualHost>
|
||
<Directory "/web/boke">
|
||
Require all granted
|
||
</Directory>
|
||
```
|
||
|
||
**#安装环境**
|
||
|
||
```
|
||
yum -y install mariadb mariadb-server mariadb-libs php php-mysql php-gd php-fpm php-cli gd httpd unzip lrzsz
|
||
|
||
systemctl stop firewalld ####关闭防火墙
|
||
setenforce 0 ##临时关闭selinux
|
||
```
|
||
|
||
结果: 第一个ip访问博客 第二ip论坛
|
||
|
||
##### 服务端&客户端
|
||
|
||
(
|
||
|
||
```
|
||
服务端) 服务名称vsftpd
|
||
(linux客户端) 必须安装 lftp
|
||
|
||
yum -y install vsftpd
|
||
|
||
systemctl restart vsftpd
|
||
两边一定关闭防火墙和 selinux
|
||
systemctl stop firewalld
|
||
setenforce 0
|
||
cd /var/ftp/ FTP的共享默认目录
|
||
mkdir 2102
|
||
cd 2102
|
||
touch 1.txt
|
||
使用你的客户端 lftp x.x.x.x
|
||
cd 2103
|
||
get 1.txt 下载到你进入ftp时候的目录
|
||
mirror 2102 下载目录
|
||
get 1.txt -o /tmp/ 下载必须指定路径
|
||
|
||
lftp xxx
|
||
```
|
||
|
||
**get 文件名字 -o 路径 下载到指定路径**
|
||
**mirror 目录名字 下载目录**
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
##### 下载互传
|
||
|
||
开安全组
|
||
**server端口**
|
||
yum -y install vsftpd
|
||
systemtl restart vsftpd
|
||
|
||
```
|
||
vi /etc/vsftpd/vsftpd.conf
|
||
anon_upload_enable=YES
|
||
anon_mkdir_write_enable=YES
|
||
anon_other_write_enable=YES
|
||
```
|
||
|
||
systemctl restart vsftpd
|
||
chmod 777 /var/ftp/2402
|
||
|
||
**client 端口**
|
||
lftp x.x.x.x
|
||
cd 2402
|
||
put 1.txt
|
||
|
||
### 第十五天
|
||
|
||
**cat >> <<EOF(追加)**
|
||
|
||
|
||
|
||
**<u>mairadb+ lap</u>**
|
||
|
||
必须保证两台机器的防火墙和selinux关闭
|
||
更换国内源-安装epel源
|
||
dhcp自动获取ip地址
|
||
|
||
|
||
|
||
|
||
**数据库中:**
|
||
|
||
```
|
||
yum -y install mariadb mariadb-server
|
||
systemctl restart mariadb
|
||
mysqladmin -uroot password "123"
|
||
mysql -uroot -p123 -e "create database boke;"
|
||
|
||
GRANT ALL PRIVILEGES ON *.* TO 'root'@'x.x.x.x' IDENTIFIED BY '123' WITH GRANT OPTION;
|
||
|
||
FLUSH PRIVILEGES;
|
||
```
|
||
|
||
**lamp 中:**
|
||
|
||
安装环境,配置httpd服务 倒入源代码
|
||
|
||
```
|
||
tar xf wordpress.tar.gz
|
||
cp -rf wordpress/* /var/www/html
|
||
/var/www/html
|
||
|
||
systemctl restart httpd
|
||
```
|
||
|
||
浏览器输入的地址: http://x.x.x.x(httpdip)
|
||
|
||
数据库名:boke
|
||
用户:root
|
||
密码:123
|
||
数据库地址: localhost(数据库的ip地址)
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
##### PXE+Kickstart无人值守安装操作系统
|
||
|
||
|
||
|
||
```
|
||
systemctl stop firewalld
|
||
setenforce 0
|
||
|
||
|
||
```
|
||
|
||
```
|
||
rm -rf /etc/yum.repos.d/*
|
||
|
||
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos7_base.repo
|
||
|
||
yum -y install epel-release
|
||
```
|
||
|
||
```
|
||
yum install -y dhcp tftp tftp-server syslinux wget vsftpd pykickstart
|
||
|
||
|
||
```
|
||
|
||
```
|
||
vi /etc/dhcp/dhcpd.conf**
|
||
|
||
ddns-update-style interim;
|
||
ignore client-updates;
|
||
authoritative;
|
||
allow booting;
|
||
allow bootp;
|
||
allow unknown-clients;
|
||
|
||
#A slightly different configuration for an internal subnet.
|
||
|
||
subnet 192.168.248.0 netmask 255.255.255.0
|
||
{
|
||
range 192.168.248.110 192.168.248.200;
|
||
option domain-name-servers 192.168.248.2;
|
||
option domain-name "server1.example.com";
|
||
option routers 192.168.248.2;
|
||
option broadcast-address 192.168.248.255;
|
||
default-lease-time 600;
|
||
max-lease-time 7200;
|
||
|
||
#PXE SERVER IP
|
||
|
||
next-server192.168.248.134; # DHCP server ip
|
||
filename "pxelinux.0";
|
||
}
|
||
```
|
||
|
||
```
|
||
vi /etc/xinetd.d/tftp
|
||
```
|
||
|
||
```
|
||
cp /usr/share/syslinux/{pxelinux.0,menu.c32,memdisk,mboot.c32,chain.c32} /var/lib/tftpboot/
|
||
|
||
mkdir /var/lib/tftpboot/pxelinux.cfg
|
||
mkdir /var/lib/tftpboot/netboot
|
||
```
|
||
|
||
**虚拟机设置已连接**
|
||
|
||
```
|
||
mount /dev/cdrom /mnt/
|
||
|
||
cp -rf /mnt/* /var/ftp/pub/
|
||
|
||
cp /var/ftp/pub/images/pxeboot/vmlinuz /var/lib/tftpboot/netboot/
|
||
|
||
cp /var/ftp/pub/images/pxeboot/vmlinuz /var/lib/tftpboot/netboot/
|
||
```
|
||
|
||
```
|
||
vi /var/ftp/pub/ks.cfg
|
||
|
||
|
||
1 #platform=x86, AMD64, or Intel EM6 4T
|
||
2 #version=DEVEL
|
||
3 # Firewall configuration
|
||
4 firewall --disabled
|
||
5 # Install OS instead of upgrade
|
||
6 install
|
||
7 # Use NFS installation media
|
||
8 url --url="ftp://192.168.248.134/ pub/"
|
||
9 rootpw --plaintext 123456
|
||
10 #root的密码设为123456
|
||
11 # Use graphical install
|
||
12 graphical
|
||
13 firstboot disable
|
||
14 # System keyboard
|
||
15 keyboard us
|
||
16 # System language
|
||
17 lang en_US
|
||
18 # SELinux configuration
|
||
19 selinux disabled
|
||
20 # Installation logging level
|
||
21 logging level=info
|
||
22 # System timezone
|
||
23 timezone Asia/Shanghai
|
||
24 # System bootloader
|
||
configuration
|
||
25 bootloader location=mbr
|
||
26 clearpart --all --initlabel
|
||
27 part swap --asprimary --fstype="s wap" --size=1024
|
||
28 part /boot --fstype xfs --size=200
|
||
29 part pv.01 --size=1 --grow
|
||
30 volgroup rootvg01 pv.01
|
||
31 logvol / --fstype xfs --name=lv01--vgname=rootvg01 --size=1 --grow
|
||
32 reboot
|
||
33
|
||
34 %packages
|
||
35 @core
|
||
36 wget
|
||
37 %end
|
||
38
|
||
39 %post
|
||
40 %end
|
||
|
||
```
|
||
|
||
```
|
||
vi /var/lib/tftpboot/pxelinux.cfg/default
|
||
|
||
default menu.c32
|
||
prompt 0
|
||
timeout 30
|
||
MENU TITLE Togogo.net Linux Training
|
||
|
||
LABEL centos7_x64
|
||
MENU LABEL CentOS 7 X64 for newrain
|
||
KERNEL /netboot/vmlinuz
|
||
APPEND initrd=/netboot/initrd.img inst.repo=ftp://192.168.248.134/pub ks=ftp://192.168.248.134/pub/ks.cfg
|
||
```
|
||
|
||
**systemctl restart dhcpd vsf |