ตั้งค่า NFS Share บน Debian
NFS เป็นระบบไฟล์บนเครือข่ายที่อนุญาตให้คอมพิวเตอร์เข้าถึงไฟล์ผ่านเครือข่ายคอมพิวเตอร์ คู่มือนี้จะอธิบายวิธีการเปิดเผยโฟลเดอร์ผ่าน NF
Supervisor เป็นระบบไคลเอนต์ / เซิร์ฟเวอร์ที่ใช้ในการควบคุมกระบวนการ UNIX จำนวนกระบวนการที่เฉพาะเจาะจงมากขึ้นที่เกี่ยวข้องกับโครงการหรือลูกค้า ตัวอย่างเช่นคุณสามารถใช้หัวหน้างานเพื่อวางไข่และตรวจสอบจำนวนคิวงานของเว็บแอปพลิเคชันของคุณโดยพลการ
ส่วนประกอบของระบบนี้คือ:
ในบทช่วยสอนนี้เราจะติดตั้งผู้ควบคุมเวอร์ชันที่ทันสมัยที่สุดสาธิตวิธีวางไข่และจัดการโปรแกรมผ่านsupervisorctl
และกำหนดค่าเว็บอินเตอร์เฟสเพื่อจัดการโปรแกรมของเรา
เราจะติดตั้งผู้ควบคุมผ่านeasy_install
ซึ่งเป็นคุณสมบัติของ setuptools ของงูใหญ่
setuptools
ครั้งแรกที่ปรับปรุงรายการแพคเกจในท้องถิ่นของคุณและติดตั้งหลาม
sudo apt-get update && sudo apt-get install python-setuptools
ตอนนี้เราสามารถติดตั้งผู���ควบคุม
sudo easy_install supervisor
เมื่อการติดตั้งเสร็จสิ้นเราต้องสร้างไฟล์กำหนดค่าของเรา สร้างโฟลเดอร์ชื่อภายในsupervisor
/etc
sudo mkdir /etc/supervisor
จากนั้นดำเนินการดังต่อไปนี้
echo_supervisord_conf > /etc/supervisor/supervisord.conf
หากคุณไม่ได้ลงชื่อเข้าใช้ด้วยroot
ผู้ใช้คุณอาจได้รับPermission denied
ข้อผิดพลาด (แม้จะเป็นsudo
) นี่เป็นเพราะการเปลี่ยนเส้นทาง หากต้องการเอาชนะสิ่งนี้ให้ลงชื่อเข้าใช้ด้วยรูท
sudo su
จากนั้นคุณสามารถเรียกใช้คำสั่งอีกครั้ง
echo_supervisord_conf > /etc/supervisor/supervisord.conf
ตอนนี้คุณสามารถปล่อยให้root
ผู้ใช้ด้วยexit
คำสั่ง echo_supervisord_conf
คำสั่งถูกจัดให้โดยการติดตั้งผู้บังคับบัญชาของเรา
เปิด/etc/supervisor/supervisord.conf
ไฟล์และตรวจสอบเนื้อหา คุณจะทราบว่าไฟล์การกำหนดค่านี้เป็นไปตามINI
ไวยากรณ์และจะถูกแบ่งออกเป็นส่วน ๆ (แสดงโดยวงเล็บเช่นเดียวกับใน[section-name]
)
ในการเพิ่มโปรแกรมที่จะจัดการโดยหัวหน้างานเราเพียงแค่ต้องสร้าง[program]
ส่วนที่เหมาะสม อย่างไรก็ตามเพื่อหลีกเลี่ยงการสับสนกับไฟล์กำหนดค่าหลักทุกครั้งที่เราต้องการเพิ่ม (หรือเปลี่ยนแปลง) โปรแกรมเราจะใช้[include]
ส่วนนี้ ค้นหาส่วนนี้ยกเลิกการใส่เครื่องหมายข้อคิดเห็นจากนั้นแก้ไขเพื่อให้มีลักษณะดังต่อไปนี้
[include]
files=conf.d/*.conf
ตอนนี้สำหรับแต่ละโปรแกรมที่เราต้องการเพิ่มเราจะสร้าง.ini
ไฟล์ใน/etc/supervisor/conf.d/
ไดเรกทอรี ให้สร้างโฟลเดอร์นี้
sudo mkdir /etc/supervisor/conf.d
ตามที่ระบุไว้ก่อนหน้านี้หัวหน้างานประกอบด้วยเซิร์ฟเวอร์และลูกค้าที่เชื่อมต่อกับมัน เพื่อให้สามารถจัดการและควบคุมโปรแกรมเราต้องเริ่มเซิร์ฟเวอร์ ในการดำเนินการดังกล่าวเราจะทำการลงทะเบียนเซิร์ฟเวอร์ supervisor ในsystemd
เพื่อให้เซิร์ฟเวอร์อาจเริ่มทำงานเมื่อเริ่มต้นระบบ
ในการทำเช่นนั้นให้สร้างไฟล์ชื่อsupervisord.service
ใน/etc/systemd/system
ไดเรกทอรี
sudo touch /etc/systemd/system/supervisord.service
เพิ่มเนื้อหาต่อไปนี้ลงในไฟล์
[Unit]
Description=Supervisor daemon
Documentation=http://supervisord.org
After=network.target
[Service]
ExecStart=/usr/local/bin/supervisord -n -c /etc/supervisor/supervisord.conf
ExecStop=/usr/local/bin/supervisorctl $OPTIONS shutdown
ExecReload=/usr/local/bin/supervisorctl $OPTIONS reload
KillMode=process
Restart=on-failure
RestartSec=42s
[Install]
WantedBy=multi-user.target
Alias=supervisord.service
เปิดใช้งานบริการ supervisord
sudo systemctl start supervisord.service
ตราบใดที่ไฟล์บริการอยู่ใน/etc/systemd/system
ไดเรกทอรีมันจะเริ่มโดยอัตโนมัติเมื่อระบบเริ่มต้น
คุณสามารถตรวจสอบสถานะของบริการ
systemctl status supervisord.service
นอกจากนี้คุณสามารถตรวจสอบบันทึก
sudo journalctl -u supervisord.service
โปรแกรมที่ควบคุมโดยหัวหน้างานจะได้รับจาก[program]
ส่วนต่างๆ ในการกำหนดค่า สำหรับแต่ละโปรแกรมที่เราต้องการจัดการเราจะสร้างไฟล์การตั้งค่าแบบสแตนด์อโลนแจ้งเส้นทางคำสั่งปฏิบัติการตัวแปรสภาพแวดล้อมใด ๆ วิธีดำเนินการในกรณีที่ปิดเครื่อง
ก่อนอื่นเรามาสร้างสคริปต์ง่ายๆที่บันทึกการประทับเวลา สร้างไฟล์ชื่อhello_supervisor.sh
(ทุกที่ที่คุณต้องการเราจะอ้างอิงเส้นทางแบบเต็มของสคริปต์นี้)
touch hello_supervisor.sh
ตอนนี้ใส่เนื้อหาต่อไปนี้ลงไป
#!/bin/bash
while true
do
# Echo current timestamp to stdout
echo Hello Supervisor: `date`
# Echo 'error!' to stderr
echo An error ocurred at `date`! >&2
sleep 1
done
ตอนนี้ทำให้มันปฏิบัติการได้
chmod +x hello_supervisor.sh
ในทางปฏิบัติสคริปต์นี้ไม่มีประโยชน์อะไรมาก อย่างไรก็ตามเราสามารถใช้มันเพื่อแสดงพลังของหัวหน้างาน สร้างไฟล์คอนฟิกูเรชันที่สอดคล้องกันโดยรันต่อไปนี้
sudo touch /etc/supervisor/conf.d/hello_supervisor.conf
ตอนนี้ใส่เนื้อหาต่อไปนี้ลงในไฟล์นี้
[program:hello_supervisor]
command=/home/USER/hello_supervisor.sh
autostart=true
autorestart=true
stderr_logfile=/var/log/hello_supervisor.err.log
stdout_logfile=/var/log/hello_supervisor.out.log
หมายเหตุ: โปรดแทนที่USER
ด้วยชื่อผู้ใช้ของคุณ
เราจะตรวจสอบการกำหนดค่านี้ทีละขั้นตอน
[program:hello_supervisor]
command=/home/USER/hello_supervisor.sh
ประการแรกการกำหนดค่าเริ่มต้นด้วยการกำหนดโปรแกรมของชื่อhello_supervisor นอกจากนี้ยังแจ้งเส้นทางแบบเต็มของการปฏิบัติการที่จะเรียกใช้
autostart=true
บรรทัดนี้ระบุว่าโปรแกรมนี้ควรเริ่มโดยอัตโนมัติเมื่อผู้ดูแลเริ่มต้นขึ้น
autorestart=true
หากโปรแกรมหยุดทำงานด้วยเหตุผลใดก็ตามบรรทัดนี้จะแจ้งให้หัวหน้างานทราบเพื่อเริ่มกระบวนการใหม่โดยอัตโนมัติ
stderr_logfile=/var/log/hello_supervisor.err.log
stdout_logfile=/var/log/hello_supervisor.out.log
บรรทัดเหล่านี้กำหนดตำแหน่งไฟล์บันทึกสำหรับstderr
และstdout
ตามลำดับ
ตอนนี้เราได้ติดตั้งและกำหนดค่าหัวหน้างานแล้วเราสามารถจัดการกระบวนการของเราได้
หลังจากเพิ่มโปรแกรมใหม่เราควรรันคำสั่งสองคำสั่งต่อไปนี้เพื่อแจ้งให้เซิร์ฟเวอร์ทำการอ่านไฟล์การกำหนดค่าอีกครั้งและใช้การเปลี่ยนแปลงใด ๆ
sudo supervisorctl reread
sudo supervisorctl update
ตอนนี้รันsupervisorctl
ไคลเอนต์
sudo supervisorctl
คุณจะได้รับการต้อนรับด้วยรายการการลงทะเบียนที่สำเร็จ คุณจะเห็นการเข้าถึงที่เรียกhello_supervisor
พร้อมกับRUNNING
สถานะ
hello_supervisor RUNNING pid 6853, uptime 0:22:30
supervisor>
พิมพ์help
สำหรับรายการคำสั่ง avaialable
supervisor> help
default commands (type help <topic>):
=====================================
add exit open reload restart start tail
avail fg pid remove shutdown status update
clear maintail quit reread signal stop version
สรุปเราสามารถstart
, stop
และrestart
โปรแกรมโดยผ่านชื่อโปรแกรมเป็นอาร์กิวเมนต์กับคำสั่งที่เกี่ยวข้อง
supervisor> stop hello_supervisor
hello_supervisor: stopped
supervisor> start hello_supervisor
hello_supervisor: started
supervisor> restart hello_supervisor
hello_supervisor: stopped
hello_supervisor: started
supervisor>
นอกจากนี้เรายังสามารถดูผลลัพธ์ของโปรแกรมด้วยtail
คำสั่ง
supervisor> tail hello_supervisor
Hello Supervisor: Mon Sep 25 19:27:29 UTC 2017
Hello Supervisor: Mon Sep 25 19:27:30 UTC 2017
Hello Supervisor: Mon Sep 25 19:27:31 UTC 2017
สำหรับstderr
เอาต์พุตคุณสามารถใช้tail
เช่นกัน
supervisor> tail hello_supervisor stderr
An error ocurred at Mon Sep 25 19:31:12 UTC 2017!
An error ocurred at Mon Sep 25 19:31:13 UTC 2017!
An error ocurred at Mon Sep 25 19:31:14 UTC 2017!
โดยเรียกใช้status
คำสั่งคุณสามารถดูสถานะของโปรแกรมที่ลงทะเบียนทั้งหมด
เมื่อเสร็จแล้วคุณสามารถออกจาก
supervisor> quit
หากต้องการอนุญาตการเข้าถึงเว็บเซิร์ฟเวอร์ supervisord ให้เปิดไฟล์การกำหนดค่า supervisord และค้นหา[inet_http_server]
ส่วน
nano /etc/supervisor/supervisord.conf
ตอนนี้อัปเดตการกำหนดค่าส่วนนี้ด้วยต่อไปนี้
[inet_http_server]
port=*:9001
username=your_username
password=your_password
แทนที่your_username
และyour_password
มีสิทธิที่คุณต้องการบันทึกการเปลี่ยนแปลงและการบริการเริ่มต้นใหม่ supervisord ของคุณ
sudo systemctl restart supervisord.service
อย่าลืมอนุญาตให้TCP
เข้าถึงพอร์ต9001
ในไฟร์วอลล์ของคุณจากนั้นเข้าถึงhttp://{server-ip}:9001
จากเบราว์เซอร์ของคุณ เมื่อถามว่าให้ของคุณและusername
password
ตอนนี้คุณสามารถควบคุมความสำเร็จของคุณจากเว็บ
เราได้ติดตั้งรุ่นขึ้นไปวันที่มากที่สุดของ supervisord เรียนรู้วิธีการกำหนดค่าระบบอัตโนมัติเริ่มต้นด้วย systemd supervisorctl
และทบทวนการใช้งานขั้นพื้นฐานของ สำหรับการตั้งค่าและการใช้งานที่สูงขึ้นกรณีที่คุณอาจจะหมายถึงเอกสาร supervisord อย่างเป็นทางการ
NFS เป็นระบบไฟล์บนเครือข่ายที่อนุญาตให้คอมพิวเตอร์เข้าถึงไฟล์ผ่านเครือข่ายคอมพิวเตอร์ คู่มือนี้จะอธิบายวิธีการเปิดเผยโฟลเดอร์ผ่าน NF
ใช้ระบบที่แตกต่างกันอย่างไร Directus 6.4 CMS เป็นระบบการจัดการเนื้อหาแบบไม่มีหัว (Headless Content Management: CMS) ที่ทรงพลังและยืดหยุ่นซึ่งให้ผู้พัฒนา
TeamTalk เป็นระบบการประชุมที่ช่วยให้ผู้ใช้สามารถสนทนาด้วยเสียง / วิดีโอคุณภาพสูงสนทนาผ่านข้อความถ่ายโอนไฟล์และแชร์หน้าจอ มันฉัน
ใช้ระบบที่แตกต่างกันอย่างไร Pagekit เป็น CMS โอเพนซอร์สที่เขียนด้วย PHP ซอร์สโค้ดของ Pagekit นั้นโฮสต์บน GitHub คำแนะนำนี้จะแสดงให้คุณเห็นว่า
สฟิงซ์เป็นเครื่องมือค้นหาข้อความแบบโอเพนซอร์ซฟรีและโอเพนซอร์สซึ่งสามารถรวมเข้ากับเว็บแอปพลิเคชั่นต่าง ๆ เพื่อให้ได้คุณภาพที���รวดเร็วและสูง
Vultr มีคุณสมบัติที่อนุญาตให้คุณติดตั้งคีย์ SSH ล่วงหน้าเมื่อสร้างอินสแตนซ์ใหม่ สิ่งนี้อนุญาตให้คุณเข้าถึงผู้ใช้รูทเซิร์ฟเวอร์อย่างไรก็ตาม
ใช้ระบบที่แตกต่างกันอย่างไร Diaspora เป็นเครือข่ายโซเชียลที่ตระหนักถึงความเป็นส่วนตัวและเป็นโอเพ่นซอร์ส ในบทช่วยสอนนี้คุณจะได้เรียนรู้วิธีการตั้งค่าและกำหนดค่า po Diaspora
ใช้ระบบที่แตกต่างกันอย่างไร Fuel CMS เป็นระบบจัดการเนื้อหาที่ใช้ CodeIgniter ซอร์สโค้ดของมันถูกโฮสต์บน GitHub คำแนะนำนี้จะแสดงให้คุณเห็นว่า
ใช้ระบบที่แตกต่างกันอย่างไร Snipe-IT เป็นเว็บแอปพลิเคชั่นฟรีและโอเพนซอร์สสำหรับการจัดการสินทรัพย์ด้านไอที มันถูกเขียนบนกรอบงาน Laravel 5.2 และการใช้งาน
ใช้ระบบที่แตกต่างกันอย่างไร ไทกะเป็นแอปพลิเคชั่นฟรีและโอเพ่นซอร์สสำหรับการจัดการโครงการ ซึ่งแตกต่างจากเครื่องมือการจัดการโครงการอื่น ๆ ไทก้าใช้ส่วนเพิ่ม
FTP ที่ปลอดภัยมากหรือเพียงแค่ vsFTPd เป็นซอฟต์แวร์น้ำหนักเบาที่มีความสามารถในการปรับแต่ง ในบทช่วยสอนนี้เราจะรักษาความปลอดภัยของข้อความ
CentOS ติดตามการพัฒนา Red Hat Enterprise Linux (RHEL) RHEL พยายามที่จะเป็นแพลตฟอร์มเซิร์ฟเวอร์ที่มั่นคงซึ่งหมายความว่าจะไม่รีบเร่งในการรวม
Ranger เป็นตัวจัดการไฟล์แบบบรรทัดคำสั่งที่มีการเชื่อมโยงคีย์ VI มันจัดเตรียมอินเตอร์เฟส curses ที่เรียบง่ายและดีพร้อมมุมมองบนลำดับชั้นไดเร็กทอรี
ใช้ระบบที่แตกต่างกันอย่างไร Brotli เป็นวิธีการบีบอัดแบบใหม่ที่มีอัตราการบีบอัดที่ดีกว่า GZIP ซอร์สโค้ดของมันถูกโฮสต์แบบสาธารณะบน Githu นี้
ในบางโอกาสผู้ดูแลระบบอาจต้องสร้างบัญชีผู้ใช้และ จำกัด การเข้าถึงเพื่อจัดการไฟล์ของตัวเองผ่าน sFTP เท่านั้น
ใช้ระบบที่แตกต่างกันอย่างไร Omeka Classic 2.4 CMS เป็นแพลตฟอร์มเผยแพร่ดิจิตอลฟรีและโอเพ่นซอร์สและระบบการจัดการเนื้อหา (CMS) สำหรับการแบ่งปันดิจิต้า
การอนุญาตให้ล็อกอินรูทผ่าน SSH นั้นถือว่าเป็นการปฏิบัติด้านความปลอดภัยที่ไม่ดีทั่วทั้งอุตสาหกรรมเทคโนโลยี คุณสามารถดำเนินการที่ละเอียดอ่อนแทน
ใช้ระบบที่แตกต่างกันอย่างไร Moodle เป็นแพลตฟอร์มการเรียนรู้โอเพนซอร์ซหรือระบบจัดการหลักสูตร (CMS) - ชุดซอฟต์แวร์โอเพ่นซอร์สฟรีที่ออกแบบมาเพื่อช่วย
ใช้ระบบที่แตกต่างกันอย่างไร RabbitMQ เป็นนายหน้าข้อความโอเพ่นซอร์สที่ใช้กันอย่างแพร่หลายเขียนในภาษาการเขียนโปรแกรม Erlang เป็นมิดเดิลแวร์ที่มุ่งเน้นข้อความ
ในบทความนี้ฉันจะอธิบายวิธีสร้าง LEMP สแต็คที่ได้รับการป้องกันโดย ModSecurity ModSecurity เป็นไฟร์วอลล์เว็บแอพพลิเคชันแบบโอเพนซอร์สที่มีประโยชน์
เรียนรู้วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7; ระบบการจัดการเนื้อหา Headless ที่มีความยืดหยุ่นสูงและปลอดภัย
เรียนรู้วิธีการตั้งค่า Nginx บน Ubuntu สำหรับการสตรีมวิดีโอสด HLS ด้วยคำแนะนำที่ชัดเจนและเป็นประโยชน์
เรียนรู้การใช้ Percona XtraBackup สำหรับการสำรองข้อมูลด้วยวิธีที่เป็นระบบและง่ายดายบน WordPress ออนไลน์ของคุณ
ReactOS ซึ่งเป็นโอเพ่นซอร์สและระบบปฏิบัติการฟรีพร้อมเวอร์ชันล่าสุดแล้ว สามารถตอบสนองความต้องการของผู้ใช้ Windows ยุคใหม่และล้ม Microsoft ได้หรือไม่? มาหาข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบเก่านี้ แต่เป็นประสบการณ์ OS ที่ใหม่กว่ากัน
การโจมตีของ Ransomware กำลังเพิ่มขึ้น แต่ AI สามารถช่วยจัดการกับไวรัสคอมพิวเตอร์ตัวล่าสุดได้หรือไม่? AI คือคำตอบ? อ่านที่นี่รู้ว่า AI boone หรือ bane
ในที่สุด Whatsapp ก็เปิดตัวแอพเดสก์ท็อปสำหรับผู้ใช้ Mac และ Windows ตอนนี้คุณสามารถเข้าถึง Whatsapp จาก Windows หรือ Mac ได้อย่างง่ายดาย ใช้ได้กับ Windows 8+ และ Mac OS 10.9+
อ่านข้อมูลนี้เพื่อทราบว่าปัญญาประดิษฐ์กำลังได้รับความนิยมในหมู่บริษัทขนาดเล็กอย่างไร และเพิ่มโอกาสในการทำให้พวกเขาเติบโตและทำให้คู่แข่งได้เปรียบ
เมื่อเร็ว ๆ นี้ Apple เปิดตัว macOS Catalina 10.15.4 การอัปเดตเสริมเพื่อแก้ไขปัญหา แต่ดูเหมือนว่าการอัปเดตทำให้เกิดปัญหามากขึ้นที่นำไปสู่การสร้างเครื่อง Mac อ่านบทความนี้เพื่อเรียนรู้เพิ่มเติม
13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data
คอมพิวเตอร์ของเราจัดเก็บข้อมูลทั้งหมดในลักษณะที่เรียกว่าระบบไฟล์บันทึก เป็นวิธีการที่มีประสิทธิภาพที่ช่วยให้คอมพิวเตอร์สามารถค้นหาและแสดงไฟล์ได้ทันทีที่คุณกดค้นหาhttps://wethegeek.com/?p=94116&preview=true