Skip to content

Vnc configuration file. Disable Tray icon The icon in the system tray can be disabled to disallow users to change any settings. This window is also displayed on click the tray icon. 1 day ago · If you can see this, it means that everything has been setup correctly. VNC backup" file for your VNC configuration, you can follow these steps: Open your VNC server configuration file. Finally, if the option is used The configuration file is composed of key-value pairs separated with an equal sign. Refer the output below. To change the permissions of a file, use the chmod command: chmod u+x ~/. : vncviewer . It is possible to get a partially working setup by running vncserver from ssh session or via cron job, but if you try to run for example the gnome-control-center application in your VNC session, the session crashes. vnc" At start-up/login May 13, 2021 · In this step, we will configure the VNC server for using the XFCE desktop. For demonstration purpose we will use two linux systems. exe" "C:\Users\username\Desktop\myconnection. Aug 29, 2022 · These commands are located in a configuration file called xstartup in the . [helpdesk@localhost ~]$ ls -a # Show Hidden Files & Directories. You are currently viewing LQ as a guest. vnc/xstartup` TigerVNC: `/etc/vnc. VNC itself doesn’t use secure protocols when connecting. Here's an illustration: geometry=1920x1080 dpi=96 Jul 22, 2021 · , this filename will change if more than one VNC servers are running (as will the port you need to connect). which saves the PW to ~/. Then edit the “~/. Default Configurations The following configuration shows all default settings. If another parallel VNC connection is needed, a second instance can run on the next highest, free port, i. vnc/passwd”. Mar 6, 2010 · Right-click on the TightVNC in your task bar, and select "Save connection info as" (it will ask if you want to save the password). Dec 5, 2022 · What is VNC Password? If your computer does not have a password or you prefer to use a separate password for remotely accessing your computer then you can configure VNC Server to use a VNC Password instead of using your system login credentials. Specifically, VNC needs to know which graphical desktop environment it should connect to. Dec 28, 2023 · Now that you have the VNC server installed to your Raspberry Pi, we can now learn how to configure it so that it is ready for connections. Jun 26, 2021 · VNC stands for “Virtual Network Computing” is a sharing system or set of protocols for sharing desktops. com Oct 10, 2017 · Using a configuration file works fine: vncviewer. You can create these files if they do not exist in any appropriate location in this table. vnc/xstartup. vnc file instead of the TightVNC executable to launch your remote session. 10. xml file as follows: <graphics type='vnc' port='-1' autoport='yes' passwd='YOUR-PASSWORD-HERE' keymap='en-us'/> This is the man page for xrdp. $ vncviewer -passwd /path/to/server-passwd-file. 1 When I was on Vista Home Premium, I had no issue connecting to my remote PC, saving config files (Save Connection Info as . vnc/kasmvnc. session=gnome securitytypes=vncauth,tlsvnc geometry=1280x720. org, a friendly and active Linux Community. To get a list of ports, run sudo ss -lnpt and look for VNC to get the value that should be specified in your configuration file. Dec 8, 2023 · Next, create a new VNC Server configuration ~/. xrdp. For example, to set a specific screen resolution and DPI: geometry=1920x1080 dpi=96. A VNC display number is manually assigned to every configuration that the server supports (:1 in the example above). All VNC flavors follow the RFB protocol. Sep 1, 2022 · The VNC server needs to know what commands to execute when it starts up. vnc/passwd file. 2 Configure Desktop Environment for VNC. ) AllowLoopback=0 0 = Disable connection from localhost (Default) 1 = Enable connection from localhost By default, WinVNC servers disallow any vnc viewer connections from the same machine. Sep 21, 2023 · Execute permissions are also required for the /. When VNC is first set up, it launches a default server instance on port 5901. help_config (default = 0) Misc. vnc/xstartup Log file is /home/ sammy /. $ vim ~/. Mar 16, 2007 · Click Install to set up TightVNC. Let’s break down each line: session=ubuntu-xorg → as discussed above, this should match one of the files Mar 7, 2024 · Next, run the vncserver command to set a VNC access password, create the initial configuration files, and start a VNC server instance: $ vncserver. custom If this file exists, /etc/vnc/config is ignored. Common locations include: RealVNC: `~/. one in which only the intended user has read access. vncsession performs all the necessary steps to create a new user session, run Xvnc with appropriate options and starts a window manager on the VNC desktop. • Attach Listening Viewer – Connects from the TightVNC server to a viewer started in the "listening" mode. Set the geometry option in the systemd configuration file (or otherwise applicable startup script) ~ this example works with Fedora 28 (assuming selinux file descriptors are fixed). vnc/config. DESCRIPTION vncsession is used to start a VNC (Virtual Network Computing) desktop. custom. Dec 17, 2020 · Once you’re done with the configuration, the last step is to start the VNC server. Jun 3, 2019 · My opinion is that VNC server support in Ubuntu 18. By default, :1 is TCP port 5901 (5900+1). g. Which VNC server? Log data may be output to a file or a console window or the MSVC debugger if the program was compiled with debugging active. vnc directory in your home folder. Aug 25, 2023 · Sharing configuration files between programs and user accounts. Compatibility. However, if used with no arguments, it will prompt for the password interactively, and it will be stored in the ~/. Use the command which is given below to open the “nano” text editor. This type of file is used by default in newer versions of GDM. vnc/config: $ nano ~/. Mar 23, 2024 · VNC enables users to seamlessly read and share files, change settings, and execute commands on the server using the keyboard and mouse event of the client machine. 04 server. When VNC Viewer is started, it shows a dialogue box like this: In the VNC Server field Feb 21, 2019 · help_config Print the available configuration variables (vars) for the "configuration script. It is recommended to use these whenever possible. Oct 20, 2020 · I'm able to view the desktop with Real VNC Viewer, Apple VNC Screen Share and other VNC viewers, I can run my applications, the desktop manager works, copy/paste works within the server, etc. Give command — vim ~/. Apr 26, 2016 · These commands are located in a configuration file called xstartup in the . Jan 2, 2024 · The VNC server configuration file's location have changed with the recent release of tigervnc-server-1. You should see a graphical representation of the displays connected to the Raspberry Pi. May 29, 2020 · New 'X' desktop is your_hostname:1 Starting applications specified in /home/ sammy /. Jan 18, 2024 · Determine the location of your VNC configuration file. Edit the user’s custom VNC configuration options in ` ~/. The expansion in the bash script above is possible as it expands the $(whoami) command at the time of writting the lines to the ~/. In the last line, the ‘ geometry ‘ flag specifies the screen resolution. Many other people have since participated in development, testing and support. By convention we have arranged that the VNC server display number will be the same as the X server display number, which means you can use eg. ini, xrdp(8) configuration file. This common start point means that most of the VNC flavours available Jun 18, 2024 · Step 12: Then, create a configuration file in the VNC hidden directory which is located in the home directory. vnc. 4) Go to the main Mint menu – settings, open Startup Applications, and add the x11vnc app there. ini supports the following sections: [Globals] - sets some global configuration settings for xrdp(8). VNC file) , and then simply one-clicking on those config files to remotely connect thereafter. tigervnc where ’. −desc Xvnc-param. com team has independently researched the VNC Configuration file format and Mac, Windows, and Linux apps listed on this page. mozilla . vncserver :1. vnc/config file to set custom options and preferences for your VNC session. vnc/config file. For example, on Windows: "C:\Program Files\VNC Viewer\vncviewer. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. When RealVNC Connect is installed, /etc/vnc/config. This configuration contains the following: [connection] host=myvncserver. Restart VNC Server. session=xfce geometry=1200x720 localhost alwaysshared. Firewall configuration. How to set up VNC Password. The location and name of the file may vary depending on the VNC server software you are using. If you are using GNOME, you need to edit the file . VNC display numbers and X display numbers are independent in one-time sessions. The log file is in C:\WinNT\system32 if winvnc runs as service. Apr 26, 2022 · The VNC server needs to know which commands to run when it starts up. vnc/config` TightVNC: `~/. vnc/config Step 13: Add the following configuration inside May 29, 2020 · The second method, is to use the -storepasswd option: it accepts two optional arguments: pass and file, to specify respectively the password and the file in which it should be stored. Run your Sep 18, 2011 · Using 1. The application will install itself, and then you will see the Completing TheTightVNC Setup Wizard. If you don’t remember the hostname of your Raspberry Pi, you can install Avahi on another device, then use avahi-browse to browse all the hosts and services on your local network. vnc/ your_hostname:1. Prints the current value of the given Xvnc parameter. The first time you launch the tightvncserver command, it generates this directory along with some default config files. bash_profile . Note if you specify the same X Oct 26, 2021 · New 'X' desktop is your_hostname:1 Starting applications specified in /home/ sammy /. ), copy/paste does not work between the client and server VNC was originally developed by the RealVNC team while at Olivetti Research Ltd / AT&T Laboratories Cambridge. vnc is a hidden directory can be seen by using ls -a command and located at home directory of User. defconfig or f (default='xmdefconfig') config Its embedded Java Viewer allows you to connect (and make File transfers) from a simple Web Browser on any system supporting Java (Linux, Mac OS, ) to an UltraVNC Server. For multiple users, a uniquely named service file for each user is required, for example, by adding the user name to the file name in some way. VNC server configuration lives in a special . vnc/xstartup file also needs to have execute permissions. UPDATE 1. Nov 25, 2014 · There are various VNC client available, but the one we will use is RealVNC, available here. Under Windows 8 or later, it is recommended you install to a secure location (for example, C:\Program Files). e. To start the configuration process, we need to run the command below. vnc/config`. 1. Mar 22, 2024 · You can launch a RealVNC Viewer connection at the command line by providing the the path to the connection file you want to use as part of the -config argument. You‘ll be prompted to enter and confirm a If you change the system hostname of your Raspberry Pi using Raspberry Pi Configuration, raspi-config, or /etc/hostname, Avahi updates the . Inside the file opened with nano, let’s write and save these general options: session=ubuntu-xorg alwaysshared localhost geometry=1280x800. Note that: RealVNC Server parameters override equivalent RealVNC Viewer parameters unless otherwise stated. password=encryptedpassword. into a . May 10, 2023 · After you’ve made the proper changes to the VNC service file, reload the systemd system initialization program to pick up the new vnc configuration file and start the TigerVNC server. As another quick way to start a connection to a VNC server, specify a . After successfully setting the password, you should configure the desktop environment. If you need to pass additional options to the VNC server, create a file named config and add one option per line. On the Raspberry Pi Desktop, open the Preferences menu and select the Screen Configuration utility. Depending on the file chosen, this might apply the password system-wide (across all VNC Server modes, or for all users), or lock VNC Server down using policy (so the password cannot be changed by users). Input the following configuration to the file. However, if you need to have browser independent access, it is possible to use an external VNC client such as RealVNC, TightVNC, and Remmina as well. Before we edit the configuration, kill the first VNC session using the command below. If you set up the VNC service as a system service, you can restart it by running: sudo systemctl start vncserver@1 Oct 14, 2021 · Here, we will configure TigerVNC to access Gnome using the user configuration settings from the ~/. local mDNS address. port=5901. 9. vnc/xstartup file, we’ll assume the file is empty. In this tutorials I will show you how to configure vnc server. log With the configuration in place, let’s connect to the server from our local machine. 0. vnc/passwd. The first line tells VNC to use the GNOME environment. Whitespace around either the key or the value is insignificant and is not considered to be part of the key or the value. Prints a short description of the given Xvnc parameter. conf` If the authentication method in use fully implements the features of Guacamole’s authentication API, you will be able to add a new VNC connection easily and intuitively using the administration interface built into Guacamole. conf. vnc folder under your home directory. In this tutorial you will learn: How to enable VNC Server via command line and GUI; How to install and use VNC Client on Raspberry Pi; Raspberry Pi Server/Viewer VNC configuration Oct 10, 2023 · To create a ". This file is a split configuration file that contains only user-specified values that override the default configuration. :/etc/xen') defconfig Use the given Python configuration script. Log debug info to the WinVNC. vnc/config Add the following configuration to it. The password can also be provided directly. To specify X options for a particular user account, create ~/. Restart the VNC server after you’ve edited the ~/. From the first menu, select Interface Options. vnc/xstartup according to UPDATE 2 of muktupavels answer my log file looks like this when I connect via vncviewer: Oct 30, 2023 · Custom VNC Configuration (Optional) If desired, you can create a ~/. Specifically, VNC needs to know which graphical desktop it should connect to. To share desktop you need vnc-server package and to access from other computers you need vnc-viewer. To specify parameters for all programs for all user accounts on the computer, create /etc/vnc/config. It is composed by a number of sections, each one composed by a section name, enclosed by square brackets, followed by a list of <parameter>=<value> lines. The config. Now backup the default configuration and create a new one using vim. Apr 11, 2024 · Expand the Computer Configuration > Administrative Templates > RealVNC > Restrictions policy template file. Mar 22, 2024 · When VNC Server starts, parameters are applied in the following order: System-wide VNC configuration files; Per-user VNC configuration files; Command line OPTIONS; Policy VNC configuration files; This means that a particular parameter specified at the command line overrides the same parameter specified in a per-user or in a system-wide VNC This file is expected to be accessible to the user through SSH or physical access to the server. Mar 25, 2024 · Download the RealVNC Server executable to the remote computer you want to control. Edit the Disable VNC Server if the license key does not support group policy setting. The commands that the VNC server runs at startup are located in a configuration file called xstartup in the . vnc/config for the currently logged-in user. PcHelpWare and uvnc2me require XP or later. Let’s see how to use it. Click Finish to complete TightVNC Mar 22, 2024 · When VNC Viewer starts, parameters are applied in the following order: System-wide VNC configuration files; Per-user VNC configuration files; Command line OPTIONS; Policy VNC configuration files; This means that a particular parameter specified at the command line overrides the same parameter specified in a per-user or in a system-wide VNC Dec 16, 2008 · The FileInfo. vnc/config or /etc/vnc/config Adapt VNC server's settings with the config file to get the full list of available options we can use Xvnc -help or man Xvnc, here is a config example (also note that on some system like Suse VNC will/may not work if the option geometry is not set): If you use Raspberry Pi OS, VNC is preinstalled so you only have to enable it to get started. vncserver -kill :1. d/common. Could not run xauth This means that the xauth program was not found. Note :. If I adapt ~/. The first step is to enable VNC on Raspberry Pi OS (via the system configuration or raspi-config), then install the client on a computer, and type the IP address of the Raspberry Pi to get connected to it. Sep 30, 2021 · You now have a secured VNC server up and running on your Ubuntu 20. Our goal is 100% accuracy and we only publish information about file types that we have verified. All the configuration files are now available inside Feb 9, 2020 · By now, you should have a VNC server up and running, and you can easily manage your CentOS 7 server using a graphic interface. Nov 2, 2023 · Step 3 – Configure the VNC Server. Run the following chmod command to make sure permissions are correct: chmod u+x ~/. We will edit the VNC configuration file 'xstartup' under '. Oct 8, 2023 · $ vim ~/. exe /config config. This is a per-user configuration, which means each user can have different configurations. • Configuration – Displays TightVNC configuration window (Control Interface), which allows the user to change various parameters of the TightVNC Server. Route your Tunnel to your website. . We can use many VNC clients to connect to the now started server. Jan 2, 2024 · 2. With the VNC server now installed to our Pi, let us now proceed to configure it. nano ~/. These commands are located in a configuration file called xstartup in the . vnc This configuration contains the following: [connection] host=myvncserver port=5901 password=encryptedpassword [options] restricted=0 viewonly=0 fullscreen=0 However I would like to pass the host and port as argument but keeping other options in the conf file. For establishing a remote connection, we require both a server and a client. This man page describes the syntax and options of the three configuration files loaded by tigervncserver(1), the free X server for Virtual Network Computing (VNC). Jun 18, 2020 · Prepare and/or locate the VNC server's config file at: ~/. Sep 20, 2023 · In this section, where we mention what contents to add to the ~/. Thank you very much for your help. Choose yes to enable VNC! Once you’ve done this, and you’ve returned to the main menu, select finish. There are many options available – check the TigerVNC docs for details. Step 3 — Connecting the VNC Desktop Securely. bash_logout . Go ahead and start the VNC server for the first time: vncserver. When you do so, raspi config prompts whether to enable VNC. It is nothing but a Linux desktop sharing system or set of protocols for sharing desktop. Aug 14, 2024 · You can configure RealVNC Server by changing parameters either in the Options > Expert dialog box, at the command line, using policy or by customising the installer (Windows only). Aug 19, 2008 · You may find it convenient to put all of these options in a . There are many implementations of the VNC protocol for Linux or Unix like systems. vnc/passwd encrypted with a known algorithm, but then if you can restrict its permissions with this: Dec 12, 2023 · The appropriate file is /etc/vnc/config for all users, and ~/. Dec 29, 2023 · Of course, it is also possible to configure the device as both a VNC client and server simultaneously. The logging level can be configured in the registry. Also, replace 5901 with the port your VNC server is running on. quiet or q (default =0) path Search path for configuration scripts. Under Mac, in the vncserverui-service (Service Mode) or vncserverui-user (User NAME vncsession − start a VNC server. If you change the system hostname of your Raspberry Pi using Raspberry Pi Configuration, raspi-config, or /etc/hostname, Avahi updates the . Here's an illustration: geometry=1920x1080 dpi=96 As you do that, replace <HOSTNAME> with the domain you wish to use to expose your VNC server in the browser. txt file is read by the early-stage boot firmware, so it uses a very simple file format: a single property=value statement on each line, where value is either an integer or a string. Do this right after installing x11vnc, run this: x11vnc -storepasswd. Feb 17, 2017 · Until now I wasn't able to fix the issues in the log file. Right click on the display you wish to modify, and select an option. Each user defined in this file will have a corresponding port on which its session will run. If the file does not exist yet, you may need to create it yourself. TightVNC additions were implemented by Constantin Kaplinsky. tigervnc’ is an existing and valid TigerVNC configuration file. 5 days ago · For a single user it is not necessary to rename the file. vnc/xstartup Create a file named config and add one option per line if you need to send more options to the VNC server. 6. One can use VNC to control or access Linux based desktop remotely. Comments may be added, or existing config values may be commented out and disabled, by starting a line with the # character. . VNC Viewer for Mac OS X is available for download on the same page, and the Mac version is fairly similar to the Windows one. Mar 22, 2024 · System-wide VNC configuration files; Per-user VNC configuration files; Command line OPTIONS; Policy VNC configuration files; This means that a particular parameter specified at the command line overrides the same parameter specified in a per-user or in a system-wide VNC configuration file, but is itself overridden by the same parameter Jan 2, 2024 · To the applications it is an X server, and to the remote VNC users it is a VNC server. SYNOPSIS vncsession <username> <:display#>. path (default='. Aug 22, 2023 · To specify X options for all user accounts on the computer, create /etc/vnc/config. The second line specifies the standard security for VNC during authentication. 04 and up is completely broken at least for GNOME. No need to set anything anywhere, on the client or on the server. Whenever a VNC session is initiated with one of the configurations, it automatically gets a free X display number. May 6, 2017 · The passwd attribute provides a VNC password in clear text (so make sure your xml config file is only readable by root user). Click Apply to and close Screen Configuration to save your changes. Edit centos1. However, the background is gray (no wallpaper), the icons are missing (e. VNC works on client server architecture. log Avec la configuration en place, vous êtes prêt à vous connecter au serveur VNC à partir de votre ordinateur local. See full list on golinuxcloud. Feb 9, 2020 · The ~/. [options] restricted=0. conf is the site wide configuration file for tigervncserver(1), the free X server for Virtual Network Computing (VNC). Configure VNC Access in the Configuration File With TigerVNC Windows VNC client (viewer) auto resolution works out of the box. There is much software available to access Linux-based desktop remotely including, TigerVNC, TightVNC, Vino, vnc4server, and more. For example, the first line of my config is: -randr 800x600,1024x768,1280x800,1280x960,1280x1024,1680x1050,1920x1080,3360x1050,1024x700,1200x740,1600x1000,3200x1000 – Enable File Transfer Enable the UltraVNC File Transfer. Replace USERNAME with the actual username: Jul 19, 2004 · Welcome to LinuxQuestions. bashrc . But that file doesn't have those lines anymore, and I also really don't want to switch it to service mode, I just want to get at that config that the UI writes to but it seems to exist only in Jan 22, 2018 · VNC server is a used to share desktop with remote computer. These configuration files can be used to change the behavior of the server at startup time, although for all values suitable inbuilt defaults are preset. Use the saved . Locate the VNC Server icon. Add the following configuration. The software is properly implemented and installed silently, but unfortunately the configuration parameters of Mar 4, 2017 · Users passwords are stores in a file called passwd which is located at . service file. To configure your VNC server to start a display for more than one user, create the initial configuration and set up the password using the vncserver command and create a new service file using a different port. Mar 22, 2024 · Run vncpasswd -file FILE to nominate a different configuration file. If you would like to suggest any additions or updates to this page, please let us know. session=gnome geometry=1920x1200 localhost alwaysshared −get Xvnc-param. log file Enable logging. Oct 10, 2017 · Using a configuration file works fine: vncviewer. snoopy:2 to refer to display 2 on machine "snoopy" in both the X world and the VNC world. If this file exists, it is applied in addition to either /etc/vnc/config or /etc/vnc/config. You will not need to edit configuration files. PARAMETERS vncconfig also has parameters of its own which can be set on the command line. Something like Aug 14, 2024 · Under Linux, in the vncserverui-service (Service Mode), vncserverui-user (User Mode), or vncserverui-virtual (Virtual Mode) VNC configuration file. Then select VNC. quiet Quiet. The startup script was created when you ran the vncserver command in the previous step, but you’ll create your own to launch the Xfce desktop. You can set this to Note: You must provide the full path to the key and certificate files. Since our VNC service is listening to port TCP 5901, you need to be sure that such port is open and accessible by external clients: therefore, if you have a firewall installed, you should create an appropriate rule to allow VNC clients to connect. clock, audio, etc. Note this file is reserved for use by RealVNC. Choose Enabled . /some. It can be used to change the behavior of the server at startup time, although for all values suitable defaults are preset. To start and enable the VNC service for the user mapped to the display port :1, enter: sudo systemctl enable vncserver@:1 --now. The startup script was created when you ran the vncserver in the previous step, but we need modify some of the commands for the Xfce desktop. The VNC server will listen on port 5901, as we discussed in the previous section. This will prompt you to set a password, and will insert it for you in the right config file for VNC Server running in Service Mode. Étape 3 - Connexion sécurisée au bureau VNC Jan 1, 2024 · 3) Use the command line “x11vnc -storepasswd” to generate the encrypted authentication file “~/. XX. Also, check the VNC service status and enable the VNC daemon system-wide by issuing the below commands. vnc/config using the following nano editor command. vnc/xstartup file. vnc' directory. yaml. Mar 30, 2020 · I made a batch file for VNC Server to make Windows 10 x64 automatically (Unattended). /etc/vnc. vnc/passwd” as the parameter. You cannot depend on shell expansion or use variables for this purpose. vnc Dec 25, 2023 · Finally, let’s use nano to create the configuration file ~/. Follow along with the steps below to learn how. Here is an example: May 28, 2024 · Introduction: VNC is an acronym for Virtual Network Computing. Update the configuration to enable x509Vnc encryption and to provide the full path to the X509 key file and that x509 certificate file. VNC works on client-server principal. Individual users can override server global configurations by specifying them in their configuration file at ~/. 2. The logfile also tells what port the server is listening on: vncext: Listening for VNC connections on all interface(s), port 5901 Which is the default VNC port. VNC should be up and running! Connect To VNC To Control Raspberry Pi Jul 4, 2023 · Execute permissions are also required for the /. The number in the file corresponds to a TCP port. See Configuring VNC Server for Two Users for details. In either case, place the file on the client's file system in a safe location, i. When you first connect to your server, the resolution is set to whatever is preset on the server side but you can easily change it just by resizing the client window; to any resolution, any crazy, non-standard, ad-hoc resolution you want. So that the desktop environment automatically uses TigerVNC when it is launched. Save and close the file when you Feb 3, 2023 · Probably shouldn’t enter your password into the x11vnc. It consists of a VNC® Server app for the computer you want to control, which must be licensed, and a VNC® Viewer app that you are free to download to all the devices you want to control from. If you are using Red Hat Linux, the GDM configuration file is /etc/gdm/custom. d/common is created. VNC® Connect is the latest version of our remote access software for personal and commercial use. gnome2 . Now you’ll be able to manage your files, software, and settings with a user-friendly graphical interface, and you’ll be able to run graphical software like web browsers remotely. x11vncrc” file and uncomment the -rfbauth line and use the full path “/home//. tigervnc configuration file as an argument to the viewer, e. e 5902 (5900+2). kxsjh rlf srrgg javi aytxklw ieab pfifd lnjck fbu cjfhvxa