เหตุใดโปรแกรมจึงไม่ถอนการติดตั้งอย่างสมบูรณ์ (ลบไฟล์ทั้งหมด) เมื่อฉันลบออก


12

ใน Ubuntu หรือ Linux ใด ๆ เมื่อฉันตัดสินใจที่จะลบโปรแกรมแล้วติดตั้งใหม่ในภายหลังฉันสังเกตเห็นว่ามันไม่ได้ลบสิ่งที่ฉันทำไว้ก่อนหน้านี้ดังนั้นจึงไม่มีจุดหมายสำหรับฉันเพราะฉันชอบที่จะติดตั้งสิ่งใหม่ ๆ บ่อยๆ . เมื่อใดก็ตามที่ฉันตัดสินใจที่จะติดตั้งมันก็เหมือนเดิมก่อนที่ฉันจะลบโปรแกรม ทำไมนี้

ฉันเคยถอนการติดตั้งสิ่งที่คล้ายกับ Windows หรือ Android ในการที่จะลบทุกอย่างและวิธีเดียวที่จะกู้คืนข้อมูลนั้นคือการบันทึกไว้ที่ใดที่หนึ่งหรือถ้าพวกเขาให้ตัวเลือกในการเข้าสู่ระบบเพื่อกู้คืนฉัน มีวิธีทำบน Linux ด้วยหรือไม่

sudo apt-get --purge remove [application]บางครั้งผมก็เอามันออกไปจากอูบุนตูซอฟแวร์และการใช้งานศูนย์

ฉันใช้ Ubuntu 18.10 ฉันไม่มีอะไรให้ถอนการติดตั้งตอนนี้ฉันแค่อยากรู้


1
ใช้แทนpurge remove
Pilot6

1
Android มีความสามารถในการซิงค์ข้อมูลกับบัญชี Google นั่นคือสิ่งที่คุณหมายถึงโดย "เข้าสู่ระบบเพื่อกู้คืน" ฉันยังไม่เห็นตัวเลือกนั้นใน Windows (ยัง)
tu-Reinstate Monica-dor duh

9
คุณเชื่อว่า Windows ลบทุกอย่างจริงๆหรือ ประสบการณ์ของฉันค่อนข้างตรงกันข้าม และความยุ่งเหยิงที่เหลืออยู่จากการถอนการติดตั้งแอปพลิเคชั่นใน Windows Registry นั้นน่ากลัวมาก
Ister

2
แอปพลิเคชั่น Windows ส่วนใหญ่ (ดี) ให้คุณมีตัวเลือกในการลบวันที่ผู้ใช้หรือเก็บไว้รอบ ๆ แต่ส่วนใหญ่จะไม่แตะต้องข้อมูลส่วนตัวของคุณ
ต. Sar

@ t-sar คุณสามารถยกตัวอย่างของสิ่งนี้ได้ไหม? ฉันไม่เคยเห็นข้อเสนอแอปพลิเคชัน Windows มาทำลายข้อมูลของผู้ใช้
tu-Reinstate Monica-dor duh

คำตอบ:


26

ไม่เป็นความจริงเลย ไม่มีการดำเนินการแพ็คเกจควรลบข้อมูลผู้ใช้ไม่ว่าในกรณีใด ๆ

เหตุผลนี้ง่ายมาก: แอปพลิเคชันไม่ได้เป็นเจ้าของข้อมูล คุณทำ.

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

ทุกระบบปฏิบัติการ (รวมถึง Windows * และ Android) จะขึ้นอยู่กับการกำจัดสคริปต์ สมมติว่าคุณต้องการให้ซอฟต์แวร์หายไป แต่เก็บการกำหนดค่าไว้เพื่อให้คุณสามารถติดตั้งได้อีกครั้งในภายหลัง --purgeตัวเลือกที่จะaptเป็นเพียงการเอาแฟ้มการกำหนดค่า

หากคุณทำการแก้ไขนอกข้อมูลของคุณ (/ home) เราจะถือว่าคุณรู้ว่าคุณกำลังทำอะไรอยู่ดังนั้นระบบของคุณจะยังคงทำงานตามการกำหนดค่าของคุณต่อไป เป็นเรื่องง่ายสำหรับrm -Rไฟล์ปรับแต่งด้วยตัวคุณเองไม่ใช่เรื่องง่ายเลยที่จะเอารุ่นที่คุณกำหนดเองกลับไปในแบบที่คุณตั้งไว้ ดังนั้นสคริปต์เหล่านี้มีแนวโน้มที่จะผิดพลาดในด้านของความระมัดระวัง

