Replace SYSRQ commands
This patch is modifying the shutdown.sh script to not use SYSRQ when
performing power actions. SYSRQ has a similar effect to a hardware reset
button/power switch, which can be problematic after copying an image to
the disk (data loss) therefore, this patch is changing the script to use
soft power action via the poweroff and reboot commands.
SYSRQ was required before because the ironic-python-agent service was
running inside a docker container, but since we've moved it to run into
a chroot (when built with coreos) or on the ramdisk's OS (when built
with DIB) the SYSRQ actions are not needed anymore.
In many parts of Ironic we were considering the standby.{power_off,
reboot} methods of IPA to be soft actions, which they are not at
present. This patch is also fixing that assumption.
Change-Id: Ibe3a3f61a4a0e98b2c2501ad95154839933b4d7a
Closes-Bug: #1557450
This commit is contained in:
2 changed files with 11 additions and 7 deletions
@@ -14,16 +14,13 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# This script reboots by echoing into /proc/sysrq_trigger.
set -e
# Make sure all functions of sysrq is enabled.
echo "1" > /proc/sys/kernel/sysrq
# flush file system buffers
sync
echo "s" > /proc/sysrq-trigger
if [[ 1ドル = '-h' ]]; then
echo "o" > /proc/sysrq-trigger
poweroff
elif [[ 1ドル = '-r' ]]; then
echo "b" > /proc/sysrq-trigger
reboot
fi
7
releasenotes/notes/remove-sysrq-2c2804930180f408.yaml
Normal file
7
releasenotes/notes/remove-sysrq-2c2804930180f408.yaml
Normal file
@@ -0,0 +1,7 @@
---
fixes:
- Stop using SYSRQ when performing the in-band reboot or power off
because it has a similar effect to a hardware reset button/power
switch and can be problematic on some hardware types. Instead,
reboot/power off the node via the "poweroff" and "reboot" commands
(soft power action).
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.