According to Astrid Baecklund in Personal Names in Medieval Velikij Novgorod, pp 42-48, there are the following major categories of Russian personal names:
  1. pre-Christian Names
    1. native names
      1. dithematic names of an aristocratic and solemn-sounding character (Tverdislav, etc.)
      2. monothematic names of diverse morphological types
        1. nouns
        2. adjectives
        3. verbal roots or participles
      3. names derived from place-names
    2. Scandinavian names
  2. Christian Names - also known as saints' names
    1. Greek origin - the most popular names in Russia were little changed from the Greek form because they became popular precisely because they were easy for Russians to say, rare names have more irregular and extensive modifications
      1. Church Slavonic written variant
      2. Bulgarian Slav oral variant - "native suffixes were soon added ... already among the Southern Slavs" i.e. even before introduction to Russia
    2. Latin origin - in hellenized form
    3. Hebrew origin - in hellenized form
    4. a few pre-Christian names whose bearers were canonized
  3. Baecklund omits borrowed names of other origin (Arabic, Tatar, etc.) which are, admittedly, quite rare
  4. It could be argued that diminutive names could have their own category, at least grammatically

The dithematic pre-Christian names are "true names", that is, they used only as names. And it's hard to imagine that they could be literally descriptive of their bearers. Eg. Vladislav (glorious rule), Bogomil (dear to god), Dobromir (good peace/land). They follow basic Russian grammar rules. Masculine forms are based on the unmodified root form, almost always ending in a consonant and are used as mens names. Feminine forms simply add -a/-ia to the masculine form and are used as women's names. Eg. Boleslav -> Boleslava, Dragomir -> Dragomira, Liudmil -> Liudmila.

Monothematic noun-based names are names based on standard Russian nouns and sometimes have the appearance of being potentially descriptive of their bearer. Examples include: Sarych (buzzard), Bugai (bull), Krolik (rabbit), Shershen' (hornet), Lyko (bast), Dub (oak), Rybak (fisherman), etc. These Russian names follow the grammar of the original noun, which makes them very complex. In addition, grammatically feminine noun-based names are freely used as men's names, making it difficult to prove that they should also be usable as women's names.
Animate nouns often do not simply add -a/-ia to the masculine form. For example, the feminine of wolf (Volk) is Volchikha (or volchitsa, but that form is not attested in Wickenden). In modern Russian, some nouns are can be used un-modified for either gender, especially inanimate nouns and occupational nouns. Locative noun-based nouns... Occupational noun-based names... Zoological noun-based names...
Inanimate nouns... Luk/Luka (onion).

Monothematic adjective-based names are names based on standard Russian adjectives and could be descriptive. They are usually easy to identify by their distinctive adjectival endings (-yi, -oi, -ii), and easy to convert from masculine to feminine using the standard Russian grammar for adjectives (remove the masculine ending yi/oi/ii and add -aia instead). Short-form adjectives have dropped the yi/oi/ii/aia ending (or more) and are also used as names. Masculine short-form adjectives are converted to feminine by simply adding -a/-ia, eg. Beloi/Belaia (white) -> Bel/Bela (short form). Krasnoi/Krasnaya (beautiful) -> Kras/Krasa. Miakush/Miakusha (soft - vs. verb-based?)

Monothematic verb-based names are names based on standard Russian verbs, based on the verb roots or in the form of participles. Khran/Khrana (from khranit', to keep). Liub/Liuba (from liubit', to love). Mar/Mara (from marat', to soil, blemish). Participles end in -shii or -shshii (present active), or -myi (present passive), or -nnyi vs -tyi (short forms -n/-na vs. -t/-ta - past passive) and are treated grammatically like adjectives, although not all can be converted into short forms.

Borrowed names, including Scandinavian names and foreign saints names, are also "true names" since their original meanings and grammar have been lost in the transition from the foreign language. They are modified to suit Russian pronunciation and grammar. Alien sounds are changed to sounds more convenient to the Russian tongue, so "th" becomes "f" or "t", "eu" becomes "ev", etc. In Russian, masculine names consist of the unmodified root form, so superfluous foreign endings are often stripped off, thus Petrus becomes Petr, Alexandros -> Aleksandr, Theodorus -> Feodor". The Greek -as was changed to -a, Kosmas -> Kosma, Nikitas -> Nikita. The Greek -ios was changed to -ii, so Ignatios -> Ignatii, Grigorios -> Grigorii. The Greek -eios, -eas and -aios became -ei. [Baecklund p56-65] Names ending in proper consonants such as Simeon and Iosif and Oleg were accepted unchanged. Foreign feminine names ending in anything other than -a/-ia were usually changed to get that ending, so Helene -> Elena, Eirene -> Irina, Ioanno -> Ioanna. The Russified names then generally follow the same grammatical rules as the dithematic pre-Christian names. Masculine names ending in consonants just add -a/-ia (or are formed from the feminine version by dropping the -a/-ia, eg. Elen/Elena). Masculine names ending in -ii change to -iia.

Of course, it wouldn't be Russian if there weren't exceptions to all of the above rules.