ให้ฉันนำคำถามของฉันโดยบอกว่าฉันไม่จำเป็นต้องใช้ cp ฉันแค่พยายาม cp เพื่อวินิจฉัยปัญหาที่ลึกขึ้นเกี่ยวกับการสร้างไฟล์ในระหว่างกระบวนการอื่น
ดังนั้นเมื่อฉัน ssh จาก Windows ไปยังเซิร์ฟเวอร์ Linux และลอง cp จากบรรทัดคำสั่ง ความพยายามครั้งแรกล้มเหลวโดยมีข้อผิดพลาด "ไม่สามารถสร้างไฟล์ปกติ ... : ไม่อนุญาตให้ดำเนินการ" ผลลัพธ์คือมันสร้างไฟล์ที่ฉันกำลังคัดลอกแต่ปล่อยว่างไว้ เมื่อฉันรันคำสั่งอีกครั้ง โดยปล่อยไฟล์ว่างที่มีอยู่จากความพยายามครั้งแรก ฉันไม่พบข้อผิดพลาด และคำสั่งจะคัดลอกเนื้อหาของไฟล์ไปยังไฟล์ที่มีอยู่ ฉันได้รับผลลัพธ์เดียวกันหากฉันสร้างไฟล์เปล่าใน Windows แล้วใช้ cp ใน ssh นี่คือการเขียนไฟล์ไปยังโฟลเดอร์เครือข่ายที่ใช้ร่วมกันซึ่งจัดรูปแบบด้วย NTFS
ดังนั้นปัญหาของฉันคือดูเหมือนว่าจะไม่สามารถสร้างไฟล์และเขียนลงในไฟล์ได้ในการดำเนินการเดียวกัน แต่ถ้าสร้างไฟล์ก่อนหรือมีอยู่แล้ว ก็จะสามารถเขียนทับได้
กระบวนการที่ฉันพยายามดีบักจะสร้างไฟล์ temp ที่มีชื่อแบบสุ่ม ดังนั้นฉันจึงไม่สามารถคาดเดาชื่อไฟล์ได้ และสร้างไฟล์ว่างก่อนกระบวนการ ผลลัพธ์คือกระบวนการล้มเหลวด้วยไฟล์ temp ที่ว่างเปล่าความคิดใดที่จะมองหาปัญหาเบื้องหลังปัญหานี้
แก้ไข: เมื่อฉัน cp ไฟล์เดียวกันไปยังไดเร็กทอรี temp ในเครื่อง มันสร้างและเขียนไฟล์ลงในไดเร็กทอรี temp ได้สำเร็จ ดูเหมือนว่าไฟล์ผลลัพธ์จะมีสิทธิ์ใช้งานไฟล์เดียวกันกับเวอร์ชันเครือข่ายที่ล้มเหลว
แก้ไข: ตอบกลับ user68186
Q คุณใช้ Ubuntu เวอร์ชันใด ดูเหมือนว่าจะไม่ใช่ Ubuntu ดังนั้นฉันเดาว่าฉันอยู่ผิดที่ มันคือ Oracle Linux Server v8.4
ถาม คุณใช้ ssh ในฐานะผู้ใช้ทั่วไป ผู้ใช้ที่เป็นผู้ดูแลระบบ หรือรูทหรือไม่ ฉันเชื่อว่าเป็นผู้ใช้ปกติ
ถาม ความเป็นเจ้าของและการอนุญาตสำหรับโฟลเดอร์ที่คุณพยายามคัดลอกไฟล์คืออะไร drwxrwxr-x. 2 1073 1140 3 ก.ค. 2 08:21 น