Unix & Linux

คำถาม & คำตอบสำหรับผู้ใช้ Linux, FreeBSD และระบบปฏิบัติการ Un * x อื่น ๆ

1
ใช้ rsync ซ้ำ - เอาต์พุตที่รันช้าเพื่อเพิ่มความเร็วในการถ่ายโอนจริงในภายหลัง
ฉันมักจะทำก่อนที่จะทำจริงrsync -n rsyncสิ่งคือฉันจะทำให้การรันครั้งที่สองโดยอัตโนมัติเพื่อนำรายการที่สร้างขึ้นมาใหม่ได้--dry-runอย่างไร ฉันหมายความว่าถ้าฉันวิ่งrsync -nแล้วฉันจะได้รับการจำลองว่าrsyncจะทำอย่างไรความคิดของฉันก็คือเอาผลลัพธ์นั้นมาประมวลผลมันก็จะสร้างrsyncเฉพาะ--include-fromผลผลิตนั้นดังนั้นรายการทั้งหมดจะต้องคำนวณเพียงครั้งเดียว หากนี่ไม่สมเหตุสมผลโปรดแจ้งให้เราทราบ rsync -hva --progress --stats --delete --exclude-from "$EXCLUDEFILE"โดยวิธีการที่ฉันมักจะใช้ หากคุณมีข้อเสนอแนะเกี่ยวกับตัวเลือกที่คุณจะใช้โปรดแจ้งให้เราทราบ ฉันพยายามทำซ้ำเนื้อหาของฮาร์ดไดรฟ์ภายนอก (ซึ่งมีเฉพาะภาพวิดีโอและเอกสาร) ไปยังฮาร์ดไดรฟ์ภายนอกอื่น

