Unix & Linux

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

2
จะเชื่อมต่ออินเทอร์เน็ตโดยใช้ 'nmcli' ได้อย่างไร
ตามลิงค์นี้ nmcli dev wifi con a52c60f5-c1af-4d39-8dc8-728bd770bffc password 12345678 name dlink_home ควรสร้างการเชื่อมต่อ แต่จะแสดงข้อผิดพลาดต่อไปนี้เมื่อฉันพยายามเชื่อมต่อ: ข้อผิดพลาด: 'dev wifi' คำสั่ง 'con' ไม่ถูกต้อง ดังนั้นฉันจะเชื่อมต่ออินเทอร์เน็ตไร้สาย / เครือข่ายโดยใช้network-managerหรือnmcliในโหมดบรรทัดคำสั่งได้อย่างไร PS ระบบปฏิบัติการที่ฉันใช้คือเซิร์ฟเวอร์ RHEL6
16 networking  wifi 

5
chmod ได้รับอนุญาตซ้ำกับไฟล์หลายพันไฟล์
นี่เป็นคำถามทั่วไปเกี่ยวกับ 'chmoding' แบบเรียกซ้ำ ฉันมีสคริปต์นี้ซึ่งในบางจุดจำเป็นต้องเปลี่ยนการอนุญาตซ้ำในโฟลเดอร์ที่มีไฟล์สองสามแสนไฟล์ มีไฟล์ใหม่เพิ่มเข้ามาในโฟลเดอร์นั้นทุกวัน แต่ไฟล์ที่มีอยู่แล้วมีการตั้งค่าการอนุญาตแล้วและจะไม่เปลี่ยนแปลง คำถามของฉันคือ ... เมื่อฉันโทร chmod 775 -R ลองตั้งค่าการอนุญาตสำหรับไฟล์ที่มีการตั้งค่าการอนุญาตที่เหมาะสมอยู่แล้วหรือเฉพาะสำหรับไฟล์ใหม่ที่ไม่มีการอนุญาตที่ถูกต้อง? ดูเหมือนว่าจะต้องใช้เวลานานกว่าจะผ่านคำสั่งนี้ในสคริปต์แม้ว่าไฟล์ 'ใหม่' จะมีอยู่เพียงไม่กี่พันไฟล์เท่านั้นและควรจะอนุญาตอย่างรวดเร็ว ฉันได้ดูหน้าคนสำหรับ chmod แต่ดูเหมือนจะไม่พูดถึงอะไรในกรณีนี้ หาก chmod ไม่ตรวจสอบการอนุญาตล่วงหน้าฉันควรเริ่มดูการรวม 'find' กับ 'chmod' หรือไม่

2
การดำเนินการคำสั่ง piped ในแบบคู่ขนาน
พิจารณาสถานการณ์สมมติต่อไปนี้ ฉันมีสองโปรแกรม A และ B. โปรแกรม A เอาต์พุตไปยัง stdout บรรทัดของสตริงในขณะที่โปรแกรม B ประมวลผลบรรทัดจาก stdin วิธีใช้โปรแกรมทั้งสองนี้เป็นของหลักสูตร: foo @ bar: ~ $ A | B ตอนนี้ฉันสังเกตเห็นว่านี่กินแกนเดียวเท่านั้น ดังนั้นฉันสงสัย: โปรแกรม A และ B แชร์ทรัพยากรการคำนวณเดียวกันหรือไม่ ถ้าเป็นเช่นนั้นจะมีวิธีเรียกใช้ A และ B พร้อมกันไหม อีกสิ่งหนึ่งที่ฉันสังเกตเห็นคือ A ทำงานเร็วกว่า B มากฉันจึงสงสัยว่าจะสามารถรันโปรแกรม B เพิ่มเติมได้หรือไม่และให้พวกเขาประมวลผลบรรทัดที่เอาท์พุทแบบขนาน นั่นคือ A จะเอาต์พุตบรรทัดของมันและจะมีอินสแตนซ์ N ของโปรแกรม B ที่จะอ่านบรรทัดเหล่านี้ (ใครก็ตามที่อ่านก่อน) ประมวลผลและส่งออกใน …

