This is an old revision of archlinux/PolicyKit.conf from 09/19/2013 19:12 edited by EvaggelosBalaskas.

View source for Policy Kit.conf

{{anchor href="top"}}
Hits :  **{{hits}}**

{{ToC from="h2" to="h3"}}

== Hal & Devices ==

Όταν ήθελες να προσαρτήσεις μία συσκευή (κάποτε) έπρεπε να επεξεργαστείς το fstab κατάλληλα.
Αυτό γινόταν είτε με το χέρι, είτε μέσω ενός gui interface.
Μάλιστα όταν έπρεπε να συνδέσεις μία usb συσκευή έπρεπε να την βρεις πρώτα.

Πλέον με το hal & το dbus γίνονται όλα αυτόματα, αρκεί να ακολουθήσεις όμως κάποιους κανόνες.
Για αρχή χρειάζεται να ρίξουμε μια ματιά στα παρακάτω links:

((http://wiki.archlinux.org/index.php/HAL HAL))
((http://hal.freedesktop.org/docs/PolicyKit/index.html PolicyKit))

((#top))
-----------

==== PolicyKit ====

Από το 1ο link βλέπουμε ότι μπορούμε να ορίσουμε την πολιτική για τους χρήστες μας.
Αυτό γίνεται στο εξής αρχείο:

%%/etc/PolicyKit/PolicyKit.conf%%

Για παράδειγμα το δικό μου **PolicyKit.conf** είναι το εξής:

%%(html)
<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE pkconfig PUBLIC "-//freedesktop//DTD PolicyKit Configuration 1.0//EN"
"http://hal.freedesktop.org/releases/PolicyKit/1.0/config.dtd">

<config version="0.1">

        <match user="ebal">
                <match action="org.freedesktop.hal.storage.*">
                        <return result="yes"/>
                </match>
                <match action="hal-storage-mount-fixed-extra-options">
                        <return result="yes" />
                </match>
                <match action="hal-storage-mount-removable-extra-options">
                        <return result="yes" />
                </match>
                <match action="org.freedesktop.hal.power-management.*">
                        <return result="yes"/>
                </match>
        </match>

</config>
%%

__//**ΠΡΟΣΟΧΗ**//__: Το δικό μου username είναι **ebal**, στο δικό σας παράδειγμα μπορεί να είναι κάτι άλλο.

Στο παραπάνω παράδειγμα υπάρχουν οι εξής δηλώσεις:

%%
<match action="org.freedesktop.hal.storage.*">
    <return result="yes"/>
</match>
%%

και

%%
<match action="org.freedesktop.hal.power-management.*">
    <return result="yes"/>
</match>
%%

Το πρώτο παράδειγμα επιτρέπει οποιαδήποτε ενέργεια σε ότι αφορά τους δίσκους (storage),
ενώ το δεύτερο παράδειγμα επιτρέπει οποιαδήποτε ενέργεια έχει να κάνει με την διαχείριση
του ρεύματος (π.χ. reboot ή shutdown)

Χρειάζεται να επιβεβαιώσουμε την ακεραιότητα του αρχείου, οπότε χρειάζεται να πληκτρολογήσουμε την εξής εντολή: 

%%
polkit-config-file-validate
%%

Χρήσιμες και ενδιαφέρουσες πληροφορίες για τις συσκευές μας μπορούμε να δούμε με την εξής εντολή:

%%
lshal
%%

Φυσικά όταν ολοκληρώσουμε όλα τα παραπάνω χρειάζεται να επανεκιννήσουμε το dbus & hal

%%
/etc/rc.d/dbus restart
/etc/rc.d/hal restart
%%

((#top))
-----------

=== Dbus ===

Τι γίνεται όταν ΔΕΝ υπάρχει το policy-kit στον υπολογιστή μας.
Πολύ απλά πρέπει να κάνουμε τις αλλαγές απευθείας στο dbus

**/etc/dbus-1/system.d/hal.conf**

Για τον δικό μου χρήστη: //ebal//

%%
  <policy user="ebal">
    <allow send_destination="org.freedesktop.Hal"
           send_interface="org.freedesktop.Hal.Device.Volume"/>
    <allow send_destination="org.freedesktop.Hal"
           send_interface="org.freedesktop.Hal.Device.SystemPowerManagement"/>
  </policy>
%%

Φυσικά όταν ολοκληρώσουμε όλα τα παραπάνω χρειάζεται να επανεκιννήσουμε το dbus & hal

%%
/etc/rc.d/dbus restart
/etc/rc.d/hal restart
%%