[arch-releng] [PATCH 1/1] fix boot parameters for mount options

Gerardo Exequiel Pozzi vmlinuz386 at gmail.com
Fri Feb 5 02:14:34 UTC 2016


On 02/02/16 11:45, Christian Hesse wrote:
> From: Christian Hesse <mail at eworm.de>
> 
> Fixes: 03c296cb4f031148f657b8924460a30c5c9dfecc
> Signed-off-by: Christian Hesse <mail at eworm.de>
> ---
>  archiso/initcpio/hooks/archiso          | 14 +++++++-------
>  archiso/initcpio/hooks/archiso_loop_mnt |  3 ++-
>  docs/README.bootparams                  |  4 ++--
>  3 files changed, 11 insertions(+), 10 deletions(-)
> 
> diff --git a/archiso/initcpio/hooks/archiso b/archiso/initcpio/hooks/archiso
> index b4c0b43..fb76327 100644
> --- a/archiso/initcpio/hooks/archiso
> +++ b/archiso/initcpio/hooks/archiso
> @@ -33,7 +33,7 @@ _mnt_dmsnapshot() {
>  
>      dmsetup create ${dm_snap_name} --table "0 ${ro_dev_size} snapshot ${ro_dev} ${rw_dev} ${cow_persistent} ${cow_chunksize}"
>  
> -    _mnt_dev "/dev/mapper/${dm_snap_name}" "${newroot}${mnt}" "-w"
> +    _mnt_dev "/dev/mapper/${dm_snap_name}" "${newroot}${mnt}" "-w" "defaults"
>      echo $(readlink -f /dev/mapper/${dm_snap_name}) >> /run/archiso/used_block_devices
>  }
>  
> @@ -65,14 +65,15 @@ _mnt_sfs() {
>      fi
>      sfs_dev=$(losetup --find --show --read-only "${img}")
>      echo ${sfs_dev} >> /run/archiso/used_block_devices
> -    _mnt_dev "${sfs_dev}" "${mnt}" "-r"
> +    _mnt_dev "${sfs_dev}" "${mnt}" "-r" "defaults"
>  }
>  
> -# args: device, mountpoint, flags
> +# args: device, mountpoint, flags, opts
>  _mnt_dev() {
>      local dev="${1}"
>      local mnt="${2}"
>      local flg="${3}"
> +    local opts="${4}"
>  
>      mkdir -p "${mnt}"
>  
> @@ -85,7 +86,7 @@ _mnt_dev() {
>          launch_interactive_shell
>      done
>  
> -    if mount "${flg}" "${dev}" "${mnt}"; then
> +    if mount -o "${opts}" "${flg}" "${dev}" "${mnt}"; then
>          msg ":: Device '${dev}' mounted successfully."
>      else
>          echo "ERROR; Failed to mount '${dev}'"
> @@ -110,7 +111,6 @@ run_hook() {
>      [[ -z "${archisobasedir}" ]] && archisobasedir="arch"
>      [[ -z "${dm_snap_prefix}" ]] && dm_snap_prefix="arch"
>      [[ -z "${archisodevice}" ]] && archisodevice="/dev/disk/by-label/${archisolabel}"
> -    [[ -z "${archisoflags}" ]] && archisoflags="defaults"
>      [[ -z "${cow_spacesize}" ]] && cow_spacesize="256M"
>  
>      if [[ -n "${cow_label}" ]]; then
> @@ -137,7 +137,7 @@ archiso_mount_handler() {
>      local newroot="${1}"
>  
>      if ! mountpoint -q "/run/archiso/bootmnt"; then
> -        _mnt_dev -o "${archisoflags}" "${archisodevice}" "/run/archiso/bootmnt" "-r"
> +        _mnt_dev "${archisodevice}" "/run/archiso/bootmnt" "-r" "defaults"
>          if [[ "${copytoram}" != "y" ]]; then
>              echo $(readlink -f ${archisodevice}) >> /run/archiso/used_block_devices
>          fi
> @@ -166,7 +166,7 @@ archiso_mount_handler() {
>      fi
>  
>      if [[ -n "${cow_device}" ]]; then
> -        _mnt_dev -o "${cow_flags}" "${cow_device}" "/run/archiso/cowspace" "-r"
> +        _mnt_dev "${cow_device}" "/run/archiso/cowspace" "-r" "${cow_flags}"
>          echo $(readlink -f ${cow_device}) >> /run/archiso/used_block_devices
>          mount -o remount,rw "/run/archiso/cowspace"
>      else
> diff --git a/archiso/initcpio/hooks/archiso_loop_mnt b/archiso/initcpio/hooks/archiso_loop_mnt
> index f95a47d..2e99404 100644
> --- a/archiso/initcpio/hooks/archiso_loop_mnt
> +++ b/archiso/initcpio/hooks/archiso_loop_mnt
> @@ -2,6 +2,7 @@
>  
>  run_hook () {
>      [[ -n "${img_label}" ]] && img_dev="/dev/disk/by-label/${img_label}"
> +    [[ -z "${img_flags}" ]] && img_flags="defaults"
>      if [[ -n "${img_dev}" && -n "${img_loop}" ]]; then
>          mount_handler="archiso_loop_mount_handler"
>      fi
> @@ -13,7 +14,7 @@ archiso_loop_mount_handler () {
>      local _dev_loop
>  
>      msg ":: Setup a loop device from ${img_loop} located at device ${img_dev}"
> -    _mnt_dev "${img_dev}" "/run/archiso/img_dev" "-r"
> +    _mnt_dev "${img_dev}" "/run/archiso/img_dev" "-r" "${img_flags}"
>      if [[ "${copytoram}" != "y" ]]; then
>          echo $(readlink -f ${img_dev}) >> /run/archiso/used_block_devices
>      fi
> diff --git a/docs/README.bootparams b/docs/README.bootparams
> index 9737554..77161df 100644
> --- a/docs/README.bootparams
> +++ b/docs/README.bootparams
> @@ -21,8 +21,6 @@ INDEX
>                      Default: (unset)
>  * archisodevice=    Set the device node where archiso medium is located.
>                      Default: "/dev/disk/by-label/${archisolabel}"
> -* archisoflags=     Set extra mount options, e.g. for btrfs subvolumes.
> -                    Default: defaults
>  * archisobasedir=   Set the base directory where all files reside.
>                      Default: "arch"
>  * copytoram=        If set to "y" or just "copytoram" without arguments,
> @@ -125,6 +123,8 @@ INDEX
>                      Default: (unset)
>  * img_dev=          Device where archiso-image.iso reside.
>                      Default: (unset) or "/dev/disk/by-label/${img_label}"
> +* img_flags=        Set extra mount options, e.g. for btrfs subvolumes.
> +                    Default: defaults
>  * img_loop=         Full path where archiso-image.iso is located on ${img_dev}
>                      Default: (unset)
>  
> 

Thanks!, testing...


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: OpenPGP digital signature
URL: <https://lists.archlinux.org/pipermail/arch-releng/attachments/20160204/e8b57f86/attachment.asc>


More information about the arch-releng mailing list