ubuntuusers.de

Berechtigung an Datei erlangen

Status: Gelöst | Ubuntu-Version: Ubuntu 18.04 (Bionic Beaver)
Antworten |

HP-Fan

Avatar von HP-Fan

Anmeldungsdatum:
2. September 2012

Beiträge: 394

Wohnort: Schweiz (CH)

Abend Forum

Ich möchte die Zugriffsrechte dieser Datei ändern:

1
2
3
4
5
6
7
8
xxx@xxx:/etc/cups$ getfacl /etc/cups/ppd/Photosmart-C4700.ppd
getfacl: Entferne führende '/' von absoluten Pfadnamen
# file: etc/cups/ppd/Photosmart-C4700.ppd
# owner: root
# group: lp
user::rw-
group::r--
other::---

Über den Ordner Dateien/etc/cups/Photosmart-C4700.ppd könnte ich im Karteikästchen (Rechtsklick/Eigenschaften) die Rechte einstellen. Allerdings heisst es: "Sie sind nicht der Besitzer, daher können sie die Zugriffsrechte nicht ändern".

Grund ist diese Warnung, die ich gerne abstellen wollte:

warning: Failed to read /etc/cups/ppd/Photosmart-C4700.ppd ppd file

  • Ich denke "user" müsste auf "rwx"

  • Und "group" auf "rw-"

gestellt werden.

Gruss HP-Fan

DJKUhpisse Team-Icon

Supporter, Wikiteam
Avatar von DJKUhpisse

Anmeldungsdatum:
18. Oktober 2016

Beiträge: 18227

Wohnort: in deinem Browser, hier auf dem Bildschirm

Dann müsstest du dich mit chown zum Besitzer machen. Ob das aber sinnvoll ist kann ich hier nicht burteilen. In etc halte ich es aber nicht für sinnvoll, einen Benutzer als Besitzer festzulegen, weil dort normalerweise keine benutzerspezifischen Daten abgelegt werden sollen.

HP-Fan

(Themenstarter)
Avatar von HP-Fan

Anmeldungsdatum:
2. September 2012

Beiträge: 394

Wohnort: Schweiz (CH)

Hi DJKUpisse 😉

Oder mal anders herum gefragt: Für was ist denn diese Photosmart-C4700.ppd-Datei gut? Das die für meinen Drucker ist, weiss ich. Aber von wem wird diese Datei aufgerufen, bzw. wem fehlen denn dann die Rechte zum Lesen? Ist das der "root", der die Datei will? Wie melde ich mich als "root" an?

Gruss HP-Fan

DJKUhpisse Team-Icon

Supporter, Wikiteam
Avatar von DJKUhpisse

Anmeldungsdatum:
18. Oktober 2016

Beiträge: 18227

Wohnort: in deinem Browser, hier auf dem Bildschirm

Unter Ubuntu ist das root-Konte deaktiviert und ohne Kennwort. Das kann man aktivieren und ihm ein Kennwort verpassen, dann kann man sich da anmelden. Das ist aber nicht empfohlen. In welchem Programm erscheint denn dieser Fehler? Wenn dieses auf eine solche Datei zugreife muss sollte man es mit

sudo -H Prgrammname

starten.

seahawk1986

Anmeldungsdatum:
27. Oktober 2006

Beiträge: 11265

Wohnort: München

HP-Fan schrieb:

Aber von wem wird diese Datei aufgerufen, bzw. wem fehlen denn dann die Rechte zum Lesen?

Im normalen Betrieb muss CUPS die Datei lesen können. Die Meldung kommt vermutlich von hp-check, das unter einem normalen Benutzer ausgeführt wird - da sollte es genügen other Leserechte einzuräumen:

1
sudo chmod 644 /etc/cups/ppd/Photosmart-C4700.ppd

HP-Fan

(Themenstarter)
Avatar von HP-Fan

Anmeldungsdatum:
2. September 2012

Beiträge: 394

Wohnort: Schweiz (CH)

