Unix & Linux

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

4
เปลี่ยนชื่อไฟล์จำนวนมาก (หรือแสดงอย่างถูกต้อง) ด้วยอักขระพิเศษ
ฉันมีกลุ่มไดเรกทอรีและไดเรกทอรีย่อยที่มีไฟล์ที่มีอักขระพิเศษเช่นไฟล์นี้: robbie@phil:~$ ls test�sktest.txt test?sktest.txt ค้นหาพบลำดับการหลบหนี: robbie@phil:~$ find test�sktest.txt -ls 424512 4000 -rwxr--r-x 1 robbie robbie 4091743 Jan 26 00:34 test\323sktest.txt เหตุผลเดียวที่ฉันสามารถพิมพ์ชื่อของพวกเขาบนคอนโซลได้ก็เพราะความสมบูรณ์ของแท็บ นอกจากนี้ยังหมายความว่าฉันสามารถเปลี่ยนชื่อพวกเขาด้วยตนเอง (และตัดอักขระพิเศษ) ฉันได้ตั้งค่า LC_ALL เป็น UTF-8 ซึ่งดูเหมือนจะไม่ช่วย (ยังไม่ได้อยู่ในเปลือกใหม่): robbie@phil:~$ echo $LC_ALL en_US.UTF-8 ฉันกำลังเชื่อมต่อกับเครื่องโดยใช้ ssh จาก mac ของฉัน มันคือการติดตั้ง Ubuntu: robbie@phil:~$ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=7.10 DISTRIB_CODENAME=gutsy DISTRIB_DESCRIPTION="Ubuntu 7.10" Shell …

4
CentOS ทำให้อะไร "enterprisey" เปรียบเทียบกับการแจกแจง "ทั่วไป" เช่น Ubuntu
อะไรทำให้ CentOS "enterprisey" เปรียบเทียบกับการกระจาย "ทั่วไป" เช่น Ubuntu เมื่อฉันพูดว่า "enterprisey" ฉันหมายถึง "ดีกว่าสำหรับการปรับใช้เซิร์ฟเวอร์" เป็นเพียงคำถามทั่วไปเพราะฉันคิดว่าจะโฮสต์เว็บแอปพลิเคชันบนคอมพิวเตอร์ของฉัน (ซึ่งเรียกใช้ Ubuntu) และมาบนหน้าเว็บที่กล่าวว่า CentOS มีส่วนแบ่งตลาด 30% สำหรับเซิร์ฟเวอร์ แน่นอนว่ามันไม่ได้บ่งบอกว่ามันดีกว่าอยู่แล้วดังนั้นฉันแค่อยากถาม แก้ไข มีอีกสิ่งหนึ่งที่ฉันไม่สามารถเข้าใจได้ ... การกระจายตัวเหล่านี้ส่วนใหญ่ใช้แอปพลิเคชันเดียวกันมีตัวจัดการแพ็คเกจเดียวกันและทั้งหมดนั้นใช้พลังงานจากเคอร์เนลเดียวกัน ความแตกต่างอยู่ที่ไหน "หน้าข้อความความสุข" ของ RHEL พูดว่า: แอปพลิเคชันที่ปลอดภัยยิ่งขึ้น การป้องกันข้อบกพร่องด้านความปลอดภัยที่ถูกบุกรุกโดยทั่วไปเช่นบัฟเฟอร์ล้นซึ่งรวมอยู่ในสแต็กซอฟต์แวร์มาตรฐาน การป้องกันระดับสูงสุดผ่านคุณสมบัติความปลอดภัยของ SELinux ปกป้องบริการของระบบจากการถูกโจมตีความโปร่งใสอย่างเต็มที่และง่ายต่อการขยายและปรับใช้ รองรับการตรวจสอบสมาร์ทการ์ด คำถาม อย่างไร? เว้นแต่ RHEL จะมีการแก้ไขเวอร์ชันของซอฟต์แวร์สแต็คที่คุณจะใช้ (ในกรณีของฉัน Python และ SQLite3) จะไม่มีความแตกต่างใด ๆ การแจกจ่ายอื่น ๆ ไม่ได้อ้างสิทธิ์นั้นใช่หรือไม่ ฉันเคยได้ยินเกี่ยวกับปัญหาที่เกี่ยวข้องกับ …
20 ubuntu  centos  rhel 


