前言
这是我在昇腾CANN训练营的学习笔记
今天要讲的是关于Linux基础的一些操作命令
八、http 服务
1. http 服务
随着计算机与 Internet
技术的蓬勃发展,形形色色的 Web
站点成为直接面向用户的中坚力量。在各种网站服务器软件中,Apache HTTP Server
无疑是其中的佼佼者。
Apache
配置
在 server
上配置一个 web
站点 http://www.example.com
将文件 index.html
拷贝到 DocumentRoot
目录下
DocumentRoot
目录为/web
[root@server ~]$ yum -y install httpd
[root@server ~]$ mkdir /web
[root@server ~]$ chcon -t httpd_sys_content_t /web
[root@server ~]$ vim /etc/httpd/conf.d/www.conf
修改www.conf
配置文件
<VirtualHost *:80>
DocumentRoot "/web"
ServerName www.example.com
</VirtualHost>
<Directory "/web">
AllowOverride None
Require all granted
</Directory>
启动httpd
服务
[root@server ~]$ systemctl enable httpd
[root@server ~]$ systemctl start httpd
[root@server ~]$ firewall-cmd --permanent --add-service=http
[root@server ~]$ firewall-cmd --reload
九、脚本
1. 创建定时备份脚本
在 server
上编写/root/filebk.sh
脚本
要求
备份并压缩
/etc
目录的所有内容,存放到/root/bak
目录,存放的形式2019-06-10_etc.tar.gz
#!/bin/bash
Date=$(date +%F)
BKDir=/root/bak
[ ! -d $BKDir ] && mkdir -p $BKDir
cd /
tar czf $BKDir/${Date}_etc.tar.gz etc
要求
在每月第一天
2:30
分自动完成备份
[root@server ~]$ crontab -e
30 2 1 * * /root/filebk.sh &>/dev/null
2. 创建脚本判断文件是否存在
在 server
上创建判断备份目录是否存在脚本/root/backdir.sh
运行脚本时带的参数是一个已经存在的目录时
如
/root/backdir.sh /opt
,则输出:
backup directory already exist.
不做任何操作
#!/bin/bash
if [ $# -ne 1 ] ;then
echo “Usage:/root/backdir.sh dir”
exit
fi
运行脚本时带中参数是一个不存在的目录时
如
/root/backdir.sh /aaa
,则输出:
backup directory is not exist,will make it.
并创建该目录
if [ -d $1 ];then
echo “backup directory already exist.”
运行脚本时如果参数错误则输出
Usage:/root/backdir.sh dir
else
echo “backup directory is not exist,will make it.”
mkdir -p $1
fi
有关编写脚本的详细教程和更多知识,留意明天的Shell脚本和编程笔记吧~
十、源码编译安装
Step By Step 一步步安装
# 0. 解压源码包
tar -xvf 源码.tar.xz
cd ./源码
# 1. Configure 配置
./configure --prefix=[路径] # 不指定路径默认安装到/usr/local
# 2. Make 编译
make
# 3. Install 安装
make install
# 如果安装不成功,重新安装需要先清理编译的文件
make clean
One Command 一步到位
./configure && make && make install
-
configure
配置这一步是配置,一般用来生成
Makefile
,为下一步的编译做准备,可以通过在configure
后加上参数来对安装进行控制./configure --prefix=[路径] # --prefix 指定安装路径 # --sys-config 指定配置文件路径 # --help 查看帮助
程序各部分安装路径
- 执行文件 =>
[路径]/bin
- 资源文件 =>
[路径]/share
- 库文件 =>
[路径]/lib
- 配置文件 =>
[路径]/etc
默认路径为
/usr/local
下*注意: *如果不配置
--prefix
选项,安装后比较凌乱 - 执行文件 =>
-
make
编译这一步就是编译,大多数的源代码包都经过这一步进行编译 (有些
perl
或python
编写的软件需要调用perl
或python
来进行编译)可能遇到的错误:
make ***
没有指明目标并且找不到makefile
, 停止。问题很明了,没有Makefile
,怎么办,原来是要先./configure
一下,再make
-
make install
安装这条命令来进行安装
(有些软件需要先运行
make check
或make test
来进行一些测试) 指定文件安装位置:make install PREFIX=[路径] install # 指定安装路径 # prefix默认是/usr/local # make install 和 make install prefix=/usr/local 等价 make install DESTDIR=[路径] install # 指定程序所有文件存放的位置(防止污染系统目录) # 安装到临时目录,该目录不是运行包的位置 # 没有该目录则自动创建 make install prefix=[路径2] destdir=[路径1] sysconfdir=[路径3] # 编译的文件会放在 [路径1]/[路径2]/ 下 # 执行文件 => [路径1]/[路径2]/bin # 库文件 => [路径1]/[路径2]/lib # 头文件 => [路径1]/[路径2]/include # 配置文件 => [路径1]/[路径3]
注意:此步骤不是必须的,因为在上一步
make
命令中就已经编译出了可执行的文件了,此时的make install
只是为了安装到系统中常用的位置上,因为从那个目录下运行程序有些不便