- Complete documentation for all bootc commands and subcommands - Debian-specific adaptations and workarounds - Manual installation methods to bypass bootc reliability issues - Technical guides with Rust source code analysis - Flowcharts and external command references - Hidden command documentation (bootc internals, state, etc.) - Composefs integration analysis - Base image creation guides (with and without bootc binary) - Management scripts and automation - Comprehensive troubleshooting and examples
6.6 KiB
6.6 KiB
bootc exec-in-host-mount-namespace - Quick Reference
Command Summary
| Command | Purpose | Usage |
|---|---|---|
exec-in-host-mount-namespace |
Execute command in host mount namespace | bootc exec-in-host-mount-namespace [ARGS]... |
Quick Commands
Basic Operations
# Execute command in host mount namespace
bootc exec-in-host-mount-namespace ls /
# Execute with arguments
bootc exec-in-host-mount-namespace mount /dev/sda1 /mnt
# Execute system command
bootc exec-in-host-mount-namespace systemctl status
System Operations
# Check host filesystem
bootc exec-in-host-mount-namespace df -h
# View host processes
bootc exec-in-host-mount-namespace ps aux
# Check host system status
bootc exec-in-host-mount-namespace systemctl status
Installation Operations
# Create directories in host filesystem
bootc exec-in-host-mount-namespace mkdir -p /var/lib/bootc
# Copy files to host filesystem
bootc exec-in-host-mount-namespace cp /source/file /host/destination/
# Set permissions
bootc exec-in-host-mount-namespace chmod 644 /host/file
Common Options
| Option | Purpose | Example |
|---|---|---|
--help |
Show help | bootc exec-in-host-mount-namespace --help |
--verbose |
Verbose output | bootc exec-in-host-mount-namespace -v ls / |
--quiet |
Quiet output | bootc exec-in-host-mount-namespace -q ls / |
Error Codes
| Code | Meaning | Solution |
|---|---|---|
| 1 | General error | Check logs for details |
| 2 | Missing command | Provide command to execute |
| 3 | Namespace access error | Check /proc/1/ns/mnt exists |
| 4 | setns error | Run as root |
| 5 | Command not found | Use full path to command |
Common Issues
Missing Command
# Error: Missing command
# Solution: Provide a command
bootc exec-in-host-mount-namespace ls /
# Or use a shell
bootc exec-in-host-mount-namespace /bin/bash
Namespace Access Error
# Error: open pid1 mountns: No such file or directory
# Solution: Check if /proc/1/ns/mnt exists
ls -la /proc/1/ns/mnt
# Run as root
sudo bootc exec-in-host-mount-namespace ls /
setns Error
# Error: setns: Operation not permitted
# Solution: Run as root
sudo bootc exec-in-host-mount-namespace ls /
# Check capabilities
getcap /usr/bin/bootc
Command Not Found
# Error: exec: command not found
# Solution: Use full path
bootc exec-in-host-mount-namespace /bin/ls /
# Check command availability
bootc exec-in-host-mount-namespace which ls
Environment Variables
| Variable | Purpose | Default |
|---|---|---|
RUST_LOG |
Log level | info |
BOOTC_DEBUG |
Debug mode | false |
BOOTC_CONFIG |
Config file | /etc/bootc/config.toml |
Configuration Files
| File | Purpose | Location |
|---|---|---|
| Main config | Bootc configuration | /etc/bootc/config.toml |
| Namespace info | Namespace information | /proc/1/ns/mnt |
| Process info | Process information | /proc/self/ns/mnt |
Log Files
| File | Purpose | Location |
|---|---|---|
| System logs | System messages | /var/log/messages |
| Journal logs | Systemd journal | journalctl -u bootc-* |
| Bootc logs | Bootc specific | /var/log/bootc/ |
Performance Tips
Optimize Operations
# Check system load
uptime
# Check memory usage
free -h
# Check namespace overhead
time bootc exec-in-host-mount-namespace /bin/true
time /bin/true
Monitor System
# Check namespace availability
ls -la /proc/1/ns/mnt
# Check namespace differences
diff /proc/1/ns/mnt /proc/self/ns/mnt
# Check system performance
bootc exec-in-host-mount-namespace top -bn1 | head -20
Security Considerations
Root Privileges
- All exec-in-host-mount-namespace commands require root privileges
- Use
sudoor switch to root user - Check current user with
whoami
Namespace Access
- Command accesses host mount namespace through
/proc/1/ns/mnt - Requires appropriate privileges for namespace switching
- Uses
setnssystem call for namespace switching
Process Isolation
- Command executes in host mount namespace
- Current process is replaced with target command
- Provides access to host filesystem view
Best Practices
Regular Operations
- Use only when host mount namespace access is needed
- Check command availability before execution
- Implement proper error handling
- Monitor system performance
Development
- Use in container environments
- Test commands before production use
- Document procedures
- Monitor system health
Production
- Set up monitoring
- Configure alerts
- Regular testing
- Document procedures
Troubleshooting Steps
-
Check command availability
bootc exec-in-host-mount-namespace which <command> -
Check namespace availability
ls -la /proc/1/ns/mnt -
Check privileges
whoami sudo bootc exec-in-host-mount-namespace <command> -
Check logs
journalctl -u bootc-* --since "1 hour ago" tail -f /var/log/bootc/main.log -
Test command execution
bootc exec-in-host-mount-namespace /bin/true
Quick Scripts
Health Check
#!/bin/bash
bootc exec-in-host-mount-namespace /bin/true && echo "System healthy"
Namespace Test
#!/bin/bash
bootc exec-in-host-mount-namespace ls / && echo "Namespace access OK"
Command Test
#!/bin/bash
bootc exec-in-host-mount-namespace which "$1" && echo "Command available"
System Check
#!/bin/bash
bootc exec-in-host-mount-namespace uname -a && echo "System check OK"
Integration Examples
Systemd Service
# Create service file
cat > /etc/systemd/system/bootc-exec-in-host-mount-namespace.service << EOF
[Unit]
Description=Bootc Exec in Host Mount Namespace Service
After=multi-user.target
[Service]
Type=oneshot
ExecStart=/usr/local/bin/bootc-exec-in-host-mount-namespace-script.sh
User=root
Group=root
[Install]
WantedBy=multi-user.target
EOF
# Enable service
systemctl daemon-reload
systemctl enable bootc-exec-in-host-mount-namespace.service
Cron Job
# Add to crontab
echo "0 2 * * * /usr/local/bin/bootc-exec-in-host-mount-namespace-maintenance.sh" | crontab -
Monitoring
# Check system health
if ! bootc exec-in-host-mount-namespace /bin/true > /dev/null 2>&1; then
echo "WARNING: Exec-in-host-mount-namespace failed"
# Send alert
fi
This quick reference provides essential information for using the bootc exec-in-host-mount-namespace system effectively.