2
สิ่งที่ใช้ในการทำให้กล่อง Linux แข็งตัว Apparmor, SELinux, grsecurity, SMACK, chroot?
ฉันวางแผนที่จะกลับไปที่ Linux เป็นเครื่องเดสก์ท็อป ฉันต้องการทำให้มันปลอดภัยยิ่งขึ้น และลองใช้เทคนิคการชุบแข็งโดยเฉพาะอย่างยิ่งเนื่องจากฉันวางแผนที่จะรับเซิร์ฟเวอร์ของตัวเอง อะไรจะเป็นกลยุทธ์การชุบแข็งที่ดี ฉันควรใช้เครื่องมือใด - Apparmor, SELinux, SMACK, chroot ฉันควรใช้เครื่องมือเดียวเช่น Apparmor หรือการรวมกันของข้างต้น? เครื่องมือเหล่านี้มีข้อดี / ข้อเสียใดบ้าง มีคนอื่นบ้างไหม? ซึ่งมีการกำหนดค่าสติเพื่อความปลอดภัย (ปรับปรุง) อัตราส่วน ฉันจะเลือกใช้อันไหนในระบบเดสก์ท็อป เป็นที่หนึ่งในสภาพแวดล้อมเซิร์ฟเวอร์ มีคำถามมากมาย

5
การประทับเวลาสหสัมพันธ์ / var / log / *
/var/log/messages, /var/log/syslogและบางล็อกไฟล์อื่น ๆ Jan 13 14:13:10ที่ใช้การประทับเวลาที่มีเวลาที่แน่นอนเช่น /var/log/Xorg.0.logและ/var/log/dmesgเช่นเดียวกับผลลัพธ์ของการ$ dmesgใช้รูปแบบที่ดูเหมือน [50595.991610] malkovich: malkovich malkovich malkovich malkovich ฉันเดา / รวบรวมว่าตัวเลขนั้นแสดงถึงวินาทีและไมโครวินาทีนับตั้งแต่เริ่มต้น อย่างไรก็ตามความพยายามของฉันในการเชื่อมโยงชุดการประทับเวลาสองชุดนี้ (โดยใช้เอาต์พุตจากuptime) ให้ความแตกต่างประมาณ 5000 วินาที นี่เป็นระยะเวลาโดยประมาณที่คอมพิวเตอร์ของฉันถูกระงับ มีวิธีที่สะดวกในการแมปการประทับเวลาตัวเลขที่ใช้โดย dmesg และ Xorg ในการลงเวลาที่แน่นอนหรือไม่? ปรับปรุง เป็นขั้นตอนเบื้องต้นในการคิดออกและหวังว่าจะทำให้คำถามของฉันชัดเจนยิ่งขึ้นฉันได้เขียนสคริปต์ Pythonเพื่อแยกวิเคราะห์/var/log/syslogและแสดงเวลาที่เบี่ยงเบน บนเครื่องของฉันรันอูบุนตู 10.10, ไฟล์นั้นมีหลายบรรทัดเคอร์เนลที่มาจากการประทับทั้ง dmesg timestamp และ syslog timestamp สคริปต์เอาต์พุตบรรทัดสำหรับแต่ละบรรทัดในไฟล์นั้นซึ่งมีเวลาประทับเคอร์เนล การใช้งาน: python syslogdriver.py /var/log/syslog | column -nts $'\t' เอาต์พุตที่ถูกสกัด (ดูด้านล่างสำหรับคำจำกัดความของคอลัมน์): …
20 linux  xorg  logs  timestamps 

3
อะไรคือข้อดี / ข้อเสียของวิธีการต่าง ๆ เพื่อป้องกันการโจมตีแบบ SSH กำลังดุร้าย?
มีแพ็กเกจที่แตกต่างกันจำนวนมากเพื่อปิด IP ที่การโจมตี SSH แบบดุร้ายกำลังเปิดตัวในระบบของคุณ ตัวอย่างเช่น: DenyHosts Sshguard fail2ban อะไรคือข้อดี / ข้อเสียของสิ่งเหล่านี้หรืออื่น ๆ โซลูชันปัจจุบันของฉันคือการนำอีเมลที่logwatchสร้างขึ้นทุกวันและทิ้งที่อยู่ IP ที่น่าเกรงขามลงในไฟล์ข้อความที่ฉันป้อนลงในสคริปต์ที่สร้าง iptables ขึ้นมาใหม่ มันแฮ็คใช้เวลานานและเป็นคู่มือและฉันต้องการวิธีที่ดีกว่า (โปรดทราบว่าฉันไม่ได้ถามว่าวิธีไหน "ดีที่สุด" ในการแก้ปัญหาเพราะไม่มีวิธี "ดีที่สุด" ในการทำอะไร)
20 ssh  security 

