Otomasi `freebsd-update` FreeBSD?

8

freebsd-updateperintah mencetak entri yang diperbarui setelah diunduh. Tapi itu menunjukkan pada mereka more. Jadi saya harus menekan beberapa spasi untuk melanjutkan. Apakah ada cara untuk menghindari perilaku ini? Saya ingin menjalankan pembaruan dengan cara yang sepenuhnya otomatis.

Eonil
sumber

Jawaban:

11

Sebelum melakukan semua ini, pastikan Anda terbiasa dengan proses pembaruan freebsd, kemungkinan konsekuensi, dan persyaratan. Seperti halnya pembaruan otomatis, ada kemungkinan ia akan gagal.

Buat file /usr/local/etc/periodic/weekly/912.freebsd-updatedengan yang berikut ini:

#!/bin/sh -
#
#

# If there is a global system configuration file, suck it in.
#
if [ -r /etc/defaults/periodic.conf ]
then
    . /etc/defaults/periodic.conf
    source_periodic_confs
fi

case "$weekly_freebsd-update_enable" in
    [Yy][Ee][Ss])
        echo ""
        echo "Updating system via freebsd-update:"

        freebsd-update cron install;;

    *)  rc=0;;
esac

exit $rc

Jangan lupa chmod +x 912.freebsd-update
Aktifkan dengan menambahkan weekly_freebsd-update_enable="YES"untuk /etc/periodic.conf
laporan berkala yang normal Anda akan berisi hasil log dari operasi (e-mail ke akar secara default).

Angka 912 adalah arbitrer, hanya nomor yang saya gunakan. Anda dapat memilih apa pun di kisaran 900 dan itu akan berfungsi dengan baik.

Chris S
sumber
bagaimana dengan port? apa implikasi dari naskah semacam itu? "apa yang bisa salah?" :) apakah ini akan mengeluarkan titik (mis. 9.2 → 9.3) atau peningkatan besar (mis. 9.3 → 10.1)?
anarcat
Baca kembali baris pertama dari jawaban ini, saya benar-benar bersungguh-sungguh. Pertanyaannya bukan tentang apa pun yang Anda tanyakan, hanya tentang mengotomatiskan proses itu. Port tidak tersentuh oleh pembaruan freebsd, Anda perlu mengotomatiskan portmaster, portupgrade, atau mungkin poudriere untuk itu (dan itu tidak mudah untuk beberapa port). Apa yang bisa salah: sama dengan menjalankan pembaruan freebsd, terutama masalah perangkat keras di tengah peningkatan; atau perbedaan buruk yang tidak mungkin dari sumber resmi. Skrip di atas tidak melompat versi; itu akan jauh lebih rumit karena Anda harus menentukan versi baru.
Chris S