加载论坛时出错,请强制刷新页面重试。

Archlinux loong64 2022.09

yetist

发几张安装测试图片:





loong64

yetist

新固件可以引导iso了

archinstall安装选择 驱动器报错

Exit code for blkid -p -o export was: 512
Not a loop device, trying uevent rules.
Exit code for blkid -p -o export was: 512
Not a loop device, trying uevent rules.
Exit code for blkid -p -o export was: 512
Not a loop device, trying uevent rules.
Traceback (most recent call last):
  File "/usr/bin/archinstall", line 8, in <module>
    sys.exit(run_as_a_module())
  File "/usr/lib/python3.10/site-packages/archinstall/__init__.py", line 311, in run_as_a_module
    script.execute()
  File "/usr/lib/python3.10/site-packages/archinstall/lib/profiles.py", line 195, in execute
    self.spec.loader.exec_module(sys.modules[self.namespace])
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/usr/lib/python3.10/site-packages/archinstall/examples/guided.py", line 282, in <module>
    ask_user_questions()
  File "/usr/lib/python3.10/site-packages/archinstall/examples/guided.py", line 107, in ask_user_questions
    global_menu.run()
  File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/selection_menu.py", line 344, in run
    if not self._process_selection(value):
  File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/selection_menu.py", line 361, in _process_selection
    return self.exec_option(config_name, selector)
  File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/selection_menu.py", line 381, in exec_option
    result = selector.func(presel_val)
  File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/global_menu.py", line 79, in <lambda>
    lambda preset: self._select_harddrives(preset),
  File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/global_menu.py", line 345, in _select_harddrives
    harddrives = select_harddrives(old_harddrives)
  File "/usr/lib/python3.10/site-packages/archinstall/lib/user_interaction/system_conf.py", line 52, in select_harddrives
    hard_drives = all_blockdevices(partitions=False).values()
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/helpers.py", line 260, in all_blockdevices
    instances[path] = BlockDevice(path, path_info)
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/blockdevice.py", line 53, in __init__
    self._load_partitions()
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/blockdevice.py", line 131, in _load_partitions
    self._partitions[part_id] = Partition(root + part_id, block_device=self, part_id=part_id)
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/partition.py", line 70, in __init__
    self._partition_info = self._fetch_information()
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/partition.py", line 179, in _fetch_information
    sfdisk_info = self._call_sfdisk()
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/partition.py", line 166, in _call_sfdisk
    sfdisk_info = json.loads(output)
  File "/usr/lib/python3.10/json/__init__.py", line 346, in loads
    return _default_decoder.decode(s)
  File "/usr/lib/python3.10/json/decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib/python3.10/json/decoder.py", line 355, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

www

牛逼


yetist

loong64
你试试今天新出的iso看行不行?


loong64

yetist 好的,我试试 😀


yetist

loong64

这里可能有一个bug,确认方法:
在 liveusb 环境中,运行一下命令 sfdisk --json /dev/sdasfdisk --json /dev/sdb,看看输出信息是不是有效的json格式,如果输出不是, 比如 sfdisk 输出了其他警告信息,比如说这个盘的大小和预期不一致啥的。
解决办法:
修改 /usr/lib/python3.10/site-packages/archinstall/lib/disk/partition.py 文件 163 行,将 sfdisk --json 修改为 sfdisk -q --json 试一下


loong64

yetist

22号iso