8
คำสั่งประวัติภายในสคริปต์ทุบตี
ประวัติเป็นคำสั่งในตัวเชลล์ฉันไม่สามารถใช้สิ่งนั้นได้ในสคริปต์ BASH ดังนั้นมีวิธีการนี้โดยใช้สคริปต์ทุบตี? ที่นี่เราไปสคริปต์ของฉันสำหรับคุณ: #!/bin/bash history | tail -100 > /tmp/history.log cd /tmp uuencode history.log history.txt | mail -s "History log of server" hello@hel.com

3
ฉันบังเอิญ chmod -R + x ในไดเรกทอรี ฉันจะคืนค่าสิทธิ์ที่ถูกต้องได้อย่างไร
chmod -R 755ดีที่จะเฉพาะเจาะจงก็คือ ตอนนี้ทุกไฟล์สามารถใช้งานได้ซึ่งฉันไม่ต้องการ ฉันคิดว่าฉันควรดูสองไบต์แรกของแต่ละไฟล์เพื่อหา#!แต่สิ่งนี้จะครอบคลุมทุกอย่างหรือไม่ ฉันควรใช้fileเพื่อดูทุกสิ่งและตัดสินใจบนพื้นฐานนั้นแทนหรือไม่ หรือมีโอกาสมากขึ้นที่จะมีวิธีที่ดีกว่านี้? เป็นวิธีที่ต้องการในการเรียกซ้ำผ่านไดเรกทอรีและตั้งค่า -x ในไฟล์ที่ไม่ควรจะ 'ปฏิบัติการ' คืออะไร?

4
ฉันจะผูกคำเสริมหน้า tmux กับ Super ได้อย่างไร
ฉันพบว่าCtrl+bเป็นคนที่emacsชอบมากแต่ฉันก็เข้าใจประเด็นนี้ ฉันสงสัยว่าฉันจะผูกมันไว้กับปุ่มกดอันเดียวของคีย์ที่ฉันไม่ได้ใช้อย่างชาญฉลาดหรือไม่? คือSuper_L(หรือที่รู้จักกันว่าปุ่มซ้ายของ Windows เพราะเหตุใดฉันถึงบอกว่า Super_L เริ่มต้นxevในเทอร์มินัลแล้วกดปุ่มนั้น)

4
ทำซ้ำการติดตั้ง Linux บน Yum
เมื่อทำการติดตั้งตาม Yum (โดยเฉพาะในกรณีของฉันการติดตั้ง Scientific Linux 5.1 x86_64) ฉันจะทำซ้ำโปรแกรมและยูทิลิตีที่ติดตั้งไว้กับเครื่องใหม่ที่ใช้ Fedora Core x86_64 ได้อย่างไร ฮาร์ดแวร์นั้นคล้ายกันมาก แต่ไม่เหมือนกันและมีความแตกต่างที่ชัดเจนที่ SL5 อ้างอิงจาก EL ไม่ใช่ใน Fedora ฉันมุ่งหวังที่จะทำซ้ำประสบการณ์ผู้ใช้จากกล่องดั้งเดิม (SL) ไปยังกล่องใหม่ (FC)
20 yum 

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

5
จะรับไฟล์ไปยังโฮสต์ได้อย่างไรเมื่อคุณมีคอนโซลซีเรียล?
เมื่อทั้งหมดที่คุณมีคือซีเรียลคอนโซล (พูดผ่าน telnet ผ่านเทอร์มินัลเซิร์ฟเวอร์) วิธีใดบ้างที่สามารถใช้ในการถ่ายโอนไฟล์เข้า / ออกจากโฮสต์ การตัด / วางเหมาะสำหรับสิ่งเล็ก ๆ / พิมพ์ได้และฉันได้เล่นด้วยการรวมกันของ uuencode / uudecode (พร้อม gzip) จัดการกับ unprintable แต่มันมีข้อ จำกัด มาก

