Unix & Linux

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

1
จะวินิจฉัยการเชื่อมต่อที่ไม่น่าเชื่อถือได้อย่างไร
ที่ฉันอยู่ตอนนี้การเชื่อมต่ออินเทอร์เน็ต (แบบใช้สาย) แสดงอาการแปลก ๆ ต่อไปนี้ ดูเหมือนว่าพวกเขาจะเป็นอิสระจากว่าฉันใช้ชื่อโฮสต์หรือที่อยู่ IP ส่ง Ping งาน Skype ทำงานได้ เชื่อมต่อกัน แต่ไม่เคยได้รับการตอบกลับ (รอที่ "ส่งคำขอ HTTP รอการตอบกลับ" จนกว่าจะหมดเวลา) ยกเว้นโดเมนย่อยบางส่วนที่ใช้งานได้ คำสั่ง ssh ( ssh host ls) ใช้งานได้ Interactive ssh ทำงานได้ในระยะเวลาสั้น ๆ แต่จะหยุดทำงานอย่างรวดเร็วเช่นในช่วงแรกls- ที่จุดเดียวกันทุกครั้ง ภายใต้ Windows ทุกอย่างทำงานได้ดี ฉันจะทำอย่างไรเพื่อวินิจฉัยปัญหานี้เพิ่มเติม จนถึงตอนนี้ฉันเพิ่งดูชั้นแอปพลิเคชัน เนื่องจากมีการเชื่อมต่ออินเทอร์เน็ตที่ชัดเจนจึงต้องมีวิธีในการขุดอุโมงค์ Firefox แต่ฉันต้องการจะแก้ปัญหาก่อน มันอาจเกี่ยวข้องกับแพ็กเก็ตขนาดใหญ่ที่ไม่สามารถผ่านได้ ฉันพบว่ามี MTU แต่การตั้งค่าสำหรับ eth0 ไม่สามารถแก้ปัญหาของฉันได้ ฉันคิดว่าฉันอยู่เบื้องหลัง PPPOE และเราเตอร์ …

1
วิธีการใช้อุโมงค์ TUN / TAP จากผู้ใช้โปรแกรม?
ฉันเพิ่งค้นพบการมีอยู่ของส่วนต่อประสาน TUN / TAP ของ Linux และฉันยังคงพยายามที่จะเข้าใจพวกเขา ฉันคิดว่าฉันได้รับแนวคิดพื้นฐาน - อุปกรณ์หลอกถูกสร้างขึ้นซึ่งเลียนแบบอินเทอร์เฟซเครือข่ายและแทนที่จะส่งผ่านข้อมูลไปยังฮาร์ดแวร์จะถูกส่งไปยังโปรแกรม userspace คุณจะนำโปรแกรมที่ไม่เกี่ยวข้องไปใช้อุโมงค์นี้อย่างไร ตัวอย่างเช่นก่อนที่อุโมงค์จะถูกสร้างขึ้นระบบของฉันมีเฉพาะ eth0 และ lo เท่านั้นอินเตอร์เฟสอีเธอร์เน็ตปกติ (เชื่อมต่อกับเครือข่ายท้องถิ่นของฉัน) และอินเตอร์เฟสลูปแบ็ค หลังจากโปรแกรมสร้างและกำหนดค่าอุโมงค์ฉันมีอินเตอร์เฟสใหม่ gr0 ซึ่งฉันได้ให้ที่อยู่ IP ที่อยู่ในเครือข่ายท้องถิ่นของฉัน แต่ไม่ได้ใช้งาน (ดังนั้นเราทุกคนอยู่ในเครือข่ายย่อยเดียวกัน) ฉันจะทำให้โปรแกรมที่ไม่เกี่ยวข้องใช้ 'อุโมงค์' นี้ได้อย่างไร ถ้าฉันมีข้อความ Python อย่างง่ายผ่านแอปไคลเอนต์ / เซิร์ฟเวอร์ที่ใช้การเชื่อมต่อ TCP ฉันจะกำหนดค่าให้ใช้ช่องสัญญาณได้อย่างไร ฉันขอโทษถ้าฉันขาดพื้นฐานบางอย่าง แต่ตามปกติฉันจัดการสับสนในรูปแบบของสิ่งต่าง ๆ อีกครั้งทั้งหมดที่ฉันต้องการคือการมีโปรแกรม TCP อย่างง่ายใช้อุโมงค์นี้ ขอบคุณ!

