Jeremy Davis's picture

I am currently working on a prototype TKL Lucid Client Core  TKLPatch and am seeking the preferred way to disable confconsole from autostarting (so it doesn't interfere with the GUI at boot).

For now I'm using

update-rc.d confconsole disable

to disable it and

update-rc.d confconsole enable

to re-enable it. It all works no problem. Well, actually for interest sake it does complain that

update-rc.d: warning: /etc/init.d/confconsole missing LSB information
update-rc.d: see <http://wiki.debian.org/LSBInitScripts>

But that's obviously non-critical as it doesn't seem to effect anything.

Despite the fact that it works nicely, as I'm a Linux newb I thought it may be best to see what others think, especially Liraz &/or Alon. Is there a better, or preferred way?

Ultimately it might be nice to include these commands in a script that disables x/enables confconsole and enables confconsole/disables x. Something easy to remember for useage scanarios where users wish to easily enable and disable the GUI.

Forum: 
Adrian Moya's picture

I missed your post about the TKL Client. Looks interesting, looking forward to see how it would work...

Liraz Siri's picture

According to the Debian Policy Manual which is a good source for information on how stuff is supposed to work in Debian/Ubuntu. Don't take it too literally though. It's for packagers, not system integrators.

BTW the only "evil" alternative would be to manipulate files in /etc/rc*.d/ manually which works for sysvinit scripts but I'm not sure if it would work for upstart stuff.

Now, anyone able to take the time to let me know how to get it to display before the system asks for login? Or should I do more homework?

Jeremy Davis's picture

Don't hold me to this RiK, but I think you'll want a couple of scripts (well at least one - it depends on how confconsole is set up and TBH I haven't played with it at all - other than above...). The first is the init script. It needs to go in the /etc/init.d/ dir. It may also need a script in /etc/defaults/ but that I'm not sure of...

The init script will need to be executable. And I think if you just run 'update-rc.d confconsole defaults' then it should autostart... But I could be wrong. If it's not working then you could try copying these from a working TKL appliance and copying them in and see what happens. (AFAIK it should be fine as scripts should still run fine, it's just binaries that won't work without compiling for the platform).

Ok, I can wrap my brain around all of this. Except, in the source, I didn't see anything to compile. I've got /etc/init.d/confconsole set and executeable. It looks for confconsole in /usr/bin I believe; I didn't see anything to compile or move there, so I touched /usr/bin/confconsole and told it to invoke python /path/to/confconsole.py.

Brilliant. I'll check the logs.

[Later] I think I see the problem. ifutils is being found. So I suspect pythonpath is not pointing do where the install doc said to put the .py files: /usr/lib/confconsole.

You're all clever and have judgement: should I make a new forum topic?

Jeremy Davis's picture

Because it's just scripts they will run on anything (the python binary itself would need to be compiled for ARM, but the Debian devs take care of that for you).

Keep going here if you want. I think it's still relevant to the original thread.

Inithooks working without a cludge; raspian should borrow this instead or relying on defaults.

Confconsole is working, but it's awkward. I had to put the python dependencies in /usr/bin, which is wrong on at least two levels. I've tried permissions, i've tried other python folders in usr/lib, but no luck. I do want them where there the documents says they belong - /usr/lib/confconsole. But for now, it's not to be.

I'm still not sure of the wisdom of this project. It would help me to have core on the raspi, but I'm wrestling with whether it authentically helps anyone else.

Jeremy Davis's picture

In the other thread you were saying that it runs but not until after login. Perhaps you need to have a manual fiddle in the /etc/rc.d dir. IIRC all the startup scripts are numbered in there, so you'll just need to reduce the leading number so it runs earlier... I think...

Jesse Stacey's picture

I just installed Turnkey Linux and it looks promising.. just two things that are bugging me. whenever I boot the machine it doesn't complete the boot cycle, I go in the server room and its stuck at the confconsole screen and the manual config is already specified with the IP and everything but it is persistently interupting my boot cycle! Is it supposed to do this? I had to remove confconsole from the startup with update-rc.d because of this, but I still don't understand this behaviour.

 

The other thing.. I put it on a public ip range with a 255.255.255.0 subnet for now, and it seems I can only reach the web interface and other services from within that Class C range. Any other machine on the internet can't reach it, and I understand it's a good idea to do this, but I would like to open it up to another subnet for our other network. I'm used to using iptables, so this firewall config in the webmin is a bit foreign to me. I can see the rules in there for port 80, 22, 12321, etc. I tried specifying the source IP range for my other network in there but I still can't get in. Is there a config file blocking this somewhere ?

Jeremy Davis's picture

I'm not much of a network guru type TBH so not sure if I can be any direct help with networking issues but I know a fair bit about TKL so hopefully I can be some help! :)

Confconsole isn't interrupting the boot process. By default it auto runs when booting has finished. As TurnKey is more-or-less intended as a headless server, interactions are more often than not via web browser or SSH (depending on preference). So many (most?) users only see the confconsole screen when they first install and setup - so in that context it makes lots of sense. No reason why you can't remove it if you'd prefer though (as it sounds like you've done). Perhaps ideally it should be an option in confconsole itself?

IPtables is what TurnKey uses behind the scenes - Webmin just provides a UI for it (and calls it 'Firewall' instead). If you'd rather directly interact with IPtables via the commandline then that's an option too. Also FWIW by default it's not enabled (i.e. it is configured to work OOTB if you do enable it; but is disabled by default).

Network config can be handled with confconsole (just the basics) or Webmin (a lot more options) but beyond all that TurnKey is a customised headless Debian under the hood. So it can be configured via commandline just like any other Debian server.

Add new comment