4
การใช้ตัวเลือก -f สำหรับ `touch 'คืออะไร?
จากman touch: -f (ignored) แต่ฉันไม่ได้รับสิ่งที่หมายโดยไม่สนใจ ฉันได้ลองทำดังนี้: $ ls -l file -rw-rw-r-- 1 pandya pandya 0 Mar 20 16:17 file $ touch -f file $ ls -l file -rw-rw-r-- 1 pandya pandya 0 Mar 20 16:18 file -fและสังเกตเห็นว่ามันมีการเปลี่ยนแปลงการประทับเวลาทั้งๆที่ ดังนั้นฉันต้องการรู้ว่าสิ่งใด-fเป็นสิ่งที่ดี
23 coreutils  touch 

5
วิธีปิดการจัดการพลังงานไร้สายอย่างถาวร
ในลินุกซ์มิ้นท์ 17.3 / 18 iwconfigกล่าวว่าการจัดการพลังงานของการ์ดไร้สายของฉันคือการเปิด ฉันต้องการปิดการใช้งานอย่างถาวรหรือแก้ไขปัญหาบางอย่างในปัญหานี้ sudo iwconfig wlan0 power off ทำงานได้จนกว่าฉันจะรีบูตแล็ปท็อป นอกจากนี้หากฉันสุ่มตรวจสอบiwconfigบางครั้งก็เปิดแม้ว่าฉันจะเรียกใช้คำสั่งนี้ ฉันอ่านบทความเกี่ยวกับการแก้ไขปัญหาอย่างถาวร พวกเขาทั้งหมดมีขั้นตอนแรก "ไปที่ไดเรกทอรี/etc/pm/power.d" ซึ่งในกรณีของฉันไม่ได้อยู่ ฉันทำตามขั้นตอนเหล่านี้: sudo mkdir -p /etc/pm/power.d sudo nano /etc/pm/power.d/wireless_power_management_off ฉันป้อนสองบรรทัดลงในไฟล์: #!/bin/bash /sbin/iwconfig wlan0 power off และฉันเสร็จสิ้นการตั้งค่าสิทธิ์ผู้ใช้ที่เหมาะสม: sudo chmod 700 /etc/pm/power.d/wireless_power_management_off แต่หลังจากรีบูตการจัดการพลังงานจะเปิดขึ้น iwconfig หลังจากปิดการจัดการพลังงานด้วยตนเอง eth0 no wireless extensions. wlan0 IEEE 802.11abgn ESSID:"SSID" Mode:Managed Frequency:2.462 GHz …

3
วิธีการป้องกันเอาท์พุทคอนโซลแบบสุ่มไม่ให้แตกขั้ว?
มีคำถามมากมายเกี่ยวกับ SE cat /dev/urandomที่แสดงวิธีการกู้คืนจากสถานีทำลายโดยมี สำหรับผู้ที่ไม่คุ้นเคยกับปัญหานี้ - นี่คือสิ่งที่เกี่ยวกับ: คุณดำเนินการcat /dev/urandomหรือเทียบเท่า (ตัวอย่างcat binary_file.dat) ขยะถูกพิมพ์ ที่จะโอเค ... ยกเว้น terminal ของคุณยังคงพิมพ์ขยะแม้กระทั่งหลังจากที่คำสั่งเสร็จเรียบร้อยแล้ว! นี่คือภาพหน้าจอของข้อความที่พิมพ์ผิดที่อยู่ในความเป็นจริงเอาต์พุต g ++: ฉันเดาว่าคนที่ถูกต้องเกี่ยวกับข้อผิดพลาด C ++ บางครั้งก็เป็นความลับเกินไป! วิธีการแก้ปัญหาตามปกติคือการเรียกใช้stty sane && resetแม้ว่ามันจะน่ารำคาญที่จะเรียกใช้ทุกครั้งที่เกิดเหตุการณ์นี้ ด้วยเหตุนี้สิ่งที่ฉันต้องการมุ่งเน้นในคำถามนี้คือเหตุผลดั้งเดิมว่าทำไมสิ่งนี้จึงเกิดขึ้นและวิธีป้องกันมิให้เครื่องแตกหลังจากคำสั่งดังกล่าวออก ฉันไม่ได้มองหาวิธีแก้ปัญหาเช่นการส่งคำสั่งที่ละเมิดไปtrหรือxxdเพราะคุณต้องรู้ว่าโปรแกรม / ไฟล์เอาต์พุตไบนารีก่อนที่คุณจะเรียกใช้ / พิมพ์จริงและจำเป็นต้องจดจำทุกครั้งที่คุณส่งออกข้อมูลดังกล่าว . ฉันสังเกตเห็นพฤติกรรมเดียวกันใน URxvt, PuTTY และ Linux frame buffer ดังนั้นฉันไม่คิดว่านี่เป็นปัญหาเฉพาะเทอร์มินัล ผู้ต้องสงสัยหลักของฉันคือการที่เอาท์พุทแบบสุ่มมีบางส่วนหลบหนีรหัส ANSI ที่พลิกเข้ารหัสอักขระ (ในความเป็นจริงถ้าคุณเรียกใช้cat /dev/urandomอีกครั้งโอกาสที่มันจะUnbreakขั้วซึ่งดูเหมือนจะยืนยันทฤษฎีนี้) หากนี่ถูกต้องรหัสหลบหนีนี้คืออะไร มีวิธีมาตรฐานในการปิดการใช้งานหรือไม่

1
จะค้นหาบันทึกการให้บริการที่เริ่มต้นโดย systemd เมื่อบูตเครื่องได้ที่ไหน
ฉันใช้ Debian ที่ไม่เสถียรsystemdเมื่อเริ่มระบบฉันมีบริการบางอย่างที่ทำเครื่องหมายว่าFAILED(ไม่ใช่OK) แต่บันทึกเร็วเกินไปสำหรับฉันที่จะคว้าชื่อบริการที่ล้มเหลว ฉันสงสัยว่ามีวิธีที่จะได้รับการบันทึกบูตครั้งนี้เป็นระบบที่ขึ้นและทำงาน (ผมไม่ได้พูดเกี่ยวกับบันทึก kernel ซึ่งสามารถเข้าถึงได้ด้วยdmesgแต่services) และ, service --status-allไม่ได้ช่วยจริงๆเพราะมันแสดงรายการบริการที่เปิด / ปิด แต่ไม่ได้ที่ล้มเหลวในการบูต ดังนั้นคำใบ้ใด ๆ ยินดีต้อนรับ!
23 debian  systemd 

1
มีหน้าคู่มือใด ๆ สำหรับเอาต์พุตเชลล์สีหรือไม่?
คุณรู้ไหมว่าเอาต์พุตที่เป็นสีที่ทำโดยลำดับอักขระพิเศษเช่น: echo -e "\e[34m Hello\n \e[0m" สิ่งนี้จะสร้างคำว่า "Hello" ที่มีสีฟ้า เมื่อต้องการทำสิ่งนี้ฉันต้องค้นหาบนเว็บและมันยากเพราะแหล่งที่มาที่แตกต่างกันอาจพูดอะไรที่แตกต่างออกไป ฉันคิดว่าต้องมีคู่มือบางอย่าง แต่ฉันหาไม่เจอ แม้จะมีapropos colorหรือสิ่งที่คล้ายกัน ดังนั้นคำถามคือ - ฉันจะหาคู่มือที่เชื่อถือได้ที่ไหน?

2
วิธีการทำให้ gpg ค้นหาตัวแทน gpg
ใน Fedora 22, gpg ไม่พบตัวแทน gpg: % gpg-agent --daemon % gpg -vvv --use-agent --no-tty --decrypt file.gpg gpg: using character set `utf-8' :pubkey enc packet: version 3, algo 1, keyid 3060B8F7271AFBAF data: [4094 bits] gpg: public key is 271AFBAF gpg: using subkey 271AFBAF instead of primary key 50EA64D5 gpg: using subkey …
23 gpg  gpg-agent 