2
แถบสถานะหน้าจอหลายบรรทัด
ฉันกำลังใช้หน้าจอที่มีแท็บหลายแท็บเปิดเพื่อแยกโครงการของฉันระหว่างพวกเขา อย่างไรก็ตามเมื่อฉันเปิดแท็บจำนวนมากเกินไปพวกเขาเพิ่งจะปรากฏบนหน้าจอและฉันไม่สามารถเห็นพวกเขาใน "แถบสถานะหน้าจอ" ของฉันได้อีก ฉันยังคงสามารถสลับไปที่พวกเขา แต่ไม่เห็นพวกเขาในรายการหน้าต่างของฉัน ฉันจะทำอย่างไรเพื่อให้ "แถบสถานะหน้าจอ" ของฉันจะขยายเป็นสองบรรทัดเมื่อจำเป็น? ฉันได้รับ.screenrcจากเพื่อนเพื่อเริ่มต้นที่ทำให้ฉันอยู่ที่ฉันอยู่ แต่ฉันต้องการที่จะปรับแต่งเพื่อให้ฉันตัวเลือกนี้

3
ฉันจะเริ่ม Xvfb เมื่อเริ่มต้นบน Debian ได้อย่างไร
ฉันมีเว็บเซิร์ฟเวอร์ Debian ที่ฉันใช้สำหรับการขูดหน้าจอเป็นครั้งคราวผ่าน Selenum และ Python ฉันใช้ Xvfb เป็นเซิร์ฟเวอร์ X เสมือนเพื่อให้ Firefox ทำงานต่อเมื่อถูกควบคุมโดย Selenium เนื่องจากฉัน (คิดว่า) ฉันต้องเริ่มใช้sudoมันฉันไม่คิดว่ามันจะเป็นไปได้ที่จะเริ่มต้นจาก Python ทุกครั้ง (ดูคำถาม Stack Overflow ของฉัน ) ดังนั้นฉันจึงคิดว่าฉันสามารถใช้งานได้ตลอดเวลา . ขณะนี้ฉันเริ่มต้นเช่นนี้ที่บรรทัดคำสั่ง: sudo Xvfb :99 -nolisten tcp -fbdir /var/run ฉันควรใช้วิธีการใดในการทำสิ่งนี้โดยอัตโนมัติเมื่อเริ่มต้น ฉันควรใช้cronตามที่แนะนำที่นี่ ?
9 debian  startup  xvfb 

