Unix & Linux

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

7
วิธีการเปลี่ยนการอนุญาตและกลุ่มเจ้าของไฟล์ในเวลาเดียวกัน
สำหรับการเปลี่ยนการอนุญาตไฟล์ฉันรู้ว่าฉันสามารถใช้ chmod ได้ สำหรับการเปลี่ยนเจ้าของกลุ่มฉันสามารถใช้ chgrp อย่างไรก็ตามหากฉันต้องการเปลี่ยนทั้งสิทธิ์และเจ้าของพร้อมกันคำสั่งใด ๆ ที่ฉันสามารถใช้บน Linux? ตัวอย่างเช่นมีไฟล์ที่มีสิทธิ์และเจ้าของ: -rw-r--r--+ 1 raymondtau staff 0 May 8 16:38 WantToChangeThisFile และตอนนี้ฉันต้องการเปลี่ยนเป็น: ---x-w--wx+ 1 raymondtau admin 0 May 8 16:38 WantToChangeThisFile ฉันรู้ว่าฉันสามารถใช้คำสั่งนี้: chmod 123 WantToChangeThisFile && chgrp admin WantToChangeThisFileแต่ต้องการทราบว่ามีวิธีที่เป็นระเบียบเรียบร้อยหรือไม่ในการทำเช่นนั้น
9 files  chmod  chown 


1
ทำความเข้าใจกับหมายเลขพอร์ตบริดจ์เคอร์เนลเสมือนของเคอร์เนล Linux
ฉันมีลินุกซ์เคอร์เนลสะพานเสมือนที่มีอินเตอร์เฟซeth1และtap0: # brctl show br0 bridge name bridge id STP enabled interfaces br0 8000.00016c404fa3 no eth1 tap0 # ตอนนี้เมื่อฉันดูตารางที่อยู่ MAC ของสวิตช์เสมือนมันจะแสดงหมายเลขพอร์ต2( tap0ส่วนต่อประสาน) และ3( eth1ส่วนต่อประสาน): # brctl showmacs br0 port no mac addr is local? ageing timer 3 00:00:5e:00:01:c9 no 0.11 3 00:01:6c:40:2d:94 no 0.53 3 00:01:6c:40:4f:a3 yes 0.00 3 00:01:6c:55:3a:72 …