Ich habe mit

1
hp-check -r

Mir eine grosse Liste ausgeben lassen. Dort wo Dateien vermisst waren, habe ich entsprechende nachinstalliert. Die Testausgabe der Druckereinstellungen ist nun - bis auf diese Warnung - in Ordnung.

Hier mal die Ausgabe der Prüfung:

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
xxx@xxx:/etc/cups$ hp-check -r
Saving output in log file: /etc/cups/hp-check.log

HP Linux Imaging and Printing System (ver. 3.19.8)
Dependency/Version Check Utility ver. 15.1

Copyright (c) 2001-18 HP Development Company, LP
This software comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to distribute it
under certain conditions. See COPYING file for more details.

Note: hp-check can be run in three modes:
1. Compile-time check mode (-c or --compile): Use this mode before compiling the HPLIP supplied tarball (.tar.gz or .run) to determine if the proper dependencies are installed to successfully compile
HPLIP.                                                                                                                                                                                                 
2. Run-time check mode (-r or --run): Use this mode to determine if a distro supplied package (.deb, .rpm, etc) or an already built HPLIP supplied tarball has the proper dependencies installed to    
successfully run.                                                                                                                                                                                      
3. Both compile- and run-time check mode (-b or --both) (Default): This mode will check both of the above cases (both compile- and run-time dependencies).                                             

Check types:                                                                                                                                                                                           
a. EXTERNALDEP - External Dependencies                                                                                                                                                                 
b. GENERALDEP - General Dependencies (required both at compile and run time)                                                                                                                           
c. COMPILEDEP - Compile time Dependencies                                                                                                                                                              
d. [All are run-time checks]                                                                                                                                                                           
PYEXT SCANCONF QUEUES PERMISSION                                                                                                                                                                       

Status Types:
    OK
    MISSING       - Missing Dependency or Permission or Plug-in
    INCOMPAT      - Incompatible dependency-version or Plugin-version

 
---------------
| SYSTEM INFO |
---------------

 Kernel: 5.0.0-27-generic #28~18.04.1-Ubuntu SMP Thu Aug 22 03:00:32 UTC 2019 GNU/Linux
 Host: xxx
 Proc: 5.0.0-27-generic #28~18.04.1-Ubuntu SMP Thu Aug 22 03:00:32 UTC 2019 GNU/Linux
 Distribution: 12 18.04
 Bitness: 64 bit


-----------------------
| HPLIP CONFIGURATION |
-----------------------

HPLIP-Version: HPLIP 3.19.8
HPLIP-Home: /usr/share/hplip
HPLIP-Installation: Auto installation is supported for ubuntu distro  18.04 version 

Current contents of '/etc/hp/hplip.conf' file:
# hplip.conf.  Generated from hplip.conf.in by configure.

[hplip]
version=3.19.8

[dirs]
home=/usr/share/hplip
run=/var/run
ppd=/usr/share/ppd/HP
ppdbase=/usr/share/ppd
doc=/usr/share/doc/hplip-3.19.8
html=/usr/share/doc/hplip-3.19.8
icon=/usr/share/applications
cupsbackend=/usr/lib/cups/backend
cupsfilter=/usr/lib/cups/filter
drv=/usr/share/cups/drv/hp
bin=/usr/bin
apparmor=/etc/apparmor.d
# Following values are determined at configure time and cannot be changed.
[configure]
network-build=yes
libusb01-build=no
pp-build=no
gui-build=yes
scanner-build=yes
fax-build=yes
dbus-build=yes
cups11-build=no
doc-build=yes
shadow-build=no
hpijs-install=no
foomatic-drv-install=no
foomatic-ppd-install=no
foomatic-rip-hplip-install=no
hpcups-install=yes
cups-drv-install=yes
cups-ppd-install=no
internal-tag=3.19.8
restricted-build=no
ui-toolkit=qt4
qt3=no
qt4=yes
qt5=no
policy-kit=no
lite-build=no
udev_sysfs_rules=no
hpcups-only-build=no
hpijs-only-build=no
apparmor_build=yes
class-driver=no