7
มีการกระจายที่สนับสนุนการย้อนกลับแพ็คเกจที่อัพเดตหรือไม่
มีเครื่องมือหรือแม้กระทั่งการแจกจ่ายทั้งหมดที่รองรับแพ็คเกจการเปลี่ยนย้อนกลับหลังการอัพเดทหรือไม่? เป็นตัวอย่าง: ฉันอัปเกรดแพ็คเกจ A, B และ C หลังจากทำงานกับแพ็คเกจเหล่านั้นเป็นเวลาหลายวันฉันพบข้อบกพร่องใน B ที่ทำลายข้อตกลง ในขณะที่ฉันส่งรายงานข้อผิดพลาดฉันต้องลดระดับ B เป็นรุ่นก่อนหน้าเพื่อให้ฉันสามารถทำสิ่งที่ฉันกำลังจะทำ ในขณะที่ A ขึ้นอยู่กับ B ดังนั้นจึงจำเป็นต้องลดระดับเช่นกัน แต่ C นั้นเป็นอิสระจากทั้งคู่ดังนั้นจึงสามารถอยู่ในเวอร์ชันปัจจุบันได้ มีเครื่องมือหรือการแจกจ่ายที่สนับสนุนสิ่งนี้หรือไม่? ฉันรู้ว่าการกระจายส่วนใหญ่มีวิธีการลดระดับแพ็คเกจ แต่มักจะเป็นแบบร่างหรือเป็นไปไม่ได้เพราะแพ็คเกจก่อนหน้าถูกลบออกจากที่เก็บและบางกรณี (เช่นหลังจากอัปเกรดเซิร์ฟเวอร์ X และ Mesa) จะได้รับจริงๆ .. ยุ่ง