Traceback (most recent call last):
  File "/usr/bin/archinstall", line 8, in <module>
    sys.exit(run_as_a_module())
  File "/usr/lib/python3.10/site-packages/archinstall/__init__.py", line 311, in run_as_a_module
    script.execute()
  File "/usr/lib/python3.10/site-packages/archinstall/lib/profiles.py", line 195, in execute
    self.spec.loader.exec_module(sys.modules[self.namespace])
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/usr/lib/python3.10/site-packages/archinstall/examples/guided.py", line 282, in <module>
    ask_user_questions()
  File "/usr/lib/python3.10/site-packages/archinstall/examples/guided.py", line 107, in ask_user_questions
    global_menu.run()
  File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/selection_menu.py", line 344, in run
    if not self._process_selection(value):
  File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/selection_menu.py", line 361, in _process_selection
    return self.exec_option(config_name, selector)
  File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/selection_menu.py", line 381, in exec_option
    result = selector.func(presel_val)
  File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/global_menu.py", line 79, in <lambda>
    lambda preset: self._select_harddrives(preset),
  File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/global_menu.py", line 345, in _select_harddrives
    harddrives = select_harddrives(old_harddrives)
  File "/usr/lib/python3.10/site-packages/archinstall/lib/user_interaction/system_conf.py", line 52, in select_harddrives
    hard_drives = all_blockdevices(partitions=False).values()
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/helpers.py", line 260, in all_blockdevices
    instances[path] = BlockDevice(path, path_info)
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/blockdevice.py", line 53, in __init__
    self._load_partitions()
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/blockdevice.py", line 131, in _load_partitions
    self._partitions[part_id] = Partition(root + part_id, block_device=self, part_id=part_id)
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/partition.py", line 70, in __init__
    self._partition_info = self._fetch_information()
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/partition.py", line 179, in _fetch_information
    sfdisk_info = self._call_sfdisk()
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/partition.py", line 166, in _call_sfdisk
    sfdisk_info = json.loads(output)
  File "/usr/lib/python3.10/json/__init__.py", line 346, in loads
    return _default_decoder.decode(s)
  File "/usr/lib/python3.10/json/decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib/python3.10/json/decoder.py", line 355, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

loong64

yetist

格式对着

 sfdisk --json /dev/nvme0n1
{
   "partitiontable": {
      "label": "gpt",
      "id": "FBDD048C-322E-DD48-AE6C-41A8A7130A20",
      "device": "/dev/nvme0n1",
      "unit": "sectors",
      "firstlba": 2048,
      "lastlba": 1000215182,
      "sectorsize": 512,
      "partitions": [
         {
            "node": "/dev/nvme0n1p1",
            "start": 2048,
            "size": 2097152,
            "type": "C12A7328-F81F-11D2-BA4B-00A0C93EC93B",
            "uuid": "038DA892-3104-2B48-AE8B-B7033387D7DE"
         },{
            "node": "/dev/nvme0n1p2",
            "start": 2099200,
            "size": 209715200,
            "type": "0FC63DAF-8483-4772-8E79-3D69D8477DE4",
            "uuid": "9EFBDE6C-576F-B246-96EA-A181964C0C72"
         },{
            "node": "/dev/nvme0n1p3",
            "start": 211814400,
            "size": 788400128,
            "type": "0FC63DAF-8483-4772-8E79-3D69D8477DE4",
            "uuid": "F787C49C-61D2-3C4E-AC70-8D5408411454"
         }
      ]
   }
}

yetist

loong64

所有盘,关键是 sfdisk --json <你的U盘设备>


loong64

yetist

root@archiso ~ # sfdisk --json /dev/sda
GPT PMBR size mismatch (1097655 != 125927423) will be corrected by write.
{
   "partitiontable": {
      "label": "gpt",
      "id": "32323032-3031-4232-B030-303635323332",
      "device": "/dev/sda",
      "unit": "sectors",
      "firstlba": 64,
      "lastlba": 125927360,
      "table-length": "248",
      "sectorsize": 512,
      "partitions": [
         {
            "node": "/dev/sda1",
            "start": 64,
            "size": 1076448,
            "type": "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7",
            "uuid": "32323032-3031-4232-B031-303635323332",
            "name": "ISO9660",
            "attrs": "RequiredPartition GUID:60"
         },{
            "node": "/dev/sda2",
            "start": 1076512,
            "size": 20480,
            "type": "C12A7328-F81F-11D2-BA4B-00A0C93EC93B",
            "uuid": "32323032-3031-4232-B032-303635323332",
            "name": "Appended2"
         },{
            "node": "/dev/sda3",
            "start": 1096992,
            "size": 600,
            "type": "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7",
            "uuid": "32323032-3031-4232-B033-303635323332",
            "name": "Gap1",
            "attrs": "RequiredPartition GUID:60"
         }
      ]
   }
}

