Week14
Week 14
sshfs
把遠端家目錄掛到當前目錄中 ncnu 目錄下
sshfs xxx@ip:sources ./ncnu/
ftp
查看檔案伺服器狀態
sudo service proftpd status
ftp 連接檔案伺服器
ftp x.x.x.x(ip)
連線後 login
會變為: ftp>
ls:列出檔案伺服器目錄底下的東西!ls:查看當地目錄的東西(加!就是本地)
下載檔案
get 檔案mget 檔案 //multiple get
上傳檔案
put 檔案mput 檔案 //multiple put
在瀏覽器網址輸入:
ftp://ip
會有較直觀UI
filezilla
filezilla:
sudo apt install filezilla
可以有介面執行ftp上傳與下載
proftpd
/etc/proftpd/proftpd.conf 打開匿名使用者存取權
anonymous 匿名使用者匿名使用者的存取權限管控
查看ftp的使用紀錄及用戶
ftpwho
查看ftp的用戶數量
ftpcount
config檔案架構
# 關於主機相關的設定設定項目一 參數內容設定參數二 參數內容# 關於某些目錄的權限設定<Directory "完整目錄名稱">.........</Directory># 關於 Anonymous 的目錄與權限設定<Anonymous "匿名登入時候的匿名者根目錄">......<Limit 一些動作>......</Limit></Anonymous>
.ftpaccess
http://manpages.ubuntu.com/manpages/bionic/zh_TW/man5/ftpaccess.5.html
sftp
基本上跟ftp一樣,但一定要有帳號密碼才能存取(不允許匿名使用者)
sftp
load balance
不同 worker(apache + lightpd + nginx ) 一起工作分工分擔龐大的網路工作
:::danger 記得 default 先備份一個 :::
cd /etc/nginx/sites-avaliable/default
upstream backend {server 127.0.0.1:8080;server 127.0.0.1:8081;}server {listen 80;location / {proxy_pass http://backend;}}
環境架設
nginx 80 portapache 8081 portlighttpd 8080 port
改apache port
cd /etc/apache2/ sudo vim port.conf
重啟server
sudo service apacge2 restartsudo service lighttpd restart
ls /var/www/html
底下有三個 index
index.htmlindex.lighttpd.htmlindex.nginx-debian.html
change Nginx load balance algo:
http://nginx.org/en/docs/http/load_balancing.html
raspberry
開啟設定畫面
sudo raspi-config
連線到網路 > network options
電腦跟 raspberry 連同網路 > ssh 進raspberry
ifconfig eth0
在pi中建立mail.py檔案,程式碼如下:
#!/usr/bin/pythonimport subprocessimport smtplibimport socketfrom email.mime.text import MIMETextimport datetime# Which email address want to sendto = 'XXX'#(自己的gmail信箱)# Using specific gmail accountgmail_user = 'XXX'#gmail帳號gmail_password = 'XXX'#gmail密碼# SMTP commandsmtpserver = smtplib.SMTP('smtp.gmail.com', 587)smtpserver.ehlo()smtpserver.starttls()smtpserver.ehlo()smtpserver.login(gmail_user, gmail_password)today = datetime.date.today()# Linux Specific shell commandarg='ip route list'p=subprocess.Popen(arg,shell=True,stdout=subprocess.PIPE)data = p.communicate()split_data = data[0].split()ipaddr = split_data[split_data.index('src')+1]my_ip = 'Your ip is %s' % ipaddrmsg = MIMEText(my_ip)msg['Subject'] = 'IP For RaspberryPi on %s' % today.strftime('%b %d %Y')msg['From'] = gmail_usermsg['To'] = tosmtpserver.sendmail(gmail_user, [to], msg.as_string())smtpserver.quit()
gmail 開啟低安全性應用程式
https://myaccount.google.com/lesssecureapps
用途是寄送在樹莓派開機時,寄送郵件來發出樹莓派ip 到gmail設定低安全應用程式存取權 > 開啟
chmod +x mail.py./mail.py
如果遇到編碼問題無法寄信,程式碼前面加上
#coding=utf-8
:::danger 要記得去目標信箱收信,嘗試太多次可能是 ip 被 gmail ban 掉, 換一個 ip 試試看。 :::
開機時會執行的程式
sudo vim /etc/rc.local
hw
自行 繼電器 & gpio 期末專題規劃(組名!!!極重要!!!)