发表于: 2017-09-12 23:31:22

1 819


一、今日完成

1.学习使用vim文本编辑器写shell 脚本,学会如下命令:

1)普通用户如果想要获得使用sudo的权限,需要透过visudo去编辑 sudoers 文件


在此处添加"userid ALL=(ALL) ALL",然后^O + ^X即可;

2)在linux上剪切文件或者文件夹与重命名,都是使用mv命令,这一点比较混,经常容易出错:

a.使用mv命令剪切文件

如需要将/home/wwwroot/sinozzz123/music/目录下的1.mp3文件剪切到/home/wwwroot/sinozzz123/abc目录下,执行下面的命令即可:

shell>  mv /home/wwwroot/sinozzz123/music/1.mp3   /home/wwwroot/sinozzz123/abc

b.使用mv命令剪切文件夹。

把/home/wwwroot/sinozzz123/soft文件夹剪切到/home/wwwroot/sinozzz123/abc目录下

shell>  mv /home/wwwroot/sinozzz123/soft   /home/wwwroot/sinozzz123/abc

c.使用mv命令剪切文件夹和文件

把/home/wwwroot/sinozzz123/photo/下的文件夹和文件剪切到/home/wwwroot/sinozzz123/abc目录下

# mv /home/wwwroot/sinozzz123/photo/*   /home/wwwroot/sinozzz123/abc


i.把/home/wwwroot/sinozzz123/index.htm重命名为/home/wwwroot/sinozzz123/index01.html

# mv /home/wwwroot/sinozzz123/index.htm       /home/wwwroot/sinozzz123/index01.html

ii.把/home/wwwroot/sinozzz123目录重命名为/home/wwwroot/sinozzz456

# mv /home/wwwroot/sinozzz123 /home/wwwroot/sinozzz456


如果不能谨慎操作,非常容易把剪切文件变成对它剪切到其他目录后重命名;如果发生在*.sh脚本上,最终得到的文件其内容与*.sh相比会发生异常的。


3)root用户使用vim新建一个*.sh文件后需要首先对它的权限进行修改,否则执行./*.sh,讲提示缺少许可;

chmod命令有两种用法:

文字设定法

  chmod [who] [+ | - | =] [mode] 文件名¼

  命令中各选项的含义为:

  操作对象who可是下述字母中的任一个或者它们的组合:

  u 表示“用户(user)”,即文件或目录的所有者。

  g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。

  o 表示“其他(others)用户”。

  a 表示“所有(all)用户”。它是系统默认值。

  操作符号可以是:

  + 添加某个权限。

  - 取消某个权限。

  = 赋予给定权限并取消其他所有权限(如果有的话)。

  设置mode所表示的权限可用下述字母的任意组合:

  r 可读。

  w 可写。

  x 可执行。

  X 只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x 属性。

  s 在文件执行时把进程的属主或组ID置为该文件的文件属主。方式“u+s”设置文件的用户ID位,“g+s”设置组ID位。

  t 保存程序的文本到交换设备上。

  u 与文件属主拥有一样的权限。

  g 与和文件属主同组的用户拥有一样的权限。

  o 与其他用户拥有一样的权限。

  文件名:以空格分开的要改变权限的文件列表,支持通配符。

  在一个命令行中可给出多个权限方式,其间用逗号隔开。例如:chmod g+r,o+r example

  使同组和其他用户对文件example 有读权限。

 数字设定法

  数字表示的属性的含义——0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加。所以数字属性的格式应为3个从0到7的八进制数,其顺序是(u)(g)(o)。

  数字设定法的一般形式为:

  chmod [mode] 文件名¼

目前看来,文字设定法更加直观易懂,执行“chmod a+rwx *.sh”即可赋予所有用户对该脚本的写、读、执行权限。  


shell script基本语法规则昨天已经总结,至于条件判断式、循环等功能目前没有过多精力去学习,留在以后慢慢消化;而tomcat中也提供了如下脚本,

其实实现的功能比较简单,但是调用的外部函数还是相当复杂。


2.安装nginx

1)正式开始前,编译环境gcc g++ 开发库之类的需要提前装好;ububtu平台编译环境使用以下指令

apt-get install build-essential

apt-get install libtool

2)选定源码目录 /usr/local/src

3)安装PCRE库

cd /usr/local/src

wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.41.tar.gz 

tar -zxvf pcre-8.41.tar.gz

cd pcre-8.41

./configure

make

make install

4)安装zlib库

cd /usr/local/src

wget http://zlib.net/zlib-1.2.11.tar.gz

tar -zxvf zlib-1.2.11.tar.gz

cd zlib-1.2.11

./configure

make

make install

5)安装ssl

cd /usr/local/src

wget https://www.openssl.org/source/openssl-1.0.21l.tar.gz

tar -zxvf openssl-1.0.21l.tar.gz

6)安装Nginx稳定版到 /usr/local/nginx 目录下

cd /usr/local/src

wget http://nginx.org/download/nginx-1.12.1.tar.gz

tar -zxvf nginx-1.12.1.tar.gz

cd nginx-1.4.1


./configure --sbin-path=/usr/local/nginx/nginx \

--conf-path=/usr/local/nginx/nginx.conf \

--pid-path=/usr/local/nginx/nginx.pid \

--with-http_ssl_module \

--with-pcre=/opt/app/openet/oetal1/chenhe/pcre-8.41 \

--with-zlib=/opt/app/openet/oetal1/chenhe/zlib-1.2.11 \

--with-openssl=/opt/app/openet/oetal1/chenhe/openssl-1.0.21lt


make

make install

需要注意执行./configure时候,每一行代码末尾的\不能省略,否则按下enter会直接变成告诉shell执行输入的选项,而不是起到换行作用。onfigure命令是用来检测安装平台的目标特征。它定义了系统的各个方面,包括nginx的被允许使用的连接处理的方法;执行结束时,它会创建一个Makefile文件。nginx的configure命令支持参数非常之多,官方文档提供了详细说明:https://nginx.org/en/docs/


7)安装成功后 /usr/local/nginx 目录如下,即说明安装成功

8)

6.启动

确保系统的 80 端口没被其他程序占用,运行/usr/local/nginx/nginx 命令来启动 Nginx

netstat -ano|grep 80

sudo /usr/local/nginx/nginx

最后在本地浏览器输入阿里云公网IP,出现Welcome to nginx! 即表明安装成功。


二、明日计划

学习如何配置和使用nginx


三、遇到问题

无。


四、收获

以上。


禅道:http://task.ptteng.com/zentao/task-view-10358.html

根据今天的进度看,周三完成提交任务3有风险;计划与师兄沟通申请延期。


返回列表 返回列表
评论

    分享到