Hellohugepage=never
I am trying to update /boot/grub/grub.conf
I need to disable huge page on the server and the way to do it is adding the following parameter at the end of the line which specifies which kernel boots up
transparent_hugepage=never
Can you let me know how can this be done via ruby
Sample file
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/mapper/rootvg-lv_root
# initrd /initrd-[generic-]version.img
#boot=/dev/sda
default=0
timeout=5
hiddenmenu
title Red Hat Enterprise Linux Server (2.6.32-696.23.1.el6.x86_64)
root (hd0,0)
kernel /vmlinuz-2.6.32-696.23.1.el6.x86_64 ro root=/dev/mapper/rootvg-lv_root nomodeset rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=768M rd_NO_DM KEYBOARDTYPE=pc KEYTABLE=us rd_LVM_LV=rootvg/lv_root transparent_
initrd /initramfs-2.6.32-696.23.1.el6.x86_64.imghugepage=never
title Red Hat Enterprise Linux Server (2.6.32-696.18.7.el6.x86_64)
root (hd0,0)
kernel /vmlinuz-2.6.32-696.18.7.el6.x86_64 ro root=/dev/mapper/rootvg-lv_root nomodeset rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=768M rd_NO_DM KEYBOARDTYPE=pc KEYTABLE=us rd_LVM_LV=rootvg/lv_root transparent_
initrd /initramfs-2.6.32-696.18.7.el6.x86_64.img
Hello
I wrote a program but what beats me is the print works fine and gives me the expected output fir it does not write the same to the file
File.open("/tmp/grub.conf","r").each_line do |line|
file_boot=File.open("/tmp/bootfile","w")
On 21.07.2018 17:33, Mohan Mohta wrote:
Hello
I wrote a program but what beats me is the print works fine and gives me the expected output fir it does not write the same to the file
File.open("/tmp/grub.conf","r").each_line do |line|
file_boot=File.open("/tmp/bootfile","w")
You are not closing this file properly.
Here's how I'd do it
File.open '/tmp/bootfile', 'w' do |out|
File.foreach '/tmp/grub.conf' do |line|
if /^\s+kernel\b/ =~ line
line.gsub! /transparent_hugepage=\w+/, ''
line.sub! /\s+$/, ''
line << ' transparent_hugepage=never'
end
out.puts line
end
end
Cheers
robert
--
remember.guy do |as, often| as.you_can - without end http://blog.rubybestpractices.com/
Thanks for your response.
Here is what I did which worked.
The conclusion I drew was when I opened the /tmp/bootfile file and yes the closing as well
so if I opened with before grub.conf it worked
file_boot=File.open("/tmp/bootfile","w")
[...] > file_boot.close
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 293 |
Nodes: | 16 (2 / 14) |
Uptime: | 236:33:54 |
Calls: | 6,624 |
Files: | 12,172 |
Messages: | 5,319,832 |