1
ฉันจะส่งคีย์ฟังก์ชั่นไปที่ htop ได้ด้วยวิธีใด?
ฉันพยายามที่จะใช้htopใน tty1 อย่างไรก็ตามปุ่มฟังก์ชั่นบางปุ่มไม่ทำงานตามปกติ F1และF2ไม่ทำอะไรเลยและF3ดูเหมือนว่าจะก่อให้เกิดการติดตั้ง (ซึ่งโดยปกติจะถูกเรียกโดยF2) นอกจากนี้F4และF5ไม่ทำงาน นอกจากนี้เมื่อฉันลองและกดEscเพื่อออกจากหน้าจอเหล่านี้ฉันต้องกดสองครั้ง ในเทอร์มินัลปกติ ( terminator) ปุ่มฟังก์ชันจะทำงานได้ดี อย่างไรก็ตามฉันต้องกดEscสองครั้งที่นี่ด้วยดังนั้นอาจเป็นปลาเฮอริ่งแดง ฉันจะใช้ปุ่มฟังก์ชั่นเหล่านี้ใน tty1 ได้อย่างไร? แก้ไข ใน tty1 ถ้าฉันกดCtrl+ vจากนั้นF1ไปที่F5ฯลฯ ฉันจะได้ผลลัพธ์ต่อไปนี้: ^[[[A ^[[[B ^[[[C ^[[[D ^[[[E ในterminatorฉันได้รับ ^[OP ^[OQ ^[OR ^[OS ^[[15~ ปุ่มฟังก์ชั่นด้านบนนี้เทียบเท่า (เช่น^[[17~สำหรับF6) แก้ไข 2 ในการตอบสนองStéphane Chazelas ของความคิดเห็น $TERMเหมือนกันใน tty1 เหมือนกับใน "terminal" ปกติของฉัน xterm-256colorมันเป็น ฉันไม่ได้ใช้หน้าจอหรือ tmux ผมใช้htop1.0.3 htopแม้ว่าการแก้ไขครั้งแรกของฉันดูเหมือนจะชี้ไปที่มันเป็นปัญหาของต้นน้ำ " …

3
ทำไม Dropbox ถึงพูดว่า“ Killed” บน Arch Linux?
ฉันพยายามติดตั้ง Dropbox บน Arch Linux ฉันได้ติดตั้งทั้งสองdropboxและdropbox-cliอย่างน้อยก็จนถึงจุดที่มีไบนารี เมื่อฉันวิ่งdropboxด้วยตัวมันเองมันก็แค่ตอบสนองKilledด้วยตัวอักษรสีแดง เมื่อฉันวิ่งdropbox-cli startมันพิมพ์ออกมา: Starting Dropbox... Dropbox isn't running! Done! จากนั้นจะกลับมาdropbox-cli statusDropbox isn't running! ฉันเชื่อมต่อกับอีเธอร์เน็ต ฉันควรไปจากที่นี่ที่ไหน แก้ไขเพื่อรวม strace: futex(0xa10520, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x1285920, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0xa104e4, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 158, {1430164659, 469752000}, ffffffff) = -1 EAGAIN (Resource temporarily unavailable) futex(0xa10564, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0xa10560, …

2
จะใช้คุณสมบัติใหม่ของ Ext4 Inline Data ได้อย่างไร? (การจัดเก็บข้อมูลโดยตรงในไอโหนด)
ถ้าฉันอ่านเอกสาร Ext4 อย่างถูกต้องเริ่มต้นจาก Linux 3.8 เป็นไปได้ที่จะเก็บข้อมูลโดยตรงใน inode ในแจกันของไฟล์ขนาดเล็กมาก ฉันคาดหวังว่าไฟล์ดังกล่าวจะมีขนาด 0 บล็อก แต่ไม่ใช่กรณี #creating a small file printf "abcde" > small_file #checking size of file in bytes stat --printf='%s\n' small_file 5 #number of blocks used by files stat --printf='%b\n' small_file 8 ฉันคาดหวังว่าตัวเลขสุดท้ายนี้ที่นี่จะเป็น 0 ฉันหายไปหรือเปล่า
9 linux  ext4 

2
สัญญาณที่รอการอนุมัติคืออะไร?
เมื่อดูที่ขีด จำกัด ของกระบวนการทำงานฉันเห็น Max pending signals 15725 นี่คืออะไร? ฉันจะกำหนดมูลค่าที่เหมาะสมสำหรับบริการไม่ว่างได้อย่างไร โดยทั่วไปแล้วฉันไม่สามารถค้นหาหน้าเว็บที่อธิบายว่าแต่ละขีด จำกัด คืออะไร บางไฟล์เป็นแบบอธิบายตัวเอง (ไฟล์เปิดสูงสุด) บางไฟล์อาจน้อยกว่า (ขนาดสูงสุด msgqueue)

1
Linux: คำสั่ง set สำหรับตัวแปรโลคัล
ฉันพยายามทำความเข้าใจกับตัวแปรโลคัล / สภาพแวดล้อมและคำสั่งส่งออก / ตั้งค่า $ set FILEM="razrax" $ echo $FILEM $ FILEN="test" $ echo $FILEN test โปรดอธิบายว่าทำไมecho $FILEMส่งคืนสตริงว่าง
9 bash  shell  variable 

3
แก้ไขการใช้ xargs แบบขนาน
ฉันใช้xargsโทรสคริปต์ไพ ธ อนเพื่อประมวลผลไฟล์ขนาดเล็กประมาณ 30 ล้านไฟล์ ฉันหวังว่าจะใช้xargsเพื่อขนานกระบวนการ คำสั่งที่ฉันใช้คือ: find ./data -name "*.json" -print0 | xargs -0 -I{} -P 40 python Convert.py {} > log.txt โดยทั่วไปConvert.pyจะอ่านในไฟล์jsonขนาดเล็ก(4kb) ทำการประมวลผลและเขียนไปยังไฟล์ 4kb อื่น ฉันกำลังทำงานบนเซิร์ฟเวอร์ที่มี 40 คอร์ CPU และไม่มีกระบวนการอื่นที่ใช้งาน CPU สูงบนเซิร์ฟเวอร์นี้ จากการตรวจสอบ htop (btw มีวิธีอื่นที่ดีในการตรวจสอบประสิทธิภาพของ CPU หรือไม่) ฉันพบว่า-P 40ไม่เร็วเท่าที่ควร บางครั้งแกนทั้งหมดจะหยุดและลดลงจนเกือบเป็นศูนย์ประมาณ 3-4 วินาทีจากนั้นจะฟื้นตัวเป็น 60-70% จากนั้นฉันพยายามลดจำนวนกระบวนการแบบขนานเป็น-P 20-30แต่ก็ยังไม่เร็วมาก พฤติกรรมในอุดมคติควรเป็นแบบความเร็วเชิงเส้น มีข้อเสนอแนะใด …

2
ไฟล์ sudoers ที่แก้ไขด้วย text editor ตอนนี้ไม่สามารถเรียกใช้ sudo
ตอนนี้ฉันรู้แล้วว่าฉันไม่ควรพยายามแก้ไขetc/sudoersไฟล์ด้วยโปรแกรมแก้ไขข้อความธรรมดา อย่างไรก็ตามไม่กี่นาทีก่อนที่ฉันจะเรียนรู้สิ่งนี้ฉันได้บันทึกชื่อผู้ใช้ใหม่ในไฟล์ด้วย Sublime Text ตอนนี้เมื่อฉันเรียกใช้sudo cat sudoersตัวอย่างเช่นฉันได้รับข้อผิดพลาดต่อไปนี้: >>> /etc/sudoers: syntax error near line 1 <<< sudo: parse error in /etc/sudoers near line 1 sudo: no valid sudoers sources found, quitting ฉันจะออกไปจากความไม่แน่ใจนี้ได้อย่างไร
9 osx  sudo 

1
cfdisk หรือ fdisk
ขณะที่อ่าน man page สำหรับfdiskฉันเจอข้อความที่น่าสนใจนี้: มีโปรแกรม * fdisk หลายโปรแกรม แต่ละคนมีปัญหาและจุดแข็ง ลองใช้คำสั่ง cfdisk, fdisk, sfdisk (จริง ๆ แล้ว cfdisk เป็นโปรแกรมที่สวยงามที่มีข้อกำหนดที่เข้มงวดในตารางพาร์ทิชันที่ยอมรับและสร้างตารางพาร์ทิชันคุณภาพสูงใช้ถ้าคุณทำได้ fdisk เป็นโปรแกรม buggy ที่ทำสิ่งที่คลุมเครือ - โดยปกติจะเกิดขึ้นเพื่อสร้างเหตุผลที่เหมาะสม ผลลัพธ์ข้อได้เปรียบเพียงอย่างเดียวของมันคือมันมีการสนับสนุนบางส่วนสำหรับป้ายดิสก์ BSD และตารางพาร์ติชันที่ไม่ใช่ DOS อื่น ๆ หลีกเลี่ยงได้ถ้าคุณทำได้ sfdisk สำหรับแฮกเกอร์เท่านั้น - ส่วนติดต่อผู้ใช้แย่มาก แต่มันถูกต้องกว่า fdisk และ มีประสิทธิภาพมากกว่า fdisk และ cfdisk นอกจากนี้ยังสามารถใช้แบบไม่โต้ตอบ) ฉันสังเกตว่ารูปแบบตัวเลือกนั้นไม่เหมือนกันสำหรับสองแอปพลิเคชัน: - melancholy():/$ sudo fdisk -l Disk …

1
ฉันจะเปลี่ยนการมอนิเตอร์ที่ TTY แสดงบนได้อย่างไร?
เมื่อฉันบูตหรือเมื่อฉันกดCtrlAltF*ฉันถูกพาไปที่เทอร์มินัลทางกายภาพ / TTY ปัญหาคือว่า TTY ปรากฏขึ้นบนจอภาพ HDMI ของฉันซึ่งจริงๆแล้วไม่ได้อยู่ในห้องเดียวกันกับฉัน เป็นไปได้หรือไม่ที่จะกำหนดค่าพีซีของฉันเพื่อแสดง TTY บนจอภาพ DisplayPort ของฉัน ในการอธิบายให้ชัดเจนเมื่อฉันกดCtrlAltF1ฉันต้องการให้ TTY แสดงบนหน้าจอ DisplayPort ของฉันไม่ใช่จอภาพ HDMI ของฉัน แก้ไข: หลังจากขุดเพิ่มเติมดูเหมือนว่า bootloader อาจเกี่ยวข้องที่นี่ดังนั้นฉันควรระบุว่าฉันกำลังใช้ GRUB 2.02 ~ beta2-20

1
มีเหตุผลทางเทคนิคหรือไม่ว่าทำไม ssh-agent ขาดคุณสมบัติการหยุดพักชั่วคราว / ไม่มีการใช้งานเหมือน sudo
มีการพูดคุยสั้น ๆ เกี่ยวกับssh-agent -tคุณลักษณะที่มีอยู่ที่ [1] และมีโพสต์ที่ไกลที่สุดเท่าที่ปี 2001 เรื่องเดเบียน - เดเวล [2] ที่ต้องการคุณสมบัติการหมดเวลาที่ไม่ได้ใช้งาน มีการสนทนาที่คล้ายกันที่นี่ใน SE [3] สำหรับการประกวด ฉันต้องสงสัยว่าส่วนที่เหลือของโลกนี้ปกป้องคีย์ ssh ได้หรือไม่ฉันขาดอะไรบางอย่างที่เห็นได้ชัดเพื่อให้เป็นจุดเจ็บปวดสำหรับฉันและเห็นได้ชัดว่าไม่มีใครอื่น โดยเฉพาะฉันกำลังคิดถึงการโต้ตอบ ssh แบบสคริปต์เช่นกับ ansible ดูเหมือนว่าวันนี้ตัวเลือกของคุณคือ: ตั้งค่าอายุการใช้งานของกุญแจของคุณในตัวแทนเป็นระยะเวลานานอย่างน่าเป็นห่วงเช่น 1 ชม. หรืออะไรก็ตามที่สคริปต์ของคุณอาจใช้งานได้นานที่สุด (ฉันสงสัยว่าหลายคนอนุญาตให้หมดเวลา sudo ของพวกเขาอีกครั้งเพื่อยืดเวลานั้น!) - แต่seahorse/ gnome-keyring-daemonแทบจะไม่สนับสนุนสิ่งนี้มาก [4] ดูแลสคริปต์ที่ใช้งานยาวนานของคุณและให้ป้อนรหัสผ่านของคุณใหม่ทุก ๆ 5/10/15 นาที: ตอนนี้คุณสามารถดูข้อความรหัสผ่านของคุณได้อย่างง่ายดาย 20 ครั้งต่อวัน เจาะวิธีแก้ไขปัญหา home-brew ของคุณเพื่อเลียนแบบคุณลักษณะที่ขาดหายไปนี้อาจรวมกับ shell shell ของTMOUTเชลล์ (ขอขอบคุณผู้ใช้บน freenode …

2
ฉันจะบอกได้ว่าอุปกรณ์ทรี blob (ไฟล์ dtb) ใดที่ฉันกำลังใช้อยู่
ฉันกำลังทำงานกับ TS-4900 ซึ่งเป็น 'คอมพิวเตอร์บนโมดูล' ที่เสียบเข้ากับกระดานข้างก้นโดยใช้ Yocto Linux มันใช้ U-Boot ในการเริ่มต้นและคาดว่าจะพิจารณาจากรูปแบบของ baseboard มันเลือกไฟล์ dtb ที่เหมาะสมในการเริ่มต้นและอาจเป็นไปได้ว่าหากไม่สามารถหาตำแหน่งที่ถูกต้องมันจะกลับไปที่ 'generic' สำหรับโมดูลของฉัน แต่มันจะกำหนดได้อย่างไร? ฉันจะทราบได้อย่างไรว่า. dtb ถูกใช้งานหรือตั้งค่าที่ควรใช้ ด้านล่างนี้เป็นข้อความบูตของ U-Boot U-Boot 2014.10-g3ac6ec3 (Jan 29 2015 - 17:20:15) CPU: Freescale i.MX6SOLO rev1.1 at 792 MHz Reset cause: POR Board: TS-4900 Revision: C Watchdog enabled I2C: ready DRAM: 1 GiB …

2
วิธีทุบตีปฏิบัติต่อ“>> ()”
ขณะทำการทดลองกับการเปลี่ยนเส้นทางเอาต์พุตและการทดแทนกระบวนการฉันพบคำสั่งต่อไปนี้และผลลัพธ์ที่ได้: me @ elem: ~ $ echo foo>> (cat); แถบสะท้อนเสียง บาร์ me @ elem: ~ $ foo (ใช่แล้วบรรทัดใหม่ที่ว่างที่สุดจะเป็นเจตนา) ดังนั้นทุบบาร์ของ echo พิมพ์พรอมต์ตามปกติของฉัน, foo ของ echo, ขึ้นบรรทัดใหม่, และปล่อยเคอร์เซอร์ของฉันไว้ที่นั่น หากฉันกด Enter อีกครั้งจะพิมพ์พรอมต์ของฉันในบรรทัดใหม่และปล่อยเคอร์เซอร์ไว้ตาม (ตามที่คาดไว้เมื่อมีคนกด Enter บนบรรทัดคำสั่งว่าง) ฉันคาดหวังว่ามันจะเขียน foo ให้กับ file descriptor cat อ่านมันและ echo's foo แถบ echo echo ที่สองจากนั้นกลับไปที่ command prompt แต่นั่นไม่ใช่กรณีที่ชัดเจน ใครช่วยอธิบายหน่อยได้ว่าเกิดอะไรขึ้น?

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