Путеводитель по Руководству Linux

  User  |  Syst  |  Libr  |  Device  |  Files  |  Other  |  Admin  |  Head  |



   org.freedesktop.home1    ( 5 )

интерфейс D-Bus системного хоста (The D-Bus interface of systemd-homed)

  Name  |  Introduction  |  The manager object  |    The home object    |  Versions  |  See also  |  Note  |

THE HOME OBJECT

node /org/freedesktop/home1/home {
             interface org.freedesktop.home1.Home {
               methods:
                 Activate(in  s secret);
                 Deactivate();
                 Unregister();
                 Realize(in  s secret);
                 Remove();
                 Fixate(in  s secret);
                 Authenticate(in  s secret);
                 Update(in  s user_record);
                 Resize(in  t size,
                        in  s secret);
                 ChangePassword(in  s new_secret,
                                in  s old_secret);
                 Lock();
                 Unlock(in  s secret);
                 Acquire(in  s secret,
                         in  b please_suspend,
                         out h send_fd);
                 Ref(in  b please_suspend,
                     out h send_fd);
                 Release();
               properties:
                 @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
                 readonly s UserName = '...';
                 readonly u UID = ...;
                 readonly (suusss) UnixRecord = ...;
                 @org.freedesktop.DBus.Property.EmitsChangedSignal("false")
                 readonly s State = '...';
                 @org.freedesktop.DBus.Property.EmitsChangedSignal("invalidates")
                 readonly (sb) UserRecord = ...;
             };
             interface org.freedesktop.DBus.Peer { ... };
             interface org.freedesktop.DBus.Introspectable { ... };
             interface org.freedesktop.DBus.Properties { ... };
             interface org.freedesktop.DBus.ObjectManager { ... };
           };

Methods Activate(), Deactivate(), Unregister(), Realize(), Remove(), Fixate(), Authenticate(), Update(), Resize(), ChangePassword(), Lock(), Unlock(), Acquire(), Ref(), Release() operate like their matching counterparts on the org.freedesktop.home1.Manager interface (see above). The main difference is that they are methods of the home directory objects, and hence carry no additional user name parameter. Which of the two flavors of methods to call depends on the handles to the user known on the client side: if only the user name is known, it's preferable to use the methods on the manager object since they operate with user names only. If however the home object path was already acquired some way it is preferable to operate on the org.freedesktop.home1.Home objects instead.

Properties UserName contains the user name of the user account/home directory.

UID contains the numeric UNIX UID of the user account.

UnixRecord contains a structure encapsulating the six fields a struct passwd typically contains (the password field is suppressed).

State exposes the current state home the home directory.

UserRecord contains the full JSON user record string of the user account.