NEWS
ioBroker auf neuer Maschine aufgesetzt und Adapter Probleme
-
@gismoh sagte in ioBroker auf neuer Maschine aufgesetzt und Adapter Probleme:
Okay, hatte ich nach einer Anleitung aufgesetzt, dort wurde es mit "root" gemacht, sogar auch in weiteren.
Dann schmeiß die Anleitung weg, leg dir einen User an, falls noch keiner vorhanden ist und stolper mit dem durch das System.
-
@gismoh sagte in ioBroker auf neuer Maschine aufgesetzt und Adapter Probleme:
Dieser taucht dann auf, wenn ich mich mit etwas anderem anmelde?
?
Ich hab dir den Befehl doch oben geschrieben
https://forum.iobroker.net/post/1076264 -
@crunchip
ja, hatte ich ja auch gelesen, aber den Pfad gibt es ja bei mir (aktuell) nicht.Verzeichnis „/opt/iobroker/node_modules/node-gyp/gyp/pylib/gyp“ existiert nicht
So wie ich @Thomas-Braun verstanden habe liegt das daran, das ich mit root unterwegs bin. Versuche also gleich einen anderen user anzulegen, und dann komme ich wohl zur Datei
-
@crunchip sagte in ioBroker auf neuer Maschine aufgesetzt und Adapter Probleme:
sudo nano /opt/iobroker/node_modules/node-gyp/gyp/pylib/gyp/input.py
Bei mir kommt die direkt über nodejs/gyp:
echad@chet:~ $ locate input.py /usr/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/input.py
-
@gismoh sagte in ioBroker auf neuer Maschine aufgesetzt und Adapter Probleme:
So wie ich @Thomas-Braun verstanden habe liegt das daran, das ich mit root unterwegs bin.
Die Datei ist auch für einen anderen user nicht vorhanden. Aber grundsätzlich kapsert man nicht als root durch das System. Schon mal gar nicht, wenn man überhaupt keine Ahnung hat was man da wo warum überhaupt macht.
-
hmm, irgendwie bekomme ich njun mit dem anderen user diese Meldung:
idash@ioBrokersudo nano /opt/iobroker/node_modules/node-gyp/gyp/pylib/gyp/input.pyput.[sudo] Passwort für idash: Sorry, user idash is not allowed to execute '/usr/bin/nano /opt/iobroker/node_modules/node-gyp/gyp/pylib/gyp/input.py' as root on ioBrokerVM. idash@ioBrokerVM:~$
-
@gismoh sagte in ioBroker auf neuer Maschine aufgesetzt und Adapter Probleme:
hmm, irgendwie bekomme ich njun mit dem anderen user diese Meldung:
groups
sagt? Der ist mit Sicherheit nicht in der Gruppe 'sudo' drin.
Ist aber auch für diese Datei nicht erforderlich, da mit root-Rechten zu agieren.
-
idash@ioBrokerVM:~$ groups idash users
-
Siehste...
Als root:
usermod -a -G adm,dialout,sudo,plugdev,input,netdev,iobroker idash exit
Danach niemehr als root anmelden. Den 'idash' auch ab- und wieder anmelden.
-
@thomas-braun
merci, nun kommt wenn ich unter user "idash" eingebe:idash adm dialout sudo plugdev users input netdev iobroker
Hoffe es stimmt nun
-
-
Nun kommt aber immer noch bei :
sudo nano /opt/iobroker/node_modules/node-gyp/gyp/pylib/gyp/input.py
Verzeichnis „/opt/iobroker/node_modules/node-gyp/gyp/pylib/gyp“ existiert nicht
-
@thomas-braun said in ioBroker auf neuer Maschine aufgesetzt und Adapter Probleme:
whoami && sudo whoami
idash root
-
idash@ioBrokerVM:/opt/iobroker/node_modules$ ls abab is-potential-custom-element-name @abandonware is-primitive abbrev is-regex accepts is-shared-array-buffer acme-http-01-standalone is-stream acorn isstream acorn-globals is-string acorn-walk is-symbol after is-typed-array agent-base is-typedarray ajv is-weakref @alcalzone joi alcalzone-shared jose alexa-cookie2 jsbi alexa-remote2 jsbn ansi-colors jsdom ansi-regex jshashes ansi-styles json2iob anymatch jsonata @apollon json-bigint aproba json-buffer archiver jsonc-parser archiver-utils jsonfile are-we-there-yet json-schema array-buffer-byte-length json-schema-traverse arraybuffer.prototype.slice json-stringify-safe arraybuffer.slice jsonwebtoken array-flatten jsprim array.prototype.findindex js-sdsl asn1 jszip assert-plus jwa async jws asynckit keypairs async-limiter keyv autobind-decorator kuler available-typed-arrays layerr aws4 lazystream aws-crt le-acme-core aws-iot-device-sdk le-challenge-fs aws-iot-device-sdk-v2 @leichtgewicht @aws-sdk le-sni-auto aws-sign2 leven axios lie b4a loadavg-windows backo2 localforage backoff locate-path balanced-match lodash base-64 lodash.assign base64-arraybuffer lodash.defaults base64id lodash.difference base64-js lodash.flatten bcrypt-pbkdf lodash.includes bignumber.js lodash.isarguments binary-extensions lodash.isboolean bindings lodash.isinteger bl lodash.isnumber blob lodash.isplainobject bluebird lodash.isstring body-parser lodash.once boolbase lodash.union bottleneck logform brace-expansion loglevel braces long browser-request long-timeout buffer lowercase-keys buffer-crc32 lru-cache buffer-equal-constant-time lru_map buffer-from ltx bufferhelper luxon buffer-shims lzma busboy make-dir @buttercup @mapbox byte-length map-stream bytes md5 cacheable-lookup md5.js cacheable-request mdns-discovery call-bind media-typer callsite merge-descriptors camelcase merge-stream canvas meross-cloud capitalize methods caseless micromatch cert-info @microsoft chalk mime charenc mime-db cheerio mime-types cheerio-select mimic-fn chokidar mimic-response chownr minimatch ci-info minimist cli minipass cliff minizlib cliui mkdirp cluster-key-slot mkdirp-classic coap mock-require coap-packet module-not-found-error coffeescript moment color mqtt color-convert mqtt-connection color-name mqtt-packet @colors ms colors mute-stream colorspace nan color-string napi-build-utils color-support nearest-color combined-stream negotiator commist nested-property component-bind netmask component-emitter node-abi component-inherit node-addon-api compress-commons node-arp compressible node-ble compression node-domexception compress-json node.extend concat-map node-fetch concat-stream node-forge connect-flash node-gyp-build console-control-strings node-hue-api content-disposition node-inspect content-type node-machine-id cookie node-mndp cookie-parser node-persist cookie-signature node-rest-client core-util-is node-schedule crc-32 node-ssdp crc32-stream node-telegram-bot-api cron node-wol cron-parser node-xmpp-client cross-spawn node-xmpp-core crypt node-xmpp-tls-connect crypto nopt crypto-js normalize-path css-select normalize-url cssstyle @nornagon css-what npmlog cycle npm-run-path @dabh nth-check daemonize2 number-allocator daikin-controller-cloud nwsapi dashdash oauth-sign @datalust object-assign data-uri-to-buffer object.assign data-urls object-hash dbus-next object-inspect debug object-keys decache oidc-token-hash decamelize once decimal.js onedrive-api decompress-response one-time deep-clone onetime deep-extend on-finished defer-to-connect on-headers define-data-property openid-client define-properties options delayed-stream pako delegates parse5 denque parse5-htmlparser2-tree-adapter depd parseqs destroy parseuri detect-libc parseurl dgram passport dijkstrajs passport-local diskusage passport-strategy dns-packet path-exists dns-socket path-is-absolute domelementtype path-key domexception path-parse domhandler path-posix dom-serializer path-to-regexp domutils pause dropbox-v2-api pause-stream duplexer p-cancelable duplexify performance-now ecc-jsbn p-finally ecdsa-sig-formatter picocolors echarts picomatch eckles pidusage ecovacs-deebot ping ee-first pkginfo emoji-regex p-limit enabled p-locate encodeurl p-map encode-utf8 pngjs end-of-stream p-queue engine.io prebuild-install engine.io-client process engine.io-parser process-nextick-args enquirer promisify-child-process entities prompt es6-promise proxy-addr es-abstract proxy-from-env esbuild proxyquire escalade psl escape-html p-timeout escodegen p-try @esm2cjs pump esprima punycode es-set-tostringtag pushover-notifications es-shim-unscopables q es-to-primitive qbox estraverse qrcode esutils qr-image etag qs eventemitter3 querystring eventsource querystringify event-stream queue-tick execa quick-lru expand-template random-bytes express range-parser express-fileupload rasha express-session raw-body extend rc extsprintf read eyes readable-stream fast-deep-equal readdir-glob fast-fifo readdirp fast-json-stable-stringify readline fastseries readline-sync fast-xml-parser reconnect-core fecha redirect-https fetch-blob redis-commands file-stream-rotator redis-errors file-type redis-parser file-uri-to-path regexp.prototype.flags fill-keys reinterval fill-range remove-trailing-separator finalhandler request find-up request-promise fn.name request-promise-core follow-redirects request-promise-native for-each require-directory forever-agent require-main-filename form-data requires-port form-data-encoder resolve formdata-polyfill resolve-alpn forwarded respjs fresh responselike from retry fs-constants revalidator fs-extra rfdc fs-minipass rimraf fs.realpath @root ftp rrule function-bind rrweb-cssom function.prototype.name rsa-compat functions-have-names safe-array-concat futoin-hkdf safe-buffer gauge safer-buffer gaxios safe-regex-test gcp-metadata safe-replace get-caller-file safe-stable-stringify get-intrinsic sax getpass saxes get-ssl-certificate semaphore get-stream semver get-symbol-description send github-from-package @sentry glob @sentry-internal globalthis seq-logging globalyzer @serialport glob-parent serialport globrex serve-static glossy set-blocking @googleapis set-function-length googleapis-common set-function-name google-auth-library setimmediate gopd setprototypeof got set-value graceful-fs sharp @greenlock shebang-command greenlock shebang-regex greenlock-express shelly-iot greenlock-manager-fs side-channel greenlock-store-fs @sideway gtoken signal-exit @hapi simple-concat @harmonyhub simple-get harmonyhubws simple-oauth2 har-schema simple-swizzle har-validator simple-xmpp has-bigints @sindresorhus has-binary2 socket.io has-cors socket.io-adapter has-flag socket.io-client hash-base socket.io-parser hasown socksv5 has-property-descriptors sorted-array-functions has-proto source-map has-symbols source-map-support has-tostringtag split has-unicode split2 he sshpk help-me stack-trace hexy standard-as-callback homebridge-plugin-wrapper statuses hot-patcher stealthy-require html-encoding-sniffer stream-combiner htmlparser2 streamsearch http2-wrapper stream-shift http-cache-semantics streamx http-errors string-argv http-mitm-proxy string_decoder http-proxy string.prototype.trim http-proxy-agent string.prototype.trimend http-proxy-middleware string.prototype.trimstart http-proxy-response-rewrite string-width https strip-ansi http-signature strip-final-newline https-proxy-agent strip-json-comments @httptoolkit strnum hue-push-client suncalc2 human-signals supports-color iconv-lite supports-preserve-symlinks-flag ieee754 symbol-tree immediate systeminformation indexof @szmarczak inflight tar influx tar-fs @influxdata tar-stream inherits tcp-ping ini text-hex internal-slot through @iobroker through2 iobroker.admin tibber-api iobroker.alarm tiny-glob iobroker.alexa2 to-array iobroker.backitup toidentifier iobroker.daikin-cloud @tootallnate iobroker.daswetter to-regex-range iobroker.deconz tough-cookie iobroker.device-reminder tr46 iobroker.discovery treemap-js iobroker.ecovacs-deebot triple-beam iobroker.fb-checkpresence tslib iobroker.fiat tunnel-agent iobroker.flot tweetnacl iobroker.fullybrowser typedarray iobroker.go-e typed-array-buffer iobroker.ham typed-array-byte-length iobroker.harmony typed-array-byte-offset iobroker.hue typed-array-length iobroker.hue-extended type-is iobroker.icons-mfd-svg @types iobroker.influxdb typescript iobroker.info uid-safe iobroker.iot ultron iobroker.javascript unbox-primitive iobroker.js-controller undici-types iobroker-jsonexplorer uniqid iobroker.meross universalify iobroker.mihome-vacuum unix-dgram iobroker.mobile unpipe iobroker.openweathermap uri-js iobroker.pi-hole url-join iobroker.pushover url-parse iobroker.pvforecast url-template iobroker.radar2 ursa-optional iobroker.shelly usb iobroker.simple-api util-deprecate iobroker.smartcontrol utils-merge iobroker.socketio uuid iobroker.sonoff vary iobroker.tado verror iobroker.telegram virtual-tsc iobroker.tibberlink w3c-xmlserializer iobroker.type-detector wake_on_lan iobroker.vis-hqwidgets weak-daemon iobroker.vis-jqui-mfd webdav iobroker.vis-material-advanced webidl-conversions iobroker.vis-metro websocket-stream iobroker.vis-timeandweather web-streams-polyfill iobroker.weatherunderground whatwg-encoding iobroker.web whatwg-mimetype iobroker.worx whatwg-url iobroker.ws which iobroker.ws.server which-boxed-primitive ioredis which-module ip which-typed-array ipaddr.js wide-align ip-regex winston is winston-daily-rotate-file isarray winston-seq-updated is-array-buffer winston-syslog is-arrayish winston-transport is-bigint wrap-ansi is-binary-path wrappy is-boolean-object ws is-buffer xml2js is-callable xml2json-light is-core-module xmlbuilder is-date-object xmlchars is-empty-object @xmldom isexe xmlhttprequest-ssl is-extglob xml-name-validator is-fullwidth-code-point @xmpp is-glob xregexp is-ip xtend is-negative-zero y18n is-number yallist is-number-object yargs is-object yargs-parser isobject yeast isomorphic-ws zip-stream is-plain-obj zlib is-plain-object zrender idash@ioBrokerVM:/opt/iobroker/node_modules$
-
@gismoh sagte in ioBroker auf neuer Maschine aufgesetzt und Adapter Probleme:
sudo nano
Du sollst nicht ohne Not jetzt vor jeden Befehl sudo setzen. Das wird nur unter besonderen Umständen benötigt. Für Aktionen in /opt/iobroker werden keine root-Rechte benötigt (in einer gesunden Installation).
Das Verzeichnis gibt es auf meiner Machine auch nicht.
sudo nano /usr/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/input.py
funktioniert?
-
@thomas-braun
ja, dies funktioniert -
Dann schau da mal nach dem Eintrag, den crunchip oben genannt hat.
Ich vermute aber, der ist da so gar nicht mehr drin.
In meiner Version steht da nämlich:
if os.path.exists(build_file_path): build_file_contents = open(build_file_path, encoding='utf-8').read() else: raise GypError(f"{build_file_path} not found (cwd: {os.getcwd()})") build_file_data = None
-
@thomas-braun
kann man auch den inhalt der Datei in die Zwischenablage holen, um besser danach suchen zu können? -
@gismoh sagte in ioBroker auf neuer Maschine aufgesetzt und Adapter Probleme:
um besser danach suchen zu können?
Mit
Strg-W
sucht man in nano -
@thomas-braun
denke, das ist es?def LoadOneBuildFile(build_file_path, data, aux_data, includes, is_target, chec> if build_file_path in data: return data[build_file_path] if os.path.exists(build_file_path): build_file_contents = open(build_file_path, encoding='utf-8').read() else: raise GypError(f"{build_file_path} not found (cwd: {os.getcwd()})") build_file_data = None try: if check: build_file_data = CheckedEval(build_file_contents)