これで出来るはずなんでふけどね(^^
[PunRPC]
void 頭装備(int チンコid)
{

GameObject チンコ = PhotonView.Find(チンコid).gameObject;
Playerチンコ頭 = チンコ.transform.Find("metarig/hips/spine/chest/neck/head").gameObject;
Debug.Log(チンコ);

Player頭 = チンコ.transform.Find("頭").gameObject;
GameObject 装備 = (GameObject)Resources.Load(itm.アイテム名);
pos = Player頭.transform.position;
Player頭生成 = PhotonNetwork.Instantiate(装備.name, pos, Quaternion.identity, 0) as GameObject;




Player頭生成.transform.position = Playerチンコ頭.transform.position;
Player頭生成.transform.rotation = Playerチンコ頭.transform.rotation;
Player頭生成.transform.SetParent(Playerチンコ頭.transform);

}
というより(^^
pos = Player頭.transform.position;
Player頭生成 = PhotonNetwork.Instantiate(装備.name, pos, Quaternion.identity, 0) as GameObject;

で生成してるのに何で座標0,0,0のあたりに生成されるんでふか?(^^