Unix & Linux

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

3
ฉันจะตั้งค่า Cygwin ให้อัปเดตและดาวน์โหลดโดยอัตโนมัติโดยไม่ใช้ GUI ได้อย่างไร
ฉันจะตั้งค่า Cygwin ให้อัปเดตตัวเองโดยอัตโนมัติได้อย่างไร ฉันจะให้ Cygwin ดาวน์โหลดแพคเกจโดยไม่ต้องผ่าน GUI ได้อย่างไร
17 cygwin 

5
ได้รับกุญแจในรูปแบบ ~ / .ssh / authorized_keys คุณสามารถกำหนดความแข็งแรงของกุญแจได้อย่างง่ายดาย?
~ / .ssh / authorized_keys [2] มีรายการของกุญแจสาธารณะ น่าเสียดายที่แต่ละคีย์สาธารณะไม่ได้ระบุความแรงของคีย์ (จำนวนบิต) มียูทิลิตี้ที่สามารถประมวลผลไฟล์นี้ทีละบรรทัดและส่งออกความแข็งแรงของคีย์ได้หรือไม่? ฉันตรวจสอบหน้าคนสำหรับssh-keygenแต่ดูเหมือนว่าจะทำงานเฉพาะกับกุญแจส่วนตัว นอกจากนี้ยังมีเครื่องมือที่จะเอาท์พุท sha1 hash แบบเดียวกับที่แสดงในpageantเครื่องมือ Putty หรือไม่ รูปแบบที่ฉันกำลังมองหา: Key Algorithm Strength Hash Comment ssh-rsa 2048 00:11:22:33:44:55:66:77:88:99:aa:bb:cc:dd:ee:ff user1@host1 ssh-rsa 2048 11:22:33:44:55:66:77:88:99:aa:bb:cc:dd:ee:ff:11 user2@host2
17 ssh  openssh 

2
เป็นไปได้หรือไม่ที่จะจำลองการติดตั้งแพ็คเกจ Debian และทำเครื่องหมายว่าติดตั้งหรือไม่
นี่คือสิ่งที่ฉันต้องการ: เริ่มต้นด้วยระบบเสมือนจริงโดยไม่มีแพ็คเกจที่ติดตั้ง จากนั้นฉันเรียกใช้เครื่องมือคล้ายกับapt-getขอให้มันคำนวณการขึ้นต่อกันและทำเครื่องหมายแพ็คเกจทั้งหมดที่จะถูกติดตั้งเป็นการติดตั้ง ให้ฉันมีความชัดเจน : มันบอกว่าแพคเกจที่มีการติดตั้ง แต่มีไฟล์ที่ไม่ติดตั้งจริง จากนั้นถ้าฉันขอให้มีการติดตั้งเพิ่มเติมแพคเกจมันอาจเสนอให้เพิ่มหรือลบแพ็คเกจอื่น ๆ มันจะไม่ลบแพ็กเกจ แต่เห็นได้ชัดว่าเพียงแค่ทำเครื่องหมายออก สิ่งนี้จะมีประโยชน์เพราะฉันจะสามารถทดสอบการติดตั้งแพคเกจบนระบบ Debian หรือ Ubuntu ที่ว่างเปล่า มันจะช่วยให้ฉันรู้ว่าแพคเกจสามารถติดตั้งได้รับสถานการณ์บางอย่าง การทำเช่นนี้กับการติดตั้งจริงจะใช้พื้นที่ดิสก์และเวลาจำนวนมาก apt มีตัวเลือก "จำลอง" แต่ไม่ได้ทำเครื่องหมายแพ็คเกจว่าติดตั้งแล้ว


