狂神聲明 : 文章均為自己的學習筆記 , 轉載一定註明出處 ; 編輯不易 , 防君子不防小人~共勉 ! linux學習:【第3篇】遠程連接及軟體安裝 遠程連接 xshell , xftp軟體官網 : netsarang官網 Xftp : 遠程文件傳輸軟體 遠程協議使用SFTP , 埠 : 22 X ...
狂神聲明 : 文章均為自己的學習筆記 , 轉載一定註明出處 ; 編輯不易 , 防君子不防小人~共勉 !
linux學習:【第3篇】遠程連接及軟體安裝
遠程連接
xshell , xftp軟體官網 : netsarang官網
Xftp : 遠程文件傳輸軟體
- 遠程協議使用SFTP , 埠 : 22
Xshell : 遠程終端模擬軟體
- 遠程連接協議用SSH , 埠號 :22
虛擬機中linux查看主機IP命令 : ifconfig
註 : 真實伺服器可以從伺服器提供商處獲取ip(如:騰訊雲或阿裡雲)
啟動網卡命令 : ifconfig [網卡標識] up
關閉網卡命令 : ifconfig [網卡標識] down
重新獲取IP命令 : dhclient
Linux進程
Linux進程PID : Linux系統中的進程的唯一標識
Ps是linux中非常強大的進程查看工具,其中-e為顯示所有進程,-f為全格式顯示。
Grep是一個非常高效的查詢工具,可以查詢文本中帶有某關鍵字的行。
'' | '' : 管道符,可理解為前一個命令的輸出 , 作為後一個命令的輸入.
ps –ef |grep java
停止進程 : kill -9 [PID] (除了-9還有其他參數,大家可以自己百度)
服務相關命令 :
service 服務名 start 啟動服務
service 服務名 stop 停止服務
service 服務名 restart 重啟服務
service 服務名 status 服務狀態
...
Linux軟體安裝
- tar : 解壓安裝
- 安裝包格式 : tar , tar.gz , tar.bz
- 安裝軟體包 : tar -zxvf [ 包名 ]
- rpm : 直接安裝
- 安裝包格式 : rpm
- 安裝軟體包 : rpm -ivh 軟體包路徑
- 卸載軟體包 : rpm -e 軟體包全名
- yum : 線上安裝
- 安裝軟體包 : yum -y install subversion
- 卸載軟體包 : yum -y remove subversion
安裝JDK
利用rpm安裝
- 下載JDK的rpm軟體包 官網地址
- 檢測JDK是否安裝
- 查看已安裝JDK軟體包 : rpm -qa|grep jdk
- 卸載JDK : rpm -e [已安裝JDK軟體包]
- 安裝JDK軟體包
- rpm -ivh[軟體包目錄]
- 配置環境變數 , 修改/etc/profile文件
# vim /etc/profile 進入編輯 export JAVA_HOME=/usr/java/jdk1.8.0_201-amd64 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
- 測試配置文件
- 使用命令 : source /etc/profile讓配置文件生效
- 使用命令 : java -version檢測是否安裝成功
- 寫一段代碼試試吧
# cd kuangshen/Desktop/ 到桌面下 # vim HelloWorld.java 新建一個java public class HelloWorld { public static void main(String[]agrs) { System.out.println("HelloWorld!"); } } # 保存 # javac HelloWorld.java 編譯 # java HelloWorld 執行
安裝Tomcat
利用tar.jz解壓安裝
- 下載Tomcat 9 安裝包> 官網鏈接
- 將Tomcat解壓到指定目錄,並將文件名修改為Tomcat 9
# 我把文件解壓在 /www/server下 , 沒有的可以自己創建~ tar -zxvf apache-tomcat-9.0.14.tar.gz -C /www/server #解壓 cd /www/server #切換目錄 mv apache-tomcat-9.0.14/ tomcat9 #改文件夾名
- 使用sh命令啟動Tomcat
- 開啟伺服器8080埠
#查看防火牆狀態 firewall-cmd --state #開啟防火牆 systemctl start firewalld.service #開啟8080埠 firewall-cmd --zone=public --add-port=8080/tcp --permanent 解釋這個命令: --zone=public:表示作用域為公共的; --add-port=8080/tcp:添加tcp協議的埠8080; --permanent:永久生效,如果沒有此參數,則只能維持當前服務生命周期內,重新啟動後失效; # 重啟防火牆 systemctl restart firewalld.service # 輸入命令重新載入配置 firewall-cmd --reload
#查看開啟的埠列表
firewall-cmd --permanent --list-port - 用自己的電腦去訪問虛擬機中的tomcat , 可以訪問就成功了 !
安裝MySQL
Mysql去官網即可下載 mysql官網
- 安裝前,我們可以檢測系統是否自帶安裝 MySQL
rpm -qa | grep mysql #如果你系統有安裝,那可以選擇進行卸載 rpm -e mysql // 普通刪除模式 rpm -e --nodeps mysql // 強力刪除模式,如果使用上面命令刪除時,提示有依賴的其它文件,則用該命令可以對其進行強力刪除
- 我們使用yum命令安裝MySQL.(下麵實操筆記會說我遇到的坑!!!)
//yum下載,所以必須要有網路 //安裝MySQL的yum源 wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm rpm -ivh mysql57-community-release-el7-8.noarch.rpm //安裝MySQL yum -y install mysql-server //然後中間出現(Y/N)就一直Y就好了,到安裝完成 //預設配置文件路徑: //配置文件:/etc/my.cnf //日誌文件:/var/log/var/log/mysqld.log //服務啟動腳本:/usr/lib/systemd/system/mysqld.service //socket文件:/var/run/mysqld/mysqld.pid #我們需要去配置下/etc/my.cnf
- 關於取消強密碼驗證(大坑)
//[增加如下配置] server_id = 1 expire_logs_days = 3 validate_password=off default_password_lifetime=0 //保存! //重啟mysql服務 service mysqld restart //查看隨機密碼 grep "password" /var/log/mysqld.log //輸入密碼登錄,第一次登陸 ,需要重置密碼 要不什麼也不能操作 mysql -u root -p //踩過的坑啊,設置了好幾次。(重點) //mysql5.7之後,安全性大幅度上升。 //強密碼驗證的的配置如果你按照上面的方法去做,就已經解決了 //否則就需要去改配置文件,添加 validate_password=off 這是關閉強密碼插件,具體解釋繼續往下看. //進入mysql mysql> SHOW VARIABLES LIKE 'vali%'; //輸出 +--------------------------------------+--------+ | Variable_name | Value | +--------------------------------------+--------+ | validate_password_check_user_name | OFF | | validate_password_dictionary_file | | | validate_password_length | 8 | | validate_password_mixed_case_count | 1 | | validate_password_number_count | 1 | | validate_password_policy | MEDIUM | | validate_password_special_char_count | 1 | +--------------------------------------+--------+ 7 rows in set (0.01 sec) //根據官方文檔可以發現策略為1,即MEDIUM //5.7預設會安裝這個插件,若沒有安裝,則SHOW VARIABLES LIKE 'vali%'則會返回空。 //對應參數的value值也為預設值,以下是這些值的解釋 validate_password_length 8 # 密碼的最小長度,此處為8。 validate_password_mixed_case_count 1 # 至少要包含小寫或大寫字母的個數,此處為1。 validate_password_number_count 1 # 至少要包含的數字的個數,此處為1。 validate_password_policy MEDIUM # 強度等級,其中其值可設置為0、1、2。分別對應: 【0/LOW】:只檢查長度。 【1/MEDIUM】:在0等級的基礎上多檢查數字、大小寫、特殊字元。 【2/STRONG】:在1等級的基礎上多檢查特殊字元字典文件,此處為1。 validate_password_special_char_count 1 # 至少要包含的個數字元的個數,此處為1。
- 登錄成功後,修改密碼,刷新許可權,重啟
//修改強密碼(如果這個步驟有提示密碼太low了就回看上面寫的!) alter user 'root'@'localhost' identified by 'Kuang!!2019'; //最後記得刷新許可權; flush privileges ; //也可以 直接再添加新用戶 CREATE USER ‘root‘@‘%‘ IDENTIFIED BY ‘您的密碼‘;
//遠程連接需要打開授權開通3306埠 , 否則會報錯不被允許登錄;
//開埠和上面開8080步驟一樣;firewall-cmd --zone=public --add-port=3306/tcp --permanent; 註意刷新
grant all on *.* to 'root'@'%' identified by '123456' with grant option;
//增加root用戶指定可以任意IP登錄,如果想限制只能讓指定IP登錄請把%替換成IP地址 - 登錄成功,再說下會遇到的問題吧
//修改MySQL的登錄設置: #vi /etc/my.cnf //在[mysqld]的段中加上一句:skip-grant-tables 保存並且退出vi。 //重新啟動mysqld service mysqld restart //修改密碼 use mysql update user set password=password("123456") where user="root"; //mysql 5.7的資料庫沒有了password欄位 用的是authentication_string欄位 mysql> update mysql.user set authentication_string=password('root') where user='root' ; //刷新許可權 flush privileges; 修改密碼之後在改回來
遠程連接測試也通過,搞定!
安裝SVN
SVN (Subversion) : 版本控制系統
SVN特點 :
- 跨平臺
- 簡單 , 易用
中央倉庫 : SVN伺服器上文件的保存位置
工作空間 : 操作者下載到本地的文件的位置
利用yum安裝 , 安裝之前還是要查看是否已經安裝.我們這裡用阿裡雲遠程伺服器測試
- 安裝subversion伺服器端
yum -y install subversion
#一會就安裝好了,等待安裝完成即可(信息如下)[root@iZuf69s5ga2219syf1pqgpZ ~]# yum -y install subversion Loaded plugins: fastestmirror base | 3.6 kB 00:00:00 epel | 4.7 kB 00:00:00 extras | 3.4 kB 00:00:00 updates | 3.4 kB 00:00:00 (1/7): base/7/x86_64/group_gz | 166 kB 00:00:00 (2/7): epel/x86_64/group_gz | 88 kB 00:00:00 (3/7): epel/x86_64/updateinfo | 949 kB 00:00:00 (4/7): epel/x86_64/primary_db | 6.6 MB 00:00:00 (5/7): extras/7/x86_64/primary_db | 156 kB 00:00:00 (6/7): base/7/x86_64/primary_db | 6.0 MB 00:00:00 (7/7): updates/7/x86_64/primary_db | 1.3 MB 00:00:00 Determining fastest mirrors Resolving Dependencies --> Running transaction check ---> Package subversion.x86_64 0:1.7.14-14.el7 will be installed --> Processing Dependency: subversion-libs(x86-64) = 1.7.14-14.el7 for package: subversion-1.7.14-14.el7.x86_64 --> Processing Dependency: libsvn_wc-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64 --> Processing Dependency: libsvn_subr-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64 --> Processing Dependency: libsvn_repos-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64 --> Processing Dependency: libsvn_ra_svn-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64 --> Processing Dependency: libsvn_ra_neon-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64 --> Processing Dependency: libsvn_ra_local-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64 --> Processing Dependency: libsvn_ra-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64 --> Processing Dependency: libsvn_fs_util-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64 --> Processing Dependency: libsvn_fs_fs-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64 --> Processing Dependency: libsvn_fs_base-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64 --> Processing Dependency: libsvn_fs-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64 --> Processing Dependency: libsvn_diff-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64 --> Processing Dependency: libsvn_delta-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64 --> Processing Dependency: libsvn_client-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64 --> Processing Dependency: libneon.so.27()(64bit) for package: subversion-1.7.14-14.el7.x86_64 --> Processing Dependency: libaprutil-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64 --> Processing Dependency: libapr-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64 --> Running transaction check ---> Package apr.x86_64 0:1.4.8-3.el7_4.1 will be installed ---> Package apr-util.x86_64 0:1.5.2-6.el7 will be installed ---> Package neon.x86_64 0:0.30.0-3.el7 will be installed --> Processing Dependency: libgnutls.so.28(GNUTLS_2_12)(64bit) for package: neon-0.30.0-3.el7.x86_64 --> Processing Dependency: libgnutls.so.28(GNUTLS_1_4)(64bit) for package: neon-0.30.0-3.el7.x86_64 --> Processing Dependency: libproxy.so.1()(64bit) for package: neon-0.30.0-3.el7.x86_64 --> Processing Dependency: libpakchois.so.0()(64bit) for package: neon-0.30.0-3.el7.x86_64 --> Processing Dependency: libgnutls.so.28()(64bit) for package: neon-0.30.0-3.el7.x86_64 ---> Package subversion-libs.x86_64 0:1.7.14-14.el7 will be installed --> Running transaction check ---> Package gnutls.x86_64 0:3.3.29-8.el7 will be installed --> Processing Dependency: trousers >= 0.3.11.2 for package: gnutls-3.3.29-8.el7.x86_64 --> Processing Dependency: libnettle.so.4()(64bit) for package: gnutls-3.3.29-8.el7.x86_64 --> Processing Dependency: libhogweed.so.2()(64bit) for package: gnutls-3.3.29-8.el7.x86_64 ---> Package libproxy.x86_64 0:0.4.11-11.el7 will be installed --> Processing Dependency: libmodman.so.1()(64bit) for package: libproxy-0.4.11-11.el7.x86_64 ---> Package pakchois.x86_64 0:0.4-10.el7 will be installed --> Running transaction check ---> Package libmodman.x86_64 0:2.0.1-8.el7 will be installed ---> Package nettle.x86_64 0:2.7.1-8.el7 will be installed ---> Package trousers.x86_64 0:0.3.14-2.el7 will be installed --> Finished Dependency Resolution Dependencies Resolved ============================================================================================== Package Arch Version Repository Size ============================================================================================== Installing: subversion x86_64 1.7.14-14.el7 base 1.0 M Installing for dependencies: apr x86_64 1.4.8-3.el7_4.1 base 103 k apr-util x86_64 1.5.2-6.el7 base 92 k gnutls x86_64 3.3.29-8.el7 base 680 k libmodman x86_64 2.0.1-8.el7 base 28 k libproxy x86_64 0.4.11-11.el7 base 64 k neon x86_64 0.30.0-3.el7 base 165 k nettle x86_64 2.7.1-8.el7 base 327 k pakchois x86_64 0.4-10.el7 base 14 k subversion-libs x86_64 1.7.14-14.el7 base 922 k trousers x86_64 0.3.14-2.el7 base 289 k Transaction Summary ============================================================================================== Install 1 Package (+10 Dependent packages) Total download size: 3.6 M Installed size: 12 M Downloading packages: (1/11): apr-util-1.5.2-6.el7.x86_64.rpm | 92 kB 00:00:00 (2/11): apr-1.4.8-3.el7_4.1.x86_64.rpm | 103 kB 00:00:00 (3/11): libmodman-2.0.1-8.el7.x86_64.rpm | 28 kB 00:00:00 (4/11): libproxy-0.4.11-11.el7.x86_64.rpm | 64 kB 00:00:00 (5/11): gnutls-3.3.29-8.el7.x86_64.rpm | 680 kB 00:00:00 (6/11): neon-0.30.0-3.el7.x86_64.rpm | 165 kB 00:00:00 (7/11): nettle-2.7.1-8.el7.x86_64.rpm | 327 kB 00:00:00 (8/11): pakchois-0.4-10.el7.x86_64.rpm | 14 kB 00:00:00 (9/11): subversion-libs-1.7.14-14.el7.x86_64.rpm | 922 kB 00:00:00 (10/11): trousers-0.3.14-2.el7.x86_64.rpm | 289 kB 00:00:00 (11/11): subversion-1.7.14-14.el7.x86_64.rpm | 1.0 MB 00:00:00 ---------------------------------------------------------------------------------------------- Total 12 MB/s | 3.6 MB 00:00:00 Running transaction check Running transaction test Transaction test succeeded Running transaction Installing : apr-1.4.8-3.el7_4.1.x86_64 1/11 Installing : apr-util-1.5.2-6.el7.x86_64 2/11 Installing : pakchois-0.4-10.el7.x86_64 3/11 Installing : nettle-2.7.1-8.el7.x86_64 4/11 Installing : libmodman-2.0.1-8.el7.x86_64 5/11 Installing : libproxy-0.4.11-11.el7.x86_64 6/11 Installing : trousers-0.3.14-2.el7.x86_64 7/11 Installing : gnutls-3.3.29-8.el7.x86_64 8/11 Installing : neon-0.30.0-3.el7.x86_64 9/11 Installing : subversion-libs-1.7.14-14.el7.x86_64 10/11 Installing : subversion-1.7.14-14.el7.x86_64 11/11 Verifying : trousers-0.3.14-2.el7.x86_64 1/11 Verifying : libmodman-2.0.1-8.el7.x86_64 2/11 Verifying : neon-0.30.0-3.el7.x86_64 3/11 Verifying : subversion-1.7.14-14.el7.x86_64 4/11 Verifying : subversion-libs-1.7.14-14.el7.x86_64 5/11 Verifying : apr-util-1.5.2-6.el7.x86_64 6/11 Verifying : nettle-2.7.1-8.el7.x86_64 7/11 Verifying : gnutls-3.3.29-8.el7.x86_64 8/11 Verifying : pakchois-0.4-10.el7.x86_64 9/11 Verifying : apr-1.4.8-3.el7_4.1.x86_64 10/11 Verifying : libproxy-0.4.11-11.el7.x86_64 11/11 Installed: subversion.x86_64 0:1.7.14-14.el7 Dependency Installed: apr.x86_64 0:1.4.8-3.el7_4.1 apr-util.x86_64 0:1.5.2-6.el7 gnutls.x86_64 0:3.3.29-8.el7 libmodman.x86_64 0:2.0.1-8.el7 libproxy.x86_64 0:0.4.11-11.el7 neon.x86_64 0:0.30.0-3.el7 nettle.x86_64 0:2.7.1-8.el7 pakchois.x86_64 0:0.4-10.el7 subversion-libs.x86_64 0:1.7.14-14.el7 trousers.x86_64 0:0.3.14-2.el7 Complete! [root@iZuf69s5ga2219syf1pqgpZ ~]# svn --version svn, version 1.7.14 (r1542130) compiled Apr 11 2018, 02:40:28 Copyright (C) 2013 The Apache Software Foundation. This software consists of contributions made by many people; see the NOTICE file for more information. Subversion is open source software, see http://subversion.apache.org/ The following repository access (RA) modules are available: * ra_neon : Module for accessing a repository via WebDAV protocol using Neon. - handles 'http' scheme - handles 'https' scheme * ra_svn : Module for accessing a repository using the svn network protocol. - with Cyrus SASL authentication - handles 'svn' scheme * ra_local : Module for accessing a repository on local disk. - handles 'file' scheme
View Code - 創建SVN資源庫目錄
mkdir /opt/svn
- 生成SVN資源目錄
svnadmin create /opt/svn/kuangshen
出現以下文件,說明已經建立OK - 開啟3690埠
#查看防火牆狀態 firewall-cmd --state #開啟防火牆 systemctl start firewalld.service #開啟3690埠 firewall-cmd --zone=public --add-port=3690/tcp --permanent # 重啟防火牆 systemctl restart firewalld.service # 輸入命令重新載入配置 firewall-cmd --reload #查看開啟的埠列表 firewall-cmd --permanent --list-port
- 使用命令svnserve啟動服務
#查看是否啟動svn服務 ps -ef|grep svn 使用命令svnserve啟動服務 svnserve -d -r /opt/svn --listen-port=3690
-
用戶密碼passwd配置
文件都在svn的 conf/ 目錄下
修改passwd:
[users]
# harry = harryssecret
# sally = sallyssecret
admin = 123456
guest = 000000用戶名=密碼
這樣我們就建立了兩個用戶
以上語句都必須頂格寫, 左側不能留空格, 否則會出錯.
許可權控制authz配置
vi authz
#設置[/]代表根目錄下所有的資源 或者寫成[kuangshen:/]
設置哪些用戶可以訪問哪些目錄,向authz文件追加以下內容:
[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe# [/foo/bar]
# harry = rw
# &joe = r
# * =
admin=user1
guest=user2
[kuangshen:/]
@admin=rw
user2=r以上語句都必須頂格寫, 左側不能留空格, 否則會出錯.
- 修改svnserve.conf配置選項
vim svnserve.conf 追加以下內容: [general] #匿名訪問的許可權,可以是read,write,none,預設為read anon-access=none #使授權用戶有寫許可權 auth-access=write #密碼資料庫的路徑 password-db=passwd #訪問控制文件 authz-db=authz #認證命名空間,subversion會在認證提示里顯示,並且作為憑證緩存的關鍵字 realm= repo 以上語句都必須頂格寫, 左側不能留空格, 否則會出錯.
- window安裝TortoiseSVN進行遠程連接.這個下載後直接安裝即可
- 訪問SVN
svn://ip地址 埠預設為3690,輸入配置好的用戶名和密碼即可。 註意: svn://ip地址/庫名,使用svnserve -d -r /opt/svn 以多