yetist

loong64

对,就是这个原因了。用 sfdisk -q --json 看看第一行会不会消失?如果可以消失,请按前面说的办法修改一下代码


loong64

yetist

改完还是报错

Traceback (most recent call last):
  File "/usr/bin/archinstall", line 8, in <module>
    sys.exit(run_as_a_module())
  File "/usr/lib/python3.10/site-packages/archinstall/__init__.py", line 311, in run_as_a_module
    script.execute()
  File "/usr/lib/python3.10/site-packages/archinstall/lib/profiles.py", line 195, in execute
    self.spec.loader.exec_module(sys.modules[self.namespace])
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/usr/lib/python3.10/site-packages/archinstall/examples/guided.py", line 282, in <module>
    ask_user_questions()
  File "/usr/lib/python3.10/site-packages/archinstall/examples/guided.py", line 107, in ask_user_questions
    global_menu.run()
  File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/selection_menu.py", line 344, in run
    if not self._process_selection(value):
  File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/selection_menu.py", line 361, in _process_selection
    return self.exec_option(config_name, selector)
  File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/selection_menu.py", line 381, in exec_option
    result = selector.func(presel_val)
  File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/global_menu.py", line 79, in <lambda>
    lambda preset: self._select_harddrives(preset),
  File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/global_menu.py", line 345, in _select_harddrives
    harddrives = select_harddrives(old_harddrives)
  File "/usr/lib/python3.10/site-packages/archinstall/lib/user_interaction/system_conf.py", line 52, in select_harddrives
    hard_drives = all_blockdevices(partitions=False).values()
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/helpers.py", line 260, in all_blockdevices
    instances[path] = BlockDevice(path, path_info)
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/blockdevice.py", line 53, in __init__
    self._load_partitions()
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/blockdevice.py", line 131, in _load_partitions
    self._partitions[part_id] = Partition(root + part_id, block_device=self, part_id=part_id)
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/partition.py", line 70, in __init__
    self._partition_info = self._fetch_information()
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/partition.py", line 179, in _fetch_information
    sfdisk_info = self._call_sfdisk()
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/partition.py", line 166, in _call_sfdisk
    sfdisk_info = json.loads(output)
  File "/usr/lib/python3.10/json/__init__.py", line 346, in loads
    return _default_decoder.decode(s)
  File "/usr/lib/python3.10/json/decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib/python3.10/json/decoder.py", line 355, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
1 root@archiso ~ #                                                         

REDEAST

$ make
  CALL    scripts/checksyscalls.sh
  CC      arch/loongarch/mm/tlb.o
{standard input}: Assembler messages:
{standard input}:354: Error: Unable to parse register name $a1
{standard input}:355: Error: Unable to parse register name $t1
{standard input}:529: Error: Unable to parse register name $a0
{standard input}:596: Error: Unable to parse register name $a1
{standard input}:597: Error: Unable to parse register name $t0
{standard input}:626: Error: Unable to parse register name $a0
make[3]: *** [scripts/Makefile.build:250: arch/loongarch/mm/tlb.o] Error 1
make[2]: *** [scripts/Makefile.build:500: arch/loongarch/mm] Error 2
make[1]: *** [scripts/Makefile.build:500: arch/loongarch] Error 2
make: *** [Makefile:1992: .] Error 2

It passed in gentoo


yetist

REDEAST

给内核源码打上这个补丁就可以编译通过了:https://github.com/yetist/linux/commit/edc1afd7397cdd659ab5a9dcf964615c38da7056

Archlinux 上的内核源码包:
https://github.com/loongarchlinux/core/blob/2022.10/linux/PKGBUILD


yetist

loong64

这应该是 archinstall 的上游bug,等我回头研究一下吧。原因应该比较明确。


REDEAST

yetist Thanks!


loong64

yetist 好的 谢谢