3
การยกเลิกสคริปต์เชลล์ bash ที่รันในพื้นหลัง
ฉันมักจะใช้bashเชลล์สคริปต์เพื่อรันคำสั่งง่าย ๆ สำหรับไฟล์ที่แตกต่างกัน ตัวอย่างเช่นสมมติว่าฉันมีดังต่อไปนี้bashเชลล์สคริปต์เรียกscript.shว่ารันโปรแกรม / คำสั่งfooสามไฟล์ข้อความ"a.txt", "b.txt", "c.txt": #!/bin/bash for strname in "a" "b" "c" do foo $strname".txt" done นอกจากนี้สมมติว่าfoo $strname".txt"ช้าดังนั้นการเรียกใช้สคริปต์จะใช้เวลานาน (ตัวอย่างเช่นชั่วโมงหรือวัน) ด้วยเหตุนี้ฉันต้องการใช้nohupเพื่อให้การดำเนินการต่อไปแม้ว่าเทอร์มินัลจะปิดหรือตัดการเชื่อมต่อ ฉันต้องการให้สคริปต์ไปที่พื้นหลังทันทีดังนั้นฉันจะใช้&โอเปอเรเตอร์ ดังนั้นฉันจะใช้คำสั่งต่อไปนี้เพื่อโทรscript.sh: nohup bash script.sh & วิธีนี้ใช้งานได้ดีสำหรับการเรียกใช้สคริปต์ในพื้นหลังและไม่มีการแฮงค์ แต่ตอนนี้สมมติว่าฉันต้องการยุติการประมวลผลในบางจุดด้วยเหตุผลบางอย่าง ฉันจะทำสิ่งนี้ได้อย่างไร ปัญหาที่ฉันได้พบก็คือว่าโดยดูที่topผมเห็นเพียงที่สอดคล้องกับfoo "a.txt"ฉันสามารถยุติการfooโทรนั้นได้ แต่จากนั้นการโทรที่fooสอดคล้องกันจะ"b.txt"ได้รับการเรียกและจากนั้นฉันต้องยุติการโทรนั้นเช่นกันและต่อไปเรื่อย ๆ สำหรับไฟล์ข้อความหลายสิบหรือร้อยไฟล์ที่ระบุในforลูปมันจะกลายเป็นความเจ็บปวดที่จะยกเลิกทุก ๆไฟล์ทีละไฟล์foo! ดังนั้นฉันต้องยกเลิกเชลล์สคริปเองแทนการโทรเฉพาะที่ออกจากเชลล์สคริป เมื่อฉันพิมพ์คำสั่ง ps -u myusername myusernameชื่อผู้ใช้ของฉันอยู่ที่ไหนฉันได้รับรายการกระบวนการที่ฉันใช้อยู่ bashแต่ผมเห็นสองรหัสกระบวนการที่แตกต่างกันเรียกว่า ฉันจะรู้ได้อย่างไรว่ากระบวนการเหล่านี้ถ้ามีการสอดคล้องกับการเรียกร้องเดิมของฉันnohup bash script.sh &?

2
วิธีการวนซ้ำอาร์กิวเมนต์ในสคริปต์ทุบตี
ฉันต้องการเขียนสคริปต์ทุบตีด้วยจำนวนอาร์กิวเมนต์ที่ไม่รู้จัก ฉันจะเดินผ่านข้อโต้แย้งเหล่านี้และทำอะไรกับพวกเขาได้อย่างไร ความพยายามที่ผิดจะมีลักษณะเช่นนี้: #!/bin/bash for i in $args; do echo $i done
16 bash  shell  arguments 

3
วิธีการติดตั้งดิสก์จากระบบการโจมตีที่ถูกทำลาย?
ฉันมีสถานการณ์ที่น่ากลัวที่ฉันต้องกู้คืนข้อมูลจากระบบการโจมตีที่เสียหายในระบบช่วยเหลือ Debian Linux ฉันต้องการเมานต์พวกเขาทั้งหมดไปยัง / mnt / rescue ในโหมดอ่านอย่างเดียวเพื่อให้สามารถคัดลอกอิมเมจ VMWare GSX ไปยังเครื่องอื่นและย้ายไปยัง ESXi ในภายหลัง เอาต์พุตสำหรับคำสั่งที่เกี่ยวข้องมีดังนี้ fdisk -l Disk /dev/sda: 1500.3 GB, 1500301910016 bytes 255 heads, 63 sectors/track, 182401 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): …
16 debian  raid  rescue  data 

