入门必备命令
命令格式:
命令 [选项] [参数]
必备命令
cd: 切换工作目录
- :表示刚才的工作目录
~ : 表示用户的家目录
. :表示当前目录
.. :表示上级目录
/ :表示根目录
pwd:打印工作目录
ls: 列出指定目录的内容
-a 显示所有文件包括隐藏的
-l 列表显示文件,会显示文件的所有信息,(ls -l <==> ll)
-h 更加人性化的显示文件(文件大小会出现K/M/G等)-lh
等价的=== ll=ls -l
ls -l 结果说明,按列表描述如下:
类型及权限 | 引用数 | 用户 | 组 | 大小 | 月 | 日| 年/时间 | 名称
文件类型说明:
-:普通文件
d:目录文件
b:块设备
c:字符设备
l:链接
s:套接字
p:管道
ping :一般用于检测网络是否连通,后可跟IP地址或域名(ping www.baidu.com)
ifconfig:查看网卡信息
终端编辑工具:vi/vim、emacs等
基本介绍:vim是vi的扩展,被称为终端编辑器之神
软件安装:yum install -y vim
工作模式:
一、正常模式
0、使用格式说明 vim 文件名
若文件已存在,则会直接打开
若文件不存在,则会新建,若不修改则不会创建空文件
vim 文件名 +n 直接打开时进入第N行
1、主要用于浏览或修改文本内容
2、使用vim打开文件的默认模式
3、在任意模式下按Esc按键即可进入该模式
二、编辑模式
主要用来向文本添加内容,也叫插入模式
正常模式下输入以下字符都可以进入该模式
i:在光标所在字符前开始输入文字
r:在行首指第一个非空白字符处开始输入文字
a:在光标所在字符后开始输入文字
A:在行尾开始输入文字
o:在光标所在行的下面单独开一新行来输入文字
O:在光标所在行的上面单独开一新行来输入文字
s:删除光标所在的字符并进入插入模式
S:删除光标所在行并进入插入模式
三、命令模式
主要用来管理文件或设置vim,如:保存,退出,放弃等,而不是修改文件内容
在正常模式下,输入‘:’即可进入命令模式,由于操作都是在一行完成,因此也叫单行模式
保存文件 :w
退出软件 :q
保存退出 :x,等价于wq,等价于正常模式下的shfit+zz
强制操作 :!
放弃修改 :e!
四、可视模式
v:可视块模式
V:可视行模式
五、复制粘贴
yy:复制光标所在行
六:撤销
反撤销:ctrl+r
撤销:u
七:查找
‘:’或者‘?’+需要查找的内容
‘:%s/查找的内容/替换内容/g(全局替换)’
文件内容查看
cat:
作用:一次性顺序显示文件的所有内容
格式:cat file
tac:
作用:一次性倒叙显示文件的所有内容
格式:cat file
head:
作用:显示文件开头的若干行内容
格式:head -n file n为要显示的行数
tail:
作用:显示文件结尾的若干行内容
格式:head -n file n为要显示的行数
more:
作用:分页显示其他命令执行结果
格式:cat file | more
空格:一翻一屏幕
回车:一翻一行
q退出
文件整体操作
touch:创建普通文件
touch file
cp:拷贝操作
cp file 地点
rm:删除
rm file
如果不想出现提示rm -f file
mv:移动文件
mv file 地点
mv 地点/file ./file
mkdir:创建一个或多个文件夹目录
mkdir name
rmdir:删除目录
rmdir name
文件搜索定位
grep:
作用:通过规则表达式分析程序,是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。
格式:grep [选项] pattern [文件名]
选项:
-i:字母不区分大小写
-n:显示行号
说明:
1、pattern为所要匹配的正则表达式字符串
2、要用好grep这个工具,其实就是要写好正则表达式
实例:
grep ftp/etc/passwd
在/etc/passwd文件下查找包含‘ftp’字符的行:
grep ‘test’ d*
显示所有以d开头的文件中包含‘test’的行。
ls/bin | grep '^m'
通过管道过滤ls /bin输出的内容,只显示以m开头的行。
grep -i ‘hello world’ menu.h main.c
显示在menu.h和main.c文件中匹配‘hello word’的行,忽略大小写。
文件压缩及解压
gzip:压缩文件,会删除原文件
gzip file
gunzip:解压文件,会删除原文件
gunzip file
bzip2: 压缩文件,加-k可以保留原文件
bzip2 file -k
bunzip2 :解压,同上
tar:
说明:tar可将多个文件目录打包
选项:
-c:压缩
-x:解压
-z:使用gzip
-j:使用bizp2
-f:指定处理文件
-v:显示详细信息
-c:指定解压后存放文件的目录
实例:
tar -zcvf 123.tar.gz 1 2 3
使用gizp将 1 2 3压缩成123.tar.gz
tar -zxvf 123.tar.gz [-c/tmp]
使用gzip将123.tar.gz解压至/tmp目录
cp复制命令如果复制目录,需要加-r选项
进阶命令
df:查看磁盘空间 df -h
free命令:查看内存使用情况 free -m
head命令:查看一个文件的前n行,如果不指定n,默认显示前10行
语法:head -数字 文件路径
tail命令:查看一个文件的后n行,如果不指定n,默认显示前10行
语法:tail -数字 文件路径
动态查看文件的动态变花
tail -f 文件路径
less指令:查看文件,以较少的内容进行输出,按下辅助功能键(数字或者空格键)查看更多
less 文件路径
wc,命令:统计文件内容信息(行数,单词数,字节数)
wc -lwc 文件路径
date 显示日期
date +%F
权限管理linux 用户与用户组是兄弟操作
owner group others
权限: read write execute
查看权限
ls -l 路径 等价于ll
十位字符
第一位表示文档类型
drwx --- ---
设置权限(字母法)
chmod 选项 权限模式 文件路径或者文件夹
选项 -R:递归设置权限(文件夹类型)
u用户 g所属群体 o其他人 a所有人
+ 增加
- 减少
= 确定权限
rwx 读 写 执行
例如:
chmod u+x,g+rw,o+x 文件路径
chmod u=rx,g=rw,o=x 文件路径
数字形式设置权限 遵循421法则
例如:
chmod 754 文件名
属主和属组
1、chown:所属的用户(文件的主人)
chown username:groupname 路径
chown 用户名 文档路径
chown -R 用户名 文件夹
2、chgrp:所属用户组
上线流程
1.服务器购买
项目上线服务器必须是外网服务器
一般有两种情况,一种是真是服务器,一种是云服务器
阿里云
1、打开阿里官网登录选择产品。ECS云服务器,点击立即购买
2、选择地域,根据实际情况选择
3、一般内存1g cpu1 架构X86 分类根据自己情况来选择,
4、公司一般选择 内存64g cpu16
5、选择操作系统 centos 版本 6.9 64位 勾选安全加固
6、选择硬盘,默认送你40GB,可以加量
7、选择购买年限
8、点击下一步网络和安全密钥,网络类型和交换机全部默认
9、选择带宽,按流量付费,只要不是做视频网站,可以选择按流量计费
10、 下一步确认订单
11、完成后点击控制台,点击实例,远程终端链接公网IP
12、点击更多,重置密码,重启服务器,即可远程终端链接
购买域名部分
13、购买域名:阿里云产品里面找到域名注册
14、现搜索域名是否重复
15、选择.com后缀的,加入清单,立即结算,域名持有者为企业或者个人
16、进入控制台域名列表
域名备案(境外服务器不需要备案)
17、点击备案选择ICP备案系统,没有主体就新建主体
18、点击增加网站,填写备案服务号(控制台顶部获取,备案,备案服务号申请)
19、点击申请,复制服务号粘贴进去
20、用户下载一个图片,网站真实性核验单,打印,填写好上传到阿里云备案系统等待
21、拍照,备案幕布,上传照片,等待审核
22、通过则会收到备案号和备案密码(注销时用到)
域名解析
23、域名列表点击解析进入解析界面
24、添加解析,记录类型A和CNAME比较常见,一般上线项目是A记录
25、主机记录,可以加www或者不填
26、解析线路,默认
27、记录值 服务器IP地址(公IP地址)
28、ttl值默认,勾选同步默认
上传代码
29、此时使用上传工具 pscp filezlla ftp 上传到环境里的文件夹
配置环境
30、安装MYSQL
先确保计算机时间正确
源码包安装
tar -zxvf *.tar.gz
tar -jxvf *.tar.bz2
1、解压好后切换到源码(解压出来的)目录
2、配置(config/configure/bootstrap)-》编译(make/bootstrapd
)-》安装(make install/bootstrapd install)
指定安装路径 :--prefix=路径
需要依赖的路径:--with-PACKAGE=包所在路径
1、./config/configure/bootstrap --prefix=/usr/local/软件包名
2、make && make install /bootstrapd && bootstrapd install
二进制包安装rpm
挂载光盘
mkdir/mnt/dvd
mount/dev/sr0 /mnt/dvd/
rpm -ivh /mnt/dvd/Packages/软件名.rpm
yum安装需要联网
yum list 列出全部可以装的yum软件
yum search 名 搜索指定词的包
yum install 包名 :安装指定包
yum update 【包名】 :跟新指定包,不指定包名就全部更新
yum remove 报名 :删除指定包
安装mysql服务端
yum [-y可选,就不确认中途操作] install mysql-server
mysql初始化操作
service mysqld start
mysql_se 再按tab 选择
mysql_secure_installation
默认端口号3306
1、请输入当前root密码,如果没有就按回车,此密码不是linux密码
2、输入y设置数据库root密码
3、默认不允许
4、是否移除测试数据库,建议先不移除
5、是否重新加载权限表(当我们更改了mysql用户相关信息后就Y)
OK,初始化结束
mysql启动控制项
service mysqld start/stop/restart
进入mysql方式:mysql -u 用户名 -p 密码
退出方式:exit
mysql数据库存储位置/var/lib/mysql
配置文件:/etc/my.cnf
数据库备份与还原(在liunx命令行中执行不是mysql语句里面)
全量备份:mysqldump -u用户名 -p密码 -A > /备份储存路径/xxx.sql
指定备份:mysqldump -u用户名 -p密码 库名 > /备份储存路径/xxx.sql
多个库备份:mysqldump -u用户名 -p密码 --databases db1 db2 > /备份储存路径/xxx.sql
案例:每分钟备份1次test数据库
1、mkfile test.sh
2、vim test.sh
内部操作
filename="test_"`date +'%Y%m%d%H%m%s'`".sql"
mysqldump -u用户名 -p密码 库名 > /备份储存路径/$filename.sql
3、创建定时任务
crontab -e
#分 时 日 月 周
* * * * * 脚本路径
x退出
数据库还原操作
1、mysql 命令行:source 备份文件路径
2、系统命令:-u用户名 -p密码 < 备份文件路径
还原单个库的
mysql命令行:use 库名
source 备份文件路径
如果还原回去,中文全部是?,就设置连接字符集
mysql命令行:set names utf8;
项目上线实战(运维)
1、编译安装与卸载Nginx
1、下载nginx,官网,使用在服务器端下载的方式下载
右键复制链接地址
cd /uer/local/src/
2、 linux命令行:wget 地址
3、解压ngxin安装包
tar -zxvf 名称
4、进入nginx解压目录 cd ./文件夹名
5、配置、编译、安装
1、./configure --prefix=/usr/local/nginx --with-pcre --with-zlib=/usr/local/src/zlib源码包
如果报错pcre
yum install pcre-devel
如果报错缺少zlib
yum install zlib-devel
2、make
报错的话,就需要自己去下载zlib的源码包
3、make install
默认占用80端口
如果已经被Apache使用,需要先关掉Apache
service httpd stop
然后启动nginx:/usr/local/nginx/sbin/nginx
重启:/usr/local/nginx/sbin/nginx -s reload
卸载编译安装的软件
rm -rf 软件的安装目录
注意:卸载前先停止
阿里云安装php与apache
1、登录阿里云找到ecs实例里的IP地址(公)
2、远程连接软件自选(shell)
3、yum install php(默认依赖装apache)
4、启动apache
service httpd start
5、解决警告,无法确定主机fqdn,修改apache配置文件
find / -name httpd.conf
vim /etc/httpd/conf/httpd.conf
在里面搜索ServerName(276),去掉注释
重启apache
6、测试访问,地址栏中输入主机IP,直接访问
测试php是否运行,默认的apache站点目录/var/www/html/,
vim index.php
<?php
phpinfo();
?>
7、安装mysql
yum install mysql-server
初始化
启动
service mysqld start
mysql-secure-installation
回车
y
输入密码 回车
y
y
n
y
测试命令行登录
mysql -u用户名 -p
exit;
远程登录修改
update user set host = ‘%’where host = ‘127.0.0.1’;
重启mysql
阿里云上的安全组端口放行,允许3306 和80
navicat测试登录
8、项目上线
上传到/var/www/html/
使用filezilla 或者其他可以上传文件夹的软件上传
某些二次开发需要的后续操作(例如discuz论坛实例)
传完之后,打开网站,DZ安装向导
同意协议
给指定目录写权限:chmod 777 -R /var/www/html
看到mysqli—connect打叉,需要mysqli扩展
yum install php-mysqli
重启apache
service httpd restart
下一步
选择安装方式全新安装
下一步
配置mysql信息,根据自己需要修改用户名,密码,表前缀,系统信箱,
必填管理员账号,密码,管理员邮箱
下一步