Device owner

Alexandros Kosiaris alex at noc.ntua.gr
Thu Jan 17 18:47:27 EET 2008


George Notaras wrote:
> On Mon, 2008-01-14 at 12:56 +0200, Alexandros Kosiaris wrote:
>>> Πρόσφατα χρειάστηκε να κάνω ακριβώς το ίδιο, αλλά στην περίπτωση των tty
>>> το rule στο τέλος της αλφαβητικής σειράς δεν φαίνεται να δουλεύει. Για
>>> κάποιον λόγο, τον οποίο δεν έψαξα, στο fedora μπορεί να αλλάξει μόνο το
>>> MODE. Τα USER/GROUP δεν παίρνουν τη σωστή τιμή. Οπότε χρειάζεται η
>>> εντελώς αντίθετη προσέγγιση, δηλαδή το rule να είναι όσο πιο ψηλά
>>> γίνεται και να χρησιμοποιηθεί το operator ':=' αντί του απλού '=', ώστε
>>> να μην ξανααλλάξει η τιμή των OWNER/GROUP/MODE από κάποιο επόμενο rule.
>>> Για παράδειγμα, σε ένα αρχείο:
>>
>>> 10-my-custom.rules
>>>
>>> βάζουμε το rule:
>>>
>>> KERNEL=="ttyS0", SUBSYSTEM=="tty", NAME="%k", OWNER:="MYUSER",
>>> GROUP:="MYGROUP", MODE:="0600"
>>>
>>> Δυστυχώς, το ':=' δεν αναφέρεται καν στη σελίδα που διαβάζει σχεδόν όλος
>>> ο κόσμος όταν θέλει να γράψει ένα UDEV rule, δηλαδή την
>>> http://reactivated.net/writing_udev_rules.html, με αποτέλεσμα να ξοδέψω
>>> πάνω από 2 ώρες με αυτό το πράγμα. Τελικά, το βρήκα τυχαία στο man page
>>> του udev(7).
>> Κατά πάσα πιθανότητα υπάρχει κάπου ένα OWNER := και GROUP:= στα rules
>> στο fedora σου για αυτό δεν έπαιζαν αυτά. Εσύ απλά τα έκανες override
>> κάνοντας το := πιο πάνω(και σωστά γιατί πιο κάτω δεν θα έπαιζε).
> 
> Αν και ειλικρινά δεν θέλω να με απασχολούν πράγματα όπως το udev, όχι
> επειδή δεν αξίζει, αλλά επειδή θεωρώ δεδομένο ότι, όταν ένας χρήστης
> ορίζει ένα custom rule, είναι επειδή μάλλον θέλει αυτό να ισχύσει και
> όχι να παρακαμφθεί από τα default rules, είδα ότι δεν υπάρχει το ':='
> operator στα default rules του fedora, αλλά το:
> 
> ..., OPTIONS="last_rule"
Χμμ αντίστοιχο υπάρχει στο debian z50_run.rules
KERNEL=="tty"   ,       OPTIONS+="last_rule"

Το οποίο έχει την πλάκα του γιατί το

+= σημαίνει πρόσθεσε στα προηγούμενα αυτό

και το last rule σταμάτα να κάνεις τα rules process.

H αλήθεια είναι ότι δεν μπορώ να βρώ λόγο για το +
(δεν ορίζεται πουθενά αλλού κάποιο OPTION για το tty group και τα παιδιά
του)

> 
> το οποίο μάλλον κάνει την ίδια δουλειά (έτσι δείχνει, δεν το έψαξα).
>
Κανονικά όντως αυτό θα την έκανε αλλά εάν έχεις ορίσει κάπου

KERNEL="ttyS0" κτλ κτλ

όπως έκανα εγώ τότε το υπερισχύει το δικό σου rule γιατί είναι more
specific. Σημείωση ότι δεν έχω πουθενά rules για τα ttyS* οπότε το δικό
μου είναι μοναδικό.

Τώρα εσύ μπορεί να έχεις...

> Οπότε, τώρα έχουμε 2 τρόπους να κάνουμε αυτό που θέλουμε και άρα υποθέτω
> είμαστε διπλά πιο ελεύθεροι, δημιουργικοί και καινοτόμοι από ό,τι θα
> ήμαστε αν υπήρχε μόνον ένας τρόπος.

Πάμε στοίχημα ότι εάν το ψάξουμε θα βρούμε και τρίτο;

:-P

<just a bait>

Πάντως ήταν ενδιαφέρον ένα πέρασμα μέσα από τις διάφορες εντολές του
udev. Γέμισα με ένα ανυπέρβλητο αίσθημα ικανοποίησης που τις
χρησιμοποίησα μετά από τόσο καιρό.

Είμαι βαριά ασθενής γιατρέ;

</just a bait>

-- 
Alexandros Kosiaris 	Network Management Center , NTUA
e-mail : alex at noc.ntua.gr
Public Key Fingerprint :
D6B1 0634 BE65 719C 6C95  7492 8201 4B46 C478 F074
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 5200 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://lists.hellug.gr/pipermail/linux-greek-users/attachments/20080117/617a9728/attachment.bin>


More information about the Linux-greek-users mailing list