Current contents of '/var/lib/hp/hplip.state' file:
Plugins are not installed. Could not access file: Datei oder Verzeichnis nicht gefunden

Current contents of '~/.hplip/hplip.conf' file:
[upgrade]
notify_upgrade = true
last_upgraded_time = 1568051874
pending_upgrade_time = 0
latest_available_version = 3.17.10

[settings]
systray_visible = 2
systray_messages = 0

[last_used]
device_uri = "hp:/usb/Photosmart_C4700_series?serial=CN98IHY2CB05CN"
printer_name = Photosmart-C4700
working_dir = .

[commands]
scan = /usr/bin/xsane -V %SANE_URI%

[refresh]
rate = 30
enable = true
type = 1

[polling]
enable = false
interval = 5
device_list = 

[fax]
voice_phone = 
email_address = 

[installation]
date_time = 10.09.2019 20:51:52
version = 3.19.8


 <Package-name>        <Package-Desc>      <Required/Optional> <Min-Version> <Installed-Version> <Status>   <Comment>

--------------
| COMPILEDEP |
--------------

 gcc                  gcc - GNU Project C and C++ Compiler                         REQUIRED        -               7.4.0           OK         -
 make                 make - GNU make utility to maintain groups of programs       REQUIRED        3.0             4.1             OK         -
 libtool              libtool - Library building support services                  REQUIRED        -               2.4.6           OK         -

------------------------
| General Dependencies |
------------------------

 libcrypto            libcrypto - OpenSSL cryptographic library                    REQUIRED        -               1.1.1           OK         -
 python-xml           Python XML libraries                                         REQUIRED        -               2.2.5           OK         -
 libnetsnmp-devel     libnetsnmp-devel - SNMP networking library development files REQUIRED        5.0.9           5.7.3           OK         -
 sane-devel           SANE - Scanning library development files                    REQUIRED        -               -               OK         -
 pil                  PIL - Python Imaging Library (required for commandline scanning with hp-scan) OPTIONAL        -               1.1.7           OK         -
 pyqt4-dbus           PyQt 4 DBus - DBus Support for PyQt4                         REQUIRED        4.0             4.12.1          OK         -
 libpthread           libpthread - POSIX threads library                           REQUIRED        -               2.27            OK         -
 python-devel         Python devel - Python development files                      REQUIRED        2.2             2.7.15          OK         -
 cups-devel           CUPS devel- Common Unix Printing System development files    REQUIRED        -               2.2.7           OK         -
 python-dbus          Python DBus - Python bindings for DBus                       REQUIRED        0.80.0          1.2.6           OK         -
 cups-ddk             CUPS DDK - CUPS driver development kit                       OPTIONAL        -               -               OK         -
 reportlab            Reportlab - PDF library for Python                           OPTIONAL        2.0             3.4.0           OK         -
 pyqt4                PyQt 4- Qt interface for Python (for Qt version 4.x)         REQUIRED        4.0             4.12.1          OK         -
 libusb               libusb - USB library                                         REQUIRED        -               1.0             OK         -
 cups-image           CUPS image - CUPS image development files                    REQUIRED        -               2.2.7           OK         -
 python2X             Python 2.2 or greater - Python programming language          REQUIRED        2.2             2.7.15          OK         -
 python-notify        Python libnotify - Python bindings for the libnotify Desktop notifications OPTIONAL        -               -               OK         -
 libjpeg              libjpeg - JPEG library                                       REQUIRED        -               -               OK         -
 sane                 SANE - Scanning library                                      REQUIRED        -               -               OK         -

----------------------
| Scan Configuration |
----------------------

 scanext              Scan-SANE-Extension                                          REQUIRED        -               3.19.8          OK         -
 hpaio                HPLIP-SANE-Backend                                           REQUIRED        -               3.19.8          OK         'hpaio found in /etc/sane.d/dll.conf'