5
การเรียกระบบใดที่ใช้เพื่อโหลดไลบรารีใน Linux
ในstraceเอาต์พุตพา ธ ไปยังไลบรารีที่เรียกใช้งานการเรียกใช้อยู่ในการเรียกopen()ใช้ นี่เป็นการเรียกระบบที่ใช้โดยโปรแกรมที่เชื่อมโยงแบบไดนามิกหรือไม่? เกี่ยวกับdlopen()อะไร open()ไม่ใช่สายที่ฉันเดาได้ว่าจะมีบทบาทในการทำงานของโปรแกรม

4
มีอะไรพิเศษเกี่ยวกับการอนุญาต Linux 004
ฉันกำลังอ่านPractical Unix และ Internet Securityเมื่อฉันเจอบรรทัดต่อไปนี้ซึ่งฉันไม่สามารถเข้าใจได้ หากคุณใช้เซิร์ฟเวอร์เก็บถาวรของ wu คุณสามารถกำหนดค่าในลักษณะที่อัพโหลดไฟล์จะถูกอัพโหลดในโหมด 004ดังนั้นไคลเอ็นต์อื่นไม่สามารถ ดาวน์โหลดได้ สิ่งนี้ให้ความคุ้มครองที่ดีกว่าการทำให้ไดเรกทอรีอ่านไม่ได้เนื่องจากป้องกันผู้คนจากการอัพโหลดไฟล์แล้วบอกชื่อไฟล์ให้เพื่อนดาวน์โหลด ได้รับอนุญาตจาก 004 -------r--สอดคล้องกับ ไม่สามารถดาวน์โหลดไฟล์ได้หากมันมีการเข้าถึงเพื่ออ่าน? ทำไมมันจึงถือว่าดีกว่าการทำให้ไดเรกทอรีไม่สามารถอ่านได้? สิ่งนี้หมายความว่าอย่างไร หมายเหตุ: สิ่งนี้เกี่ยวข้องกับผู้ใช้ที่ไม่ได้รับอนุญาตปล่อยเนื้อหาที่ผิดกฎหมายและมีลิขสิทธิ์บนเซิร์ฟเวอร์โดยใช้ FTP ที่ไม่ระบุชื่อ แนะนำวิธีแก้ไขปัญหาข้างต้นเพื่อป้องกันปัญหานี้พร้อมกับสคริปต์ที่ลบเนื้อหาไดเรกทอรีหลังจากช่วงระยะเวลาหนึ่ง

6
วิธีเสียหายไฟล์เก็บถาวรในทางที่ควบคุม?
ฉันเขียนฟังก์ชันที่ตรวจสอบไฟล์เก็บถาวรที่เสียหายโดยใช้การตรวจสอบ CRC เพื่อทดสอบฉันเพิ่งเปิดไฟล์เก็บถาวรและแก้ไขเนื้อหาด้วยโปรแกรมแก้ไขฐานสิบหก ปัญหาคือฉันไม่เชื่อว่านี่เป็นวิธีที่ถูกต้องในการสร้างไฟล์ที่เสียหาย มีวิธีอื่นในการสร้าง "การทุจริตที่มีการควบคุม" ดังนั้นมันจะไม่สุ่มทั้งหมด แต่สามารถจำลองสิ่งที่เกิดขึ้นกับที่เก็บถาวรที่เสียหายจริงหรือไม่? ฉันไม่เคยต้องเสียหายอะไรบางอย่างตามวัตถุประสงค์ดังนั้นฉันจึงไม่แน่ใจว่าจะทำเช่นนั้นอย่างไรนอกเหนือจากการสุ่มตรวจข้อมูลในไฟล์
23 files  corruption 

