16 ตัวอย่างการใช้งานจริงของคำสั่ง Rsync ใน Linux
Rsync (Remote Sync) เป็นคำสั่งที่ใช้บ่อยที่สุดสำหรับการคัดลอกและซิงโครไนซ์ไฟล์และไดเรกทอรีจากระยะไกลและในเครื่องในระบบ Linux/Unix
ด้วยความช่วยเหลือของคำสั่ง rsync คุณสามารถคัดลอกและซิงโครไนซ์ข้อมูลของคุณจากระยะไกลและภายในเครื่องระหว่างไดเร็กทอรี ดิสก์ และเครือข่าย ทำการสำรองข้อมูล และมิเรอร์ระหว่างเครื่อง Linux สองเครื่อง
บทความนี้จะอธิบายการใช้คำสั่ง rsync ขั้นพื้นฐานและขั้นสูง 16 เพื่อถ่ายโอนไฟล์ของคุณจากระยะไกลและภายในเครื่องในเครื่อง ที่ใช้ Linux คุณไม่จำเป็นต้องเป็นผู้ใช้ รูท เพื่อรันคำสั่ง rsync
ข้อดีของคำสั่ง Rsync
มีข้อดีหลายประการ ได้แก่:
- การถ่ายโอนไฟล์ที่มีประสิทธิภาพ – rsync ใช้อัลกอริธึมการถ่ายโอนแบบเดลต้า ซึ่งหมายความว่าจะถ่ายโอนเฉพาะความแตกต่างระหว่างไฟล์ต้นทางและปลายทางเท่านั้น ซึ่งจะลดปริมาณข้อมูลที่ถ่ายโอนลงอย่างมาก ทำให้มีประสิทธิภาพในการซิงค์ไฟล์หรือไดเรกทอรีขนาดใหญ่
- การซิงโครไนซ์ไฟล์ระยะไกล – rsync รองรับการถ่ายโอนไฟล์ทั้งภายในเครื่องและระยะไกลผ่าน SSH ซึ่งช่วยให้สามารถซิงโครไนซ์ระหว่างระบบภายในและระบบระยะไกล หรือการมิเรอร์ไดเร็กทอรีข้ามเครื่องหลายเครื่อง
- การสำรองข้อมูลส่วนเพิ่ม – rsync เหมาะอย่างยิ่งสำหรับการสำรองข้อมูลส่วนเพิ่ม เนื่องจากจะสร้างและอัปเดตการสำรองข้อมูลอย่างมีประสิทธิภาพโดยการถ่ายโอนเฉพาะไฟล์ใหม่หรือไฟล์ที่แก้ไขเท่านั้น
- รักษาสิทธิ์ของไฟล์ – rsync สามารถรักษาคุณลักษณะของไฟล์ต่างๆ เช่น สิทธิ์ ความเป็นเจ้าของ การประทับเวลา และลิงก์สัญลักษณ์ ซึ่งช่วยให้มั่นใจได้ว่าไฟล์ที่คัดลอกจะคงลักษณะเฉพาะดั้งเดิมไว้ที่ปลายทาง
- การควบคุมแบนด์วิธ – rsync ช่วยให้คุณสามารถจำกัดการใช้แบนด์วิดท์ในระหว่างการถ่ายโอนไฟล์ เนื่องจากจะใช้วิธีการบีบอัดและคลายการบีบอัดในขณะที่ส่งและรับข้อมูลทั้งสองด้าน
- เร็วกว่า – rsync สามารถเร็วกว่า scp (Secure Copy) สำหรับการถ่ายโอนไฟล์ โดยเฉพาะอย่างยิ่งเมื่อซิงค์ไดเร็กทอรีขนาดใหญ่ หรือเมื่อต้องจัดการกับไฟล์ที่มีการโอนบางส่วนแล้วหรือมีอยู่บนปลายทาง
ไวยากรณ์คำสั่ง Rsync
คำสั่ง rsync เป็นไปตามไวยากรณ์ต่อไปนี้:
rsync [OPTIONS] SOURCE DESTINATION
ต่อไปนี้เป็นคำอธิบายเกี่ยวกับส่วนประกอบและตัวเลือกต่างๆ ที่ใช้กับคำสั่ง rsync:
-v
– เอาต์พุตแบบละเอียด ซึ่งแสดงข้อมูลโดยละเอียดเกี่ยวกับการถ่ายโอน-r
– คัดลอกข้อมูลแบบวนซ้ำ (แต่ไม่รักษาการประทับเวลาและการอนุญาตขณะถ่ายโอนข้อมูล-a
– โหมดเก็บถาวร ซึ่งอนุญาตให้คัดลอกไฟล์แบบวนซ้ำ และยังรักษาลิงก์สัญลักษณ์ การอนุญาตของไฟล์ ความเป็นเจ้าของของผู้ใช้และกลุ่ม และการประทับเวลา-z
– บีบอัดไฟล์ระหว่างการถ่ายโอนเพื่อลดการใช้งานเครือข่าย-h
– ตัวเลขที่มนุษย์อ่านได้ และเอาต์พุตในรูปแบบที่มนุษย์สามารถอ่านได้-P
– แสดงความคืบหน้าระหว่างการโอนSOURCE
– ระบุไฟล์ต้นฉบับหรือไดเร็กทอรีที่จะถ่ายโอน ซึ่งอาจอยู่ในเครื่องหรือตำแหน่งระยะไกลก็ได้DESTINATION
– ระบุเส้นทางปลายทางที่จะคัดลอกไฟล์หรือไดเร็กทอรี เช่นเดียวกับแหล่งที่มา อาจเป็นเส้นทางในเครื่องหรือสถานที่ระยะไกลก็ได้
ติดตั้ง Rsync ในระบบ Linux
เราสามารถติดตั้งแพ็คเกจ rsync ได้ด้วยความช่วยเหลือของตัวจัดการแพ็คเกจต่อไปนี้ตามการกระจาย Linux ของคุณ
sudo apt install rsync [On Debian, Ubuntu and Mint]
sudo yum install rsync [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/rsync [On Gentoo Linux]
sudo apk add rsync [On Alpine Linux]
sudo pacman -S rsync [On Arch Linux]
sudo zypper install rsync [On OpenSUSE]
1. คัดลอก/ซิงค์ไฟล์ในเครื่อง
หากต้องการคัดลอกหรือซิงค์ไฟล์ในเครื่อง คุณสามารถใช้คำสั่งต่อไปนี้ซึ่งจะซิงค์ไฟล์เดียวบนเครื่องท้องถิ่นจากที่หนึ่งไปยังอีกที่หนึ่ง
ในตัวอย่างนี้ ชื่อไฟล์ backup.tar จำเป็นต้องคัดลอกหรือซิงค์กับโฟลเดอร์ /tmp/backups/
[root@tecmint]# rsync -zvh backup.tar.gz /tmp/backups/
created directory /tmp/backups
backup.tar.gz
sent 224.54K bytes received 70 bytes 449.21K bytes/sec
total size is 224.40K speedup is 1.00
ในตัวอย่างข้างต้น คุณจะเห็นว่าหากไม่มีปลายทางอยู่แล้ว rsync จะสร้างไดเร็กทอรีสำหรับปลายทางโดยอัตโนมัติ
2. คัดลอก/ซิงค์ไดเร็กทอรีในเครื่อง
คำสั่งต่อไปนี้จะถ่ายโอนหรือซิงค์ไฟล์ทั้งหมดจากไดเร็กทอรีหนึ่งไปยังไดเร็กทอรีอื่นในเครื่องเดียวกัน
ในตัวอย่างนี้ /root/rpmpkgs มีไฟล์แพ็กเกจ rpm บางไฟล์ และคุณต้องการคัดลอกไดเร็กทอรีนั้นภายในโฟลเดอร์ /tmp/backups/
[root@tecmint]# rsync -avzh /root/rpmpkgs /tmp/backups/
sending incremental file list
rpmpkgs/
rpmpkgs/httpd-2.4.37-40.module_el8.5.0+852+0aafc63b.x86_64.rpm
rpmpkgs/mod_ssl-2.4.37-40.module_el8.5.0+852+0aafc63b.x86_64.rpm
rpmpkgs/nagios-4.4.6-4.el8.x86_64.rpm
rpmpkgs/nagios-plugins-2.3.3-5.el8.x86_64.rpm
sent 3.47M bytes received 96 bytes 2.32M bytes/sec
total size is 3.74M speedup is 1.08
3. คัดลอกไดเรกทอรีจากภายในเครื่องไปยังเซิร์ฟเวอร์ระยะไกล
หากต้องการคัดลอกไดเร็กทอรีจากเซิร์ฟเวอร์ภายในเครื่องไปยังเซิร์ฟเวอร์ระยะไกล คุณสามารถใช้คำสั่งต่อไปนี้ ซึ่งจะซิงค์ไดเร็กทอรีจากภายในเครื่องไปยังเครื่องระยะไกล
ตัวอย่างเช่น หากมีโฟลเดอร์ในคอมพิวเตอร์ของคุณ “rpmpkgs ” ที่มีแพ็คเกจ RPM บางส่วน และหากคุณต้องการให้เนื้อหาของไดเรกทอรีในเครื่องส่ง ไปยังเซิร์ฟเวอร์ระยะไกล คุณสามารถใช้คำสั่งต่อไปนี้
rsync -avzh /root/rpmpkgs [email :/root/
The authenticity of host '192.168.0.141 (192.168.0.141)' can't be established.
ED25519 key fingerprint is SHA256:bH2tiWQn4S5o6qmZhmtXcBROV5TU5H4t2C42QDEMx1c.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.0.141' (ED25519) to the list of known hosts.
[email 's password:
sending incremental file list
rpmpkgs/
rpmpkgs/httpd-2.4.37-40.module_el8.5.0+852+0aafc63b.x86_64.rpm
rpmpkgs/mod_ssl-2.4.37-40.module_el8.5.0+852+0aafc63b.x86_64.rpm
rpmpkgs/nagios-4.4.6-4.el8.x86_64.rpm
rpmpkgs/nagios-plugins-2.3.3-5.el8.x86_64.rpm
sent 3.74M bytes received 96 bytes 439.88K bytes/sec
total size is 3.74M speedup is 1.00
4. คัดลอกไดเร็กทอรีจากระยะไกลไปยังเซิร์ฟเวอร์ภายในเครื่อง
คำสั่งนี้จะช่วยคุณซิงค์ไดเร็กทอรีระยะไกลกับไดเร็กทอรีในเครื่อง ในตัวอย่างนี้ ไดเรกทอรี /root/rpmpkgs ซึ่งอยู่บนเซิร์ฟเวอร์ระยะไกลกำลังถูกคัดลอกไปยังเครื่องคอมพิวเตอร์ของคุณใน /tmp/myrpms
rsync -avzh [email :/root/rpmpkgs /tmp/myrpms
[email 's password:
receiving incremental file list
created directory /tmp/myrpms
rpmpkgs/
rpmpkgs/httpd-2.4.37-40.module_el8.5.0+852+0aafc63b.x86_64.rpm
rpmpkgs/mod_ssl-2.4.37-40.module_el8.5.0+852+0aafc63b.x86_64.rpm
rpmpkgs/nagios-4.4.6-4.el8.x86_64.rpm
rpmpkgs/nagios-plugins-2.3.3-5.el8.x86_64.rpm
sent 104 bytes received 3.49M bytes 997.68K bytes/sec
total size is 3.74M speedup is 1.07
5. Rsync บน SSH
ด้วย rsync เราสามารถใช้ SSH (Secure Shell) สำหรับการถ่ายโอนข้อมูลได้ โดยใช้โปรโตคอล SSH ในขณะที่ถ่ายโอนข้อมูลของเรา คุณสามารถมั่นใจได้ว่าข้อมูลของคุณจะถูกถ่ายโอนในการเชื่อมต่อที่ปลอดภัย ด้วยการเข้ารหัสเพื่อให้ไม่มีใครสามารถอ่านข้อมูลของคุณในขณะที่กำลังถ่ายโอนผ่านสายบนอินเทอร์เน็ต
นอกจากนี้ เมื่อเราใช้ rsync เราจำเป็นต้องระบุรหัสผ่าน ผู้ใช้/รูท เพื่อทำงานนั้นให้สำเร็จ ดังนั้นการใช้ SSH ตัวเลือก จะส่งการเข้าสู่ระบบของคุณในลักษณะที่เข้ารหัสเพื่อให้ รหัสผ่าน ของคุณปลอดภัย
หากต้องการใช้ rsync บน SSH คุณสามารถใช้ตัวเลือก -e
เพื่อระบุคำสั่งเชลล์ระยะไกล ซึ่งโดยทั่วไปจะเป็น ssh ตามที่แสดง
rsync [OPTIONS] -e ssh /path/to/source user@remote:/path/to/destination
6. คัดลอกไฟล์จากเซิร์ฟเวอร์ระยะไกลไปยังเซิร์ฟเวอร์ภายในเครื่องด้วย SSH
หากต้องการซิงโครไนซ์ไฟล์จากเซิร์ฟเวอร์ระยะไกลไปยังเซิร์ฟเวอร์ภายในเครื่อง คุณสามารถระบุโปรโตคอลด้วย rsync โดยใช้ตัวเลือก “-e ” พร้อมชื่อโปรโตคอลที่คุณต้องการใช้
ในตัวอย่างนี้ เราจะใช้ “ssh ” กับตัวเลือก “-e ” และดำเนินการถ่ายโอนข้อมูล
rsync -avzhe ssh [email :/root/anaconda-ks.cfg /tmp
[email 's password:
receiving incremental file list
anaconda-ks.cfg
sent 43 bytes received 1.10K bytes 325.43 bytes/sec
total size is 1.90K speedup is 1.67
7. คัดลอกไฟล์จากเซิร์ฟเวอร์ภายในเครื่องไปยังเซิร์ฟเวอร์ระยะไกลด้วย SSH
หากต้องการซิงโครไนซ์ไฟล์จากเซิร์ฟเวอร์ภายในเครื่องไปยังเซิร์ฟเวอร์ระยะไกลโดยใช้ SSH คุณสามารถใช้คำสั่งต่อไปนี้ดังที่แสดง
rsync -avzhe ssh backup.tar.gz [email :/backups/
[email 's password:
sending incremental file list
created directory /backups
backup.tar.gz
sent 224.59K bytes received 66 bytes 64.19K bytes/sec
total size is 224.40K speedup is 1.00
8. แสดงความคืบหน้าขณะถ่ายโอนข้อมูลด้วย Rsync
หากต้องการแสดงความคืบหน้าขณะถ่ายโอนข้อมูลจากเครื่องหนึ่งไปยังอีกเครื่องหนึ่ง เราสามารถใช้ตัวเลือก '--progress'
ซึ่งจะแสดงไฟล์และเวลาที่เหลืออยู่ในการถ่ายโอนให้เสร็จสิ้น
rsync -avzhe ssh --progress /root/rpmpkgs [email :/root/rpmpkgs
[email 's password:
sending incremental file list
rpmpkgs/
rpmpkgs/httpd-2.4.37-40.module_el8.5.0+852+0aafc63b.x86_64.rpm
1.47M 100% 31.80MB/s 0:00:00 (xfr#1, to-chk=3/5)
rpmpkgs/mod_ssl-2.4.37-40.module_el8.5.0+852+0aafc63b.x86_64.rpm
138.01K 100% 2.69MB/s 0:00:00 (xfr#2, to-chk=2/5)
rpmpkgs/nagios-4.4.6-4.el8.x86_64.rpm
2.01M 100% 18.45MB/s 0:00:00 (xfr#3, to-chk=1/5)
rpmpkgs/nagios-plugins-2.3.3-5.el8.x86_64.rpm
120.48K 100% 1.04MB/s 0:00:00 (xfr#4, to-chk=0/5)
sent 3.74M bytes received 96 bytes 1.50M bytes/sec
total size is 3.74M speedup is 1.00
9. รวมไฟล์ที่มีนามสกุลเฉพาะด้วย Rsync
หากต้องการรวมไฟล์หรือรูปแบบเฉพาะระหว่างการดำเนินการ rsync คุณสามารถใช้ตัวเลือก --include
พร้อมนามสกุลที่ตรงกับไฟล์ทั้งหมด
rsync -avz --include='*.txt' /path/to/source/ user@remote:/path/to/destination/
ในตัวอย่างที่ให้ไว้ rsync จะรวมเฉพาะไฟล์ที่มีนามสกุล .txt
จากไดเร็กทอรี /path/to/source/ ในระหว่างการถ่ายโอน
10. ยกเว้นไฟล์ที่มีนามสกุลเฉพาะด้วย Rsync
ในทำนองเดียวกัน หากต้องการยกเว้นส่วนขยายเฉพาะระหว่างการดำเนินการ rsync คุณสามารถใช้ตัวเลือก --exclude
ด้วยรูปแบบไวด์การ์ด
rsync -avz --exclude='*.ext' /path/to/source/ user@remote:/path/to/destination/
ในตัวอย่างที่ให้มา rsync จะยกเว้นไฟล์ที่มีนามสกุล (*.ext)
ที่ระบุในระหว่างการถ่ายโอน ในขณะที่รวมไฟล์และไดเร็กทอรีอื่นๆ ทั้งหมดไว้ด้วย
11. รวมและแยกไฟล์ด้วย Rsync
หากต้องการรวมและยกเว้นไฟล์หรือรูปแบบเฉพาะระหว่างการดำเนินการ rsync คุณสามารถใช้ทั้งตัวเลือก --include
และ --exclude
ด้วยรูปแบบ wildcard ที่เหมาะสม
สองตัวเลือกนี้ช่วยให้เราสามารถ รวม และ ยกเว้น ไฟล์โดยการระบุพารามิเตอร์ ตัวเลือกเหล่านี้ช่วยให้เราระบุไฟล์หรือไดเรกทอรีที่คุณต้องการรวมในการซิงค์ของคุณ และยกเว้นไฟล์และโฟลเดอร์ ที่คุณไม่ต้องการโอน
ในตัวอย่างนี้ คำสั่ง rsync จะรวมเฉพาะไฟล์และไดเร็กทอรีที่ขึ้นต้นด้วย 'R'
และไม่รวมไฟล์และไดเร็กทอรีอื่นๆ ทั้งหมด
rsync -avze ssh --include 'R*' --exclude '*' [email :/var/lib/rpm/ /root/rpm
12. การใช้ตัวเลือก –delete กับ Rsync
หากไม่มีไฟล์หรือไดเร็กทอรีอยู่ที่ต้นทาง แต่มีอยู่แล้วที่ปลายทาง คุณอาจต้องการลบไฟล์/ไดเร็กทอรีที่มีอยู่ที่เป้าหมายขณะทำการซิงค์
เราสามารถใช้ตัวเลือก '--delete
' เพื่อลบไฟล์ที่ไม่มีอยู่ในไดเร็กทอรีต้นทาง
แหล่งที่มาและเป้าหมายซิงค์กัน ตอนนี้สร้างไฟล์ใหม่ test.txt ที่เป้าหมาย
[root@tecmint:~]# cd /root/rpm/
[root@tecmint:~/rpm]# touch test.txt
[root@tecmint:~/rpm]# rsync -avz --delete [email :/var/lib/rpm/ /root/rpm/
[email 's password:
receiving incremental file list
deleting test.txt
./
.dbenv.lock
.rpm.lock
Basenames
Conflictname
Dirnames
Enhancename
Filetriggername
Group
Installtid
Name
Obsoletename
Packages
Providename
Sha1header
Sigmd5
Suggestname
Supplementname
Transfiletriggername
Triggername
__db.001
__db.002
__db.003
sent 445 bytes received 18,543,954 bytes 2,472,586.53 bytes/sec
total size is 71,151,616 speedup is 3.84
Target มีไฟล์ใหม่ชื่อ test.txt เมื่อซิงโครไนซ์กับแหล่งที่มาด้วยตัวเลือก '–delete
' เป้าหมายก็จะลบไฟล์ test.txt .
13. ตั้งค่าขีดจำกัดการถ่ายโอนไฟล์ด้วย Rsync
คุณสามารถระบุขนาดไฟล์ สูงสุด ที่จะโอนหรือซิงค์ได้ คุณสามารถทำได้ด้วยตัวเลือก “--max-size
” ในตัวอย่างนี้ ขนาดไฟล์สูงสุดคือ 200k ดังนั้นคำสั่งนี้จะถ่ายโอนเฉพาะไฟล์ที่เท่ากับหรือเล็กกว่า 200k
rsync -avzhe ssh --max-size='200k' /var/lib/rpm/ [email :/root/tmprpm
[email 's password:
sending incremental file list
created directory /root/tmprpm
./
.dbenv.lock
.rpm.lock
Conflictname
Enhancename
Filetriggername
Group
Installtid
Name
Obsoletename
Recommendname
Requirename
Sha1header
Sigmd5
Suggestname
Supplementname
Transfiletriggername
Triggername
__db.002
sent 129.52K bytes received 396 bytes 28.87K bytes/sec
total size is 71.15M speedup is 547.66
14. ลบไฟล์ต้นฉบับโดยอัตโนมัติหลังจากถ่ายโอน
ตอนนี้ สมมติว่าคุณมีเว็บเซิร์ฟเวอร์หลักและเซิร์ฟเวอร์สำรองข้อมูล คุณสร้างการสำรองข้อมูลรายวันและซิงค์กับเซิร์ฟเวอร์สำรองของคุณ แต่ตอนนี้คุณไม่ต้องการเก็บสำเนาข้อมูลสำรองในเครื่องไว้ในเว็บเซิร์ฟเวอร์ของคุณ
ดังนั้น คุณจะรอให้การถ่ายโอนเสร็จสิ้นแล้วลบไฟล์สำรองข้อมูลในเครื่องด้วยตนเองหรือไม่ แน่นอนหมายเลข การลบอัตโนมัตินี้สามารถทำได้โดยใช้ตัวเลือก '--remove-source-files
'
rsync --remove-source-files -zvh backup.tar.gz [email :/tmp/backups/
[email 's password:
backup.tar.gz
sent 795 bytes received 2.33K bytes 894.29 bytes/sec
total size is 267.30K speedup is 85.40
[root@tecmint:~]# ls -l backup.tar.gz
ls: cannot access 'backup.tar.gz': No such file or directory
15. ทำการวิ่งแบบแห้งด้วย Rsync
หากคุณเป็นมือใหม่ที่ใช้ rsync และไม่รู้ว่าคำสั่งของคุณจะทำอะไรกันแน่ Rsync อาจทำให้สิ่งต่าง ๆ ในโฟลเดอร์ปลายทางของคุณยุ่งเหยิงได้จริง ๆ และการเลิกทำอาจเป็นงานที่น่าเบื่อ
การใช้ตัวเลือกนี้จะไม่ทำการเปลี่ยนแปลงใดๆ กับไฟล์และแสดงผลลัพธ์ของคำสั่ง หากผลลัพธ์แสดงเหมือนกับที่คุณต้องการทำทุกประการ คุณสามารถลบคำสั่ง '--dry-run
ออกได้ ' ตัวเลือกจากคำสั่งของคุณและรันบนเทอร์มินัล
rsync --dry-run --remove-source-files -zvh backup.tar.gz [email :/tmp/backups/
[email 's password:
backup.tar.gz
sent 50 bytes received 19 bytes 19.71 bytes/sec
total size is 267.30K speedup is 3,873.97 (DRY RUN)
16. Rsync ตั้งค่าขีดจำกัดแบนด์วิธและถ่ายโอนไฟล์
คุณสามารถตั้งค่าขีดจำกัดแบนด์วิธขณะถ่ายโอนข้อมูลจากเครื่องหนึ่งไปยังอีกเครื่องหนึ่งได้โดยใช้ตัวเลือก '--bwlimit
' ตัวเลือกนี้ช่วยให้เราจำกัดแบนด์วิดท์ I/O ได้
rsync --bwlimit=100 -avzhe ssh /var/lib/rpm/ [email :/root/tmprpm/
[email 's password:
sending incremental file list
sent 324 bytes received 12 bytes 61.09 bytes/sec
total size is 38.08M speedup is 113347.05
นอกจากนี้ ตามค่าเริ่มต้น การซิงค์ rsync จะเปลี่ยนบล็อกและไบต์เท่านั้น หากคุณต้องการซิงค์ไฟล์ทั้งหมดอย่างชัดเจน คุณจะต้องใช้ตัวเลือก '-W' กับมัน
rsync -zvhW backup.tar /tmp/backups/backup.tar
backup.tar
sent 14.71M bytes received 31 bytes 3.27M bytes/sec
total size is 16.18M speedup is 1.10
บทสรุป
ซึ่งเป็นการสรุปภาพรวมของ rsync และความสามารถของมัน สำหรับการสำรวจตัวเลือกและฟังก์ชันการทำงานที่หลากหลายเพิ่มเติม ฉันขอแนะนำให้คุณดูหน้าคู่มือที่ครอบคลุม (หน้าคู่มือ) ที่มีให้