Error: too early for operation, device not yet seeded or device model not acknowledged

Thank you so much for the help! Issue described below. This is a Digital Ocean CentOS 7 droplet configured with only Apache, MySQL and PHP. The later were installed with custom yum repos, which I've listed at the end. The permissions of /var/lib/snapd (and parents) are 0755.

EDIT: Forgot the obvious: Does golang need to be installed in order for this to work?

My domain is: catchstep.com

I ran this command:

sudo yum install snapd -- OK
sudo systemctl enable --now snapd.socket -- OK
sudo ln -s /var/lib/snapd/snap /snap -- OK
sudo systemctl restart httpd -- OK
sudo snap install --classic certbot -- FAILED, first result:

"error: too early for operation, device not yet seeded or device model not acknowledged"

Accidentally reran the same command. Yielded the following result:

It produced this output:

2022-12-10T13:04:26-05:00 INFO Waiting for automatic snapd restart...
error: cannot perform the following tasks:
- Run configure hook of "certbot" snap if present (run hook "configure":  *<-- The line ends here, there is nothing after the colon*
-----
fatal error: unexpected signal during runtime execution
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x0]

runtime stack:
runtime.throw({0x7257cd, 0x0})
	/usr/lib/golang/src/runtime/panic.go:1198 +0x71 fp=0x7ffc4294acb0 sp=0x7ffc4294ac80 pc=0x435291
runtime.sigpanic()
	/usr/lib/golang/src/runtime/signal_unix.go:719 +0x396 fp=0x7ffc4294ad00 sp=0x7ffc4294acb0 pc=0x44aa16

goroutine 1 [syscall, locked to thread]:
runtime.cgocall(0x5e9a70, 0xc00009f6c0)
	/usr/lib/golang/src/runtime/cgocall.go:156 +0x5c fp=0xc00009f698 sp=0xc00009f660 pc=0x40551c
crypto/internal/boring._Cfunc__goboringcrypto_DLOPEN_OPENSSL()
	_cgo_gotypes.go:603 +0x49 fp=0xc00009f6c0 sp=0xc00009f698 pc=0x5366c9
crypto/internal/boring.init.0()
	/usr/lib/golang/src/crypto/internal/boring/boring.go:46 +0x45 fp=0xc00009f6f8 sp=0xc00009f6c0 pc=0x537445
runtime.doInit(0xad84a0)
	/usr/lib/golang/src/runtime/proc.go:6498 +0x123 fp=0xc00009f830 sp=0xc00009f6f8 pc=0x4449a3
runtime.doInit(0xad61a0)
	/usr/lib/golang/src/runtime/proc.go:6475 +0x71 fp=0xc00009f968 sp=0xc00009f830 pc=0x4448f1
runtime.doInit(0xad9280)
	/usr/lib/golang/src/runtime/proc.go:6475 +0x71 fp=0xc00009faa0 sp=0xc00009f968 pc=0x4448f1
runtime.doInit(0xad8260)
	/usr/lib/golang/src/runtime/proc.go:6475 +0x71 fp=0xc00009fbd8 sp=0xc00009faa0 pc=0x4448f1
runtime.doInit(0xad9bc0)
	/usr/lib/golang/src/runtime/proc.go:6475 +0x71 fp=0xc00009fd10 sp=0xc00009fbd8 pc=0x4448f1
runtime.doInit(0xad7220)
	/usr/lib/golang/src/runtime/proc.go:6475 +0x71 fp=0xc00009fe48 sp=0xc00009fd10 pc=0x4448f1
runtime.doInit(0xad7fe0)
	/usr/lib/golang/src/runtime/proc.go:6475 +0x71 fp=0xc00009ff80 sp=0xc00009fe48 pc=0x4448f1
runtime.main()
	/usr/lib/golang/src/runtime/proc.go:238 +0x1e6 fp=0xc00009ffe0 sp=0xc00009ff80 pc=0x437926
runtime.goexit()
	/usr/lib/golang/src/runtime/asm_amd64.s:1581 +0x1 fp=0xc00009ffe8 sp=0xc00009ffe0 pc=0x464361

goroutine 2 [force gc (idle)]:
runtime.gopark(0x0, 0x0, 0x0, 0x0, 0x0)
	/usr/lib/golang/src/runtime/proc.go:366 +0xd6 fp=0xc000030fb0 sp=0xc000030f90 pc=0x437d36
runtime.goparkunlock(...)
	/usr/lib/golang/src/runtime/proc.go:372
runtime.forcegchelper()
	/usr/lib/golang/src/runtime/proc.go:306 +0xad fp=0xc000030fe0 sp=0xc000030fb0 pc=0x437bcd
runtime.goexit()
	/usr/lib/golang/src/runtime/asm_amd64.s:1581 +0x1 fp=0xc000030fe8 sp=0xc000030fe0 pc=0x464361
created by runtime.init.8
	/usr/lib/golang/src/runtime/proc.go:294 +0x25

goroutine 3 [GC sweep wait]:
runtime.gopark(0x0, 0x0, 0x0, 0x0, 0x0)
	/usr/lib/golang/src/runtime/proc.go:366 +0xd6 fp=0xc0000317b0 sp=0xc000031790 pc=0x437d36
runtime.goparkunlock(...)
	/usr/lib/golang/src/runtime/proc.go:372
runtime.bgsweep()
	/usr/lib/golang/src/runtime/mgcsweep.go:163 +0x88 fp=0xc0000317e0 sp=0xc0000317b0 pc=0x4243a8
