bacularis / bacularis-app Goto Github PK
View Code? Open in Web Editor NEWBacularis - The Bacula web interface - project skeleton used as a base for rest Bacularis layers
License: Other
Bacularis - The Bacula web interface - project skeleton used as a base for rest Bacularis layers
License: Other
Bacula15 has new amazon/s3 compatible storage driver, but bacularis has not support them, only s3 old driver based on libs3.
Please add support for Amazon driver based on aws cli tool.
There should be only one change
Driver = "Amazon"
like
Driver = "S3"
at the bacula-sd.conf Cloud definition.
Hello,
We've been using Bacularis for a few months now and really like it! In the last couple of days, I noticed my dashboard is failing to load completely. Reviewing the debug console, it appears to be an issue in graph.js. The iso_date_to_timestamp function is receiving a null and thus the function fails on its first line at iso_date.split:
var iso_date_to_timestamp = function(iso_date) { var date_split = iso_date.split(' '); var date = date_split[0].split('-'); if (date_split[1]) { var time = date_split[1].split(':'); var date_obj = new Date(date[0], (date[1] - 1), date[2], time[0], time[1], time[2]); } else { var date_obj = new Date(date[0], (date[1] - 1), date[2], 0, 0, 0); } return date_obj.getTime(); }
After looking over the script it appears that the change function called on the 'date from' must be receiving a null target.value. I assume it maybe has something to do with the change of the year to 2023 as it worked just a few days ago.
For reference, we are running Bacula 9.6.7 on Ubuntu 22.04 LTS with the current latest version of Bacularis 1.3.0 available in your Ubuntu 22 (Jammy) repo. My user agent is Chrome version 108.0.5359.125 (Official Build) (64-bit).
You all have done a great job on Bacularis! We're really happy with it and have used just about all of its abilities with zero issues prior to this!
Hello Marcin,
First of all, thank you for your work.
I use bacularis app version 2.5.1 as a docker container. I have discovered a CSS error in one place like in the picture:
After login go to: Jobs => Choose any job - Column Action - Button Details click => Button Run job => Button Estimate job => Row output
Best regards
Johann
I try to use this schedule
Schedule {
Name = "daily 15 min"
Run = Level="Incremental" hourly
Run = Level="Incremental" hourly at 0:15
Run = Level="Incremental" hourly at 0:30
Run = Level="Incremental" hourly at 0:45
}
and it work and show right shedule in "status director", but wrong in web interface. Show every day at 00:00, 00:15, 00:30, 00:45 and no other.
I use debian bookwork and bacula 9.6.7, bacularis 3.0.1.
Hello Everybody,
Please add the SyncOnClose
directive support to the Device
resource configuration.
This problem has been reported by Jose Alberto on the Bacula-Users mailing list:
https://sourceforge.net/p/bacula/mailman/message/58774171/
Best regards,
Marcin Haba (gani)
Hi Marcin,
I'm afraid it's me again, and I bet this problem has a similar root cause (incorrect database structure) as issue 7 had.
The issue is that the job files table is always empty, but it is not caused by the reason described here.
Instead, the debug log says "Column not found: 1054 Unknown column 'File.Filename' in 'field list'":
2023-09-05 13:42:13 [Application] BaculumAPIClient.php:189: API REQUEST ==> https://localhost:9097/api/v2/jobs/6734/files/?offset=0&limit=100&type=saved+items&details=1&director=orion-dir
2023-09-05 13:42:13 [Application] BaculumAPIClient.php:459: <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>PDOException</title>
<style type="text/css">
/*<![CDATA[*/
body {font-family:"Verdana";font-weight:normal;color:black;background-color:white;}
h1 { font-family:"Verdana";font-weight:normal;font-size:18pt;color:red }
h2 { font-family:"Verdana";font-weight:normal;font-size:14pt;color:maroon }
h3 {font-family:"Verdana";font-weight:bold;font-size:11pt}
p {font-family:"Verdana";font-weight:normal;color:black;font-size:9pt;margin-top: -5px}
a {font-family:"Verdana";color:red;}
code,pre {font-family:"Lucida Console";font-size:10pt;}
td,.version {color: gray;font-size:8pt;border-top:1px solid #aaaaaa;}
.source {font-family:"Lucida Console";font-weight:normal;background-color:#ffffee;}
.error {background-color: #ffeeee;}/*]]>*/
</style>
</head>
<body>
<h1>PDOException</h1>
<h3>Description</h3>
<p style="color:maroon">SQLSTATE[42S22]: Column not found: 1054 Unknown column 'File.Filename' in 'field list'</p>
<h3>Source File</h3>
<p>/usr/share/bacularis/protected/vendor/bacularis/bacularis-api/API/Modules/Database.php (252)</p>
<div class="source">
<code><pre>
0241: $connection = JobRecord::finder()->getDbConnection();
0242: $pdo = $connection->getPdoInstance();
0243: if (count($params) > 0) {
0244: $statement = $pdo->prepare($sql);
0245: foreach ($params as $param => $value) {
0246: $key = $param[0] === ':' ? $param : ':' . $param;
0247: $type = TDbCommandBuilder::getPdoType($value);
0248: $statement->bindValue($key, $value, $type);
0249: }
0250: $statement->execute();
0251: } else {
<div class="error">0252: $statement = $pdo->query($sql);
</div>0253: }
0254: return $statement->fetchAll($fetch_opts);
0255: }
0256: }
</pre></code>
</div>
<h3>Stack Trace</h3>
<div class="source">
<code><pre>
#0 /usr/share/bacularis/protected/vendor/bacularis/bacularis-api/API/Modules/Database.php(252): PDO->query()
#1 /usr/share/bacularis/protected/vendor/bacularis/bacularis-api/API/Modules/JobManager.php(536): Bacularis\API\Modules\Database::findAllBySql()
#2 /usr/share/bacularis/protected/vendor/bacularis/bacularis-api/API/Pages/API/JobListFiles.php(133): Bacularis\API\Modules\JobManager->getJobFiles()
#3 /usr/share/bacularis/protected/vendor/bacularis/bacularis-api/API/Pages/API/JobListFiles.php(68): JobListFiles->getDetailedOutput()
#4 /usr/share/bacularis/protected/vendor/bacularis/bacularis-api/API/Modules/APIServerV2.php(49): JobListFiles->get()
#5 /usr/share/bacularis/protected/vendor/bacularis/bacularis-api/API/Modules/BaculumAPIServer.php(218): Bacularis\API\Modules\APIServerV2->get()
#6 /usr/share/bacularis/protected/vendor/bacularis/bacularis-api/API/Modules/BaculumAPIServer.php(201): Bacularis\API\Modules\BaculumAPIServer->runResource()
#7 ${PradoFramework}/Web/UI/TControl.php(1359): Bacularis\API\Modules\BaculumAPIServer->onInit()
#8 ${PradoFramework}/Web/UI/TCompositeControl.php(32): Prado\Web\UI\TControl->initRecursive()
#9 ${PradoFramework}/Web/UI/TTemplateControl.php(251): Prado\Web\UI\TCompositeControl->initRecursive()
#10 ${PradoFramework}/Web/UI/TPage.php(233): Prado\Web\UI\TTemplateControl->initRecursive()
#11 ${PradoFramework}/Web/UI/TPage.php(221): Prado\Web\UI\TPage->processNormalRequest()
#12 ${PradoFramework}/Web/Services/TPageService.php(547): Prado\Web\UI\TPage->run()
#13 ${PradoFramework}/Web/Services/TPageService.php(465): Prado\Web\Services\TPageService->runPage()
#14 ${PradoFramework}/TApplication.php(1262): Prado\Web\Services\TPageService->run()
#15 ${PradoFramework}/TApplication.php(386): Prado\TApplication->runService()
#16 ${DocumentRoot}/index.php(43): Prado\TApplication->run()
#17 {main}
</pre></code>
</div>
<div class="version">
2023-09-05 13:42 Apache/2.4.56 (Debian) <a href="https://github.com/pradosoft/prado">PRADO</a>/4.2.2
</div>
</body>
</html>
I've to look at the source code of some of the files mentioned in the stack trace, but I couldn't really find which database table column it is missing or what else might cause this issue.
I look forward to your help :-)
Thanks
Niels
Hi, when I am trying to open a list of jobs by clicking on the "Jobs" item in the left panel (URL: /web/job/), I am getting the following error page:
Error
Description
Class 'ResourceBundle' not foundSource File
${PradoFramework}/I18N/core/CultureInfo.php (219)0208: * @param string $culture the culture identifier.
0209: * @param mixed $key
0210: /
0211: protected function loadCultureData($key)
0212: {
0213: foreach (self::$bundleNames as $bundleKey => $bundleName) {
0214: if ($key == $bundleKey) {
0215: if (!array_key_exists($this->culture, self::$data)) {
0216: self::$data[$this->culture] = [];
0217: }
0218:
0219: self::$data[$this->culture][$bundleKey] = \ResourceBundle::create($this->culture, $bundleName, true);
0220: break;
0221: }
0222: }
0223: }
0224:
0225: /*
0226: * Find the specific ICU data information from the data.
0227: * The path to the specific ICU data is separated with a slash "/".
0228: * E.g. To find the default calendar used by the culture, the path
0229: * "calendar/default" will return the corresponding default calendar.
0230: * @param string $path the data you want to find.
0231: * @param string $key bundle name.Stack Trace
#0 ${PradoFramework}/I18N/core/CultureInfo.php(248): Prado\I18N\core\CultureInfo->loadCultureData('Core')
#1 ${PradoFramework}/Web/UI/WebControls/TDatePicker.php(579): Prado\I18N\core\CultureInfo->findInfo('calendar/gregor...')
#2 ${PradoFramework}/Web/UI/WebControls/TDatePicker.php(558): Prado\Web\UI\WebControls\TDatePicker->getCulturalOptions()
#3 ${PradoFramework}/Web/UI/WebControls/TDatePicker.php(908): Prado\Web\UI\WebControls\TDatePicker->getDatePickerOptions()
#4 ${PradoFramework}/Web/UI/WebControls/TTextBox.php(217): Prado\Web\UI\WebControls\TDatePicker->renderClientControlScript(Object(Prado\Web\UI\THtmlWriter))
#5 ${PradoFramework}/Web/UI/WebControls/TDatePicker.php(883): Prado\Web\UI\WebControls\TTextBox->addAttributesToRender(Object(Prado\Web\UI\THtmlWriter))
#6 ${PradoFramework}/Web/UI/WebControls/TWebControl.php(488): Prado\Web\UI\WebControls\TDatePicker->addAttributesToRender(Object(Prado\Web\UI\THtmlWriter))
#7 ${PradoFramework}/Web/UI/WebControls/TTextBox.php(362): Prado\Web\UI\WebControls\TWebControl->renderBeginTag(Object(Prado\Web\UI\THtmlWriter))
#8 ${PradoFramework}/Web/UI/WebControls/TWebControl.php(471): Prado\Web\UI\WebControls\TTextBox->renderBeginTag(Object(Prado\Web\UI\THtmlWriter))
#9 ${PradoFramework}/Web/UI/WebControls/TDatePicker.php(430): Prado\Web\UI\WebControls\TWebControl->render(Object(Prado\Web\UI\THtmlWriter))
#10 ${PradoFramework}/Web/UI/TControl.php(1580): Prado\Web\UI\WebControls\TDatePicker->render(Object(Prado\Web\UI\THtmlWriter))
#11 ${PradoFramework}/Web/UI/TControl.php(1610): Prado\Web\UI\TControl->renderControl(Object(Prado\Web\UI\THtmlWriter))
#12 ${PradoFramework}/Web/UI/TControl.php(1594): Prado\Web\UI\TControl->renderChildren(Object(Prado\Web\UI\THtmlWriter))
#13 ${PradoFramework}/Web/UI/TControl.php(1580): Prado\Web\UI\TControl->render(Object(Prado\Web\UI\THtmlWriter))
#14 ${PradoFramework}/Web/UI/TControl.php(1610): Prado\Web\UI\TControl->renderControl(Object(Prado\Web\UI\THtmlWriter))
#15 ${PradoFramework}/Web/UI/TForm.php(89): Prado\Web\UI\TControl->renderChildren(Object(Prado\Web\UI\THtmlWriter))
#16 ${PradoFramework}/Web/UI/TControl.php(1580): Prado\Web\UI\TForm->render(Object(Prado\Web\UI\THtmlWriter))
#17 ${PradoFramework}/Web/UI/TControl.php(1610): Prado\Web\UI\TControl->renderControl(Object(Prado\Web\UI\THtmlWriter))
#18 ${PradoFramework}/Web/UI/TControl.php(1594): Prado\Web\UI\TControl->renderChildren(Object(Prado\Web\UI\THtmlWriter))
#19 ${PradoFramework}/Web/UI/TControl.php(1580): Prado\Web\UI\TControl->render(Object(Prado\Web\UI\THtmlWriter))
#20 ${PradoFramework}/Web/UI/TControl.php(1610): Prado\Web\UI\TControl->renderControl(Object(Prado\Web\UI\THtmlWriter))
#21 ${PradoFramework}/Web/UI/TControl.php(1594): Prado\Web\UI\TControl->renderChildren(Object(Prado\Web\UI\THtmlWriter))
#22 ${PradoFramework}/Web/UI/TControl.php(1580): Prado\Web\UI\TControl->render(Object(Prado\Web\UI\THtmlWriter))
#23 ${PradoFramework}/Web/UI/TPage.php(244): Prado\Web\UI\TControl->renderControl(Object(Prado\Web\UI\THtmlWriter))
#24 ${PradoFramework}/Web/UI/TPage.php(209): Prado\Web\UI\TPage->processNormalRequest(Object(Prado\Web\UI\THtmlWriter))
#25 ${PradoFramework}/Web/Services/TPageService.php(527): Prado\Web\UI\TPage->run(Object(Prado\Web\UI\THtmlWriter))
#26 ${PradoFramework}/Web/Services/TPageService.php(464): Prado\Web\Services\TPageService->runPage(Object(JobList), Array)
#27 ${PradoFramework}/TApplication.php(1189): Prado\Web\Services\TPageService->run()
#28 ${PradoFramework}/TApplication.php(381): Prado\TApplication->runService()
#29 ${DocumentRoot}/index.php(43): Prado\TApplication->run()
#30 {main}
I am using bacularis 1.6.0 on Debian 10 (installed from a deb package).
Steps to reproduce:
Klick "Add Fileset"
Select existing fFileset in "Copy configuration from"
Make changes (name etc)and click save
The copied fileset now has the changes, the new one doesn#t exist
Running Version 1.0.2
We would like to use our LDAP service with Bacularis but it only supports connections using STARTTLS while Bacularis only offers LDAPS. From what I know STARTTLS is the current standard and the current php-ldap should also support it so it would be great to see Bacularis support for LDAP with STARTTLS added.
Hi,
My installation was updated to 1.6.0 this morning and since then, I get two modal message boxes each time I enter the Dashboard or the Jobs view.
Dashboard:
DataTables warning: table id=last_jobs_list - Requested unknown parameter 'filetable' for row 0, column 29. For more information about this error, please see http://datatables.net/tn/4
Jobs:
DataTables warning: table id=job_list - Requested unknown parameter 'filetable' for row 0, column 30. For more information about this error, please see http://datatables.net/tn/4
The column "File Table" appears to be a hidden column, when I select it, the column is empty (as the warnings suggest).
I have a volume that is in status Full, but has never been written to; it is on an external hard drive that ran out of space because of other volumes on the same drive.
In bconsole, the Last Written value shown is "0000-00-00 00:00:00", which in bacularis is shown as "-68118-04-26 23:58:45" (yes, a negative value!). Accordingly, the When Expire is shown in bacularis as "-66122-04-02 23:58:45".
I have installed and configured Bacula and Bacularis successfully, and everything seems to work properly.
However, there are errors when I try to deploy the client to Ubuntu or Debian (I haven't tested other systems, I am using only these two for servers).
After the Bacularis API host is successfully deployed (like in this video), I go to "Install Bacula components on API host" and try to install client (file daemon), and the following error appears in the "Raw output" tab (both server and client use Debian 12):
sudo /usr/bin/apt -y install bacula-fd 2>&1,,WARNING: apt does not have a stable CLI interface. Use with caution in scripts.,,Reading package lists...,Building dependency tree...,Reading state information...,The following additional packages will be installed:, bacula-common,Suggested packages:, gdb,The following NEW packages will be installed:, bacula-common bacula-fd,0 upgraded, 2 newly installed, 0 to remove and 26 not upgraded.,Need to get 935 kB of archives.,After this operation, 2562 kB of additional disk space will be used.,Get:1 http://deb.debian.org/debian bookworm/main amd64 bacula-common amd64 9.6.7-7 [816 kB],Get:2 http://deb.debian.org/debian bookworm/main amd64 bacula-fd amd64 9.6.7-7 [119 kB],debconf: unable to initialize frontend: Dialog,debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.),debconf: falling back to frontend: Readline,debconf: unable to initialize frontend: Readline,debconf: (This frontend requires a controlling tty.),debconf: falling back to frontend: Teletype,dpkg-preconfigure: unable to re-open stdin:,Fetched 935 kB in 0s (56.8 MB/s),Selecting previously unselected package bacula-common.,(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 52076 files and directories currently installed.),Preparing to unpack .../bacula-common_9.6.7-7_amd64.deb ...,Unpacking bacula-common (9.6.7-7) ...,Selecting previously unselected package bacula-fd.,Preparing to unpack .../bacula-fd_9.6.7-7_amd64.deb ...,Unpacking bacula-fd (9.6.7-7) ...,Setting up bacula-common (9.6.7-7) ...,debconf: unable to initialize frontend: Dialog,debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.),debconf: falling back to frontend: Readline,debconf: unable to initialize frontend: Readline,debconf: (This frontend requires a controlling tty.),debconf: falling back to frontend: Teletype,Setting up bacula-fd (9.6.7-7) ...,debconf: unable to initialize frontend: Dialog,debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.),debconf: falling back to frontend: Readline,debconf: unable to initialize frontend: Readline,debconf: (This frontend requires a controlling tty.),debconf: falling back to frontend: Teletype,,Creating config file /etc/default/bacula-fd with new version,debconf: unable to initialize frontend: Dialog,debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.),debconf: falling back to frontend: Readline,debconf: unable to initialize frontend: Readline,debconf: (This frontend requires a controlling tty.),debconf: falling back to frontend: Teletype,,Creating config file /etc/bacula/bacula-fd.conf with new version,Created symlink /etc/systemd/system/multi-user.target.wants/bacula-fd.service โ /lib/systemd/system/bacula-fd.service.,Processing triggers for man-db (2.11.2-2) ...,sudo /usr/share/bacularis/protected/tools/set_bacula_perm.sh /etc/bacula www-data 2>&1,Internal error. [Warning] file_put_contents(/opt/bacula/etc/bacula-dir.conf): Failed to open stream: Permission denied (@line 64 in file /opt/bacularis-app/protected/vendor/bacularis/bacularis-common/Common/Modules/ConfigBacula.php).
There was also a second attempt to deploy the client on yet another Debian 12 instance and on Ubuntu 22.04, with similar (but not the same) output. These logs are attached as files.
On Ubuntu, there was a slightly different error which was not present when try to deploy to Debian, and that was the following part of the log:
Processing triggers for systemd (245.4-4ubuntu3.22) ...,sudo /usr/share/bacularis/protected/tools/set_bacula_perm.sh /etc/bacula www-data 2>&1,Config validation error.Array
(
[output] => JSON tool returned wrong exitcode.
Output:sudo: /usr/sbin/bfdjson: command not found
[exitcode] => 82
)
Here are the additional logs of another two attempts:
Bacularis-error2-debian-12.txt
Bacularis-error3-ubuntu-20.04.txt
@ganiuszka Do you have some idea what might be causing the problem?
Hi,
I've just noticed the new Network test feature in the release notes - what a cool feature! However, I've tried it and on my system it doesn't seem to work properly.
The test is triggered, is being performed by Bacula (that is visible in Raw output) but the Bacularis UI doesn't seem to notice that the test is finished. The throbbers (the spilling circles) under the arrows continue to spin and no values are shown (for Packets, Duration, RTT etc.).
Bacula version: 9.6.7
Screenshot:
I've installed bacularis today, configured ldap sucessfully and I can login with my active directory login through web browser on pc.
The issue I'm facing is that I was trying bacularis on mobile web and I can't login with the same user.
I've noticed on apache2 access log this line below.
localhost:80 192.168.20.56 - - [19/Feb/2024:15:03:27 -0300] "GET /panel/config HTTP/1.1" 401 262 "-" "Mozilla/5.0 (iPhone; CPU iPhone OS 17_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/121.0.6167.171 Mobile/15E148 Safari/604.1"
Hi. I'm runing bacula and bacularis on a debian bullseye and date fields are right in 1.0.12. The date.timezone in php.ini files are:
7.4/cli/php.ini:date.timezone = America/Sao_Paulo
7.4/fpm/php.ini:date.timezone = America/Sao_Paulo
7.4/apache2/php.ini:date.timezone = America/Sao_Paulo
After upgrade do bacularis 1.1.0, the date fields are in UTC timezone. I tried to set the /etc/php7.4/fpm/pool.d/www.conf adding to the end fo file "php_admin_value[date.timezone] = America/Sao_Paulo" and restarted php7.4-fpm and apache2, but the date fields are wrong.
Am I missing something?
After running in the Bacularis App project directory the update command:
composer update
existing Bacularis configuration files are lost.
Problem touches Bacularis installed by composer. Instances installed using binary packages are not touched by this problem.
To preserve configuration before updating there is needed to backup the following directories:
protected/vendor/bacularis/bacularis-api/API/Config
protected/vendor/bacularis/bacularis-web/Web/Config
If needed, log directories can be backed up as well:
protected/vendor/bacularis/bacularis-api/API/Logs
protected/vendor/bacularis/bacularis-web/Web/Logs
After updating, files can be restored to the original locations.
Hello Everybody,
The dedicated bconsole config file is not created on creating/updating Basic user account and OAuth2 account.
This problem is in Bacularis API and causes that on Bacularis Web on the Security
page in tabs: API basic users
and API OAuth2 clients
the Create dedicated Bconsole config file
does not cause creating Bconsole config file.
This bug has been introduced in Bacularis 3.2.0
.
Best regards,
Marcin Haba (gani)
This issue should cover a few possible problems related to the deployment process.
Since they are closely interconnected, I will put them in one single issue.
The description will be quite a long, but I didn't manage to shorten it, and I think it is better to be more detailed, especially given that the main issue it really strange.
The main problem is that Bacularis is unable to create additional repository lists on a remote machine, despite the fact that it can access the remote machine.
The Bacularis version is latest 3.0.1
and both server and client are using Debian 12 Bookworm. The OS profile was created with appropriate Bookworm repository links and paths were corrected for deploy from bacula.org, along with package names.
These are the steps I used to reproduce the issue:
ssh-keygen
utilityDeployment
> SSH keys
> Add new SSH key
option/etc/bacularis/Web/
directoryDeployment
> SSH configs
> Add new SSH config
option, select the key previously created, username of remote user with sudo privileges and remote hostDeploy API host
option and select authentication method Use username and SSH key from SSH config for host
, after entering necessary details about username, hostname, password, and check Use sudo
boxAfter those steps, Bacularis shows that the first four steps are complete, although, they are not:
After logging in to the client machine, there are no additional repository files inside /etc/apt/sources.list.d/
where they should be, but surprisingly, the /tmp/bacularis-deploy/
folder is created, along with two files:
bacularis-api
with 2.7K bytes of text. It seems that these are some sudo settings for www-data
userbacularis.pub.gpg
with 1.3K byte GPG keyAt the step 4 from the image, the deployment obviously fail, because there are no repository files added on client machine.
Looking at the Bacularis log from Raw output
tab, everything seems to be normal (full log is in the attachment).
Along with the main issue described, there are three additional things that might need to be fixed or modified:
Use username and password
auth method is selected, the ssh.conf
file is still provided to the SSH command that Bacularis execute, which is probably not what user want, along with the Use username and SSH key from SSH config for host
option that should be the only one to add ssh.conf
to the command.www-data
user and group, and if the user, for an example, try to use that private key to be executed by some bash script defined inside RunScript
block, the Job
will fail, because it is executed as Bacula
user, which is not able to access that file. For some users, adding bacula
user to www-data
group might solve the issue, but for me, the Jobs I configured in this manner would not work, until the permissions on file (the private key) were set to be www-data
user and bacula
group. Just to be clear, I am not saying that there is a problem here, because this might be very specific to the server environment; I am, however, saying that this should be at least mentioned in the troubleshooting section in documentation, because there are probably many users that would simply try to use one key as "backup server key" and try to use it for everything, just to find out that with the default settings the key can not be used by the Bacularis and the Bacula Jobs the same time.To make sure the main issue is not buried in the already long description, I will point it out once again:
The main problem is that Bacularis obviously succeed in making connection and uploading two files to remote host with scp
, but fail to create the repository lists.
Furthermore, by inspecting the executed commands and the client machine, I found out the following:
The Bacularis create a file /tmp/bacularis-deploy/bacularis.pub.gpg
at client machine, but fail to move it to /usr/share/keyrings/bacularis-archive-keyring.gpg
. The same thing is with bacularis-api
.
I didn't manage to find out why simple mv
command fail, but the state of the files is as described.
Also, by looking at the log, there is not anything related to the repositories like with the archive keyring and the bacularis-api file.
At this point, I have no idea why deployment process it not executing the important step and why the scp
command succeed and simple mv
fail.
The workaround for the problem is manually adding keys and repositories and let the deployment process complete installing and configuring Bacularis API host and bacula file daemon, but it certainly is not intended to be done this way, and the errors encountered might be the sign of possible flaws in deployment process, so I am certain it would be beneficial for the project to have this mentioned.
As a small side note, I have replaced the real domain from the log in attachment with "redacted.domain" string to be as a placeholder, but on its place was actually the real FQDN, it was just replaced in the log file after downloading.
Hello Everybody,
In issue #46 @sitemapxml proposed to add a connection test button (or deploy step with connection test) to test connection to remote hosts before starting the deployment process.
This issue is to keep this idea in the separate feature request.
Best regards,
Marcin Haba (gani)
Hello,
I have lost the password to access bacularis app (not HTTP auth, I think on this login screen).
Although this seems as a basic question, I didn't manage to find an answer in the docs.
How can I reset the admin password?
Hello,
First of all, thank you for this
It would be great to be able to set an LDAP filter for user authentication, for example :
(&(objectClass=inetOrgPerson)(memberOf=cn=bacularis,cn=groups,cn=accounts,dc=domain,dc=en)(!(nsaccountlock=TRUE)))
Ideally, we could have several filters to assign different roles depending on the ldap group, for example
Thanks a lot!
Hello Everybody,
In Bacularis 3.2.0
the following wizards are not working correctly. In the last step they don't save job configuration and report Config does not exist
error:
Best regards,
Marcin Haba (gani)
Hello Marcin,
First of all, thank you for your work.
I use bacularis app version 2.2.0 as a docker container. When I activate the dark theme, I have a white background in one place like in the picture.
After login go to: Volumes => click on button "Quick edit"
Best regards
Johann
Hello Everybody,
In Bacularis 3.2.0
the set access button on the Security page does not work correctly. It does not save limitted job resource access.
Best regards,
Marcin Haba (gani)
Hi
After installing bacularis 2.6.0 the first visit to the website properly brings up authentication and after logging in,
the install wizard shows up but without any styling on the page.
After some testing adding a simple echo("@"); to the begining of index.php makes it load the actual styles and the installation
can be finished with all tests returning OK, however after logging in all the pages are empty or returning an invalid director
error.
Going to the API panel, none of the endpoints return anything, even though all the replies are 200 according to the log.
XXX.XXX.XXX.XXX - admin [12/Mar/2024:11:25:39 +0100] "GET /api/v2/jobs?limit=10 HTTP/1.1" 200 8154 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
At this point removing the echo from index.php, the API replies can be seen, but there are no styling on the page
at all. So at this point I think the empty pages are caused by the additional echo, so the missing styling is the actual issue.
`
XXX.XXX.XXX.XXX - admin [12/Mar/2024:11:30:20 +0100] "GET /panel/ HTTP/1.1" 200 15828 "http://REDACTED:9097/web/director//" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:20 +0100] "GET /assets/f2770455/baculum.css?ver=2.6.0 HTTP/1.1" 200 20095 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:20 +0100] "GET /assets/4502e5b/prado.js HTTP/1.1" 200 32175 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:20 +0100] "GET /assets/4502e5b/activecontrols/ajax3.js HTTP/1.1" 200 28032 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:20 +0100] "GET /assets/4502e5b/controls/controls.js HTTP/1.1" 200 13974 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:20 +0100] "GET /assets/4cd33fa/themes/base/jquery-ui.css HTTP/1.1" 200 35973 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:20 +0100] "GET /assets/4502e5b/activecontrols/activecontrols3.js HTTP/1.1" 200 10383 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:20 +0100] "GET /assets/d6a2e0af/dataTables.responsive.min.js?ver=2.6.0 HTTP/1.1" 200 14597 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:20 +0100] "GET /assets/bb4d50d7/dataTables.buttons.min.js?ver=2.6.0 HTTP/1.1" 200 25485 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:20 +0100] "GET /assets/bb4d50d7/buttons.html5.min.js?ver=2.6.0 HTTP/1.1" 200 25138 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:20 +0100] "GET /assets/bb4d50d7/buttons.colVis.min.js?ver=2.6.0 HTTP/1.1" 200 3267 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:20 +0100] "GET /assets/4227f0a9/dataTables.select.min.js?ver=2.6.0 HTTP/1.1" 200 14277 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:20 +0100] "GET /assets/552c6492/misc.js?ver=2.6.0 HTTP/1.1" 200 11401 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:20 +0100] "GET /assets/8a3c9400/jquery.dataTables.min.js?ver=2.6.0 HTTP/1.1" 200 87110 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:20 +0100] "GET /assets/aa252275/w3.css?ver=2.6.0 HTTP/1.1" 200 23427 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:20 +0100] "GET /assets/1ca2589a/jquery.dataTables.min.css?ver=2.6.0 HTTP/1.1" 200 13624 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:20 +0100] "GET /assets/d74d2b0e/responsive.dataTables.min.css?ver=2.6.0 HTTP/1.1" 200 4238 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:20 +0100] "GET /assets/567dafab/buttons.dataTables.min.css?ver=2.6.0 HTTP/1.1" 200 13204 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:20 +0100] "GET /themes/Baculum-v2/fonts/css/fontawesome-all.min.css?ver=2.6.0 HTTP/1.1" 200 102641 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:20 +0100] "GET /assets/26681442/avatar2.png HTTP/1.1" 200 8490 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:20 +0100] "GET /assets/26681442/logo.png HTTP/1.1" 200 3038 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:20 +0100] "GET /assets/cf3d3576/jquery.js HTTP/1.1" 200 292458 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:21 +0100] "GET /assets/4cd33fa/jquery-ui.js HTTP/1.1" 200 520714 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - - [12/Mar/2024:11:30:21 +0100] "GET /assets/26681442/favicon.ico HTTP/1.1" 200 4286 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
XXX.XXX.XXX.XXX - admin [12/Mar/2024:11:30:21 +0100] "POST /panel/ HTTP/1.1" 200 1862 "http://REDACTED:9097/panel/" "Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0"
`
The system is running nginx with the default included configuration of bacularis with php 8.2.
Hello Everybody,
Joachim Legrand reported me that Bacularis throws PHP error if in data view name is used apostrophe character. It causes breaking all pages with data views.
I confirmed this wrong behavior in my local environment too.
Best regards,
Marcin Haba (gani)
Hi, when i edit a job and flag "RunsOnClient" in the Runscript Section, in the bacula-dir.conf the corresponding entry is not written.
This is the slice of script written by Bacularis:
Runscript {
RunsOnSuccess = no
FailJobOnError = no
RunsWhen = "Before"
Command = "/usr/sbin/bkdbsingoli"
}
Obviously the script on client don't start and the backup is empty.
If I manually modify the bacula-dir.conf with the following entry the script start.
Runscript {
RunsOnClient = Yes
RunsWhen = "Before"
Command = "/usr/sbin/bkdbsingoli"
}
This is a little bug, but every modify done by web interface delete the "RunsOnClient" entry I made.
I Installed 1.6.0 version of Bacularis
Hello Marcin,
I'm afraid I have to reopen issue #5.
The version 1.4.0 was installed today, but the problem partially remains:
Could you please take another look at this issue?
Many thanks
Niels (nisori)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.