3
ฉันจะกำหนดค่าด้วงสำหรับการบูตเคอร์เนลลินุกซ์จากฮาร์ดไดรฟ์ USB ได้อย่างไร
ฉันมีฮาร์ดไดรฟ์แล็ปท็อปในกล่องหุ้มภายนอกซึ่งฉันใช้เป็น pendrive ขนาดใหญ่ สำหรับเรื่องที่เพิ่มขึ้นฉันได้ติดตั้งลินุกซ์ไว้แล้วดังนั้นฉันสามารถบูตเครื่องที่มีตัวเลือกมากมาย (เช่นสำหรับการกู้คืนข้อมูลหรือซ่อมแซมระบบ b0rked หรือเพียงแค่ใช้แล็ปท็อปที่ยืมมาโดยไม่ทำลาย Windows ที่ติดตั้งไว้ล่วงหน้า) ปัญหาคือขึ้นอยู่กับการกำหนดค่าฮาร์ดแวร์ฮาร์ดไดรฟ์ USB อาจมองเห็นได้ภายใต้เส้นทางที่แตกต่างกัน สำหรับการตั้งค่าด้วงฉันใช้(hda0,0)เพราะมันสัมพันธ์กับอุปกรณ์ที่ด้วงเปิดตัว ฉันมีรายการ UUID /etc/fstabใน ฉันยังระบุrootwaitในพารามิเตอร์เคอร์เนลเพื่อรอระบบย่อย USB ที่จะปักหลักก่อนที่จะเมานต์อุปกรณ์ สิ่งที่ฉันควรผ่านไปยังเคอร์เนลเป็นroot=อย่างไร ปัจจุบันทำการบู๊ตจาก pendrive หนึ่งครั้งตรวจสอบข้อความดีบั๊กเพื่อดูว่า/dev/sdXอุปกรณ์ใดได้รับมอบหมายให้เคอร์เนลไดรฟ์ USB จากนั้นรีบู๊ตและแก้ไขการกำหนดค่าด้วง ฉันไม่สามารถเปลี่ยนแปลงอะไรบนพีซีนอกเหนือจากการเปิดใช้งานBoot from USB hard driveBIOS และตั้งค่าเป็นลำดับความสำคัญสูงกว่าฮาร์ดไดรฟ์ภายใน มีสคริปต์การสร้าง initrd ต่างๆซึ่งรวมถึงการสนับสนุน UUID ในเส้นทางอุปกรณ์รูท แต่น่าเสียดายที่ Gentoo native one (genkernel) ไม่รองรับrootwaitและฉันโชคไม่ดีที่จะลองใช้งานอื่น กระบวนการบู๊ตเป็นไปตามนี้ ( มันค่อนข้างคล้ายกันใน Windows ): BIOS เลือกอุปกรณ์สำหรับบู๊ตและโหลดสิ่งที่เป็น MBR …
17 linux  kernel  boot  usb  grub2 

2
วิธีสร้างฮาร์ดลิงก์ไปยัง inode (ext4)
ถ้าฉันรู้ว่าโหนดดัชนี (inode) ของไฟล์ แต่ฉันไม่รู้เส้นทางของมัน (หรือเส้นทางใด ๆ ) มันเป็นไปได้ไหมที่จะสร้างฮาร์ดลิงก์ไปยัง inode นั้นโดยตรง ฉันพบไฟล์ที่ใช้sudo find / -inum 123546แล้วสร้างฮาร์ดลิงก์ แต่มันจะช้าเกินไปสำหรับแอปพลิเคชันของฉัน NB ฉันใช้ระบบไฟล์ ext4
17 inode  hard-link 

