Everything in the lab is driven by make. Run make help for the live list;
this page groups the same targets by concern.
| Target | What it does |
|---|
make net | Create the shared external samba network (idempotent) |
make build | Build the DC image |
make up | Build if needed and start the stack in the background |
make down | Stop the stack, keep the domain database |
make restart | Restart the DC |
make logs | Follow DC logs |
make ps | Show container status |
make shell | Open a root shell inside the DC |
make health | List the Samba service tasks (same check Docker uses) |
make clean | Stop and remove containers, keep volumes and domain data |
make nuke | Destroy everything including the domain database (irreversible) |
| Target | What it does |
|---|
make list-users | List domain users |
make add-user U=jdoe P='S3cret!' | Create a single user |
make seed | Seed demo users with email, phone, and fax |
make show-user U=jane.doe | Show one user’s contact attributes |
make show-homes | Home attributes plus on-disk folders |
make test-home U=marty.mcfly | Write then read a file in a home over SMB |
make photos | Fetch Commons portraits into thumbnailPhoto/jpegPhoto |
make show-photo U=prince | Extract a stored photo back out |
make list-dns | Dump the AD DNS zone |
make dbcheck | Run an AD database consistency check |
make backup | Take an online domain backup into ./backups |
| Target | What it does |
|---|
make org | Build the OU tree and the manager reporting chain |
make show-org | OU tree plus the user-to-manager chart |
make groups | Base security groups, nesting, and gated shares |
make show-groups | List group membership |
make test-group-access | Prove a gated share allows a member and denies a non-member |
make clinics | Seed ER clinical staff plus the clinic groups, nesting, and shares |
make show-clinics | Clinic and admin groups, the meta-groups, and the shares |
make test-clinic-access | Prove the HIPAA boundary: clinician reaches PHI, admin staff denied |
| Target | What it does |
|---|
make faxboxes | Create the Fax Endpoints OU and seed no-logon shared fax boxes |
make show-faxboxes | Show the fax boxes (mail, fax, state) |
make fax-rw | Provision svc-fax-rw plus the scoped DID write ACL and a test user |
make rotate-svc U=svc-fax-ro [P=..] [ENVFILE=..] [KEY=..] | Rotate a service password and deliver it to a consumer .env |
make print-emu-creds [EMU_HOST=..] [FAXART_DIR=..] | Pre-stage a member via ODJ (blob + keytab) |
| Target | What it does |
|---|
make print-logs | Follow the print server’s logs |
make print-shell | Root shell inside the print server |
make print-status | Membership plus CUPS queue count |
make print-queues | List every CUPS queue (expect 77 + PDF) |
make list-printers | The print server’s SMB shares a client sees |
make test-print | Submit a job over SMB and show the PDF it produced |
make test-print-queue Q=GH12-pLab | Submit to a specific queue and prove it routed |
make test-multiqueue | Submit to three queues, prove each lands its own PDF |
make publish-printers | Publish CUPS queues into AD as printQueue objects |
make show-printers-ad | What “Find Printers” would return |
| Target | What it does |
|---|
make snmp-logs | Follow the SNMP sidecar’s logs |
make snmp-walk DEV=bmh12-plab | Walk a printer’s Printer-MIB |
make ipp-logs | Follow the IPP sidecar’s logs |
make ipp-validate | Validate the IPP Everywhere endpoint with ipptool |
make print-fault STATE=<state> [Q=<queue>] | Inject a fault: offline, paused, rejecting, toner-low, paper-out, clear |
make test-fault-path | Prove a rejecting queue refuses a job, then clear and prove it prints |
| Target | What it does |
|---|
make rodc-logs | Follow the RODC’s logs |
make rodc-shell | Root shell inside the RODC |
make rodc-status | RODC health plus the primary’s view of replication |
make rodc-test | Prove read-only: read locally, watch a write get referred |