runtime.goexit()
	/usr/lib/golang/src/runtime/asm_amd64.s:1581 +0x1 fp=0xc0000317e8 sp=0xc0000317e0 pc=0x464361
created by runtime.gcenable
	/usr/lib/golang/src/runtime/mgc.go:181 +0x55

goroutine 4 [GC scavenge wait]:
runtime.gopark(0x0, 0x0, 0x0, 0x0, 0x0)
	/usr/lib/golang/src/runtime/proc.go:366 +0xd6 fp=0xc000031f80 sp=0xc000031f60 pc=0x437d36
runtime.goparkunlock(...)
	/usr/lib/golang/src/runtime/proc.go:372
runtime.bgscavenge()
	/usr/lib/golang/src/runtime/mgcscavenge.go:265 +0xcd fp=0xc000031fe0 sp=0xc000031f80 pc=0x4224ad
runtime.goexit()
	/usr/lib/golang/src/runtime/asm_amd64.s:1581 +0x1 fp=0xc000031fe8 sp=0xc000031fe0 pc=0x464361
created by runtime.gcenable
	/usr/lib/golang/src/runtime/mgc.go:182 +0x65

goroutine 5 [runnable]:
runtime.runfinq()
	/usr/lib/golang/src/runtime/mfinal.go:162 fp=0xc0000307e0 sp=0xc0000307d8 pc=0x419e80
runtime.goexit()
	/usr/lib/golang/src/runtime/asm_amd64.s:1581 +0x1 fp=0xc0000307e8 sp=0xc0000307e0 pc=0x464361
created by runtime.createfing
	/usr/lib/golang/src/runtime/mfinal.go:157 +0x45

My web server is (include version): Apache/2.4.6 (CentOS)

The operating system my web server runs on is (include version): CentOS 7 (Necessary for project)

My hosting provider, if applicable, is: None, DigitalOcean droplet

I can login to a root shell on my machine (yes or no, or I don't know): yes

I'm using a control panel to manage my site (no, or provide the name and version of the control panel): No

The version of my client is (e.g. output of certbot --version or certbot-auto --version if you're using Certbot): N/A

Further Info:

Checked permission of /var/lib/snapd: Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
(Same is true for /var and /var/lib)

Additional yum repos were installed so required versions of mysql and PHP could be installed. Could this be relevant?

base/7/x86_64                                                                           CentOS-7 - Base                                                                                                      10,072
!droplet-agent/x86_64                                                                   DigitalOcean Droplet Agent                                                                                               12
epel/x86_64                                                                             Extra Packages for Enterprise Linux 7 - x86_64                                                                       13,746
extras/7/x86_64                                                                         CentOS-7 - Extras                                                                                                       515
mysql-connectors-community/x86_64                                                       MySQL Connectors Community                                                                                              206
mysql-tools-community/x86_64                                                            MySQL Tools Community                                                                                                    94
mysql80-community/x86_64                                                                MySQL 8.0 Community Server                                                                                              367
remi-php82                                                                              Remi's PHP 8.2 RPM repository for Enterprise Linux 7 - x86_64                                                           270
remi-safe                                                                               Safe Remi's RPM repository for Enterprise Linux 7 - x86_64                                                            5,091
updates/7/x86_64                                                                        CentOS-7 - Updates

Thank you again!

2 Likes

I have the same issue today. Some days ago is everything ok when I apply by the same way.

No.

I'd try using certbot directly from yum.

3 Likes

See:

4 Likes

Hi @rg305 - thank you for the help! So I installed through yum, and that seemed to have worked, however, my next step should be

certbot --apache

and then I get

Saving debug log to /var/log/letsencrypt/letsencrypt.log
The requested apache plugin does not appear to be installed

Results of the log:

2022-12-14 12:39:22,429:DEBUG:certbot._internal.main:certbot version: 1.11.0
2022-12-14 12:39:22,429:DEBUG:certbot._internal.main:Location of certbot entry point: /usr/bin/certbot
2022-12-14 12:39:22,429:DEBUG:certbot._internal.main:Arguments: ['--apache']
2022-12-14 12:39:22,429:DEBUG:certbot._internal.main:Discovered plugins: PluginsRegistry(PluginEntryPoint#manual,PluginEntryPoint#null,PluginEntryPoint#standalone,PluginEntryPoint#webroot)
2022-12-14 12:39:22,449:DEBUG:certbot._internal.log:Root logging level set at 20
2022-12-14 12:39:22,449:INFO:certbot._internal.log:Saving debug log to /var/log/letsencrypt/letsencrypt.log
2022-12-14 12:39:22,450:DEBUG:certbot._internal.plugins.selection:Requested authenticator apache and installer apache
2022-12-14 12:39:22,450:DEBUG:certbot._internal.plugins.selection:No candidate plugin
2022-12-14 12:39:22,450:DEBUG:certbot._internal.plugins.selection:Selected authenticator None and installer None

If I run certbot with no arguments, I get:

Certbot doesn't know how to automatically configure the web server on this system. However, it can still get a certificate for you. Please run "certbot certonly" to do so. You'll need to manually configure your web server to use the resulting certificate.

Before I go down that rabbit hole, is there something else I missed or should try?

Thank you again for all the help!

1 Like

certbot may need to be told where all the Apache stuff is located in CentOS 7.
[which is a bit tedious - but would only need to be done (right) once]
OR
You could use the --webroot authentication and manually install the certificate (using certonly).

3 Likes

If you do choose to go the way of detailing all the Apache stuff to certbot...


From:
User Guide — Certbot 2.1.0 documentation (eff-certbot.readthedocs.io)
[you don't need to use all of them]

3 Likes

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.