3
การเปิดเทอร์มินัลแนวตั้งใน Vim 8.1
Vim 8.1 เพิ่ม:terminalคำสั่งซึ่งจะเปิด bash terminal ใหม่เป็นการแยก อย่างไรก็ตามดูเหมือนว่าจะเป็นการแบ่งแนวนอนเสมอและฉันชอบการแยกแนวตั้ง มีวิธีการเปิดเทอร์มินัลโดยการแบ่งแนวตั้งโดยไม่ใช้หรือไม่: :vsp :terminal <c-w>j :q อีกวิธีหนึ่งคือมีวิธีที่ฉันสามารถเพิ่มเป็นคำสั่งใน. vimrcของฉันเช่น: command Vterm :vsp | :terminal | <c-w>j | :q คำสั่งข้างต้นฉายาเกี่ยวกับการพยายามที่จะดำเนินการ<c-w>jเปิดการแบ่งเป็นกลุ่มใหม่ด้วยดังต่อไปนี้: การเรียกใช้งานล้มเหลว: ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว เพียงแค่มี: command Vterm :vsp | :terminal ทำงานได้ดี แต่ทิ้งการแยกเดิม
20 vim  vimrc 

3
มีข้อเสียของการตั้งค่า 'noclobber' หรือไม่?
รับที่zshสามารถอุดตันไฟล์ทั้งหมดที่ได้รับคำสั่ง: >* ฉันคิดว่าการตั้งค่าตัวเลือกnoclobberจะเป็นความคิดที่ดี ฉันสามารถใช้งานได้ตลอดเวลา>| fileหากฉันต้องการใช้พฤติกรรมการปิดบังเริ่มต้นทั้งใน bash และ zsh (zsh ยังอนุญาตให้ใช้ไวยากรณ์ทางเลือก>!file) ฉันคาดว่าnoclobberจะไม่ได้รับการตั้งค่าเริ่มต้นเนื่องจากความเข้ากันได้ POSIX แต่เพื่อให้แน่ใจว่า: มีข้อเสียในการตั้งค่าnoclobberหรือไม่? อย่างไรก็ตามมีการตั้งค่าnoclobberสำหรับเชลล์แบบโต้ตอบเท่านั้นหรือไม่
20 bash  shell  zsh 

1
`at` รันคำสั่งในภายหลังหรือไม่หากคอมพิวเตอร์ปิดในเวลาที่กำหนด
ฉันต้องการกำหนดเวลางานด้วยatแต่ฉันไม่แน่ใจว่าจะเกิดอะไรขึ้นหากคอมพิวเตอร์ถูกระงับในเวลาที่กำหนด: คำสั่งจะถูกดำเนินการทันทีที่คอมพิวเตอร์ตื่นขึ้นมาอีกครั้ง (เช่นเดียวกับanacron) หรือจะไม่ถูกดำเนินการเลย (เช่นเดียวกับcron) หากคุณระบุงานที่จะเรียกใช้ในเวลาและวันที่ที่ระบุอย่างแน่นอนในอดีตงานจะทำงานโดยเร็วที่สุด นั่นคือสิ่งที่ manpage พูดเกี่ยวกับเรื่องนี้ แต่มันไม่ตรงกับกรณีของฉัน: ฉันไม่ต้องการระบุงานที่จะทำงานในอดีตฉันต้องการเรียกใช้งานในอนาคตและถามว่าatจะจัดการอย่างไรถ้าคอมพิวเตอร์ กำลังนอนหลับอยู่ นี่ไม่ใช่คำสั่ง Run at ที่ซ้ำกันเมื่อคอมพิวเตอร์หลับเพราะคำถามนี้ถามว่าatจะปลุกคอมพิวเตอร์ให้เรียกใช้งานคำสั่งหรือไม่และเป็นวิธีการป้องกัน atd ไม่ให้ทำงานในอดีตหรือไม่ เพราะนี่เป็นเรื่องเกี่ยวกับวิธีการป้องกันไม่ให้เรียกatใช้งาน "เก่า" เหล่านั้น (โดยมีคำตอบที่ดีมาก!)
20 scheduling  at 

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