1. 程式人生 > >大資料學習第二天 Linux篇

大資料學習第二天 Linux篇

1.虛擬機器的克隆

具體步驟參考這位仁兄:https://blog.csdn.net/CSDNOfWK/article/details/78442187

克隆完成之後,還需要對克隆後的機子進行必要的網路配置。

比如配置它的IP 步驟參考上一篇部落格

配置後容易出現一個小問題

解決如下:

 網路配置完成後 我們需要對它的主機名進行變更  

2.檔案或目錄在本地與遠端伺服器之間的傳送 

 為了方便兩者之間傳遞檔案的操作 我們需要為兩臺機器配置好host檔案  注意的是host的名稱一定要和hostname保持一致

 

相同的,在node02的機器上也進行同樣的操作,再互相驗證,能否ping通彼此。

這個過程就相當於兩個人互相存電話號碼的操作。

首先在node01上我們新建一個名為whb.log的檔案 

 然後我們向node02的機器傳送whb.log

這樣,在node02上我們可以檢視到whb.log已經成功接收了。 

 

 類似的還有目錄(資料夾)的傳送  

注意的是如果是傳送到相同路徑:scp -r local_folder [email protected]_ip:`pwd`

3.對磁碟的簡單操作

兩個很簡單的命令df和du

df 檢視磁碟的資訊 後面跟引數-k -m -h 分別是以kb mb 更適合閱讀的方式展現磁碟的資訊 

du 檢視檔案和目錄的資訊 引數和作用參考df 兩個差不多 但不一樣的是--max-depth=0  檢視目錄深度

4.常用的網路操作

ifconfig   檢視當前的網路資訊

ping        測試網路的連通性

netstat   顯示各種網路相關的資訊  具體參考man

檢視埠號(是否被佔用)

1、lsof -i:埠號

2、netstat -tunlp|grep 埠號

5.http請求的模擬

模擬http的get請求

6.使用者、使用者組、系統許可權

6.1 使用者操作

useradd/adduser username   #增加使用者 

passwd   username                #修改新使用者的密碼

usermod -l new_name old_name     #修改使用者名稱

usermod -L username                      #鎖定使用者    (慎用...) 

賬號鎖定期間,使用者輸入的命令無論正確與否都提示密碼錯誤,登入不了,即凍結了賬號  

usermod -U mytest                           #解除鎖定

whoami                                             #檢視當前登入使用者名稱 

6.2 使用者組操作

groupadd   groupname   #建立使用者組

groupdel    groupname   #刪除使用者組

groupmod  -n  newname oldname  #使用者組名的修改

groups        #檢視當前登入使用者的所在的組

groups username #檢視指定使用者所在的組

usermod  -g  組名 使用者   #修改指定使用者的主組

usermod  -G  組名  使用者  #將指定的使用者附加到指定的組中

6.3 系統許可權的操作

首先許可權類別有三種:r(讀)  w(寫)  x(執行)

其次Linux的許可權是基於UGO模型的 即User Group Other

然後許可權三個為一組 分別對應UGO

下面是對許可權的具體操作:

修改許可權

修改檔案/目錄的所有者:chown    username  檔案/目錄

同時修改檔案/目錄的所有者和屬組:chown username:groupname  檔案/目錄 

若要遞迴修改整個目錄下的所有者或屬組 加引數 -R

修改檔案/目錄的屬組:chgrp groupname name

修改檔案/目錄的許可權:chmod ugo+rwx name   #+代表增加許可權 - 代表減少許可權

rwx也可以用數字指代 r等價4 w等價2 x等價1

特別說明:普通使用者在被建立時預設會建立與該使用者同名的主組

                  在檔案或目錄的許可權控制上要看檔案具體的許可權屬性 看它的實際的擁有者  以及當時操作的使用者

7. 系統服務初始化的配置

init  0至9 

其中 0代表停機(實際生產環境要慎用)3為Linux的預設級別 6代表停止所有程序 解除安裝檔案系統 重新啟動相當於reboot

8. sudo的許可權配置

在非root模式下 我們可以使用sudo來實現只有在root模式下才能執行的操作。

我們也可以通過編輯sudoers來控制普通使用者執行的命令的許可權

mytest使用者就可以用yum 和 service 命令了

9. 更新系統時間

為了精確的更新系統時間 我們使用第三方的時間伺服器來實時更新我們的系統時間

首先要安裝ntp服務

yum install ntpdate -y

然後 ntpdate cn.ntp.org.cn

10. 重定向和管道

10.1 重定向符

 >      輸出重定向覆蓋

>>     輸出重定向追加

<       輸入重定向

1>     標準輸出重定向   只有正確的輸出才會重定向到某個指定檔案 錯誤的則不會

2>     錯誤輸出重定向   只有錯誤的輸出才會重定向到某個指定檔案 正確的則不會

2>&1   無論輸出正確與否都會重定向到某個指定檔案

10.2 管道符 |

“|”的意思是將前一個輸出當作後一個輸入

cat web.log | grep web  將web.log的內容當作grep的輸入 即在web.log內查詢web欄位並輸出

10.3 命令的控制

命令:&&   前一個命令執行成功才會執行後一個命令

命令:||      前一個命令執行失敗才會執行後一個命令

10.4 資訊黑洞

/dev/null  輸出到這個目錄的資訊都會永遠丟失 可以將不需要的資訊寫入到這個目錄中去