สคริปต์เหล่านี้สร้างสมมุติฐานต่าง ๆ เกี่ยวกับสิ่งที่ติดตั้งและมนุษย์มักจะเขียนผิดพลาด บางครั้งซอฟต์แวร์ที่ไม่อะไรเป็นพิเศษโดยเฉพาะอย่างยิ่งเมื่อซอฟต์แวร์ที่มีการอ้างอิง

เรา (นักพัฒนาอูบุนตู) ไม่ทำแบบทดสอบในการทดสอบระบบ เราติดตั้งซอฟต์แวร์ลงในการติดตั้ง Ubuntu และจากนั้นเราทำงานapt removeและapt --purge removeและตรวจสอบว่าระบบจะกลับไปที่คาดว่า (ติดตั้ง) รัฐ

หากคุณเห็นสถานการณ์ที่ติดตั้งแพคเกจจะไม่มีการแก้ไขใด ๆ ในการกำหนดค่าและแพคเกจนั้นจะถูกลบออก แต่ไฟล์ยังคงอยู่ดังนั้นโปรดยื่นข้อผิดพลาดกับแพคเกจนั้น

อีกทางเลือกหนึ่งคือใช้snapซึ่งเป็นที่เก็บแอปพลิเคชันทั้งหมดในสภาพแวดล้อมของตัวเอง

* (อันที่จริงนี่เป็นหนึ่งในวิธีการติดตั้งมัลแวร์ Windows โดยการ "piggybacking" มัลแวร์ไปยังแอพพลิเคชั่นที่คุณเลือกที่จะติดตั้งแล้วไม่ลบออกเมื่อคุณถอนการติดตั้ง)


2
ฉันคิดว่าคำถามที่ถามคือเหตุใดการถอนการติดตั้งจึงไม่ลบข้อมูลผู้ใช้ที่สร้างขึ้นโดยใช้แอปพลิเคชัน (“ ไม่ได้ลบสิ่งที่ฉันทำไว้ก่อนหน้านี้”) และคำตอบนี้บอกว่ามันเป็นสัจพจน์ในประโยคแรก อธิบายหรือให้เหตุผล
ShreevatsaR

2
"มันเป็นเรื่องง่ายที่จะ rm -R ไฟล์ config ด้วยตัวคุณเอง" มันคืออะไร? นั่นถือว่าคุณรู้ว่าพวกเขาทั้งหมดอยู่ที่ไหน พวกเขาจะไปไหนไม่ได้เหรอ? ฉันโดยทั่วไปถือว่าการดำเนินการติดตั้งทั้งหมดเป็นแบบถาวร ฉันไม่เห็นจุดที่ให้ตัวเลือกลบสำหรับผู้จัดการแพ็คเกจ คุณต้องเริ่มต้นจากศูนย์เสมอหากคุณต้องการซอฟต์แวร์หายไป ฉันเป็นคนเผด็จการที่นี่หรือ
Nacht - Reinstate Monica

1
" พวกเขาไม่สามารถอยู่ได้ทุกที่หรือไม่ " ใช่แล้วทางเทคนิค ในความเป็นจริงอาจเป็น 95% ของไฟล์ที่จะเป็นหนึ่งในสถานที่ดั้งเดิมไม่กี่แห่ง แอปพลิเคชั่นน้อยมากที่จะเขียนไฟล์ไปยังตำแหน่งที่ไม่ใช่แบบดั้งเดิมอย่างสมบูรณ์ ดังนั้นคุณมักจะต้องตรวจสอบไดเรกทอรีที่รู้จักกันน้อย บ่อยครั้งที่คุณสามารถค้นหาข้อมูลเกี่ยวกับซอฟต์แวร์เพื่อทราบว่าไดเรกทอรีใดมีไฟล์อยู่ คุณสามารถใช้ VM ติดตั้งซอฟต์แวร์และดูว่ามันเขียนไฟล์ที่ไหนถ้าคุณต้องการ สรุปแล้วคุณทำให้ดูเหมือนว่าจะยากที่จะหาว่าจะลบอะไรมากกว่าที่เป็นอยู่
VLAZ