2
แจ้งรหัสผ่านในระหว่างการบู๊ตด้วยเซอร์วิส systemd
สิ่งนี้เกี่ยวข้องกับ Arch Linux (และอาจใช้การแจกจ่ายอื่น ๆsystemd) ฉันต้องการติดตั้งพาร์ทิชัน TrueCrypt ตอนบูท กับเก่านี้เป็นคนน่ารักตรงไปตรงมากับสคริปต์เรียกได้ว่าsysvinitrc.local ฉันได้ไปในปัจจุบันของฉันด้วยการหักหลังฟอรั่ม Arch มีอีกเป็นด้ายที่ด้าย systemd-devel นี้มีการพูดคุยเกี่ยวกับการเป็น "มีวิธีการแก้ปัญหา" แต่มันไม่ได้เป็นที่ชัดเจนให้กับฉันว่ามันเป็นจริงและ OP มีโพสต์ล่าสุดระบุว่าเขาไม่สามารถที่จะบรรลุเป้าหมายของเขา จากหน้าตาของมันบุคคลนี้กำลังทำอยู่ แต่กำลังมองหาวิธีปิดข้อความการบูตอย่างต่อเนื่องในขณะที่เขาพิมพ์รหัสผ่าน ฉันโพสต์ที่นั่นและขอให้เขาโพสต์.serviceไฟล์จริงของเขา ในการค้นหาค่อนข้างน้อยคนพูดถึงว่าพวกเขาประสบความสำเร็จหรือเป็นไปได้ แต่ไม่ได้ระบุว่าโซลูชันคืออะไร ฉันเท่าที่สามารถปลดล็อกพาร์ติชันจากบรรทัดคำสั่งผ่านsystemdบริการ (ซึ่งจะทำให้ฉันมีความสามารถในการ dismount โดยอัตโนมัติเมื่อปิด / รีบูต) แต่ฉันต้องทำด้วยตนเองเมื่อเข้าสู่ระบบฉัน ' ชอบกระบวนการบู๊ตเพื่อหยุดและขอรหัสผ่านให้ฉัน นี่คือสคริปต์ปัจจุบันของฉัน: [Unit] Description=Truecrypt Setup for vault #DefaultDependencies=no #Conflicts=umount.target #Before=umount.target #After=systemd-readahead-collect.service systemd-readahead-replay.service #After=cryptsetup.target [Service] Type=oneshot RemainAfterExit=yes #StandardInput=tty-force ExecStart=/bin/sh -c …

1
ส่วนขยายเชลล์ Gnome ควรจะจัดการอย่างไร
ฉันมีปัญหาในการทำความเข้าใจวิธีการจัดการส่วนขยายเชลล์ Gnome ฉันไม่พบโปรแกรมที่เหมาะสมใน Dash สำหรับการทำเช่นนั้น วิธีเดียวที่จริงผมสามารถจัดการส่วนขยายผ่านextensions.gnome.org เป็นไปไม่ได้ที่หน้านี้ควรจะเป็นเครื่องมือสำหรับการจัดการส่วนขยาย - มันไม่มีเหตุผลอย่างแน่นอน (มันแบ่ง UX สำหรับหนึ่ง) โปรดบอกฉันว่ามีแผนสำหรับแอปพลิเคชันเนทีฟที่มุ่งเน้นการจัดการส่วนขยายที่มีประโยชน์เหล่านี้


