BOS_ADDHOST(8)

✨ NAME ✨

ok so bestie, this is bos_addhost β€” it's from the AFS Command Reference, section 8 of the manual (admin commands, the spicy ones πŸ’…). And what does it DO? It adds a database server machine to the CellServDB file. that's it. that's the whole job. iconic behavior honestly πŸ‘‘


πŸ¦‹ SYNOPSIS πŸ¦‹

bos addhost -server <machine name> -host <host name>+
    [-cell <cell name>] [-clone] [-noauth] [-localauth] [-help]

bos addh -s <machine name> -ho <host name>+
    [-ce <cell name>] [-cl] [-n] [-l] [-he]
ngl the second one is just the first one but in its lazy-girl era β€” same command, shorter flags 🫢

πŸ’– DESCRIPTION πŸ’–

The bos addhost command adds an entry for each database server machine you name with the -host argument to the /etc/openafs/server/CellServDB file on the machine named by the -server argument.

so like. you point at a server. you list hosts. it writes them into the CellServDB. slay ✨


🌸 CAUTIONS 🌸

ok bestie listen, this part matters, put your phone down πŸ“΅

After you run this command (and after you wait for the Update Server to propagate the changes, if it's being used), you need to restart the database server processes on all database server machines to force election of a quorum that includes the new set of machines listed in the /etc/openafs/server/CellServDB file. The OpenAFS Quick Start Guide explains in more detail how to add and remove database server machines.

Also β€” and this is the part that eats people alive πŸ’€ β€” it's best to maintain a one-to-one mapping between hostnames and IP addresses on a multihomed database server machine. (and yeah, that's actually just the conventional configuration for any AFS machine, not a special-case thing.)

here's why: the BOS Server uses the gethostbyname() routine to obtain the IP address associated with the hostname specified by the -host argument. If there's more than one address, the BOS Server records in the CellServDB entry the one that appears first in the list of addresses returned by the routine. And here's the cursed part β€” that routine possibly returns addresses in a different order on different machines, which can create inconsistency. 😭

so yeah. one hostname, one IP. don't make it weird.


πŸŽ€ OPTIONS πŸŽ€

  • -server <machine name> β€” Identifies the server machine on which to change the /etc/openafs/server/CellServDB file. Identify the machine by IP address or its host name (either fully-qualified or abbreviated unambiguously). For details, see bos(8).

In cells that use the Update Server to distribute the contents of the /etc/openafs/server directory, it is conventional to specify only the system control machine as a value for the -server argument. Otherwise, repeat the command for each file server machine. For further discussion, see bos(8).

  • -host <host name>+ β€” Specifies the fully-qualified host name (like "db1.example.com") of each database server machine to register in the CellServDB file. the + means you can stack as many as you want bestie, go off 🫢
  • -cell <cell name> β€” Names the cell in which to run the command. Do not combine this argument with the -localauth flag. For more details, see bos(8).
  • -clone β€” Registers the host given by -host as a non-voting clone site, which prevents the host from becoming a sync-site. This is an advanced feature and should be used with caution. ⚠️ like genuinely, this is the "iykyk" flag of the whole page.
  • -noauth β€” Assigns the unprivileged identity "anonymous" to the issuer. Do not combine this flag with the -localauth flag. For more details, see bos(8).
  • -localauth β€” Constructs a server ticket using a key from the local /etc/openafs/server/KeyFile or /etc/openafs/server/KeyFileExt file. The bos command interpreter presents the ticket to the BOS Server during mutual authentication. Do not combine this flag with the -cell or -noauth options. For more details, see bos(8).
  • -help β€” Prints the online help for this command. All other valid options are ignored. (respectfully, once you ask for help, everything else gets ghosted πŸ‘»)

🌈 EXAMPLES 🌈

The following command adds the database server machines "db2.example.com" and "db3.example.com" to the /etc/openafs/server/CellServDB file on the machine "fs1.example.com" (which is the system control machine):

% bos addhost -server fs1.example.com -host db2.example.com db3.example.com

one command, two hosts, zero drama. ate. πŸ’…


πŸ‘‘ PRIVILEGE REQUIRED πŸ‘‘

The issuer must be listed in the /etc/openafs/server/UserList file on the machine named by the -server argument, or must be logged onto a server machine as the local superuser "root" if the -localauth flag is included.

no UserList entry, no root, no entry in CellServDB. main character energy only πŸ”₯


🧚 SEE ALSO 🧚

CellServDB(5), KeyFile(5), KeyFileExt(5), UserList(5), bos(8), bos_listhosts(8), bos_removehost(8)

The OpenAFS Quick Start Guide at <http://docs.openafs.org/QuickStartUnix/>.

(go read the Quick Start Guide fr fr, it's the lore πŸ’–)


IBM Corporation 2000. <http://www.ibm.com/> All Rights Reserved.

This documentation is covered by the IBM Public License Version 1.0. It was converted from HTML to POD by software written by Chas Williams and Russ Allbery, based on work by Alf Wachsmann and Elizabeth Cassell.


and that's the whole page bestie 🫢 this was OpenAFS, dated 2026-07-27, and it lives in section 8 of the manual. go add some hosts. you got this. mwah πŸ’‹

πŸ“¦ where this page comes from