此文档用于centOS7的相关学习
一 文件常用操作命令
关于根目录的一些简介
默认登录为root文件夹 用 ~ 符号表示
-
文档浏览
cd ../
返回上级目录
cd/
返回系统跟目录
cd~
进入root文件夹
cd 文件夹名字
进入该文件夹的一个文件夹
ls
查看当前文件夹的所有文件
ls -a
可以查看隐藏文件(.开头)
ls -l
该文件夹下文件信息(权限),可以简写为ll
2.文件操作
mkdir
创建文件夹
find 目录 参数
例: find /root -name 'test*'
查找名字包含test的文件
mv 目录名 新名字
重命名 也作用于 各种文件 也可用于剪切 mv 文件/目录名 目录名
cp -r 目录/文件名 目录名
拷贝 -r
代表递归 就是也拷贝该目录下的文件
rm -r
删除(需要确定)或者rm -rf
不需要确定 -f
代表强制执行
3.文件新建
touch 文件名
新建文件
4.文本查看编辑
cat/more/less/tail
文件查看 cat只看最后一屏 tail -f
对某个文件进行动态监控
vim 文件名
编辑文件 进入后 按i
键可以进编辑模式 esc
键退出编辑模式 :wq
退出并保存 :!q
退出不保存
5.解压压缩
在Linux中 打包文件一般是.tar
结尾,压缩文件一般是.gz
结尾 一般是两个同事进行的,所以一般打包并压缩的文件是.tar.gz
结尾
命令:tar -zcvf
打包并压缩
z
调用gzip
c
打包
v
显示运行过程
f
指定文件名
-示例1: tar -zcvf xxx.tar.gz aaa.txt bbb.txt ccc.txt
打包 a-b.txt为 xxx.tar.gz
- 示例2 tar -zcvf xxx.tar.gz /test/*
压缩test目录下所有文件
tar xvf
x
代表解压
tar xvf xxx.tar.gz
解压xxx 里面的所有文件到当前目录
tar xvf xxx.tar.gz /usr/aaa
解压xxx文件到 usr/aaa文件夹
6.文本搜索
pwd
显示当前所在目录
grep 要搜索的字符串 要搜索的文件
文件内容搜索 可以在后面加--color
对搜索文本进行标识 grep to sudo.conf --color
在sudo文件中搜索 to
|
管道命令 将前一个命令的输出作为本次目录的输入
ps -ef | grep
ps -ef
查看当前进程 , 查看当前进程并搜索
7.系统进程
kill -9 进程pid
杀进程
ifconfig
查看当前系统的网卡信息
ping
查看与某台机器的连接情况
netstat -an
查看当前系统的端口使用
8.关于文件的权限
lrwxrwxrwx
权限第一字母代表文件类型 d
:directory l
:link -
:file
三个为一组 r
:read w
:write x
执行
属主(user) | 属组(group) | 其他用户(other) |
---|---|---|
r w x | r w x | r w x |
4 2 1 | 4 2 1 | 4 2 1 |
chmod u=rwx,g=rw,o=r aaa.txt
改变aaa.txt的权限 创建者拥有 可读 可写 可执行 同组的拥有 可读 可写 其他用户只能可读
chmod
764 aaa.txt 参考上面表格
二 防火墙
-
cent7 :
systemctl status firewalld
查看防火墙状态
firewall-cmd --list-ports
查看开放端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
开启端口
命令含义 :
--zone 作用域
--add-port=80/tcp 添加端口 格式:端口/通讯协议
--permanent 永久生效
firewall-cmd --reload
重启防火墙
systemctl stop firewalld.service
停用防火墙
systemctl disable firewalld.service
禁用防火墙开机启动
重定向80端口到8080端口
firewall-cmd --zone=public --remove-port=80/tcp --permanent
firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080
firewall-cmd --reload
- cent6
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
开放80端口
/etc/rc.d/init.d/iptables save
保存配置
iptables restart
重启
chkconfig iptables on
三 相关软件安装
操作用户 root
-
软件管理命令
rpm
软件管理
rpm -qa |grep java
查看当前系统中是否安装java
rpm -e --nodeps 要卸载的软件
卸载软件 -
JDK安装
电脑上下载相关的jdk文件
使用winSCP软件将jdk-7u80-linux-x64.tar.gz上传到 /tmp文件夹中
cd /tmp
进入tmp目录
tar -zxvf jdk-7u80-linux-x64.tar.gz –C /usr/local
解压到/usr/local/jdk1.7.0_80
cd /usr/local
mv jdk1.7.0_80/ jdk
改个名字
vim /etc/profile
编辑环境变量在文件末尾加上
export JAVA_HOME=/usr/local/jdk
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
source /etc/profile
使配置文件生效
java -version
验证 , 出现下方文字说明成功
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)
-
tomcat安装
官网下载Tomcat 官网
操作用户 root
上传到tmp目录(其实是先检查jdk环境)
-
解压软件
cd /tmpl
进入目录
tar -zxvf apache-tomcat-7.0.88.tar.gz -C /usr/local
解压到/usr/local文件夹
cd /usr/local
mv apache-tomcat-7.0.88 tomcat
强迫症改个名字 -
启动tomcat
/usr/local/tomcat/bin/startup.sh
启动服务, 可能会有如下提醒,说明启动成功Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/local/jdk
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar :/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
ps -ef |grep tomcat
查看系统进程 -
修改防火墙
关于 centos 7 开启8080端口
firewall-cmd --permanent --add-port=8080/tcp
开启8080端口
firewall-cmd --reload
重启防火墙
http://192.168.3.234:8080/
你的centOS ip加上端口号 会看到下面画面
重定向80端口到8080端口(参考)
只是参考 本次没有使用
firewall-cmd --zone=public --remove-port=80/tcp --permanent
firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080
firewall-cmd --reload -
设置开机启动
一般教程到这里就完了 , 但是安装centOS就是为了tomcat , 所以配置一下开机启动
可以参考参考 CentOS7下利用init.d启动脚本实现tomcat开机自启动
(原文的代码中./etc/rc.d/init.d/functions 有空格导致脚本不能执行)- 但是失败了
最后使用下面的方法成功
参考链接操作用户 root
vim /usr/local/tomcat/bin/catalina.sh
建议用文本编辑器在
[ -z "$CATALINA_BASE" ] && CATALINA_BASE="$CATALINA_HOME"
这一行下面
添加CATALINA_PID="$CATALINA_BASE/tomcat.pid"
如下图
vim /usr/lib/systemd/system/tomcat.service
创建tomcat.service服务脚本
[Unit] Description=Tomcat After=syslog.target network.target remote-fs.target nss-lookup.target [Service] Type=forking Environment="JAVA_HOME=/usr/local/jdk" PIDFile=/usr/local/tomcat/tomcat.pid ExecStart=/usr/local/tomcat/bin/startup.sh ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/bin/kill -s QUIT $MAINPID PrivateTmp=true [Install] WantedBy=multi-user.target
[unit]配置了服务的描述,规定了在network启动之后执行,
[service]配置服务的pid,服务的启动,停止,重启
[install]配置了使用用户
然后:
systemctl start tomcat
启动tomcat服务
systemctl enable tomcat
设置开机启动
systemctl status tomcat
查看状态
systemctl stop / restart tomcat
停止或者重启服务器
systemctl disable tomcat
删除开机启动
如果
说明启动成功
下面是其他方案 , 感兴趣可以试一下
CentOS7下利用systemd机制实现tomcat开机自启动 的时候
如果出现 ,这样的错误
Job for tomcat.service failed because the control process exited with error See "systemctl status tomcat.service" and "journalctl -xe" for details
vim /usr/local/tomcat/bin/setclasspath.sh
手动增加环境变量
# Make sure prerequisite environment variables are set
export JAVA_HOME=/usr/local/jdk
export JRE_HOME=/usr/local/jdk/jre </pre>
如果没有错误 , 就不用管 , 但是这个方法在使用中 发现 Active: active (excited) 而且不能访问http://192.168.3.234:8080/
查询原因未果 , 所以尝试下面的方法 , 也可能是tomcat7和8不一样的缘故
其他
关于固定ip(静态ip)
- 找到/etc/sysconfig/network-scripts/文件夹 相关文件
vim /etc/sysconfig/network-scripts/ifcfg-eth0
也可能是 ``vim /etc/sysconfig/network-scripts/ifcfg-ens33`
- 修改下面内容
BOOTPROTO="static" #dhcp改为static
ONBOOT="yes" #开机启用本配置
IPADDR=192.168.7.106 #静态IP
GATEWAY=192.168.7.1 #默认网关
NETMASK=255.255.255.0 #子网掩码
DNS1=192.168.7.1 #DNS 配置
-
修改后效果
cat /etc/sysconfig/network-scripts/ifcfg-eth0
HWADDR="00:15:5D:07:F1:02"
TYPE="Ethernet"
BOOTPROTO="static" #dhcp改为static
DEFROUTE="yes"
PEERDNS="yes"
PEERROUTES="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_PEERDNS="yes"
IPV6_PEERROUTES="yes"
IPV6_FAILURE_FATAL="no"
NAME="eth0"
UUID="bb3a302d-dc46-461a-881e-d46cafd0eb71"
ONBOOT="yes" #开机启用本配置
IPADDR=192.168.7.106 #静态IP
GATEWAY=192.168.7.1 #默认网关
NETMASK=255.255.255.0 #子网掩码
DNS1=192.168.7.1 #DNS 配置
- 最后重启网络
service network restart
-
ip addr
查看效果最好在路由器侧对ip和mac静态绑定,以便后续恢复!
-
关机重启
halt
关机reboot
重启shutdown
关机 如果后面加上-r
可以重启now
在linux的/etc/sysconfig目录下有一个i18n的文件代表linux的系统编码 ;