4
ลำดับความสำคัญของ Pipe (|) และตรรกะและ (&&) ใน bash
สถานการณ์สุดคลาสสิกกับโอเปอเรเตอร์สำคัญคุณมีบรรทัดเหมือน: (cd ~/screenshots/ && ls screenshot* | head -n 5) และคุณไม่รู้ว่ามันแยกวิเคราะห์((A && B) | C)หรือ(A && B | C)... เอกสารอย่างเป็นทางการเกือบจะพบที่นี่ไม่ได้แสดงรายการท่อในรายการดังนั้นผมจึงไม่สามารถเพียงแค่ตรวจสอบในตาราง นอกจากนี้ใน bash (ไม่เพียง แต่เปลี่ยนลำดับการดำเนินการ แต่สร้าง subshellดังนั้นฉันจึงไม่ 100% แน่ใจว่าบรรทัดนี้เทียบเท่ากับบรรทัดก่อนหน้า: ((cd ~/screenshots/ && ls screenshot*) | head -n 5) โดยทั่วไปแล้วจะรู้ASTของ bash line ได้อย่างไร? ในหลามฉันมีฟังก์ชั่นที่ให้ต้นไม้กับฉันเพื่อให้ฉันสามารถตรวจสอบลำดับการทำงานได้อย่างง่ายดาย
17 bash 

1
จะเปลี่ยนความถี่สลับบริบทของ Linux ได้อย่างไร?
เป็นไปได้อย่างไรที่จะเปลี่ยนความถี่บริบทลินุกซ์ (linaro, ubuntu, debian)? ฉันไม่เป็นไรสำหรับการซื้อขายออกจากระบบที่ตอบสนองน้อยกว่าสำหรับระบบที่มีประสิทธิภาพมากขึ้น EDIT1: ฉันมีกระบวนการหลักที่ฉันต้องการให้ทำงานเร็วที่สุดเท่าที่จะเป็นไปได้ (รอบนาฬิกาสูงสุดต่อวินาที) ดังนั้นฉันจึงคิดว่าจะลดความถี่บริบทของสวิตช์ (= เพิ่มช่วงเวลา) คำถามคือทำอย่างไรและจะมีผลกระทบที่สำคัญหรือไม่ ฉันสามารถคำนวณต้นทุนของการสลับบริบทได้หรือไม่ ความหมายฉันสามารถประเมินได้หรือไม่ถ้าฉันเพิ่มจำนวนเวลาสองเท่าฉันจะเพิ่มประสิทธิภาพการทำงานของฉันเป็น% สำหรับกระบวนการหลักที่ฉันสนใจได้อย่างไร

1
CPU รู้ได้อย่างไรว่ามี IO ค้างอยู่
ฉันดูiowaitคุณสมบัติที่แสดงในเอาต์พุตยูทิลิตี้ด้านบนดังที่แสดงด้านล่าง top - 07:30:58 up 3:37, 1 user, load average: 0.00, 0.01, 0.05 Tasks: 86 total, 1 running, 85 sleeping, 0 stopped, 0 zombie %Cpu(s): 0.0 us, 0.3 sy, 0.0 ni, 99.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st iowait มีการกำหนดโดยทั่วไปดังนี้: "เป็นเวลาที่ CPU ไม่ได้ใช้งานและมีบาง IO ค้างอยู่" ฉันเข้าใจว่ากระบวนการทำงานบน CPU …
17 linux  cpu  top  load-average 

6
ฉันจะย่อเส้นทางไดเรกทอรีปัจจุบันที่แสดงบนเทอร์มินัลได้อย่างไร
ถ้าฉันอยู่ในไดเรกทอรีลึกสมมติว่า: ~/Desktop/Dropbox/School/2017/C/A3/ เมื่อฉันเปิดสถานีมันก็บอกว่า bob@bob-ubuntu:~/Desktop/Dropbox/School/2017/C/A3/$ จากนั้นฉันก็เขียนคำสั่งของฉัน นั่นยาวมากและทุกบรรทัดที่ฉันเขียนในเทอร์มินัลจะไปที่บรรทัดถัดไป ฉันต้องการทราบว่ามีวิธีการหรือไม่ที่จะแสดงเฉพาะไดเรกทอรีปัจจุบันของฉัน ฉันต้องการให้มันแสดง: bob@bob-ubuntu: A3/$ วิธีนี้ชัดเจนมากและฉันสามารถpwdดูไดเรกทอรีทั้งหมดของฉันได้ตลอดเวลา ฉันไม่ต้องการให้ไดเรกทอรีทั้งหมดปรากฏในเทอร์มินัลเพราะใช้พื้นที่มากเกินไป

3
เชลล์ล่ามคนใดเรียกใช้สคริปต์โดยไม่มี shebang?
สมมติว่าเชลล์เริ่มต้นสำหรับบัญชีของฉันคือ zsh แต่ฉันเปิดเทอร์มินัลและยิงทุบตีและเรียกใช้สคริปต์ชื่อprac002.shซึ่งล่ามเชลล์ใดที่จะใช้ในการรันสคริปต์ zsh หรือ bash? ลองพิจารณาตัวอย่างต่อไปนี้: papagolf@Sierra ~/My Files/My Programs/Learning/Shell % sudo cat /etc/passwd | grep papagolf [sudo] password for papagolf: papagolf:x:1000:1001:Rex,,,:/home/papagolf:/usr/bin/zsh # papagolf's default shell is zsh papagolf@Sierra ~/My Files/My Programs/Learning/Shell % bash # I fired up bash. (See that '%' prompt in zsh changes to '$' prompt, …

1
ใช้การค้นหาขนาดตัวพิมพ์เล็กและใหญ่สำหรับสตริงตัวพิมพ์เล็กโดยใช้ smartcase
ผมปกติเปิดใช้งานในของฉันsmartcase.vimrc โดยไม่ต้องsmartcase: หากฉันต้องการการค้นหาแบบตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ฉันจะเขียนตัวพิมพ์เล็กหรือตัวพิมพ์ใหญ่ (ไม่สำคัญ) และต่อท้าย\cท้ายแบบสอบถาม การค้นหาแบบตรงตามตัวพิมพ์ใหญ่ - เล็กจะเกิดขึ้นตามค่าเริ่มต้น ด้วยsmartcase: ถ้าฉันต้องการการค้นหาแบบตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ฉันจะเขียนตัวพิมพ์เล็กทั้งหมด หากฉันต้องการค้นหาตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ฉันจะพิมพ์ตัวอักษรพิมพ์ใหญ่และตัวพิมพ์ใหญ่ แต่ด้วยการsmartcaseเปิดใช้งานฉันจะพูดได้อย่างไรว่าฉันต้องการค้นหาตัวพิมพ์เล็กและตัวพิมพ์เล็ก ฉันคาดหวังว่าการผนวก a \cจะยกเลิกประเภทการค้นหา (ดังนั้นถ้าฉันเขียนทั้งหมดด้วยตัวพิมพ์เล็กเช่นการค้นหาตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ก็จะเป็นการค้นหาแบบตัวพิมพ์เล็กและถ้าฉันเขียนตัวพิมพ์ใหญ่บางตัว ตัวอักษรเช่นการค้นหาตัวพิมพ์เล็กและตัวพิมพ์ใหญ่มันจะหันไปใช้การค้นหาแบบตัวพิมพ์ใหญ่และตัวพิมพ์เล็ก แต่ก็ดูเหมือนจะไม่เป็นแบบตัวพิมพ์ใหญ่
17 vim  search 

3
fstab mount รอเครือข่าย
ฉันพยายามติดตั้งอุปกรณ์ cifs หลังจากบูทระบบ แต่ระบบพยายามติดตั้งระบบก่อนที่จะสร้างเครือข่ายจึงล้มเหลว หลังจากเข้าสู่ระบบฉันสามารถติดมัน whitout ปัญหาใด ๆ โดยใช้ sudo mount -a ฉันจะบอก Arch (arm) ให้รอจนกว่าเครือข่ายจะพร้อมใช้งานได้อย่างไร แก้ไข : ฉันใช้ systemd

2
มีวิธีวัดความก้าวหน้าของ ext4lazyinit หรือไม่?
ผมได้ถามคำถามเกี่ยวกับ ext4lazyinit ที่นี่ จากทั้งหมดที่ฉันได้อ่านและทำความเข้าใจมันช่วยให้คุณเริ่มใช้ hdd โดยไม่ต้องสร้าง inodes ทั้งหมดสำหรับระบบไฟล์ของคุณ วิธีเดียวที่คุณรู้หรือวัดสามารถคือการตรวจสอบในext4lazyinit iotopมีวิธีในการรับความคืบหน้าเป็นเปอร์เซ็นต์หรือไม่
17 debian  kernel  ext4 

2
วิธีที่จะพลิกคีย์โฮสต์ ssh?
ฉันกำลังพยายามอัปเกรดเซิร์ฟเวอร์ ssh ของฉันจากคีย์ RSA 2048 บิตเป็นคีย์ที่มีขนาดใหญ่ขึ้นเนื่องจากข้อเสนอแนะจะทำให้คีย์ 2048 บิตสิ้นสุดลงในไม่ช้า ฉันสร้างรหัสใหม่แล้วเพิ่มลงในการกำหนดค่า sshd เช่นนี้ HostKey / etc / ssh / ssh_host_rsa_key (คีย์ 2k- บิตเก่าก่อน) HostKey / etc / ssh / ssh_host_rsa4096_key (คีย์ ใหม่ที่ใหญ่กว่าใหม่ 2 ) หลังจากที่เริ่มต้นsshdผม ssh'd ไปยังโฮสต์ผมไม่ได้รับการเตือนประจำตัวเปลี่ยน ~/.ssh/known_hostsแต่ใหม่ยังไม่ได้แคใน หากฉันวางสายในลำดับที่ตรงกันข้ามฉันจะได้รับการแจ้งเตือนการเปลี่ยนบัตรประจำตัว ในทำนองเดียวกันเมื่อฉันเพิ่มคีย์ ed25519 ไม่ว่าฉันจะสั่งซื้ออะไรลูกค้าจะไม่เพิ่มคีย์ใหม่ลงในไฟล์โฮสต์ที่รู้จัก สิ่งนี้ดูเหมือนว่าจะทำให้คีย์โฮสต์ SSH แบบโรลโอเวอร์เป็นไปไม่ได้ยากที่จะเชื่อว่าเป็นเรื่องจริง แต่การพิจารณาเรื่องความปลอดภัยเป็นประจำจำเป็นต้องอัพเกรดคีย์ ฉันรู้ว่าคุณสามารถสลับคีย์ได้จากนั้นลูกค้าทุกคนต้องเรียกใช้ssh-keygen -Rเพื่อลบคีย์เก่าจากนั้นตรวจสอบและยอมรับคีย์ใหม่ด้วยตนเอง - แต่นั่นเป็นความเจ็บปวดที่แท้จริงโดยเฉพาะอย่างยิ่งถ้าคุณมีลูกค้าจำนวนมากที่เชื่อมต่อหรือไม่จัดการ ลูกค้าทั้งหมด ไม่ต้องพูดถึงถ้าคุณไม่ดูแลลูกค้ามีโอกาสที่ดีมากที่พวกเขาจะไม่ตรวจสอบคีย์โฮสต์และเพียงแค่กด …
17 ssh  openssh 

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