Добавление документации на русском языке, добавление системных директорий для конфигураций по умолчанию
All checks were successful
Build / Build project (push) Successful in 52s

This commit is contained in:
Alexander Zhirov 2025-05-08 02:36:34 +03:00
parent 7b0903d294
commit 40c3a0c815
Signed by: alexander
GPG key ID: C8D8BE544A27C511
13 changed files with 1164 additions and 4 deletions

View file

@ -0,0 +1,63 @@
diff --git a/usr/initiator.h b/usr/initiator.h
index 97918cb..55bb630 100644
--- a/usr/initiator.h
+++ b/usr/initiator.h
@@ -35,11 +35,13 @@
#include "log.h"
#ifndef ISCSI_CONFIG_ROOT
-#define ISCSI_CONFIG_ROOT "/etc/iscsi/"
+#define ISCSI_CONFIG_ROOT "/etc/iscsi"
#endif
#define CONFIG_FILE ISCSI_CONFIG_ROOT"/iscsid.conf"
+#define CONFIG_FILE_STATELESS "/usr/share/defaults"CONFIG_FILE
#define INITIATOR_NAME_FILE ISCSI_CONFIG_ROOT"/initiatorname.iscsi"
+#define INITIATOR_NAME_FILE_STATELESS "/usr/share/defaults"INITIATOR_NAME_FILE
#define PID_FILE "/run/iscsid.pid"
diff --git a/usr/iscsid.c b/usr/iscsid.c
index c72ed5d..08f4f3b 100644
--- a/usr/iscsid.c
+++ b/usr/iscsid.c
@@ -390,6 +390,12 @@ int main(int argc, char *argv[])
bool pid_file_specified = false;
bool no_pid_file_specified = false;
+ if (access(config_file, R_OK) != 0)
+ config_file = CONFIG_FILE_STATELESS;
+
+ if (access(initiatorname_file, R_OK) != 0)
+ initiatorname_file = INITIATOR_NAME_FILE_STATELESS;
+
while ((ch = getopt_long(argc, argv, "c:i:fd:nu:g:p:vh", long_options,
&longindex)) >= 0) {
switch (ch) {
@@ -552,6 +558,9 @@ int main(int argc, char *argv[])
exit(ISCSI_ERR);
}
+ log_info("iSCSI configuration file: %s", config_file);
+ log_info("iSCSI initiator file: %s", initiatorname_file);
+
memset(&daemon_config, 0, sizeof (daemon_config));
daemon_config.pid_file = pid_file;
daemon_config.config_file = config_file;
diff --git a/usr/iscsistart.c b/usr/iscsistart.c
index df92d24..c6188aa 100644
--- a/usr/iscsistart.c
+++ b/usr/iscsistart.c
@@ -373,7 +373,11 @@ int main(int argc, char *argv[])
int control_fd, mgmt_ipc_fd, err;
pid_t pid;
- strcpy(config_file, CONFIG_FILE);
+ const char *config_file_stateless = CONFIG_FILE;
+ if (access(config_file_stateless, R_OK) != 0)
+ config_file_stateless = CONFIG_FILE_STATELESS;
+
+ strcpy(config_file, config_file_stateless);
idbm_node_setup_defaults(&config_rec);
config_rec.name[0] = '\0';
config_rec.conn[0].address[0] = '\0';