此文檔用于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 官網
CEN操作用戶 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加上端口號 會看到下面畫面
image重定向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"
如下圖
imagevim /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的系統編碼 ;