版權聲明:歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置標出原文地址。 https://blog.csdn.net/wohiusdashi/article/details/81147059
本人與網上找到與上面一篇一模一樣(關於tomcat的安裝)的,但發佈於2015。
在此貼上鍊接 https://www.cnblogs.com/xdp-gacl/p/4097608.html
1.下載虛擬機及linux系統的鏈接
鏈接:https://pan.baidu.com/s/13_nnI_YlCtFMQbwKQIbsmg
提取碼:q4l8
(虛擬機軟件及linux安裝教程,以及xshell軟件。並沒有CentOS7)
dalao的鏈接
2.下載虛擬機
鏈接裏有虛擬機的軟件,貌似沒什麼特別需要注意的地方。按引導下載就好了,筆者寫筆記是時候裏搭建好已經很久了,印象不是很清楚了,抱歉。
選擇清華鏡像:http://mirrors.tuna.tsinghua.edu.cn/centos/7.5.1804/isos/x86_64/CentOS-7-x86_64-DVD-1804.iso
3.搭建linux
- 鏈接裏有CentOS7的安裝教程pdf,按照教程安裝就好了。設置好開機密碼。進入linux系統後,輸入賬號root與密碼,進入系統(密碼輸入時不會顯示)。
- 進入系統後,通過ifconfig可以查看自己的網卡ip段,得知自己ip段後,可以通過安裝鏈接裏的xsell來遠程鏈接linux,只需要輸入開機賬號和密碼,以及鏈接的ip地址就可以。xsell可以實現代碼段的複製粘貼。
- 如果查找不到自己的ip段,可能是因爲在虛擬機設置裏沒設置好網卡
- 可以打開虛擬機設置->網絡適配器->(選擇橋接模式或者NAT模式)
- 可能虛擬機網卡服務沒能開啓:在電腦中搜索服務–>檢查虛擬機的5個服務是否開啓。或者打開資源管理器,看看能否找到VMwore的5個服務,如果沒打開,就打開(反正就打開圖片中的服務就對了)。
- 可能linux中的管卡管理影響了你的網卡鏈接,在CentOS7中,新添加了一個networkmanager,用於網卡管理,但是如果對這個不懂,不知道怎麼操作的話,可以直接關閉這個網卡管理。(筆者通過方式3成功)
暫時關閉和永久關閉
systemctl stop NetworkManager systemctl disable NetworkManager
- CentOS7顯示的網卡類型可能是ens33,這與以往的網卡類型eth0不同,可能不使用與之前版本的某些服務,如果想將之改動的話,可以以下方式轉載自
- vim /etc/sysconfig/network-scripts/ifcfg-ens33
將NAME和DEVICE兩個屬性的值從ens33改爲eth0 - mv ifcfg-ens33 ifcfg-eth0
然後將文件名從ifcfg-ens33改爲ifcfg-eth0
-vim /etc/default/grub
禁用該可預測命名規則。對於這一點,你可以在啓動時傳遞“net.ifnames=0 biosdevname=0 ”的內核參數。這是通過編輯/etc/default/grub並加入“net.ifnames=0 biosdevname=0 ”到GRUBCMDLINELINUX變量來實現的。 - grub2-mkconfig -o /boot/grub2/grub.cfg
運行命令grub2-mkconfig -o /boot/grub2/grub.cfg 來重新生成GRUB配置並更新內核參數。 - 重啓電腦
- vim /etc/sysconfig/network-scripts/ifcfg-ens33
4.搭建jdk ,tomcat環境(筆者的方法)
- 安裝jdk
從jdk官網(百度)下載linux系統的jdk包(推薦下載時選擇契合自己使用的版本),下載後可以通過ftps或者lszrz方式上傳到linux系統,解壓到/usr/loval目錄下
設置環境變量 vim /etc/profile
在底下添加
檢查安裝(和window很像) 輸入:java -verisonexport JAVA_HOME=/usr/local/jdk0.8.0_181 export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$JAVA_HOME/bin:$PATH
本質上就是想window上配置jdk環境一樣,然後通過export設置爲全局變量(自己選好目錄不然報錯的) - 安裝tomcat
直接下載linux tomcat安裝包,解壓安裝就可以了
修改默認端口,則時修改conf目錄下的service.xml文件,找到端口設置修改(筆者認爲不難不寫了)
tomcat打開與關閉:使用bin目錄下的shell腳本 (./startup.sh)和(./shutdown.sh)
記得打開linux的tomcat相關的端口防火牆,纔可以訪問linux上的tomcat
firewall-cmd --zone=public --add-port=5121/tcp --permanent
#–zone 作用域
#–add-port=5121/tcp 添加端口,格式爲:端口/通訊協議
#–permanent 永久生效,沒有此參數重啓後失效
5.安裝mysql
yum方式:https://www.cnblogs.com/caoxb/p/9405323.html
- 下載mysql源安裝包
shell> wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm - 安裝mysql源
shell> yum localinstall mysql57-community-release-el7-8.noarch.rpm - 檢查mysql源是否安裝成功
shell> yum repolist enabled | grep “mysql.-community.” - 修改 vim /etc/yum.repos.d/mysql-community.repo源 ,改變默認安裝的mysql版本。比如要安裝5.6版本,將5.7源的enabled=1改成enabled=0。然後再將5.6源的enabled=0改成enabled=1即可。
- 安裝MySQL
shell> yum install mysql-community-server - 啓動MySQL服務
shell> systemctl start mysqld - 開機啓動
shell> systemctl enable mysqld
shell> systemctl daemon-reload - 修改root本地登錄密碼
1)查看mysql密碼
shell> grep ‘temporary password’ /var/log/mysqld.log
2)連接mysql
shell> mysql -uroot -p
3)修改密碼[注意:後面的分號一定要跟上]
mysql> ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘MyNewPass4!’;
或者:
mysql> set password for ‘root’@‘localhost’=password(‘MyNewPass4!’);
mysql> show variables like ‘%password%’; - 添加遠程登錄用戶
mysql> GRANT ALL PRIVILEGES ON . TO ‘caoxiaobo’@’%’ IDENTIFIED BY ‘Caoxiaobo0917!’ WITH GRANT OPTION;
6. redis
-
安裝
- 官網:https://redis.io/download
- 安裝異常處理來自
(1)若出現如下提示,則說明未安裝gcc,使用命令安裝gcc:yum install gcc
(2)若出現如下提示,則將make改爲make MALLOC=libc,推測是因爲編譯庫的問題。[root@localhost redis-4.0.11]# make cd src && make all make[1]: Entering directory `/root/redis-4.0.11 /src‘ CC adlist.o /bin/sh: cc: command not found make[1]: *** [adlist.o] Error 127 make[1]: Leaving directory `/root/redis-2.8.17/src‘ make: *** [all] Error 2
(3)make test錯誤[root@localhost redis-4.0.11]# make cd src && make all make[1]: Entering directory `/root/redis-2.8.17/src‘ CC adlist.o In file included from adlist.c:34: zmalloc.h:50:31: error: jemalloc/jemalloc.h: No such file or directory zmalloc.h:55:2: error: #error "Newer version of jemalloc required" make[1]: *** [adlist.o] Error 1 make[1]: Leaving directory `/root/redis-2.8.17/src‘ make: *** [all] Error 2
處理hadoop@stormspark:~/workspace/redis2.6.13/src$ make test You need tcl 8.5 or newer in order to run the Redis test make: *** [test] Error 1
(4)make test報錯wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz sudo tar xzvf tcl8.6.1-src.tar.gz -C /usr/local/ cd /usr/local/tcl8.6.1/unix/ sudo ./configure sudo make sudo make install
解決辦法*** [err]: Test replication partial resync: ok psync (diskless: yes, reconnect: 1) in tests/integration/replication-psync.tcl Expected condition '[s -1 sync_partial_ok] > 0' to be true ([s -1 sync_partial_ok] > 0) Cleanup: may take some time... OK make[1]: *** [test] Error 1 make[1]: Leaving directory `/usr/local/src/redis-3.2.1/src' make: *** [test] Error 2
1,只用單核運行 make test:
taskset -c 1 sudo make test
2,更改 tests/integration/replication-psync.tcl 文件:
vi tests/integration/replication-psync.tcl
把對應報錯的那段代碼中的 after後面的數字,從100改成 500。我個人覺得,這個參數貌似是等待的毫秒數。
這兩種方法都可以解決這個報錯。(筆者覺得第一種治標不治本,所以選了第二種,成功解決。)
修改鏡像地址
linux常用
防火牆
- 防火牆操作
如果想使用iptables服務
如果還不行,那就查看一下自己得網卡文件,修改其中得onboot爲yes 然後重啓服務systemctl stop firewalld systemctl disable firewalld yum install iptables-services touch /etc/sysconfig/iptables systemctl start iptables systemctl enable iptables systemctl stop iptables touch /etc/sysconfig/ip6tables systemctl start ip6tables systemctl enable ip6table vim /etc/sysconfig/iptables #添加80和3306端口 等等(自己配置) -A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT #80端口開放 -A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT #3306端口開放 -I INPUT -s 113.106.93.110 -p tcp --dport 8089 -j DROP #禁止指定IP訪問 8089 -I INPUT -s 113.106.93.110 -p tcp --dport 8080 -j ACCEPT #開放固定ipIP訪問 8080 #重啓防火牆使配置文件生效 systemctl restart iptables.service #設置iptables防火牆爲開機啓動項 systemctl enable iptables.service service iptables start #啓動服務 service iptables stop #停止服務 service iptables restart #重啓服務
使用CentOS7的操作vim /etc/sysconfig/network-scripts/ifcfg-ens32 修改其中的onboot爲yes 然後重啓服務 systemctl restart network.service
安裝firewalld和firewall-cmd 檢查防火牆狀態 firewall-cmd --stat 臨時開放ftp服務 firewall-cmd --add-service=ftp 永久開放ftp服務 firewall-cmd --add-service=ftp --permanent 關閉ftp服務 firewall-cmd --remove-service=ftp --permanent 配置防火牆在public區域永久開放http服務 firewall-cmd --permanent --zone=public --add-service=http 加入指定開放端口 firewall-cmd --add-port=1324/tcp 爲了讓之前的設定生效當然要重啓服務咯 systemctl restart firewalld 或者使用下面的命令免去重啓服務(防火牆策略配置後重新載入) firewall-cmd --complete-reload firewall-cmd --reload (這兩句功能相同) 檢查ftp服務的21端口是否開放 iptables -L -n | grep 21 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:21 ctstate NEW 查詢ftp服務啓用狀態 firewall-cmd --query-service ftp 查看當前規則 firewall-cmd --list-all 僅允許部分IP訪問本機服務配置 firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" \ source address="192.168.0.4/24" service name="http" accept" 僅允許部分IP訪問本機端口配置 firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" \ source address="192.168.0.4/24" \ port protocol="tcp" port="8080" accept" firewall-cmd --zone=public --add-port=3306/tcp --permanent 輸入命令,開通端口報錯, FirewallD is not running 開啓防火牆即可。 systemctl start firewalld
Linux組操作
出現的問題
- 解決pwd /could not retrieve mirrorlist
1.sudo vim /etc/sysconfig/network-scripts/ifcfg-ens33
2.將ONBOOT改爲yes,wq!保存退出
3.重新啓動網絡 $ service network restart