Vnc configuration file
Vnc configuration 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 . 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. However, the background is gray (no wallpaper), the icons are missing (e. [options] restricted=0. Apr 26, 2016 · These commands are located in a configuration file called xstartup in the . Nov 2, 2023 · Step 3 – Configure the VNC Server. 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. VNC works on client-server principal. Dec 8, 2023 · Next, create a new VNC Server configuration ~/. bash_profile . Also, replace 5901 with the port your VNC server is running on. quiet Quiet. Add the following configuration. Jun 18, 2020 · Prepare and/or locate the VNC server's config file at: ~/. Follow along with the steps below to learn how. 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. Go ahead and start the VNC server for the first time: vncserver. These commands are located in a configuration file called xstartup in the . 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 ~/. mozilla . conf is the site wide configuration file for tigervncserver(1), the free X server for Virtual Network Computing (VNC). One can use VNC to control or access Linux based desktop remotely. ) 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. Log debug info to the WinVNC. 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 ". If another parallel VNC connection is needed, a second instance can run on the next highest, free port, i. Let’s see how to use it. vnc/kasmvnc. local mDNS address. 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. 5 days ago · For a single user it is not necessary to rename the file. Restart VNC Server. Choose Enabled . tigervnc where ’. You will not need to edit configuration files. Refer the output below. 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). The commands that the VNC server runs at startup are located in a configuration file called xstartup in the . Dec 17, 2020 · Once you’re done with the configuration, the last step is to start the VNC server. The location and name of the file may vary depending on the VNC server software you are using. 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. The number in the file corresponds to a TCP port. d/common is created. 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. help_config (default = 0) Misc. one in which only the intended user has read access. You can create these files if they do not exist in any appropriate location in this table. vnc/config file. Firewall configuration. custom If this file exists, /etc/vnc/config is ignored. 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). Jan 2, 2024 · The VNC server configuration file's location have changed with the recent release of tigervnc-server-1. Mar 30, 2020 · I made a batch file for VNC Server to make Windows 10 x64 automatically (Unattended). 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. Finally, if the option is used The configuration file is composed of key-value pairs separated with an equal sign. VNC backup" file for your VNC configuration, you can follow these steps: Open your VNC server configuration file. The logging level can be configured in the registry. Comments may be added, or existing config values may be commented out and disabled, by starting a line with the # character. vnc/xstartup file, we’ll assume the file is empty. com team has independently researched the VNC Configuration file format and Mac, Windows, and Linux apps listed on this page. vnc/xstartup Log file is /home/ sammy /. vnc/xstartup file also needs to have execute permissions. −desc Xvnc-param. vnc' directory. 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. Compatibility. As another quick way to start a connection to a VNC server, specify a . 04 server. VNC itself doesn’t use secure protocols when connecting. 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. 4) Go to the main Mint menu – settings, open Startup Applications, and add the x11vnc app there. 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. So that the desktop environment automatically uses TigerVNC when it is launched. 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. 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. Aug 19, 2008 · You may find it convenient to put all of these options in a . You cannot depend on shell expansion or use variables for this purpose. Aug 22, 2023 · To specify X options for all user accounts on the computer, create /etc/vnc/config. 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. Aug 25, 2023 · Sharing configuration files between programs and user accounts. For demonstration purpose we will use two linux systems. For establishing a remote connection, we require both a server and a client. 1. 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. 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. 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 ~/. vnc/config file to set custom options and preferences for your VNC session. Use the command which is given below to open the “nano” text editor. Right click on the display you wish to modify, and select an option. Nov 25, 2014 · There are various VNC client available, but the one we will use is RealVNC, available here. If the file does not exist yet, you may need to create it yourself. Sep 20, 2023 · In this section, where we mention what contents to add to the ~/. vnc. Also, check the VNC service status and enable the VNC daemon system-wide by issuing the below commands. 2 Configure Desktop Environment for VNC. tigervnc’ is an existing and valid TigerVNC configuration file. For example, on Windows: "C:\Program Files\VNC Viewer\vncviewer. We will edit the VNC configuration file 'xstartup' under '. yaml. vnc/passwd”. 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. 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). Apr 11, 2024 · Expand the Computer Configuration > Administrative Templates > RealVNC > Restrictions policy template file. See full list on golinuxcloud. It is recommended to use these whenever possible. Oct 8, 2023 · $ vim ~/. service file. Edit centos1. Configure VNC Access in the Configuration File With TigerVNC Windows VNC client (viewer) auto resolution works out of the box. 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. UPDATE 1. Specifically, VNC needs to know which graphical desktop it should connect to. quiet or q (default =0) path Search path for configuration scripts. See Configuring VNC Server for Two Users for details. When VNC is first set up, it launches a default server instance on port 5901. By default, :1 is TCP port 5901 (5900+1). Could not run xauth This means that the xauth program was not found. Locate the VNC Server icon. If you would like to suggest any additions or updates to this page, please let us know. É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 “~/. x11vncrc” file and uncomment the -rfbauth line and use the full path “/home//. exe" "C:\Users\username\Desktop\myconnection. exe /config config. Click Apply to and close Screen Configuration to save your changes. xrdp. Choose yes to enable VNC! Once you’ve done this, and you’ve returned to the main menu, select finish. 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. May 29, 2020 · New 'X' desktop is your_hostname:1 Starting applications specified in /home/ sammy /. 1 day ago · If you can see this, it means that everything has been setup correctly. VNC file) , and then simply one-clicking on those config files to remotely connect thereafter. All VNC flavors follow the RFB protocol. How to set up VNC Password. Save and close the file when you Feb 3, 2023 · Probably shouldn’t enter your password into the x11vnc. 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). Individual users can override server global configurations by specifying them in their configuration file at ~/. 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. To start the configuration process, we need to run the command below. In this tutorials I will show you how to configure vnc server. There are many options available – check the TigerVNC docs for details. The second line specifies the standard security for VNC during authentication. Inside the file opened with nano, let’s write and save these general options: session=ubuntu-xorg alwaysshared localhost geometry=1280x800. To specify X options for a particular user account, create ~/. vnc/config. vnc/xstartup` TigerVNC: `/etc/vnc. To start and enable the VNC service for the user mapped to the display port :1, enter: sudo systemctl enable vncserver@:1 --now. 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. 6. 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. 0. 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. /etc/vnc. Then edit the “~/. 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. The expansion in the bash script above is possible as it expands the $(whoami) command at the time of writting the lines to the ~/. Edit the Disable VNC Server if the license key does not support group policy setting. vnc directory in your home folder. vncserver -kill :1. After successfully setting the password, you should configure the desktop environment. To change the permissions of a file, use the chmod command: chmod u+x ~/. 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. vnc/config: $ nano ~/. 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. Default Configurations The following configuration shows all default settings. $ vncviewer -passwd /path/to/server-passwd-file. A VNC display number is manually assigned to every configuration that the server supports (:1 in the example above). Jan 2, 2024 · 2. session=xfce geometry=1200x720 localhost alwaysshared. 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. Before we edit the configuration, kill the first VNC session using the command below. Feb 17, 2017 · Until now I wasn't able to fix the issues in the log file. This type of file is used by default in newer versions of GDM. You should see a graphical representation of the displays connected to the Raspberry Pi. VNC works on client server architecture. $ vim ~/. conf. For example, to set a specific screen resolution and DPI: geometry=1920x1080 dpi=96. This file is a split configuration file that contains only user-specified values that override the default configuration. Update the configuration to enable x509Vnc encryption and to provide the full path to the X509 key file and that x509 certificate file. 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. Route your Tunnel to your website. The log file is in C:\WinNT\system32 if winvnc runs as service. tigervnc configuration file as an argument to the viewer, e. • Attach Listening Viewer – Connects from the TightVNC server to a viewer started in the "listening" mode. password=encryptedpassword. port=5901. You can set this to Note: You must provide the full path to the key and certificate files. path (default='. 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. Run your Sep 18, 2011 · Using 1. PcHelpWare and uvnc2me require XP or later. Step 3 — Connecting the VNC Desktop Securely. which saves the PW to ~/. DESCRIPTION vncsession is used to start a VNC (Virtual Network Computing) desktop. Apr 26, 2022 · The VNC server needs to know which commands to run when it starts up. Sep 30, 2021 · You now have a secured VNC server up and running on your Ubuntu 20. From the first menu, select Interface Options. In the last line, the ‘ geometry ‘ flag specifies the screen resolution. ini, xrdp(8) configuration file. Note if you specify the same X Oct 26, 2021 · New 'X' desktop is your_hostname:1 Starting applications specified in /home/ sammy /. VNC server configuration lives in a special . : vncviewer . There are many implementations of the VNC protocol for Linux or Unix like systems. 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. 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. 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. Many other people have since participated in development, testing and support. It is nothing but a Linux desktop sharing system or set of protocols for sharing desktop. vnc/xstartup. Jun 3, 2019 · My opinion is that VNC server support in Ubuntu 18. XX. 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. vnc file instead of the TightVNC executable to launch your remote session. vnc/config for the currently logged-in user. vnc/config Add the following configuration to it. 10. session=gnome securitytypes=vncauth,tlsvnc geometry=1280x720. Note that: RealVNC Server parameters override equivalent RealVNC Viewer parameters unless otherwise stated. custom. e. However, if used with no arguments, it will prompt for the password interactively, and it will be stored in the ~/. 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. Each user defined in this file will have a corresponding port on which its session will run. In either case, place the file on the client's file system in a safe location, i. 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. Dec 29, 2023 · Of course, it is also possible to configure the device as both a VNC client and server simultaneously. Thank you very much for your help. bashrc . ini supports the following sections: [Globals] - sets some global configuration settings for xrdp(8). /some. :/etc/xen') defconfig Use the given Python configuration script. Mar 22, 2024 · Run vncpasswd -file FILE to nominate a different configuration file. into a . Restart the VNC server after you’ve edited the ~/. [helpdesk@localhost ~]$ ls -a # Show Hidden Files & Directories. 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. vnc/passwd. Whitespace around either the key or the value is insignificant and is not considered to be part of the key or the value. 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 ~/. Give command — vim ~/. 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. vnc/passwd” as the parameter. vnc/xstartup file. snoopy:2 to refer to display 2 on machine "snoopy" in both the X world and the VNC world. Here is an example: May 28, 2024 · Introduction: VNC is an acronym for Virtual Network Computing. d/common. log file Enable logging. Prints a short description of the given Xvnc parameter. VNC® Connect is the latest version of our remote access software for personal and commercial use. vnc/ your_hostname:1. 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. nano ~/. Mar 25, 2024 · Download the RealVNC Server executable to the remote computer you want to control. Mar 16, 2007 · Click Install to set up TightVNC. . Jun 26, 2021 · VNC stands for “Virtual Network Computing” is a sharing system or set of protocols for sharing desktops. Disable Tray icon The icon in the system tray can be disabled to disallow users to change any settings. vnc/config`. Replace USERNAME with the actual username: Jul 19, 2004 · Welcome to LinuxQuestions. Edit the user’s custom VNC configuration options in ` ~/. vnc is a hidden directory can be seen by using ls -a command and located at home directory of User. PARAMETERS vncconfig also has parameters of its own which can be set on the command line. 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). To specify parameters for all programs for all user accounts on the computer, create /etc/vnc/config. log With the configuration in place, let’s connect to the server from our local machine. Note :. There is much software available to access Linux-based desktop remotely including, TigerVNC, TightVNC, Vino, vnc4server, and more. vnc/config` TightVNC: `~/. If you are using Red Hat Linux, the GDM configuration file is /etc/gdm/custom. When you do so, raspi config prompts whether to enable VNC. With the VNC server now installed to our Pi, let us now proceed to configure it. Feb 9, 2020 · The ~/. 9. 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. vncserver :1. org, a friendly and active Linux Community. The first time you launch the tightvncserver command, it generates this directory along with some default config files. Now backup the default configuration and create a new one using vim. gnome2 . Use the saved . When RealVNC Connect is installed, /etc/vnc/config. It can be used to change the behavior of the server at startup time, although for all values suitable defaults are preset. You are currently viewing LQ as a guest. 04 and up is completely broken at least for GNOME. 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. To share desktop you need vnc-server package and to access from other computers you need vnc-viewer. vnc folder under your home directory. If you are using GNOME, you need to edit the file . Under Windows 8 or later, it is recommended you install to a secure location (for example, C:\Program Files). Input the following configuration to the file. Prints the current value of the given Xvnc parameter. TightVNC additions were implemented by Constantin Kaplinsky. 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). The application will install itself, and then you will see the Completing TheTightVNC Setup Wizard. Note this file is reserved for use by RealVNC. Oct 10, 2017 · Using a configuration file works fine: vncviewer. vnc/xstartup Create a file named config and add one option per line if you need to send more options to the VNC server. If you need to pass additional options to the VNC server, create a file named config and add one option per line. vnc" At start-up/login May 13, 2021 · In this step, we will configure the VNC server for using the XFCE desktop. 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. If I adapt ~/. bash_logout . No need to set anything anywhere, on the client or on the server. Under Mac, in the vncserverui-service (Service Mode) or vncserverui-user (User NAME vncsession − start a VNC server. . Sep 1, 2022 · The VNC server needs to know what commands to execute when it starts up. The config. SYNOPSIS vncsession <username> <:display#>. Common locations include: RealVNC: `~/. vnc/passwd file. We can use many VNC clients to connect to the now started server. If you change the system hostname of your Raspberry Pi using Raspberry Pi Configuration, raspi-config, or /etc/hostname, Avahi updates the . 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). session=gnome geometry=1920x1200 localhost alwaysshared −get Xvnc-param. VNC display numbers and X display numbers are independent in one-time sessions. Our goal is 100% accuracy and we only publish information about file types that we have verified. 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 . Whenever a VNC session is initiated with one of the configurations, it automatically gets a free X display number. This configuration contains the following: [connection] host=myvncserver. 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. Do this right after installing x11vnc, run this: x11vnc -storepasswd. 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. • Configuration – Displays TightVNC configuration window (Control Interface), which allows the user to change various parameters of the TightVNC Server. This is a per-user configuration, which means each user can have different configurations. vnc Dec 25, 2023 · Finally, let’s use nano to create the configuration file ~/. Specifically, VNC needs to know which graphical desktop environment it should connect to. 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. e 5902 (5900+2). ), 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. 2. Then select VNC. 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 . vnc/config using the following nano editor command. com Oct 10, 2017 · Using a configuration file works fine: vncviewer. The VNC server will listen on port 5901, as we discussed in the previous section. Run the following chmod command to make sure permissions are correct: chmod u+x ~/. On the Raspberry Pi Desktop, open the Preferences menu and select the Screen Configuration utility. log Avec la configuration en place, vous êtes prêt à vous connecter au serveur VNC à partir de votre ordinateur local. clock, audio, etc. This window is also displayed on click the tray icon. 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. Sep 21, 2023 · Execute permissions are also required for the /. g. The first line tells VNC to use the GNOME environment. 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. 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. VNC should be up and running! Connect To VNC To Control Raspberry Pi Jul 4, 2023 · Execute permissions are also required for the /. Jan 18, 2024 · Determine the location of your VNC configuration file. Aug 29, 2022 · These commands are located in a configuration file called xstartup in the . If this file exists, it is applied in addition to either /etc/vnc/config or /etc/vnc/config. The password can also be provided directly. xztl oyt zzoxo qgdd pggd ftfndc oky jjuy rkjdnuh ocm