Strange config error "out of the blue"

80 views
Skip to first unread message

Ruth Ivimey-Cook

unread,
Jun 27, 2024, 10:31:23 AM6/27/24
to bareos-users

Hi,

I'm experiencing a very odd bareos-dir config error which I don't understand so I'm hoping someone has inspiration:

From systemctl I get:

Jun 25 15:15:01 helva bareos-dir[100498]: bareos-dir: CONFIG ERROR at dird/inc_conf.cc:977
Jun 25 15:15:01 helva bareos-dir[100498]: Config error: Keyword FileSet not permitted in this resource
Jun 25 15:15:01 helva bareos-dir[100498]:             : line 6, col 8 of file /etc/bareos/bareos-dir.d/fileset/GreyareaDNSSystem.conf
Jun 25 15:15:01 helva bareos-dir[100498]: FileSet {
Jun 25 15:15:01 helva systemd[1]: bareos-director.service: Main process exited, code=exited, status=42/n/a

The file mentioned is completely unexceptional, and if I remove it, the same error happens to the next file in the directory.

##############################################################
#
# Fileset for backup of: Greyarea-nvr
#
#

FileSet {
  Name = "GreyareaDNSSystem"

  Include {
    Options {
      signature = SHA1
      sparse = yes
      compression = LZ4
      wilddir = /home/*/.gvfs
    }
    File = /
    File = /boot
    File = /var
  }
}

Other files in the fileset directory include:

BareosCatalog.conf,   Bareos.conf,   Catalog.conf
GreyareaDNSHome.conf,            GreyareaDNSSystem.conf
Greyarea-git Gogs.conf,          Greyarea-git Home.conf
Greyarea-git Repositories.confGreyareaHome.conf
GreyareaNVRHome.conf,            GreyareaNVRSystem.conf
Greyarea-post Home.conf,
...

When I try the debug option ("bareos-dir -d2000") things proceed as expected until:

bareos-dir (900): lib/parse_conf_state_machine.cc:55-0 parse state=1 parser_pass_number_=1 got token=BCT_EOB
bareos-dir (900): lib/parse_conf_state_machine.cc:173-0 BCT_EOB => define new resource
bareos-dir (900): lib/parse_conf.cc:284-0 Inserting FileSet res: Greyarea-git Home index=7
bareos-dir (900): lib/parse_conf_state_machine.cc:55-0 parse state=0 parser_pass_number_=1 got token=BCT_EOL
bareos-dir (900): lib/parse_conf_state_machine.cc:55-0 parse state=0 parser_pass_number_=1 got token=BCT_EOL
bareos-dir (1000): lib/lex.cc:355-0 fget line=1 ##############################################################
bareos-dir (900): lib/parse_conf_state_machine.cc:55-0 parse state=0 parser_pass_number_=1 got token=BCT_EOL
bareos-dir (1000): lib/lex.cc:355-0 fget line=2 #
bareos-dir (900): lib/parse_conf_state_machine.cc:55-0 parse state=0 parser_pass_number_=1 got token=BCT_EOL
bareos-dir (1000): lib/lex.cc:355-0 fget line=3 # Fileset for backup of: Greyarea-git
bareos-dir (900): lib/parse_conf_state_machine.cc:55-0 parse state=0 parser_pass_number_=1 got token=BCT_EOL
bareos-dir (1000): lib/lex.cc:355-0 fget line=4 #
bareos-dir (900): lib/parse_conf_state_machine.cc:55-0 parse state=0 parser_pass_number_=1 got token=BCT_EOL
bareos-dir (1000): lib/lex.cc:355-0 fget line=5
bareos-dir (900): lib/parse_conf_state_machine.cc:55-0 parse state=0 parser_pass_number_=1 got token=BCT_EOL
bareos-dir (1000): lib/lex.cc:355-0 fget line=6 FileSet {
bareos-dir (900): lib/parse_conf_state_machine.cc:55-0 parse state=0 parser_pass_number_=1 got token=BCT_IDENTIFIER
bareos-dir (900): lib/parse_conf_init_resource.cc:55-0 Item=Name def=no defval=None
bareos-dir (900): lib/parse_conf_init_resource.cc:55-0 Item=Description def=no defval=None
bareos-dir (900): lib/parse_conf_init_resource.cc:55-0 Item=Include def=no defval=None
bareos-dir (900): lib/parse_conf_init_resource.cc:55-0 Item=Exclude def=no defval=None
bareos-dir (900): lib/parse_conf_init_resource.cc:55-0 Item=IgnoreFileSetChanges def=yes defval=false
bareos-dir (900): lib/parse_conf_init_resource.cc:55-0 Item=EnableVSS def=yes defval=true
bareos-dir (900): lib/parse_conf_state_machine.cc:55-0 parse state=1 parser_pass_number_=1 got token=BCT_BOB
bareos-dir (900): lib/parse_conf_state_machine.cc:55-0 parse state=1 parser_pass_number_=1 got token=BCT_EOL
bareos-dir (1000): lib/lex.cc:355-0 fget line=7   Name = "Greyarea-git Gogs"
bareos-dir (900): lib/parse_conf_state_machine.cc:55-0 parse state=1 parser_pass_number_=1 got token=BCT_IDENTIFIER
bareos-dir (900): lib/parse_conf_state_machine.cc:130-0 in BCT_IDENT got token=BCT_EQUALS
bareos-dir (800): lib/parse_conf_state_machine.cc:145-0 calling handler for Name
bareos-dir (1000): lib/lex.cc:355-0 fget line=8
bareos-dir (900): lib/parse_conf_state_machine.cc:55-0 parse state=1 parser_pass_number_=1 got token=BCT_EOL
bareos-dir (1000): lib/lex.cc:355-0 fget line=9   Include {
bareos-dir (900): lib/parse_conf_state_machine.cc:55-0 parse state=1 parser_pass_number_=1 got token=BCT_IDENTIFIER
bareos-dir (800): lib/parse_conf_state_machine.cc:145-0 calling handler for Include
bareos-dir (1000): lib/lex.cc:355-0 fget line=10     Options {
bareos-dir (1000): lib/lex.cc:355-0 fget line=11       signature = SHA1
bareos-dir (900): dird/inc_conf.cc:444-0 Catopts=S option=S optlen=100
bareos-dir (900): dird/inc_conf.cc:673-0 new pass=1 incexe opts=S
bareos-dir (1000): lib/lex.cc:355-0 fget line=12       compression = LZ4
bareos-dir (900): dird/inc_conf.cc:444-0 Catopts=Zf4 option=Zf4 optlen=100
bareos-dir (900): dird/inc_conf.cc:673-0 new pass=1 incexe opts=SZf4
bareos-dir (1000): lib/lex.cc:355-0 fget line=13       sparse = yes
bareos-dir (900): dird/inc_conf.cc:444-0 Catopts=s option=s optlen=100
bareos-dir (900): dird/inc_conf.cc:673-0 new pass=1 incexe opts=SZf4s
bareos-dir (1000): lib/lex.cc:355-0 fget line=14     }
bareos-dir (900): dird/inc_conf.cc:709-0 setting default value for keyword-id=10, H
bareos-dir (900): dird/inc_conf.cc:709-0 setting default value for keyword-id=17, A
bareos-dir (900): dird/inc_conf.cc:709-0 setting default value for keyword-id=25, X
bareos-dir (1000): lib/lex.cc:355-0 fget line=15     File = /var/lib/mysql/MetaGogs.sql"
bareos-dir (900): dird/inc_conf.cc:842-0 Add to name_list /var/lib/mysql/MetaGogs.sql
bareos-dir (1000): lib/lex.cc:355-0 fget line=16     File = /home/git
bareos-dir (1000): lib/lex.cc:355-0 fget line=17   }
bareos-dir (1000): lib/lex.cc:355-0 fget line=18 }
bareos-dir (1000): lib/lex.cc:355-0 fget line=19
bareos-dir (1000): lib/lex.cc:355-0 fget line=1 ##############################################################
bareos-dir (1000): lib/lex.cc:355-0 fget line=2 #
bareos-dir (1000): lib/lex.cc:355-0 fget line=3 # Fileset for backup of: Greyarea-nvr
bareos-dir (1000): lib/lex.cc:355-0 fget line=4 #
bareos-dir (1000): lib/lex.cc:355-0 fget line=5 #
bareos-dir (1000): lib/lex.cc:355-0 fget line=6
bareos-dir (1000): lib/lex.cc:355-0 fget line=7 FileSet {
bareos-dir (10): dird/inc_conf.cc:982-0 CONFIG ERROR: Config error: Keyword FileSet not permitted in this resource
            : line 7, col 8 of file /etc/bareos/bareos-dir.d/fileset/GreyareaDNSSystem.conf
FileSet {

bareos-dir (850): lib/message.cc:618-0 Enter DispatchMessage type=18 msg=bareos-dir: CONFIG ERROR at dird/inc_conf.cc:982
Config error: Keyword FileSet not permitted in this resource
            : line 7, col 8 of file /etc/bareos/bareos-dir.d/fileset/GreyareaDNSSystem.conf
FileSet {

bareos-dir: CONFIG ERROR at dird/inc_conf.cc:982
Config error: Keyword FileSet not permitted in this resource
            : line 7, col 8 of file /etc/bareos/bareos-dir.d/fileset/GreyareaDNSSystem.conf
FileSet {

Just in case, I have also recompiled bareos from git sources:

 $  mkdir bareos-release; cd bareos-release
 $ 
 $  curl -OL <broadcom vmware vixlib download url>

 $  tar xfz VMware-vix-disklib-8.0.2-22388865.x86_64.tar.gz
 $ 
 $  export VIXDISKLIB_INCLUDE_DIRS=$PWD/vmware-vix-disklib-distrib/include/
 $  export VIXDISKLIB_LIBRARIES=$PWD/vmware-vix-disklib-distrib/lib64
 $  export DEB_BUILD_OPTIONS=nocheck
 $ 
 $  git clone https://github.com/bareos/bareos.git
 
$  cd bareos
 $  git switch -c origin/23.99
 $  devtools/prepare_release.sh 23.99.0
 $  debuild -b -us -uc -eVIXDISKLIB_INCLUDE_DIRS -eVIXDISKLIB_LIBRARIES

  You have to register/login to broadcom and download the package from there.

However, the new package behaves identically to the old one (23.0.4~pre56.5de4c8180-98) so I'm no better off :(

Any ideas?


Ruth


-- 
Software Manager & Engineer
Tel: 01223 414180
Blog: http://www.ivimey.org/blog
LinkedIn: http://uk.linkedin.com/in/ruthivimeycook/

Andreas Rogge

unread,
Jun 27, 2024, 12:22:50 PM6/27/24
to bareos...@googlegroups.com
the file that is parsed before the one the error is displayed for is
missing a closing brace.
You can run "sudo -u bareos bareos-dir -t -d 100" which will print
debugging output including the files the parser opens to figure out
which file is bad.

--
Andreas Rogge andrea...@bareos.com
Bareos GmbH & Co. KG Phone: +49 221-630693-86
http://www.bareos.com

Sitz der Gesellschaft: Köln | Amtsgericht Köln: HRA 29646
Komplementär: Bareos Verwaltungs-GmbH
Geschäftsführer: Stephan Dühr, Jörg Steffens, Philipp Storz
OpenPGP_signature.asc

Philipp Storz

unread,
Jul 2, 2024, 2:26:19 PM7/2/24
to bareos...@googlegroups.com
Hello Ruth,

the problem is in this line:

> bareos-dir (1000): lib/lex.cc:355-0 fget line=15     File = /var/lib/mysql/MetaGogs.sql"

You have a trailing double quote but no double quote at the beginning of the Value for File.

The config line should be like this:

File = "/var/lib/mysql/MetaGogs.sql"
-------^


Best regards,

Philipp
--
Mit freundlichen Grüßen

Philipp Storz philip...@bareos.com
Bareos GmbH & Co. KG Phone: +49 221 63 06 93-92
http://www.bareos.com

Sitz der Gesellschaft: Köln | Amtsgericht Köln: HRA 29646
Reply all
Reply to author
Forward
0 new messages