2
วิธีที่ดีที่สุดในการเก็บถาวรไฟล์แนบ?
บันทึกข้อความและโฟลเดอร์ "โฟลเดอร์" ของฉัน (จริง ๆ แล้วไฟล์ Unix MBX) มีขนาดใหญ่มากเนื่องจากมีไฟล์แนบซึ่งส่วนใหญ่ฉันบันทึกไว้ในดิสก์แล้ว ฉันต้องการเก็บข้อความไว้ แต่แทนที่ไฟล์แนบด้วยไฟล์ข้อความโดยระบุว่า "นำสิ่งที่แนบมาออกแล้ว: /full/path/to/attach.txt" ฉันจะทำสิ่งนี้ได้อย่างไร ฉันใช้อัลไพน์ แต่เครื่องมือใด ๆ ที่ทำสิ่งนี้สำหรับ Unix MBX นั้นใช้ได้ อัลไพน์ไม่แจ้งให้เราลบไฟล์แนบจากอีเมล แต่ฉันไม่สามารถแทนที่พวกเขา w / แฟ้มข้อความ หมายเหตุ: ฉันรู้ว่าฉันสามารถบันทึกข้อความลงในไฟล์และแก้ไขไฟล์โดยใช้ emacs ได้ แต่นั่นคือ kludgey และอาจทำให้ส่วนหัวและเนื้อหา "เนื้อหายาว" ยุ่งเหยิง ฉันยังตระหนักว่าฉันสามารถส่งต่อข้อความด้วยส่วนหัวกับตัวเองหลังจากลบสิ่งที่แนบมา อีกครั้ง kludge ฉันไม่คิดว่าอัลไพน์อนุญาตให้ฉันเพิ่มสิ่งที่แนบมากับจดหมายที่เก็บไว้ (ยกเว้นว่าฉันต้องการส่งไปที่ไหนสักแห่ง ฉันรู้ว่าฉันสามารถเขียนสคริปต์ Perl เพื่อทำสิ่งนี้ได้ แต่หวังว่าจะได้โซลูชันที่ผ่านการทดสอบมาเป็นอย่างดี
9 email 

3
Mass .flac -> .mp3 การแปลงรหัส: จะเขียนเชลล์สคริปต์ที่เก็บรักษาข้อมูลแท็ก ID3 ได้อย่างไร
ในช่วงไม่กี่สัปดาห์ที่ผ่านมาฉันได้เปลี่ยนวิธีการแปลงไฟล์ .flac -> .mp3 ไปเป็นชุดที่ 'ตั้งค่าและลืม' ได้มากพอสมควร ขั้นตอนแรกคือการหยุดการใช้ส่วนหน้า GUI (Audacity กับปลั๊กอิน LAME) และใช้วิธีที่ฉันอธิบายไว้ที่นี่แทน ขั้นตอนที่สองคือการค้นหา bash shell script ที่จะบอกให้วนรอบคำสั่งทำงานซ้ำโดยอนุญาตให้ไดเรกทอรีที่มีไดเรกทอรีย่อยมากมายที่มีไฟล์. flac ทำการแปลงรหัสในขั้นตอนเดียว ว่าคำตอบที่ได้รับจากผู้ใช้ใน askubuntu.com ตอนนี้ฉันต้องการเรียนรู้วิธีปรับแต่งเพิ่มเติมเพื่อให้ข้อมูลแท็ก ID3 ถูกรักษาไว้ วิธีการที่เชื่อมโยงกับข้อมูลแท็กแถบ ID3 ด้านบนทำให้เหลือน้อยที่สุด (กล่าวคือมีเพียงฟิลด์ชื่อเรื่อง) ใครช่วยสอนฉันถึงวิธีการเขียนเชลล์สคริปต์ได้ไหม เชลล์สคริปต์ได้รับการอัพเดตดังนี้: #!/bin/bash file="$1" flac -cd "$file" | lame --preset fast extreme - "${file%.flac}.mp3" id3cp "$file" "${file%.flac}.mp3" ทำfind . -name '*.flac' …

2
วิธีจัดการไฟล์จำนวนมากในเชลล์?
$ ls ./dir_with_huge_amount_of_files/errors/ สมมติว่าไดเรกทอรีเต็มไปด้วยรูปภาพที่มียูนิกซ์ประทับเวลาฉันหมายถึงมีหน่วยวัดเป็นกิกะไบต์หรือมากกว่านั้น คำสั่งเชลล์เช่นlsจะได้รับคำเตือนแบบล้นเนื่องจากไม่ได้ออกแบบมาให้ทำงานกับรูปภาพนับล้าน (หรือมากกว่า) ฉันจะจัดการไฟล์จำนวนมากได้อย่างไร ตัวอย่างเช่นถ้าฉันต้องการค้นหารูปภาพที่อยู่ตรงกลาง (ตามเวลาในชื่อและเวลาสร้าง) มีระบบไฟล์บางส่วนที่มีคุณสมบัติการค้นหาในตัวหรือไม่? คุณจะใช้คำสั่งใด ฉันพยายามอย่างสบายlsและfindด้วยการตั้งค่าสถานะที่จำเป็น แต่พวกเขาก็ช้ามากหรือสร้างคำเตือนดังนั้นฉันคิดว่าฉันต้องการระบบไฟล์หรือ db ที่ดีกว่าหรืออะไรทำนองนั้นเพื่อจัดทำดัชนีรูปภาพ โดยทั่วไปฉันต้องการอาร์เรย์หนึ่งชุดที่จะจัดวางรูปภาพ inodes ตามลำดับเวลา ทำอย่างไร ต่อมาสามารถเพิ่มข้อมูลเมตาที่มียูนิกซ์ - เวลา [Update] มีข้อบกพร่องที่ร้ายแรงในคำตอบปัจจุบันผู้คนเพียงโพสต์เรียงลำดับของคำตอบโดยไม่ต้องทดสอบเชิงประจักษ์ หากพวกเขาทดสอบข้อเสนอแนะของพวกเขาพวกเขาอาจจะล้มเหลว ดังนั้นฉันจึงสร้างเครื่องมือบรรทัดคำสั่งให้คุณซึ่งคุณสามารถสร้างแซนด์บ็อกซ์เพื่อสร้างไฟล์จำนวนมากและทดสอบข้อเสนอแนะของคุณเช่นเดียวกับไฟล์จำนวน 1e7 อาจใช้เวลานานในการสร้างไฟล์ดังนั้นต้องอดทน หากมีคนรู้วิธีที่รวดเร็วกว่านี้โปรดแก้ไขรหัส พิมพ์python code.py --helpเพื่อรับความช่วยเหลือ มีความสุข! ตัวอย่างการใช้งานเพื่อสร้างไฟล์ dirred จำนวนมาก $ ls ./data2 ls: ./data2: No such file or directory $ python testFill.py -n …

2
ใน Gentoo ความแตกต่างระหว่าง amd64, ~ amd64 และ ~ amd64-linux คืออะไร?
เมื่อฉันวิ่งequery depgraph www-client/chromium-10.0.648.151ไม่มีการอ้างอิงทั้งหมดที่มีอยู่ แสดงให้เห็นว่าบางคนในขณะที่การแสดงอื่นM[package.mask] ๆ บางส่วน [missing keyword]ฉันACCEPT_KEYWORDSเป็นไปตาม~amd64-linux emerge --infoฉันทดลองกับACCEPT_KEYWORDSตัวแปรที่แตกต่างกัน(ซึ่งเป็นตัวแปรสภาพแวดล้อมที่ส่งผ่านไปยังeqeury) และทุกคนมีการพึ่งพาที่แตกต่างกัน ในบรรดาชุดค่าผสมที่เป็นไปได้ทั้งหมดที่มีเฉพาะการACCEPT_KEYWORDS='amd64 ~amd64 ~amd64-linux'อ้างอิงทั้งหมดสามารถทำได้ในครั้งเดียว นี่คือคำถามของฉัน: คือACCEPT_KEYWORDS='amd64 ~amd64 ~amd64-linux'การกำหนดค่าที่ถูกต้อง? ฉันเรียนรู้จากเอกสารที่amd64หมายถึงความเสถียรและ ~amd64ความไม่แน่นอน เกี่ยวกับ~amd64-linuxอะไร ถ้าผมเลือก~amd64, equeryจะไม่ใช้แพคเกจที่มีอยู่เท่านั้นที่จะ amd64มีผลในการอ้างอิงที่ขาดหายไป คาดหวังหรือไม่ ถ้าเป็นเช่นนั้นผู้ทดสอบที่ไม่เสถียรควรใช้อย่างน้อยACCEPT_KEYWORDS='amd64 ~amd64'แทนที่จะเป็นACCEPT_KEYWORDS='~amd64'? ลำดับของคำหลักมีความสำคัญหรือไม่ ข้อมูลเพิ่มเติม: ฉันติดตั้งคำนำหน้า Gentoo ตามคู่มือนี้ โดยค่าเริ่มต้น $EPREFIX/etc/make.profileเป็น symlink ไป$EPREFIX/usr/portage/profiles/prefix/linux/amd64และมีที่มีmake.defaults ACCEPT_KEYWORDS="-amd64 ~amd64-linux"ทั้ง$EPREFIX/etc/make.confมิได้$EPREFIX/etc/make.globalsมีACCEPT_KEYWORDSการกำหนดค่า ตามeselect profile listรายละเอียดไม่ได้เลือก

7
วิธีรันคำสั่งในโหมดแบตช์เหนือ ssh?
ฉันจะรันคำสั่งในโหมดแบตช์ผ่าน ssh ได้อย่างไร นั่นคือสิ่งที่sshเทียบเท่าคำสั่งคือsftp -b <filename> <hostname>อะไร? ฉันมีชุดคำสั่งที่ฉันต้องการเรียกใช้ข้ามชุดโฮสต์ที่เชื่อมต่อsshกัน กว่าsftpฉันเก็บคำสั่งในไฟล์filenameและเชื่อมต่อกับโฮสต์และเรียกใช้คำสั่งโดยใช้คำสั่งดังกล่าวก่อนหน้า เป็นไปได้sshไหม?

4
ความแตกต่างในการจัดการบรรจุภัณฑ์ระหว่าง Debian และ Arch
การสนทนาจากโพสต์นี้ทำให้ฉันสงสัยในความแตกต่างระหว่างการจัดการแพ็คเกจ Debian และ Arch นอกจากนี้ผู้คนมักจะบอกว่า Arch มีน้ำหนักเบามากดังนั้นฉันจึงสงสัยว่าจะทำอย่างไรกับการจัดการบรรจุภัณฑ์ อาจเป็นเพราะ Debian แนะนำว่าเป็นการพึ่งพายากเป็นค่าเริ่มต้นหรือไม่ คุณยังสามารถพูดถึงความยืดหยุ่น / พลังงานระหว่างผู้จัดการแพ็คเกจสองคน: อันไหนของทั้งสองช่วยให้คุณทำงานได้มากขึ้น ฉันทราบว่าคุณลักษณะบางอย่างที่มีอยู่ในระบบการจัดการแพคเกจ Debian จะไม่เกี่ยวข้องกับระบบ Arch เนื่องจาก Arch มีชุดเดียวและ Debian มีหลายอย่าง (เช่นการปักหมุด APT และการจัดการการพึ่งพาขั้นสูงอยู่ในใจ) ดังนั้นโปรดเปรียบเทียบคุณลักษณะต่างๆ ใช้ได้กับทั้งสองระบบ (เช่นสมมติว่าสำหรับ Debian ฉันใช้ไม่เสถียรเท่านั้น)

5
หลีกเลี่ยงการวางด้วยล้อเลื่อนของเมาส์
ฉันเบื่อที่จะต้องคัดลอกและวางข้อความโดยใช้วงล้อเมาส์ ปริมาณความชำนาญที่จำเป็นเป็นตำนาน มีใครรู้ไหมว่าแฟรงค์เคนที่มีปุ่มสี่ปุ่ม (ปุ่มใดที่จำลองปุ่มที่สามด้านล่างพวงมาลัยจะดี) หรือมีทางออกอื่น ๆ ? แก้ไข : วิธีแก้ปัญหาที่ดีอาจเป็นการรวมกันของทั้งสองรูปแบบการตัดและวาง ( Ctrl+ c, Ctrl+ x, Ctrl+ v) และการเน้นของเมาส์และวางด้วยล้อเลื่อนดังนั้นฉันจึงสามารถใช้Ctrlปุ่มในขณะที่อยู่ในเทอร์มินัล



3
ระบบไฟล์ / องค์กร Linux แตกต่างจาก Windows อย่างไร
หนึ่งในสิ่งที่ทำให้ฉันช้าลงในการติดต่อกับ Linux คือความแตกต่างอย่างมากระหว่างระบบไฟล์ใน Linux กับ Windows จนถึง 3-4 ปีที่ผ่านมาฉันใช้ระบบ Windows และเพิ่งผ่านไป 2-3 เดือนที่ผ่านมาฉันได้ทำงานกับ Linux ฉันคิดว่าสิ่งหนึ่งที่ทำให้ฉันรำคาญใจจริง ๆ ณ จุดนี้คือฉันรู้สึกเหมือนได้พบทุกสิ่งที่ฉันต้องการเมื่อฉันเริ่มขุดผ่านโฟลเดอร์ต่าง ๆ ใน Windows ฉันคุ้นเคยกับสิ่งต่าง ๆ ที่ถูกวางไว้ที่ไหนและเมื่อไหร่ ฉันไม่มีมันด้วย Linux ฉันเรียนรู้บางสิ่งเช่นโฟลเดอร์ / opt เป็นที่ที่โปรแกรมของ บริษัท อื่นส่วนใหญ่ติดตั้ง ... แต่ความเข้าใจของฉันมี จำกัด

3
ขนาดหน่วยความจำสำหรับการดำเนินการเคอร์เนล mmap
ฉันสนใจในวิธีที่ไฟล์ Linux mmaps ในหน่วยความจำหลัก (ในบริบทของฉันมันสำหรับการดำเนินการ แต่ฉันคิดว่ากระบวนการ mmap นั้นเหมือนกันสำหรับการเขียนและการอ่านเช่นกัน) และขนาดที่ใช้ ดังนั้นฉันรู้ว่าลินุกซ์ใช้เพจจิ้งโดยปกติ 4kB Pagesize (ที่เคอร์เนลฉันสามารถหาขนาดนี้ได้ที่ไหน) แต่สิ่งนี้มีความหมายอย่างไรสำหรับหน่วยความจำที่จัดสรรไว้: สมมติว่าคุณมีขนาดไบนารี่ขนาดไม่กี่ไบต์นับได้ว่าเพียง 5812B และคุณรันมัน จะเกิดอะไรขึ้นในเคอร์เนล: มันจัดสรร 2 * 4kB แล้วคัดลอก 5812B ลงในพื้นที่นี้เสียเปล่า> 3KB ของหน่วยความจำหลักในหน้า 2 หรือไม่? มันจะดีถ้าใครรู้ว่าไฟล์ในเคอร์เนลแหล่งที่มีการกำหนดขนาดหน้า คำถามที่สองของฉันก็ง่ายมากฉันเดาว่าฉันถือว่า 5812B เป็นขนาดไฟล์ ถูกต้องขนาดนี้ถูกนำมาจากไอโหนดหรือไม่?
9 kernel  memory  inode  mmap 

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