1 常用命令
1.1 创建文件夹
创建一级目录:mkdir 目录
创建多级目录:mkdir -p 目录
复制文件及文件夹:cp -rf 原文件(夹) 目标文件(夹)
删除文件及文件夹:rm -rf 文件(夹)(可用*做通配符)
移动文件及文件夹:mv -rf 原文件(夹) 目标文件(夹)
1.2 创建文件:
echo命令创建:echo 内容 >> 文件名
vi命令创建:
vi编辑命令:
vi命令进入命令模式,命令模式下操作:
复制一行:yy
粘贴:p
到尾行:G
删除:dd
显示行号:(:set nu)
用i、a、o、r进入输入模式,用esc输入模式回到命令模式
用:进入末行模式:
保存退出:wq
退出:q
强制退出,放弃修改:q!
返回命令模式:esc
1.3 在线下载命令:
Wget :
wget http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
1.4 rpm命令:
检查是否安装:rpm -qa|grep -i jdk
卸载:rpm -e --nodeps 包名
安装:rpm -ivh 包名
1.5 yum命令:
搜索:yum search 包名
安装:yum install 包名
删除:yum remove 包名
升级:yum upgrade 包名
1.6 执行文件:
执行的一般是sh结尾的脚本文件。且此文件必须有可执行权限
赋予权限:chmod -777 文件
执行文件:./startup.sh (./表示当前文件位置)
1.7 进程:
查看进程:ps -ef | grep tomcat
杀进程:kill -9 进程id
1.8 解压文件:
解tar包:tar -xvf 包名 (压缩:tar -cvf 压缩后包名.tar 被压缩文件(夹))
解tar.gz包: tar -zxvf 包名 (压缩:tar -zcvf 压缩后包名.tar.gz 被压缩文件(夹))
1.9 查看文件:
cat是一次性显示整个文件的内容,还可以将多个文件连接起来显示,它常与重定向符号配合使用,适用于文件内容少的情况;
more和less一般用于显示文件内容超过一屏的内容,并且提供翻页的功能。more比cat强大,提供分页显示的功能,less比more更强大,提供翻页,跳转,查找等命令。
1. 如果你只想看文件的前5行,可以使用head命令,如:
head -5 /etc/passwd
2. 如果你想查看文件的后10行,可以使用tail命令,如:
tail -10 /etc/passwd 或 tail -n 10 /etc/passwd
tail -300f /opt/tomcat7-csop/logs/catalina.out
参数-f使tail不停地去读最新的内容,这样有实时监视的效果 用Ctrl+c来终止!
1.10 配置环境变量:
环境变量位置:/etc/profile
使环境变量立即生效:source /etc/profile
查看环境变量:echo $JAVA_HOME
1.11 防火墙
配置文件位置:/etc/sysconfig/iptables
重启防火墙:service iptables restart
centos默认只开启22端口,提供远程ssh连接,其他端口若需要外部访问都需要手动配置
1.12 mysql:
最少安装一个服务端,一个客户端
默认不允许远程访问,需要开启远程访问权限
需要修改密码(安装时给一个默认的或者为空)
需要修改默认编码;
mysql的配置文件一般为/etc/my.cnf。如果找不到这个文件,就
复制/usr/share/mysql/my-medium.cnf或(my-default.cnf)文件到/etc目录
Mysq导入数据查看网址:http://jingyan.baidu.com/article/6fb756ec999116241858fbf0.html
1.13 mysql实现主从复制:
mysql的主从复制,一般结合代码的读写分离使用。从代码层次把读写进行分离,然后读的去读从数据库,写的往主数据库里边写。这样我们在创建索引时,只要在从数据库里边创建就可以了。这样既不影响主数据的插入效率,又不影响从数据库的查询效率。而主从数据库的同步,通过mysql本身的主从复制机制就可以实现;要求:主从服务器版本一致、初始化表和数据一致。首先修改主服务器master(配置文件:/etc/my.cnf),开启二进制日志、设置服务器唯一id,修改从服务器,也是这两个配置。重启两台服务器mysql,在主服务器上建立账户并授权slave可远程链接操作。配置从服务器,配置连接的主服务器ip、用户名、密码等,最后启动复制功能。还可以写一个shell脚本,用nagios监控slave的两个进程,进行短信或邮件报警
1.14 memcached:
memcached是一个高性能的分布式内存对象缓存系统,应用于数据库和应用服务之间,已减轻数据库负载。基于libevent库的事件处理,基于一个存储键/值对的hashmap;
redis和memcached一样,都属于内存内键值数据存储的方案,redis面世时间更晚且具备更多功能,因此开发人员通常将其视为默认性首选方案。不过有两类特殊场景仍然是Memcached的一家天下。
memcached优势:内存处理机制简单,处理元数据时所消耗的内存资源相对更少,效率更高;
redis支持数据持久化,Memcached基本只支持简单的key-value存储,不支持枚举,不支持持久化和复制等功能
Redis除key/value之外,还支持list,set,sorted set,hash等众多数据结构,提供了KEYS
1.15 Nginx
作用1:http服务器,网页静态服务器
作用2:虚拟主机。可以实现在一台服务器虚拟出多个网站。例如个人网站使用的虚拟主机。
作用3:反向代理,负载均衡。
Nginx 安装版默认配置文件位置:/etc/nginx/nginx.conf
1.16 crontab
linux下定时策略crontab
crontab -l 列出当前所有定时任务。
crontab -e 编辑该用户的定时任务
常用定时任务:
定时校正时间、定时数据库备份、定时文件备份、定时数据清理、定时数据同步、定时状态变更等(都应该可以想到一个对应案例)
1.17 nfs
NFS(Network File System)即网络文件系统;常常做共享服务器,实现服务器直接磁盘的挂载,类似与U盘的作用。
应用:集群时,多台服务器运行相同的应用,但是他们用的文件应该是统一的一套。可以通过nfs共享实现。
挂载命令:mount -t nfs 10.9.102.60:/opt/ workspace /opt/ workspace
取消挂载:unmounts /opt/ workspace
1.18 备份
数据库备份:xtrabackup 包括完全备份和增量备份
文件备份:rsync进行增量备份
1.19 负载均衡配置
首先进行jdk配置,
tongcat配置(条件有限,在服务器上需要配置2个Tomcat,正常在公司是需要一个服务器配置一个toncat的),
然后下载nginx进行配置(见linux服务器安装文档中介绍),
进行负载均衡配置:
方式一:① Vi /etc/nginx/conf.d (编辑配置文件),
②
以上配置成功后进行重启nginx(service nginx restart)
最后在浏览器中输入配置的ip地址,进行项目的访问,不再需要访问tomcat端口号了
一、报错解决方式:
①
解决方法:
②配置之后测试中浏览器报错“error.log”,立即去查看nginx报错日志
/var/log/nginx/error.log
日志中如果是以下错误
setsebool -P httpd_can_network_connect 1
方式二:
方式三:
1.20 nginx+tomcat+memcached集群
nginx:反向代理、负载均衡
tomcat:工程运行服务器
memcached:session共享
1.21 SSH远程登录
登录:ssh root@192.168.199.132 回车后,输入密码
登出:exit
远程复制scp:scp root@192.168.199.132:/opt/tools/solr-4.10.3.tgz.tgz solr-4.10.3.tgz.tgz
配置免密码登录:两台服务器直接互相简历信任,把自己生成的公钥给对方。
1.22 集群概念
集群就是把本来只需要一台服务器就可以运行的项目,用多台服务器来共同运行,每个服务器承担一部分压力;但是如果仅仅是简单的把一台服务器的压力均分給多台服务器,而每台服务器都同时做很多事情,这样的效率是最低的。如果加入分布式的理念,把服务器需要做的事情,分别部署,把服务器分成n组,每组都有各自的职能,这样就能更有效的利用资源。比如做缓存的服务器组,我们只需要内存配置高点,硬盘可以小点。文件服务器组我们就可以把硬盘配置高点,内存配置小点。
但是要想把一台服务器的事情,分担给多个服务器完成,我们需要很多东西要做。比如:session共享文件、负载均衡问题、文件共享问题、数据同步问题等等。目前最常用的集群是:keepalive+nginx+tomcat+memcached(redis)+nfs;
在这个里边,tomcat不用说是用来运行项目的。nginx就负责反向代理、负载均衡,他负责接收一个外边的请求,然后按照一定的规则,分配给各个tomcat服务器。memcached(redis)负责实现多个tomcat之间的session共享;nfs实现文件服务器的共享;keepalive做nginx集群,保证nginx的主从双击热备;
这个集群可以分为以下几个技术点:
1、 tomcat+memcached(redis)实现session共享
2、 nginx+tomcat反向代理
3、 keepalive+nginx双机主从热备
除上边技术以外,集群中常常用到的还有:
4、mysql主从复制(多台服务器分担mysql压力)
5、文件系统增量备份(保证文件服务器安全)
1.23 集群
1.24 Tomcat+memcached(redis)实现session共享
实现session共享,就是把tomcat的内存交给专门的缓存服务器memcached或redis管理,这个分两步就可以实现,1把memcached或redis的jar包,让人tomcat的lib下边。2、修改tomcat的conf/context.xml文件,在context标签直接加入manager配置。
详细配置过程见《Linux服务器安装文档》
1.25 keepalive+nginx实现双机热备
Keepalived是一个基于VRRP协议来实现的服务高可用方案,可以利用其来避免IP单点故障,类似的工具还有heartbeat、corosync、pacemaker。但是它一般不会单独出现,而是与其它负载均衡技术(如lvs、haproxy、nginx)一起工作来达到集群的高可用。
Nginx+Keepalived一般是一主一备,正常情况下都有主机的nginx绑定公网虚拟ip,提供 负载均衡服务。当主机宕机后,备机keepalive通过一个监测脚本,监控nginx,监测到以后,备机自动监管主机工作。当主机恢复以后,又交还给主机。
1.26 域名
域名需要到官方注册、申请。申请到以后,需要做域名解析,域名解析就是将域名重新转换为IP地址的过程,一个域名只能对应一个IP地址,而多个域名可以同时被解析到一个IP地址。域名解析需要由专门的域名解析服务器(DNS)来完成。
安装Linux必备知识点
最新推荐文章于 2021-06-15 09:59:45 发布