-------------------------
| External Dependencies |
-------------------------

 gs                   GhostScript - PostScript and PDF language interpreter and previewer REQUIRED        7.05            9.26            OK         -
 scanimage            scanimage - Shell scanning program                           OPTIONAL        1.0             1.0.27          OK         -
 cups                 CUPS - Common Unix Printing System                           REQUIRED        1.1             2.2.7           OK         'CUPS Scheduler is running'
 network              network -wget                                                OPTIONAL        -               1.19.4          OK         -
 policykit            PolicyKit - Administrative policy framework                  OPTIONAL        -               0.105           OK         -
 xsane                xsane - Graphical scanner frontend for SANE                  OPTIONAL        0.9             0.999           OK         -
 dbus                 DBus - Message bus system                                    REQUIRED        -               1.12.2          OK         -
 avahi-utils          avahi-utils                                                  OPTIONAL        -               0.7             OK         -

---------------------
| Python Extentions |
---------------------

 hpmudext             IO-Extension                                                 REQUIRED        -               3.19.8          OK         -
 cupsext              CUPS-Extension                                               REQUIRED        -               3.19.8          OK         -

------------------------------
| DISCOVERED SCANNER DEVICES |
------------------------------

device `hpaio:/usb/Photosmart_C4700_series?serial=CN98IHY2CB05CN' is a Hewlett-Packard Photosmart_C4700_series all-in-one


--------------------------
| DISCOVERED USB DEVICES |
--------------------------

  Device URI                                             Model                                  
  -----------------------------------------------------  ---------------------------------------
  hp:/usb/Photosmart_C4700_series?serial=CN98IHY2CB05CN  HP Photosmart C4700 series             

---------------------------------
| INSTALLED CUPS PRINTER QUEUES |
---------------------------------

 
Photosmart-C4700
----------------
Type: Printer
Device URI: hp:/usb/Photosmart_C4700_series?serial=CN98IHY2CB05CN
PPD: /etc/cups/ppd/Photosmart-C4700.ppd
warning: Failed to read /etc/cups/ppd/Photosmart-C4700.ppd ppd file
PPD Description: 
Printer status: Drucker Photosmart-C4700 ist im Leerlauf.  Aktiviert seit Di 10 Sep 2019 20:29:32 CEST
Communication status: Good


--------------
| PERMISSION |
--------------

USB             Photosmart-C4700               Required        -        -        OK       Node:'/dev/bus/usb/002/003' Perm:'  root  lp rw- rw- rw- rw- r--'
No errors or warnings.

Done.

Die Zeile 231 in der Ausgabe: Dort ist was nicht in Ordnung.

HP-Fan

(Themenstarter)
Avatar von HP-Fan

Anmeldungsdatum:
2. September 2012

Beiträge: 394

Wohnort: Schweiz (CH)

Hallo zusammen...

@seahawk1986 Der Kandidat erhält 100 Punkte. Habe dein Kommando ausgeführt und jetzt wird die Datei erkannt 👍

Unglaublich... Sehr Gut!!!

Ebenfalls Dank an DJKUhpisse!

Gruss HP-Fan

mhe

Anmeldungsdatum:
29. Dezember 2007

Beiträge: 210

Wenn das chmod Dir geholfen hat, dann war vermutlich was mit den Benutzergruppen nicht richtig.

Du kannst es bei Dir erst mal so lassen, aber falls Du oder jemand anderes nochmal so ein ähnliches Problem hat, sollte er erst mal die Benutzergruppen prüfen, manchmal fehlen einem hald' nur die Gruppenberechtigungen:

Die PPD Dateien des CUPS gehören root und die Gruppe 'lp' hat read-Recht. Hier ein Beispiel:

1
2
3
4
5
markus@host$ ls -la /etc/cups/ppd/
insgesamt 172
drwxr-xr-x 3 root   lp      4096 Sep  7 14:24 .
drwxr-xr-x 5 root   lp      4096 Sep 11 08:28 ..
-rw-r----- 1 root   lp     15934 Feb 25  2019 CNMF620C-Series-DUMP.ppd

Das Kommando das Du aufgerufen hast, läuft ja unter Deinem eigenen Benutzeraccount, bei mir ist das z.B. der 'markus:

1
2
markus@host$ hp-check -r
...

Da dieses Programm ja unter dem Benutzer 'markus' läuft, hat es auch nur die Berechtigungen die der 'markus' hat. Und solange der nicht in der Gruppe 'lp' ist (die ja ein read-Recht auf die PPD Dateien für die Drucker) hat, solange wird er diese auch nicht lesen dürfen .. eigentlich ganz simpel.

Also schaue ich mal nach in welchen Gruppen der 'markus' eigentlich ist:

1
2
$ groups markus
markus : markus lp sudo lpadmin ...

Hier im Beispiel ist er also in der Gruppe 'lp', weshalb er die PPD Dateien lesen kann.

Kurzum: Um einen Drucker benutzen zu dürfen muss man der Gruppe 'lp' angehören. Für die Druckerverwaltung muss man zusätzlich in der Gruppe 'lpadmin' sein

Um einen Benutzer zur Gruppe hinzuzufügen, kann man folgende Zeile verwenden. Wäre 'markus' nicht bereits in der 'lp' Gruppe dann müsste man folgendes machen:

1
$ sudo usermod -a -G lp markus

Und wenn er zu den Drucker Administratoren gehören soll sähe das so aus:

1
$ sudo usermod -a -G lpadmin markus

Das 'sudo' sorgt dafür, dass man ein Kommando unter der Berechtigung des Administrators starten kann. Wenn man nochmal bei der Ausgabe ganz oben schaut; 'markus' gehört auch zur Gruppe 'sudo' .. So einfach ist die Rechteverwaltung in linux 😉

Ubunux

Avatar von Ubunux

Anmeldungsdatum:
12. Juni 2006

Beiträge: 17457

@mhe

Einen Daumen hoch für die gute, ausführliche Erklärung 👍

mhe schrieb:

Kurzum: Um einen Drucker benutzen zu dürfen muss man der Gruppe 'lp' angehören. Für die Druckerverwaltung muss man zusätzlich in der Gruppe 'lpadmin' sein

Noch einen Daumen hoch könnte ich dir geben, wenn du mir (und anderen) erklären kannst, warum ich unter Ubuntu drucken kann (also einen Drucker benutzen darf) ohne in der Gruppe lp zu sein. 😎

mhe

Anmeldungsdatum:
29. Dezember 2007

Beiträge: 210

Ubunux schrieb:

mhe schrieb:

Kurzum: Um einen Drucker benutzen zu dürfen muss man der Gruppe 'lp' angehören. Für die Druckerverwaltung muss man zusätzlich in der Gruppe 'lpadmin' sein

Noch einen Daumen hoch könnte ich dir geben, wenn du mir (und anderen) erklären kannst, warum ich unter Ubuntu drucken kann (also einen Drucker benutzen darf) ohne in der Gruppe lp zu sein. 😎

Gut, dass Du es ansprichst: als GUI Benutzer läuft die Druckerverwaltung über die GUI und die besorgt Dir die Berechtigung über das PolicyKit.

Will man aber direkt auf der Kommandozeile mit dem CUPS arbeiten und dazu gehört ja auch das Kommando ..

1
$ hp-check -r

.. dann muss man tatsächlich in der 'lp' Gruppe sein. Deswegen ist es besser man ordnet sich dieser Gruppe gleich zu. Auch bei HP empfehlen sie das, siehe Printer Not Printing (letzter Eintrag in der Liste dort).

In meiner handsOn Sammlung habe ich zu dem Thema mal einen Artikel geschrieben: Drucken mit CUPS & IPP. Wenn man dort mal nach 'lpadmin' sucht, dann findet man in der Trefferliste u.U. die Stelle, an der ich das mit dem PolicyKit und der GUI erwähne.

Antworten |