Tôi làm việc cho một công ty có một số đơn vị Máy chủ Ubuntu 18.04 nằm rải rác trên khắp Hoa Kỳ đang chạy phần mềm của riêng chúng tôi. Các thiết bị này được khách hàng của chúng tôi sử dụng vài ngày một tuần và thời gian còn lại không hoạt động và (thường) tắt nguồn. Kể từ khi phát hành, chúng tôi đã gặp sự cố hiếm gặp này, trong đó một thiết bị sẽ khởi động ở màn hình trống. May mắn thay, chúng tôi có thể sửa lỗi này từ xa theo cách thủ công, nhưng điều đó thật phiền toái. Cuối cùng tôi đã theo dõi nó xuống tập lệnh cập nhật phần mềm này:
wget -O /home/user/update.tar.gz.gpg www.website.com/001001002.tar.gz.gpg
gpg --batch --passphrase SecretPassword -o /home/user/update.tar.gz -d /home/user/update.tar.gz.gpg
cp /var/softwareName/etc/config.cfg /home/user/config.backup
rm -r /var/tên phần mềm/bin
rm -r /var/softwareName/etc
rm -r /var/tên phần mềm/thiết lập
rm -r /var/tên phần mềm/tĩnh
tar -C /var/softwareName/ -zxvf /home/user/update.tar.gz
cp /home/user/config.backup /var/softwareName/etc/config.cfg
rm /home/user/update.tar.gz.gpg
rm /home/user/update.tar.gz
rm /home/user/config.backup
systemctl khởi động lại phần mềmName.service
systemctl khởi động lại kiosk.service
Nếu một bản cập nhật được cài đặt và sau đó cáp nguồn được kéo vào thiết bị trong vòng ~30 giây, tất cả các tệp trong thư mục "bin", "etc", "setup" và "static" sẽ hoàn toàn trống. Tất cả các tệp nên có ở đó, chúng chỉ trống.
Điều khiến tôi thực sự bối rối là phần mềm cập nhật tải ngay sau khi tập lệnh chạy và nó hoạt động tốt.
Tôi đã thực hiện một số thử nghiệm bằng cách chạy từng phần riêng lẻ của tập lệnh và tôi nghĩ Tôi đã thu hẹp nó xuống
tar -C /var/softwareName/ -zxvf /home/user/update.tar.gz
Có ai biết nội dung của các tệp đang bị xóa như thế nào không?