liunx详解-2
安装配置
虚拟机配置 1G 内存,1 核 CPU,50G 硬盘,网络地址转换(NAT,主机作为路由构建内网)
镜像文件:http://mirror.nsc.liu.se/centos-store/
安装过程:
-
跳过硬件检测
-
设置账号密码 root(123456),
-
硬盘分配:引导分区 /boot ext4 200M;交换空间 swap 2G ;剩余分配根目录
-
vi /etc/sysconfig/network-scripts/ifcfg-eth0 IPADDR 与 GATEWAY 与主机的子网地址前三位相同 IPADDR 最后一位地址不能为是 0-2,GATEWAY 最后一位为 2
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.31.200
NETMASK=255.255.255.0
GATEWAY=192.168.31.2
DNS1=114.114.114.114 -
rm -rf /etc/udev/rules.d/70-persistent-net.rule 移除网卡配置
-
service network restart 重启网卡
系统配置
关防火墙
-
service iptables stop(关闭)
-
service iptables status(查看是否关闭)
-
chkconfig iptables off(取消自动启动)
关闭软件安装检测
-
vi /etc/selinux/config
-
修改 SELINUX=disabled
-
sestatus -v 查看是否已经关闭
修改主机名
vi /etc/sysconfig/network
时间同步配置
-
date 查看当前时间 参数 -s 能够手动设置时间
-
yum install ntp -y 安装 ntp 服务器
-
ntpdate cn.ntp.org.cn 指定 ntp 服务器自动时间校准
系统服务初始化
文件目录 /etc/inittab
一般配置为 3(多用户网络模式)
其他:5 图像化模式 ,6 重启,1 表示 root 单机
多机克隆配置
-
ip 修改并移除网卡配置
-
主机名修改
多机免密钥设置
本地 DNS 解析
-
/etc/hosts 记录本机与联网机的 IP 和主机名
-
主节点记录 ip 与对应的主机名,scp 到各主机
-
win 中的路径是 C:\Windows\System32\drivers\etc\hosts
配置已知主机
~/.ssh/konwn_hosts
-
主机首次连接未知主机时,会在 konwn_hosts 中记录所连接的主机信息,第二次连接时,不再需要 yes 确认
-
ssh 各主机获取 konwn_hosts,将 konwn_hosts 文件 scp 各主机
密钥处理
生成密钥
-
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
-
私钥 ~/.ssh/id_rsa
-
公钥 ~/.ssh/id_rsa.pub
-
rsa 非对称加密
公钥发送
root/.ssh/authorized_keys 文件中存入公钥
-
预先配置 hosts 和 konwn_hosts
-
主节点获取所有节点的公钥
scp root@node01:~/.ssh/id_rsa.pub pub01
scp root@node02:~/.ssh/id_rsa.pub pub02 ......
-
将公钥存入 authorized_keys 文件
cat ~/.ssh/id_rsa.pub >> root/.ssh/authorized_keys
cat ~/.ssh/pub01 >> root/.ssh/authorized_keys
cat ~/.ssh/pub02 >> root/.ssh/authorized_keys ......
-
将主节点的 authorized_keys 文件共享
scp root@basenode:~/.ssh/authorized_keys ~/.ssh/authorized_keys
免密钥推荐处理方式
-
生成各自秘钥
-
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
-
-
将秘钥拷贝给对方
-
ssh-copy-id root@node1 ~/.ssh/id_rsa.pub
-
ssh-copy-id root@node2 ~/.ssh/id_rsa.pub
-
ssh-copy-id root@node3 ~/.ssh/id_rsa.pub
-
-
各主机相互连接,避免 yes
-
ssh 192.168.31.201
-
ssh 192.168.31.202
-
ssh 192.168.31.203
-
ssh node1
-
ssh node2
-
ssh node3
-
ssh localhost
-
ssh 127.0.0.1
-
环境变量
配置文件路径 /etc/profile
查看环境变量命令:echo $PATH (变量通过:间隔)
在 /etc/profile 中最后添加环境变量,再执行 source /etc/profile。
export PATH=/ 环境变量路径:$PATH
#例如:
export JAVA_HOME=/usr/java/jdk1.7.0_67
export PATH=$JAVA_HOME/bin:$PATH
yum 源配置
基于网络
-
安装 wget yum install wget -y
-
备份 ContOS-Base.repo
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup (改名备份)
-
下载新的 ContOS-Base.repo
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
-
清除原始 yum 缓存,生成新 yum 缓存
yum clean all
yum makecache
基于本地(了解)
-
将完整版 iso 载入虚拟机光盘
-
将光盘挂载到机器上 mount /dev/cdrom /mnt/cdrom
-
备份 ContOS-Base.repo,同上
-
修改 ContOS-Media.repo
vi /etc/yum.repos.d/ContOS-Media.repo
baseurl=file:///mnt/cdrom/
enabled=1 -
清除原始 yum 缓存,生成新 yum 缓存 (同上)
全局变量配置
查看全部变量
echo $PATH
-
结果为:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
-
通过冒号:分隔
-
命令执行先从当前目录查找,若无则在全部变量中查找,再无则提示未找到命令
添加全局变量
文件位置在 /etc/profile
-
找出需要配置全局变量的目录
-
export PATH=$ 目录:$PATH
-
执行 profile 文件:source /etc/profile
关于修改 jdk
在 /etc/profile 中配置了 JAVA_HOME 后,断开连接,重连 liunx 后,在执行 source /etc/profile,使得 JAVA_HOME 覆盖掉之间的 JAVA_HOME 路径
关于单用户的环境变量配置
~/.bash_profile 文件中进行配置,source 执行
软件安装
4 种安装方式
-
rpm 安装
用于安装 rpm 包
rpm -ivh xxx.rpm
rpm -q xxx 查询与 xxx 相关的软件
rpm -qa | grap xxx 查询与 xxx 相关的软件的详细信息
-
yum 安装
基于 rpm 的包管理器,能够处理查询 安装 卸载 更新 依赖
能够执行 yum 源修改,提高效率
主要命令:
直接安装 yum install 软件名 -y
多软件安装 yum install xxx1,xxx2 -y
查询软件 yum search 软件名
查询软件的依赖关系 yum deplist 软件名
查看已安装的文件 yum list
-
tar 安装
tar 解压安装 tar.gz 文件
tar -zvxf xxx.tar.gz 将文件解压到当前目录
解压后的软件一般放在 opt/sxt/ 目录下统一管理
tar -zcf xxx.tar.gz xxx 文件夹 将软件压缩为 tar.gz 包
-
源码安装
压缩包 --> 编译 --> 安装
-
解压 zip 文件 unzip xxx.zip 解压后会将解压的文件放在当前目录下,需要新建文件夹放置 xxx.zip 文件
jdk 安装
使用 jdk-7u67-linux-x64.rpm 本地文件安装
-
安装:rpm -ivh jdk-7u67-linux-x64.rpm
-
查找 jdk 路径
type java -->java is hashed (/usr/bin/java)
cd /usr/bin -->(java -> /usr/java/default/bin/java)
cd /usr/java/default -->(default -> /usr/java/latest)
cd /usr/java/latest -->(latest -> /usr/java/jdk1.7.0_67)
-
配置环境变量
vi /etc/profile
#也可以配置其他 jre 等内容
export JAVA_HOME=/usr/java/jdk1.7.0_67
export PATH=$JAVA_HOME/bin:$PATHsource /etc/profile 重新加载环境变量配置文件
Tomcat 安装
使用 apache-tomcat-7.0.61.tar.gz 包安装
-
tar -zxvf apache-tomcat-7.0.61.tar.gz 将文件解压到当前目录
-
mkdir /opt/sxt/ 创建软件安装目录
-
mv apache-tomcat-7.0.61 /opt/sxt/ 将解压文件移到软件安装目录中
-
vi /opt/sxt/apache-tomcat-7.0.61/webapps/ROOT/index 修改 index 页面便于显示
-
在 tomcat 的 bin 目录下 执行 ./startup.sh 启动 tomcat
-
测试 192.168.163.10:8080 是否显示预期页面
mysql 安装
-
yum search mysql 查找到要安装的软件:mysql-server.x86_64
-
yum install mysql-server.x86_64 -y 执行安装
-
service musqld start 启动 mysql 进程
用户密钥设置(mysql 命令要分号)
-
首次启动 mysql 命令:mysql
-
show databases; 查看数据库
-
use mysql;连接 mysql 库
-
show tables; 查看 mysql 库中的表
-
select host,user,password from user; 查看 mysql 库中 user 内表的数据
-
添加管理员
#设置用户名与密码
grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option; -
delete from user where host <> '%'; 删除多余用户
commit;
-
flush privileges; 刷新权限
-
exit;退出 mysql
-
再次登录
mysql -u 用户名 -p
再输入 123456 密码
-
确认连接成功后,使用 Navicat 连接数据库
关于 ssh 连接慢问题
错误原因:
Cannot determine realm for numeric host
解决方案:
修改本机的客户端配置文件 /etc/ssh/ssh_config
找到
GSSAPIAuthentication yes
改为
GSSAPIAuthentication no
虚拟机优化
减小虚拟机硬盘占用
-
dd if=/dev/zero of=/0bits bs=20971520
-
rm /0bits
-
... 待续
-