Làm thế nào để apt-get remove xterm
đi qua? Và sau khi được gỡ cài đặt, xterm
không đóng và tiếp tục hoạt động bình thường.
Là xterm
quá trình lưu trong RAM trong khi nó đang chạy?
Làm thế nào để apt-get remove xterm
đi qua? Và sau khi được gỡ cài đặt, xterm
không đóng và tiếp tục hoạt động bình thường.
Là xterm
quá trình lưu trong RAM trong khi nó đang chạy?
Câu trả lời:
Không hẳn. Các tập tin đã được mở bởi chương trình. Xóa tệp (và sau đó thay thế nó bằng phiên bản khác) không ảnh hưởng đến chương trình đang chạy vì tệp gốc được giữ mở (mặc dù không có tên trên đĩa để mở lại) cho đến khi chương trình được thực hiện với nó. Chỉ khi tất cả các thẻ điều khiển tệp được đóng, các khối dữ liệu của nó trên đĩa mới được giải phóng. Cho đến lúc đó, tệp mở có thể được đọc và viết giống như bình thường - thay đổi duy nhất là không ai khác có thể mở tệp vì tên của nó đã bị xóa.
Mặc dù các phần của chương trình có thể đã được đọc vào ram khi bị xóa, nhưng chúng vẫn có thể bị loại bỏ và đọc lại sau đó, hoặc các phần mới của chương trình chưa được thực hiện trước đó vẫn có thể được tải từ tệp đã bị xóa.
rm -rf /
hoạt động .....
rm -rf /
sẽ không hoạt động nếu bạn cố chạy nó lần thứ hai ngay sau đó;)
lsof
đầu ra và tôi biết đó là tệp của 'zombie' trông như thế nào ... nhưng có cách nào để lưu nội dung của tệp đó khỏi biến mất Khi xử lý tập tin cuối cùng chết?
root
có thể tạo tên cho nó (và do đó ngăn chặn xóa) bằng cách sử dụng lệnh linkat
gọi hệ thống. Nhưng các tệp thực thi và thư viện được ánh xạ bộ nhớ, không yêu cầu xử lý tệp. Tôi không biết cách nào để xử lý một tệp chỉ tồn tại vì nó được ánh xạ bộ nhớ. Mặc dù các tệp thực thi có thể được truy cập /proc
trong khi chúng đang chạy, do đó, chỉ có các thư viện và các tệp ánh xạ bộ nhớ khác có thể vượt quá khả năng phục hồi. Nếu bạn muốn biết thêm chi tiết về điều đó, bạn nên hỏi nó như một câu hỏi riêng biệt.
Là
xterm
quá trình lưu trong RAM trong khi nó đang chạy?
Chính xác. Nó tương tự như quy trình cho phép bạn cài đặt các bản cập nhật cho mọi thứ trong khi chúng đang chạy mà không gặp sự cố. Và cũng là lý do tại sao bạn phải khởi động lại dịch vụ sau khi bạn cập nhật chúng. Một khi một cái gì đó đang chạy, nhị phân của nó là trong bộ nhớ.
Nếu nó phụ thuộc vào các tệp khác (không ở trạng thái "mở" bị giữ) bị xóa hoặc thay thế, điều đó có thể gây ra sự cố nhưng đối với một cái gì đó rời rạc xterm
, thì đó không phải là vấn đề.
Thực tế nó là một tính năng của cách máy tính hoạt động: Khi một chương trình được gọi, nó thực sự được tải vào bộ nhớ và nó hoạt động từ đó.
Một tập tin thực sự hoạt động theo cùng một cách. Để tránh sự cố, nhiều tệp trong hệ thống UNIX-ish tạo khóa.
Câu đố thực tế là tại sao bạn không thể làm những việc tương tự và tương tự trong Windows.
Tính năng này thực sự là những gì cho phép bạn cập nhật toàn bộ hệ thống, bao gồm các chương trình đang hoạt động trong hệ thống của bạn. ;)
apt-get
đang gỡ cài đặtxterm
và không biết rằng bằng cách nào đó nó phụ thuộc vào mộtxterm
quy trình - vì vậy, đó là về "Tại sao xterm có thể được gỡ cài đặt trong khi chạy?". Câu hỏi hay.