8
สิทธิ์การเข้าถึงใดที่ผู้ใช้ระดับสูงไม่สามารถละเมิดได้
Fr. br จอร์จบอกในหนึ่งในการบรรยายของเขา (เป็นภาษารัสเซีย) ว่ามีสิทธิ์การเข้าถึงบางส่วนที่ superuser ไม่สามารถละเมิด นั่นคือมีสิทธิ์การเข้าถึงบางอย่างที่สามารถห้ามผู้ใช้ระดับสูงทำบางสิ่งได้ ฉันไม่สามารถค้นหาข้อมูลนี้บนอินเทอร์เน็ตและฉันอยากรู้ว่าพวกเขาคืออะไร นี่อาจเป็นสิ่งที่เกี่ยวข้องกับการประมวลผลหลักของระบบใช่ไหม บางทีเขาไม่สามารถหยุดกระบวนการบางอย่างของระบบ? หรือบางทีเขาไม่สามารถเรียกใช้กระบวนการในโหมดจริงได้? คำถามนี้ไม่เกี่ยวข้องกับ SELinux (จอร์จพูดถึงเรื่องนี้ก่อนคำถาม)

1
Linux กำหนดสิ่งอำนวยความสะดวกในการใช้งานเพื่อเรียกใช้ไบนารี (ที่ไม่ใช่ข้อความ) ได้อย่างไร
ฉันเข้าใจว่า Linux ใช้บรรทัด shebang เพื่อพิจารณาว่าล่ามอะไรที่จะใช้สำหรับภาษาสคริปต์ แต่มันทำงานกับไบนารีได้อย่างไร ฉันหมายถึงฉันสามารถเรียกใช้ไบนารีลินุกซ์และมีการติดตั้งทั้งไวน์และขาวดำ , Windows พื้นเมืองและ. NET ไบนารี และสำหรับพวกเขาทั้งหมดมันเป็นเพียงแค่./binary-name(ถ้าไม่ได้อยู่ใน PATH) เพื่อเรียกใช้ Linux ตรวจสอบได้อย่างไรว่าไบนารีที่กำหนดต้องทำงานเป็นไบนารีเนทิฟ Linux, เป็นไบนารีเนทีฟ Windows (โดยใช้เครื่องอำนวยความสะดวกด้านไวน์ ) หรือเป็นไบนารี Windows .NET (โดยใช้เครื่องอำนวยความสะดวกแบบโมโน )
23 linux  executable 

1
วิธีตรวจสอบ systemd system.journal จากระบบอื่น
ฉันมี arch linux ที่ล้มเหลวบนอุปกรณ์ อุปกรณ์ไม่มีหน้าจอใด ๆ แต่ไม่ตอบสนองต่อเครือข่าย ดังนั้นฉันจึงนำการ์ด SD ใส่ลงในเดสก์ท็อป Ubuntu ดู system.journal ที่นั่นและ ... จะดูว่ามีอะไรอยู่ข้างในได้บ้าง จากเอกสาร Arch Linux ฉันรู้ว่าฉันสามารถทำได้: strings /mnt/arch/var/log/journal/.../system.journal | grep -i message แต่มันเป็นพื้นฐานจริงๆ คำถามคือ: มีวิธีที่สะดวกกว่าในการตรวจสอบ system.journal จากระบบอื่นมากกว่าการใช้สตริงหรือไม่? ยกตัวอย่างเช่นฉันสามารถระบุไฟล์ที่จะอ่านสำหรับjournalctl ได้หรือไม่?

2
/ proc / <pid> / exe symlink แตกต่างจาก symlink ทั่วไปอย่างไร
หากฉันเริ่มต้นกระบวนการแล้วลบไบนารีของมันฉันยังคงสามารถกู้คืนได้จาก/proc/&lt;pid&gt;/exe: $ cp `which sleep` . $ ./sleep 10m &amp; [1] 13728 $ rm sleep $ readlink /proc/13728/exe /tmp/sleep (deleted) $ cp /proc/13728/exe ./sleep-copy $ diff sleep-copy `which sleep` &amp;&amp; echo not different not different $ stat /proc/13728/exe File: ‘/proc/13728/exe’ -&gt; ‘/tmp/sleep (deleted)’ Size: 0 Blocks: 0 IO Block: 1024 …
23 linux  symlink  proc 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.