2
การจัดเก็บข้อมูลอีเมลในพื้นที่ให้ซิงค์กับ imap - เป็นมิตร
สรุป ปัญหาของฉัน : ฉันต้องการอ่านอีเมลแบบออฟไลน์ด้วยตัวเลือกลูกค้าของฉัน ( mutt) แต่ฉันต้องการการดำเนินการเช่นการย้ายอีเมล ฯลฯ จะถูกเก็บไว้ในแบบสองทาง snc กับเซิร์ฟเวอร์ imap คำถามของฉัน : มีวิธีที่ตรงไปตรงมาจะทำในขณะนี้ยังคงใช้เครื่องมือมาตรฐานเช่นfetchmail, procmailฯลฯ ? รายละเอียด ฉันมีบัญชี gmail ด้วยเหตุผลต่าง ๆ - สถาบันบางแห่ง - ฉันต้องสามารถอ่านจดหมายนี้ได้จากโปรแกรมรับส่งเมล ฉันต้องการให้ 'กล่องจดหมาย' ของฉันสะอาดเหมือนฉันจะเก็บมันไว้กับการตั้งค่าอีเมลในพื้นที่แบบดั้งเดิม หากฉันย้ายอีเมลไปยังโฟลเดอร์ในเว็บไคลเอ็นต์ฉันต้องการให้กล่องรับข้อความในเครื่องของฉันพิจารณาสิ่งนี้ muttเมื่อเป็นไปได้ผมอยากจะสามารถที่จะอ่านจดหมายนี้จาก ก่อนหน้านี้ฉันใช้ฟังก์ชัน imap ดั้งเดิมของ mutt แต่ต้องทำการเชื่อมต่อกับเซิร์ฟเวอร์ทุกครั้งที่คุณเรียกใช้ การเชื่อมต่อมักจะลดลงในขณะที่ฉันอ่านเมลและ mutt เปิดในพื้นหลัง มันเก็บเฉพาะส่วนหัวของข้อความเท่านั้นและการโหลดข้อความใหม่ต้องมีการไปกลับที่เซิร์ฟเวอร์ ถ้าฉันส่งข้อความฉันต้องรอจนกว่าจะได้รับการยอมรับผ่าน STMP ก่อนที่ฉันจะสามารถดูข้อความอื่น ๆ ได้ มีวิธีแก้ไขไหม? ฉันไม่คิดว่าลูกค้าที่อ้วนอย่างธันเดอร์เบิร์ดจะเป็นวิธีแก้ปัญหา: ฉันต้องการเข้าถึงเทอร์มินัลฉันชอบ grep เมลของฉันฉันใช้ประโยชน์จากความสามารถในการกรองของ …
16 email  mutt  fetchmail  imap 

6
การตรวจจับเซสชัน X ในสคริปต์ทุบตี (.bashrc ฯลฯ )
เมื่อเร็ว ๆ นี้ฉันใส่xset b off. bashrc ของฉัน ตอนนี้ฉันรำคาญกับข้อผิดพลาดที่ปรากฏขึ้นเมื่อฉันเข้าสู่ระบบผ่านทาง tty หรือผ่าน ssh คือนอกเซสชั่น X สิ่งแรกที่อยู่ในใจของฉันคือ[[ -z "$SOME_VAR" ]] && xset b off(เอาล่ะปรากฎว่าตัวแปรทดสอบที่ตั้งไว้และความว่างเปล่าเป็นคำถามที่แตกต่างกัน) แต่ SOME_VAR ใดที่ถูกต้อง ดังนั้นฉันจึงแยกsetเอาท์พุทของ tty และเอาต์พุตของ urxvt setเพื่อดูว่าตัวแปรใดถูกตั้งค่าเป็น X และหายไปใน tty ตามที่คาดไว้มีความแตกต่างค่อนข้างมาก (แสดงเฉพาะสิ่งที่ดูเหมือนเกี่ยวข้องกับฉัน): DESKTOP_SESSION DISPLAY GDMSESSION SESSION_MANAGER WINDOWID WINDOWPATH XAUTHORITY XDG_SESSION_COOKIE XDG_CONFIG_DIRS XDG_DATA_DIRS XDG_MENU_PREFIX ข้อใดที่ถูกต้องและเป็นสากลมากที่สุดในการทดสอบเพื่อตรวจสอบว่าฉันอยู่ในช่วง X หรือไม่? มีสิ่งใดบ้างที่สามารถใช้ข้ามแพลตฟอร์มและแพลตฟอร์มและสภาพแวดล้อมเดสก์ท็อปได้มากเท่าที่จะเป็นไปได้ หรือมีวิธีที่ดีกว่าการทดสอบตัวแปรสภาพแวดล้อม?

