Unix & Linux

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

3
ไม่สามารถลบไฟล์ได้แม้จะทำงานเป็น root
ฉันอยู่ในขั้นตอนการโอนย้ายเครื่องจาก RHEL 4 ถึง 5 แทนที่จะทำการอัปเกรดจริง ๆ เราได้สร้าง VM ใหม่ (ทั้งสองเครื่องอยู่ในระบบคลาวด์) และฉันอยู่ในกระบวนการคัดลอกข้อมูลระหว่างสองเครื่อง ฉันเจอไฟล์ต่อไปนี้ซึ่งฉันต้องลบออกจากเครื่องใหม่ แต่ไม่สามารถทำได้แม้ว่าจะทำงานในฐานะรูท: -rw------- 1 2003 2003 219 jan 11 14:22 .bash_history ไฟล์นี้อยู่ภายใน / home / USER / โดยที่ USER เป็นบัญชีของคนที่สร้างเครื่อง เขาไม่มีบัญชีในเครื่องเก่าดังนั้นฉันจึงพยายามลบโฟลเดอร์หลักของเขาเพื่อให้เครื่องใหม่มีบัญชีเก่า แต่ฉันได้รับข้อผิดพลาดต่อไปนี้: rm: ne peut enlever `.bash_history': Opération non permise (แปลจากภาษาฝรั่งเศส: ไม่สามารถลบ XXX ไม่อนุญาตให้ดำเนินการ) ฉันได้ลองใช้คำสั่งต่อไปนี้ แต่มันก็ไม่ได้สร้างความแตกต่าง: chattr -i …
48 permissions  rhel  root  rm 

7
เรียกใช้งานคำสั่งรีโมตปลดการเชื่อมต่อ ssh อย่างสมบูรณ์
ฉันมี 2 เครื่องคอมพิวเตอร์และlocalpcremoteserver ฉันต้องการที่จะดำเนินการคำสั่งบางอย่างเกี่ยวกับlocalpc remoteserverสิ่งหนึ่งที่ต้องทำคือเริ่มสคริปต์สำรองที่ทำงานหลายชั่วโมง ฉันต้องการคำสั่งlocalpcให้ "ดับไฟ" จากนั้นทำงานโดยอิสระอย่างremoteserverเต็มที่เหมือนlocalpcไม่เคยมีมาตั้งแต่แรก นี่คือสิ่งที่ฉันทำไปแล้ว: remoteserver ภายในมีสคริปต์: /root/backup.sh localpc มีกำหนดการทำงานนี้: ssh root@remoteserver 'nohup /root/backup.sh' & ฉันกำลังทำสิ่งนี้อย่างถูกวิธีหรือไม่? มีวิธีที่ดีกว่าในการทำเช่นนี้? ฉันจะพบปัญหาใด ๆ ในการทำเช่นนี้หรือไม่?

16
ลบรายการ $ PATH ซ้ำด้วยคำสั่ง awk
ฉันพยายามเขียนฟังก์ชัน bash shell ที่จะอนุญาตให้ฉันลบสำเนาของไดเรกทอรีที่ซ้ำกันออกจากตัวแปรสภาพแวดล้อม PATH ของฉัน ฉันถูกบอกว่าเป็นไปได้ที่จะบรรลุสิ่งนี้ด้วยคำสั่งหนึ่งบรรทัดโดยใช้awkคำสั่ง แต่ฉันไม่สามารถหาวิธีที่จะทำได้ มีใครรู้บ้าง
48 bash  shell  awk  path 


6
การแสดงรายการแพ็คเกจใน Yum ที่ขึ้นอยู่กับแพ็คเกจที่ติดตั้งอื่น
ฉันพยายามติดตั้งแพ็กเกจ RPM บุคคลที่สามบน RHEL5 ซึ่งขึ้นอยู่กับเวอร์ชั่น 3.4 ของ sqlite ตาม Yum ฉันได้ติดตั้ง 3.3.6 มีวิธีในการแสดงรายการแพ็คเกจที่ติดตั้งซึ่งขึ้นอยู่กับ sqlite 3.3.6 หรือไม่?

6
ฉันจะปิดการใช้งานบัญชีได้อย่างสมบูรณ์ได้อย่างไร
ฉันจะปิดการใช้งานบัญชีได้อย่างสมบูรณ์ได้อย่างไร passwd -lจะไม่อนุญาตให้ทุกคนเข้าสู่บัญชีโดยใช้รหัสผ่าน แต่คุณยังสามารถเข้าสู่ระบบผ่านส่วนตัว / คีย์สาธารณะ ฉันจะปิดการใช้งานบัญชีอย่างสมบูรณ์ได้อย่างไร ในฐานะที่เป็น QuickFIX authorized_keys_lockmeผมเปลี่ยนชื่อไฟล์ไปยัง มีวิธีอื่นอีกไหม?

6
ฉันจะอ่านทีละบรรทัดจากตัวแปรใน bash ได้อย่างไร
ฉันมีตัวแปรที่มีเอาต์พุตหลายบรรทัดของคำสั่ง วิธีที่มีประสิทธิภาพมากที่สุดในการอ่านบรรทัดเอาต์พุตโดยบรรทัดจากตัวแปรคืออะไร ตัวอย่างเช่น: jobs="$(jobs)" if [ "$jobs" ]; then # read lines from $jobs fi
48 bash  shell  io  cat 

7
ฉันสามารถสร้างการแทนที่ dns ที่คล้ายกับการเขียนใน / etc / hosts โดยไม่ต้องเข้าถึงรูท
ฉันต้องการตั้งค่าระเบียน dns ที่เบราว์เซอร์ของฉันจะใช้ แต่ฉันไม่มีสิทธิ์เข้าถึงระดับรากดังนั้นฉันจึงไม่สามารถแก้ไข/etc/hostsได้ ฉันต้องทำสิ่งนี้เพื่อทดสอบ vhosts ด้วย apache ซึ่ง dns ยังไม่ได้ตั้งค่า ฉันมีสิทธิ์เข้าถึง firefox และ chrome ดังนั้นหากมีปลั๊กอินที่สามารถอำนวยความสะดวกได้ หรือตัวเลือกอื่น ๆ มีประโยชน์ update:ทางเลือกในการแทนที่ dns น่าจะเป็นการแก้ไขส่วนหัว HTTP หากสิ่งที่ถูกต้องถูกส่งไปยัง apache เนื้อหาที่ถูกต้องควรถูกส่งคืน

4
เทียบเท่ากับ Active Directory บน Linux คืออะไร
ฉันมีสองเครื่องที่บ้าน (รวมถึงกล่อง Linux จำนวนหนึ่งที่ทำงานใน VM) และฉันวางแผนที่จะใช้หนึ่งในนั้นเป็นไฟล์เซิร์ฟเวอร์ส่วนกลาง เนื่องจากฉันเป็นผู้ใช้ลีนุกซ์มากกว่าดูแลระบบฉันต้องการทราบว่าเทียบเท่ากับอะไรสมมติว่า "Active Directory" วัตถุประสงค์ของฉันคือการมีไฟล์ของฉันในเครื่องใด ๆ ที่ฉันเข้าสู่ระบบในเครือข่ายของฉัน

4
จะค้นหาไดรเวอร์ (โมดูล) ที่เกี่ยวข้องกับอุปกรณ์บน Linux ได้อย่างไร
บน Linux ได้รับ: อุปกรณ์เช่น/dev/sda, และตัวเลขหลักและรองของตนตัวอย่างเช่น8, 0, ฉันจะรู้ได้อย่างไรว่าโมดูล / ไดรเวอร์ใดที่ "ขับ" หรือไม่ ฉันสามารถขุด/sysหรือ/procค้นพบสิ่งนั้นได้หรือไม่?

2
วิธีแก้ปัญหา DNS ด้วยระบบที่แก้ไขแล้ว?
คุณจะค้นหาเซิร์ฟเวอร์ DNS ที่ใช้systemd-resolvedเพื่อการแก้ไขปัญหาอย่างไร โดยทั่วไปฉันสามารถใช้digและทดสอบเซิร์ฟเวอร์ DNS /etc/resolv.confที่แสดงใน (หรือ windows - ipconfig /all+ nslookup) แต่วิธีการดังกล่าวไม่ทำงานเมื่อ resolv.conf เพียงชี้ไปที่ตัวแก้ไขแบบโลคัลบนที่อยู่วนรอบ วิธีใดที่ใช้ภายใต้การแก้ไขของระบบเพื่อแสดงเซิร์ฟเวอร์ DNS ที่ใช้? ( unboundมีไฟล์ config ที่ฉันสามารถดูได้ dnsmasqทำเช่นกัน แต่ฉันไม่แน่ใจว่าเซิร์ฟเวอร์สามารถเพิ่มแบบไดนามิกโดยไม่มีไฟล์กำหนดค่าได้หรือไม่แม้แต่ NetworkManager ตอนนี้มีnmcliและฉันเห็นคุณสามารถสอบถามnmcli d show wlan0เพื่อแสดงการกำหนดค่า DNS สำหรับอินเทอร์เฟซ )

3
วิธีการซิงค์ไดเรกทอรีไปยังไดเรกทอรีใหม่ที่มีชื่อแตกต่างกันอย่างไร
ฉันกำลังทำการถ่ายโอนข้อมูลระบบไฟล์เก่าอาศัยอยู่ในไดเรกทอรีที่ลึกซึ้งซึ่งขณะนี้อยู่ในเส้นทางที่แตกต่างกัน นี่คือไดเรกทอรี git ที่เก็บรหัสออนไลน์ ฉันไม่มีสิทธิ์ในการย้ายหรือเปลี่ยนชื่อ ดังนั้นสิ่งที่ฉันสามารถทำได้คือ rsync ไดเรกทอรีนี้ไปยังเส้นทางเดิม แต่ชื่อไดเรกทอรีก็เปลี่ยนไป มีวิธีง่ายๆที่ฉันสามารถซิงค์ไดเรกทอรีไปยังไดเรกทอรีเป้าหมายด้วยชื่ออื่นได้หรือไม่?
48 rsync 


1
นามแฝงสำหรับรายการไดเรกทอรีเรียงตามเวลาที่แก้ไขในลำดับย้อนกลับ
เมื่อฉันต้องการค้นหาไฟล์ที่ใช้ล่าสุดของฉันคำสั่งนี้: ls -lt รายการตามลำดับจากน้อยไปมาก (ตามเวลา) เมื่อมีไฟล์จำนวนมากฉันต้องเลื่อนไปที่ด้านบนเพื่อดูไฟล์ที่ต้องการเพราะจะไม่พอดีกับหน้าจอเทอร์มินัล หลังจากค้นพบว่าtacมีผลต่อผลลัพธ์ฉันใช้: ls -lt dir/ | tac มีวิธีที่สนุกกว่าในการทำโดยไม่ใช้สคริปต์ / utils ภายนอกหรือไม่?
48 ls 

10
จะทดสอบได้อย่างไรว่าไฟล์ใช้ CRLF หรือ LF โดยไม่ต้องดัดแปลงไฟล์?
ฉันต้องเรียกใช้คำสั่งเป็นระยะเพื่อให้แน่ใจว่าไฟล์ข้อความบางไฟล์ถูกเก็บไว้ในโหมด Linux น่าเสียดายที่dos2unixมักจะแก้ไขไฟล์ซึ่งจะทำให้ไฟล์และไฟล์บันทึกเวลาของไฟล์เลอะและทำให้เกิดการเขียนที่ไม่จำเป็น สคริปต์ที่ฉันเขียนนั้นอยู่ใน Bash ดังนั้นฉันต้องการคำตอบจาก Bash

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