feat: add share_key for Samba password, sync smbpasswd on startup
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
11
bin/clawd.js
11
bin/clawd.js
@@ -7,6 +7,7 @@ require('../lib/systemd-env');
|
||||
const path = require('path');
|
||||
const { exec } = require('child_process');
|
||||
const { ClawClient } = require('../lib/client');
|
||||
const config = require('../lib/config');
|
||||
const log = require('../lib/logger');
|
||||
const { pollSms } = require('../drivers/sim/sms-reader');
|
||||
|
||||
@@ -17,6 +18,16 @@ exec(`bash "${bindScript}"`, (err, stdout, stderr) => {
|
||||
else log.info('clawd', `bind-quectel-serial: ok`);
|
||||
});
|
||||
|
||||
// 同步 Samba 共享密码(idempotent,失败不影响主流程)
|
||||
const cfg = config.load();
|
||||
if (cfg.share_key) {
|
||||
const shareKey = cfg.share_key.replace(/'/g, "'\\''");
|
||||
exec(`printf '%s\\n%s\\n' '${shareKey}' '${shareKey}' | smbpasswd -a sts -s 2>/dev/null`, (err) => {
|
||||
if (err) log.warn('clawd', `smbpasswd sync failed (samba not installed?): ${err.message}`);
|
||||
else log.info('clawd', 'smbpasswd synced for user sts');
|
||||
});
|
||||
}
|
||||
|
||||
let smsTimer = null;
|
||||
let smsPolling = false;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user