loong64

yetist

输入下面命令修复U盘 就可以了 安装了

parted -l

loong64

yetist


按回车键继续。
 ! Formatting [BlockDevice(/dev/nvme0n1, size=476.9GB, free_space=1000MB+511GB, bus_type=nvme)] in 5....4....3....2....1....
Creating a new partition label on /dev/nvme0n1
Adding partition to BlockDevice(/dev/nvme0n1, size=476.9GB, free_space=1000MB+511GB, bus_type=nvme), 1MiB->512MiB
Could not find the new PARTUUID after adding the partition.
Previous partitions: []
New partitions: {None}
Traceback (most recent call last):
  File "/usr/bin/archinstall", line 8, in <module>
    sys.exit(run_as_a_module())
  File "/usr/lib/python3.10/site-packages/archinstall/__init__.py", line 311, in run_as_a_module
    script.execute()
  File "/usr/lib/python3.10/site-packages/archinstall/lib/profiles.py", line 195, in execute
    self.spec.loader.exec_module(sys.modules[self.namespace])
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/usr/lib/python3.10/site-packages/archinstall/examples/guided.py", line 296, in <module>
    perform_filesystem_operations()
  File "/usr/lib/python3.10/site-packages/archinstall/examples/guided.py", line 130, in perform_filesystem_operations
    with archinstall.Filesystem(drive, mode) as fs:
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/filesystem.py", line 44, in __exit__
    raise args[1]
  File "/usr/lib/python3.10/site-packages/archinstall/examples/guided.py", line 131, in perform_filesystem_operations
    fs.load_layout(archinstall.arguments['disk_layouts'][drive.path])
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/filesystem.py", line 89, in load_layout
    partition['device_instance'] = self.add_partition(partition.get('type', 'primary'),
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/filesystem.py", line 285, in add_partition
    raise DiskError(f"Could not add partition using: {parted_string}")
archinstall.lib.exceptions.DiskError: Could not add partition using: /dev/nvme0n1 mkpart primary fat32 1MiB 512MiB

yetist

loong64

临时升级了 archinstall 到2.5.2 版本,你要方便的话,可以测试一下这个新版本。

  1. 使用你手里的 iso 启动进入安装环境。
  2. 修改 /etc/pacman.conf 文件,开启 staging 仓库,如:
    [staging]
    Include = /etc/pacman.d/mirrorlist
    
    [core]
    Include = /etc/pacman.d/mirrorlist
  3. 等待后台的 pacman-key 进程完成之后,升级 archinstall 到 2.5.2-1 版本:pacman -Sy archinstall
  4. 如果不是最新固件,请将 staging 仓库关闭,并运行 pacman -Sy 刷新本地缓存,否则装完的系统可能无法启动。
  5. 运行 setup 安装。

loong64

yetist

报错信息


按回车键继续。
 ! Formatting [BlockDevice(/dev/nvme0n1, size=476.9GB, free_space=1031kB+1049kB+335kB, bus_type=nvme)] in 5....4....3....2....1....
Creating a new partition label on /dev/nvme0n1
Adding partition to BlockDevice(/dev/nvme0n1, size=476.9GB, free_space=1031kB+1049kB+335kB, bus_type=nvme), 1MiB->512MiB
Formatting /dev/nvme0n1p1 -> vfat
/usr/bin/mkfs.vfat -F32 /dev/nvme0n1p1
Marking partition Partition(path=/dev/nvme0n1p1, size=0.5, PARTUUID=2de72e17-3ef9-44e3-b73c-f5fafa46c5d6, fs=vfat) as bootable.
Setting boot on on (parted) partition index 1
Adding partition to BlockDevice(/dev/nvme0n1, size=476.9GB, free_space=1031kB+1049kB+335kB, bus_type=nvme), 513MiB->20GiB
Formatting /dev/nvme0n1p2 -> btrfs
Adding partition to BlockDevice(/dev/nvme0n1, size=476.9GB, free_space=1031kB+1049kB+335kB, bus_type=nvme), 20GiB->100%
Formatting /dev/nvme0n1p3 -> btrfs
Mounting / to /mnt/archinstall/ using BTRFSPartition(path=/dev/nvme0n1p2, size=19.5, PARTUUID=261698f3-294a-47fd-9a59-adaa868c2a05, fs=btrfs)
Mounting /boot to /mnt/archinstall/boot using Partition(path=/dev/nvme0n1p1, size=0.5, PARTUUID=2de72e17-3ef9-44e3-b73c-f5fafa46c5d6, fs=vfat)
Mounting /home to /mnt/archinstall/home using BTRFSPartition(path=/dev/nvme0n1p3, size=456.9, PARTUUID=2081b162-7352-4311-850c-64f1e379293c, fs=btrfs)
Using mount order: [('/', <function Installer.mount_ordered_layout.<locals>.<lambda> at 0x7ffff19701f0>), ('/boot', <function Installer.mount_ordered_layout.<locals>.<lambda> at 0x7ffff19705e0>), ('/home', <function Installer.mount_ordered_layout.<locals>.<lambda> at 0x7ffff19704c0>)]
Mounting BTRFSPartition(path=/dev/nvme0n1p2, size=19.5, PARTUUID=261698f3-294a-47fd-9a59-adaa868c2a05, fs=btrfs) to /mnt/archinstall/
Mounting Partition(path=/dev/nvme0n1p1, size=0.5, PARTUUID=2de72e17-3ef9-44e3-b73c-f5fafa46c5d6, fs=vfat) to /mnt/archinstall/boot
Mounting BTRFSPartition(path=/dev/nvme0n1p3, size=456.9, PARTUUID=2081b162-7352-4311-850c-64f1e379293c, fs=btrfs) to /mnt/archinstall/home
'/dev/sda'
[!] 已在此处创建日志文件:/var/log/archinstall/install.log
    请将此问题(和文件)提交到 https://github.com/archlinux/archinstall/issues
Traceback (most recent call last):
  File "/usr/bin/archinstall", line 8, in <module>
    sys.exit(run_as_a_module())
  File "/usr/lib/python3.10/site-packages/archinstall/__init__.py", line 311, in run_as_a_module
    script.execute()
  File "/usr/lib/python3.10/site-packages/archinstall/lib/profiles.py", line 195, in execute
    self.spec.loader.exec_module(sys.modules[self.namespace])
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/usr/lib/python3.10/site-packages/archinstall/examples/guided.py", line 312, in <module>
    perform_installation(archinstall.storage.get('MOUNT_POINT', '/mnt'))
  File "/usr/lib/python3.10/site-packages/archinstall/examples/guided.py", line 141, in perform_installation
    with archinstall.Installer(mountpoint, kernels=archinstall.arguments.get('kernels', ['linux'])) as installation:
  File "/usr/lib/python3.10/site-packages/archinstall/lib/installer.py", line 160, in __exit__
    raise args[1]
  File "/usr/lib/python3.10/site-packages/archinstall/examples/guided.py", line 148, in perform_installation
    for partition in installation.partitions:
  File "/usr/lib/python3.10/site-packages/archinstall/lib/installer.py", line 180, in partitions
    return get_partitions_in_use(self.target).values()
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/helpers.py", line 418, in get_partitions_in_use
    block_devices_available = all_blockdevices(mappers=True, partitions=True, error=True)
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/helpers.py", line 273, in all_blockdevices
    instances[path] = Partition(path, block_device=BlockDevice(get_parent_of_partition(pathlib.Path(path))))
  File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/blockdevice.py", line 44, in __init__
    self.info = all_blockdevices(partitions=False)[path].info
KeyError: '/dev/sda'
archinstall  1.76s user 7.19s system 7% cpu 2:03.72 total
1 root@archiso ~ #                                                     

« 上一页 下一页 »

知识共享许可协议
本站文章除其作者特殊声明外,一律采用CC BY-NC-SA 4.0许可协议进行授权。
进行转载或二次创作时务必以相同协议进行共享,严禁用于商业用途