2
"พวกเขาไปไหนมาไหนไม่ได้เหรอ?" หากคุณไม่ได้เปลี่ยนแปลงอะไรใน config --purgeไฟล์ที่พวกเขาจะถูกลบออกถ้าคุณใช้ หากคุณไม่ได้มีการเปลี่ยนแปลงบางสิ่งบางอย่างในตัวเขาอย่างเห็นได้ชัดคุณรู้ว่าพวกเขา
technical_difficulty

3
“ และเฉพาะเมื่อผู้ใช้ยังไม่ได้รับการแก้ไข ” - คุณแน่ใจหรือไม่ อย่างน้อยใน Debian (และในแพ็คเกจทั้งหมดที่ Ubuntu ดึงเข้ามาโดยไม่มีการเปลี่ยนแปลง) การลบแพ็คเกจจะลบการกำหนดค่า (ทั้งระบบ) ไม่ว่าผู้ดูแลระบบจะปรับเปลี่ยนหรือไม่ (ดูหัวข้อนโยบายเกี่ยวกับพฤติกรรมการกำหนดค่า ) . สิ่งนี้ไม่ได้แทนที่กฎว่าสิ่งใดก็ตามที่/homeอยู่นอกขีด จำกัด ดังนั้นการกำหนดค่าเฉพาะของผู้ใช้จะถูกเก็บไว้
Stephen Kitt

13

sudo apt remove หรือการถอนการติดตั้งแอปพลิเคชั่นตามปกติจาก Software Center จะทำการถอนการติดตั้งไฟล์แพ็คเกจปกติและปล่อยการกำหนดค่าไว้ด้านหลังดังนั้นการติดตั้งแพ็กเกจใหม่ในภายหลังจะทำให้สถานะของแอปพลิเคชันก่อนหน้าของคุณ

sudo apt purgeหรือsudo apt remove --purgeจะถอนการติดตั้งแพ็กเกจแทนและลบไฟล์การกำหนดค่าทั้งระบบที่เหลือต่อไป คุณยังสามารถใช้สิ่งเหล่านั้นเพื่อล้างการตั้งค่าที่เหลือของแพ็คเกจที่ถูกลบออกก่อนหน้านี้เท่านั้น

ตัวจัดการแพ็กเกจจะไม่ลบข้อมูลผู้ใช้หรือไฟล์การกำหนดค่าของผู้ใช้แม้ว่าจะถูกสร้างขึ้นในช่วงเวลาทำงานของแอปพลิเคชัน ไฟล์เหล่านั้นไม่ถูกติดตามและผู้ใช้มีหน้าที่รับผิดชอบในการล้างข้อมูลออกจากโฮมไดเร็กตอรี่หากพวกเขาไม่ต้องการเก็บไว้ (ในทางทฤษฎีแพคเกจอาจมีสคริปต์หลังการลบที่ตรวจสอบตำแหน่งข้อมูลผู้ใช้ทั่วไปสำหรับไฟล์ที่อาจสร้าง แต่โดยปกติไม่ควรเป็นกรณี)


5
แพคเกจที่สคริปต์การลบลบสิ่งต่าง ๆ ออกจากหรือตรวจสอบผู้ใช้ที่บ้านของผู้ใช้นั้นเป็นมัลแวร์และไม่ควรได้รับการยอมรับในแหล่งเก็บข้อมูลของ distro ที่ตรวจพบได้
.. GitHub หยุดช่วยเหลือน้ำแข็ง

0

ใน Windows คุณมีร่องรอยของโปรแกรมที่รุกรานในรีจิสทรีที่ต้องถูกลบด้วยตนเอง สิ่งใดที่เกี่ยวข้องกับ AV จะเติมสถาปัตยกรรม Win อย่างหนัก…นอกจากนี้ Windows ต้องการแอปของบุคคลที่สามในการลบโปรแกรมอย่างสมบูรณ์ คนทำความสะอาดและ Revo อยู่ท่ามกลางพวกเขา

ใน Ubuntu การล้างข้อมูลจะลบเกือบทุกอย่างถ้าไม่ใช่ทั้งหมด การค้นหาด้วยตนเองใน Synaptic Package Manager แสดงกระบวนการลบทั้งหมด มันสามารถตรวจสอบสองครั้งโดยใช้การล้าง aptหรือผกผันโดยการค้นหาใน Synaptic

คุณต้องรอบคอบและแม่นยำในการใช้แอพนั้นมันเป็นสถานที่ที่น่าสนใจ


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