5
การจัดเก็บหมายเหตุประกอบ PDF และข้อมูลเมตาของ Okular ใน PDF นั้น
โปรแกรมดู PDF Okular (ส่วนหนึ่งของเดสก์ท็อป KDE) มีคุณสมบัติที่ดีมากมายและรองรับรูปแบบไฟล์จำนวนมาก สิ่งหนึ่งที่ฉันชอบเกี่ยวกับมันคือความคิดเห็นและคำอธิบายประกอบ น่าเสียดายที่ความคิดเห็นและข้อมูลเมตาทั้งหมด (เช่นหน้าที่ดูล่าสุด) ถูกเก็บไว้ใน: ~ / .kde / share / apps / okular / docdata มีวิธีใดที่จะทำให้ Okular เก็บไว้ในรูปแบบ PDF?
16 kde  pdf  okular 

3
การใช้งานในทางปฏิบัติสำหรับการย้ายไฟล์อธิบาย
ตามหน้าคนทุบตี: ผู้ประกอบการเปลี่ยนเส้นทาง [n]<&digit- ย้าย file descriptor digitไปที่ file descriptor nหรืออินพุตมาตรฐาน (file descriptor 0) หากnไม่ได้ระบุไว้ digitถูกปิดหลังจากการพิมพ์nซ้ำ การย้าย "file descriptor" ไปยังอีกอันหนึ่งหมายความว่าอะไร? สถานการณ์ทั่วไปสำหรับการฝึกเช่นนี้มีอะไรบ้าง

4
วิธีส่งคำสั่งจำนวนมากไปยัง shell และรอให้คำสั่งด้านหลังลงท้ายด้วย [ปิด]
ปิด คำถามนี้ต้องการรายละเอียดหรือความคมชัด ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ เพิ่มรายละเอียดและชี้แจงปัญหาโดยแก้ไขโพสต์นี้ ปิดให้บริการใน2 ปีที่ผ่านมา ฉันมีคำสั่งประมาณ 20 คำสั่งและฉันต้องส่งสิ่งนี้ทั้งหมดไปยัง Unix shell และคัดลอกผลลัพธ์ แต่ฉันไม่รู้ว่าจะทำอย่างไร ฉันไม่แน่ใจเกี่ยวกับเชลล์ที่ฉันมีเพราะเป็นโปรแกรมขนาดเล็กที่เชื่อมต่อกับการจัดการเครือข่ายมือถือและด้วยโปรแกรมขนาดเล็กนี้เราสามารถเข้าถึงเพื่อส่งคำสั่งตามบรรทัดและรับผลลัพธ์โดยกรีดร้องด้วยเหตุนี้ฉันจึงไม่สามารถใช้สคริปต์สำหรับ ส่งคำสั่ง คำสั่ง 1 - เชื่อมต่อกับเซิร์ฟเวอร์ รอจนกว่าคำสั่ง 1 เสร็จสิ้น คำสั่ง 2 - อัปเดตข้อมูลทั้งหมดจากเซิร์ฟเวอร์ 1 เสร็จสิ้น รอ. 3 คำสั่ง รับพารามิเตอร์ ... และคำสั่งอื่น ๆ อีกมากมาย ฉันพยายามด้วยcmd1 | cmd2 | cmd3 และ cmd1 & cmd2 & cmd3และcmd1;cmd2 ปัญหาเกิดcmd1จากการเชื่อมต่อกับ RNC …

2
วิธีการใช้หาง -f พร้อม grep เพื่อแสดงเส้นโดยรอบ
ผมอยากจะเห็นผลลัพธ์ในส่วนlogfile greped โดยโดเมนเดียวเท่านั้น แต่ยังดังต่อไปนี้ทั้งสองสาย ตัวอย่าง: tail -f /var/log/apache2/modsec_audit.log |grep mydomain.de สิ่งนี้แสดงทุกบรรทัดที่มี"mydomain.de"แต่ข้อมูลสำคัญอยู่ในบรรทัดด้านล่างบรรทัดซึ่งมีโดเมนรวมอยู่ด้วย
16 grep  tail 

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