Revision date: October 29, 2020
TOC
X-Windows
[X-Windows]
If emulation of the middle button of a mouse doesn't work (ie. pressing
left and right buttons simultaneously) then you can use xinput to enable
this feature. Search uniman.txt for "xinput".
Arch Linux
[Arch Linux]
Sometimes after an upgrade or change of hardware (or virtual hardware)
something goes wrong and the system doesn't boot up properly.
This could be a problem with the initramfs and or grub.cfg files
(e.g. a root partition's uuid or drive # changed)
In such a case do as follows:
Step 1. bring up system with a recent arch iso image.
Step 2. mount root partition
$ mount /dev/sdaX /mnt (substitute for X in accordance with your setup)
Step 3. change into arch root
$ arch-chroot /mnt
Step 4. mount /boot
$ mount /dev/sdaY /boot
Step 5. update system
$ pacman -Syu
Step 6. regenerate initramfs
$ mkinitcpio -p linux
Step 7. regenerate grub configuration file (grub.cfg)
$ grub-mkconfig -o /boot/grub/grub.cfg
Reboot.
GNOME
[GNOME]
If running Gnome desktop, and desktop freezes, try the following:
Press CTRL-ALT F1 - should display login window.
If that doesn't work then:
Press CTRL-ALT F3 (up to F12) to put yourself in a virtual console.
Login in as root. At the shell prompt type:
$ top
Look for processes called "gnome-shell". Its PID should appear on the right.
Kill the process
$ kill -9 thePID
Return to desktop by pressing CTRL-ALT F2
Middle mouse button is disabled in GNOME in Fedora 28.
In order to enable it, installed gnome-tweaks
$ dnf install gnome-tweak-tool
Launch and select "Keyboard and Mouse" settings.
Disable "Mouse Emulation" (bottom).
For middle mouse paste functionality turn on "middle click paste".
Latex
[LATEX]
- Hebrew fonts recognized by Latex engine but unknown (not displaying) to xdvi
(e.g. mktexpk: don't know how to create bitmap font for rfrankb.)
* First thing to try:
$ sudo mktexlsr # rerecreate database of tex paths
$ sudo updmap-sys --enable Map=culmus.map # enable font map
It could be after an upgrade/update of tex/culmus the latter wasn't
performed.
* If this doesn't work, there could be a problem with updmap-sys enabling
the fonts.
There were times where I manually copied culmus' map files from a previous
version to the current version. In particular the map files in directories:
/var/lib/texmf/fonts/map/dvips/updmap
/var/lib/texmf/fonts/map/pdftex/updmap
followed by
$ sudo texhash
* There is also a workaround which manually specifies the map file to use.
It is described at the end of this subsection in uniman.
* Another thing that has happened in the past is that the tfm files in
/usr/share/texlive/texmf-local/texmf-compat/fonts/tfm/public/culmus
and vf files in
/usr/share/texlive/texmf-local/texmf-compat/fonts/vf/public/culmus
were corrupt (they all had the same size and didn't mach previous version).
Again, I manually copied the contents of these directories from a previous
version to the current.
If latex can't find your culmus_font.pfa (type 1 font), then there may be
an improperly configured link to your culmus fonts directory.
$ cd /usr/share/texmf/fonts/type1/public
This should have a link to your culmus directory.
If the link was improperly configured or is absent, then
$ sudo ln -s /usr/share/fonts/culmus /usr/share/texmf/fonts/type1/public/culmus
- Error: /var/lib/texmf/web2c/pdftex/latex.fmt made by different executable version
(Fatal format file error; I'm stymied)
For a full discussion see this webpage.
One of the respondents suggests running (as root)
$ fmtutil-sys --all
Note: the above util will place it in /var/lib/texmf/web2c/pdftex
I think running as user fmtutil --all will place it in
~/.texlive/texmf-var/web2c/pdftex
This should also fix the problem for user, although not for other users.
Network
[NETWORK]
This section helps diagnose a network that is functioning incorrectly,
or not functioning at all.
Since a network operates on a number of levels it is necessary to determine
at which level lies the fault.
Therefore, try the following sequence of steps.
1. Test network connectivity.
ping 127.0.0.1 (localhost)
ping 8.8.8.8 (google IP)
ping www.google.com
2. If in step 1, ping-ing the loopback interface worked, but not the
others then proceed as follows:
A. Check hardware connectivity
Test to see if cable is connected or not.
If running a Virtualbox virtual machine, verify the network settings are
such that the vm is attached to a network (e.g. NAT, bridge).
(In advanced settings check that cable is connected. It is possible
that somehow the "cable connected" box became unchecked).
Test if router is connected to WAN (wide-area-network).
B. Check data link connectivity
* Test if network daemon service is running.
If using networkd then
$ systemctl is-active systemd-networkd.service
If using Network Manager then
$ systemctl is-active NetworkManager.service
* Test if network interfaces are up
$ ip link show
Can also use
$ ip address (to show ip addresses)
Will list network interfaces (ignore loopback interface in list).
Look for wired connection and/or wireless connection.
See if state of relevant connection is UNKNOWN/DOWN/UP.
If DOWN trying bringing up:
$ ip link set interfacename up
Check if interface has been brought up
$ ip link show
If UNKNOWN check cable connection.
* Identify network devices (e.g. ethernet cable) and network module
$ lspci -v
Look for ethernet and/or wireless devices.
Look for which kernel driver and module device uses.
Test if network module is loaded
$ lsmod | grep devname
Will display module name if module is loaded.
C. Check routes
$ ip route show
A number of routes may appear, especially if your machine has more
than one network interface cards (real or virtual).
An example of a route:
10.0.5.0/24 dev eth1 proto kernel scope link src 10.0.5.100
This means that a network packet having IP address 10.0.5.100 should
send the packet to subnet 10.0.5.0/24 through interface "eth1".
You should make sure to have a default route. For example
default via 10.0.5.150 dev eth1 proto dhcp src 10.0.5.100 metric 1024
(see man ip-route for more on using ip-route)
3. If in step 1, ping-ing 8.8.8.8 worked, but not www.google.com
then the problem is a nameserver problem or DCHP.
Check if the named (name server daemon is running).
If the router is using DCHP it should automatically configure
a nameserver.
Could edit /etc/resolve.conf to manually set name server.
To start the DHCP server for a given interface use:
$ systemctl start dhcpcd@net_interface.service
where net_interface is the name of your ethernet/wifi interface
(e.g. eth0, enp0s3)
4. Firewall - if only selected web sites or services (ports) are
not responding then it is likely a firewall issue.
Network-VM
[NETWORK-VM]
- VM fails to connect to network/internet
When activating firewall in Fedora, issues may arise with communication
between VM and host, as well as between the VM and internet (which uses NAT).
Before you suspect the firewall try restarting the NetworkManager.service
within the VM (or networkd.service if that is your active networking service).
If you see that no communication is taking place, turn off firewall and see
if that fixes the problem.
$ systemctl stop firewalld.service
Note: Restarting the NetworkManager.service (or networkd.service) in the VM
may be necessary.
If that fixes the connectivity issue, then the following changes should be
made in the firewall (Start with runtime, and if works make permanent).
Select zone: FedoraWorkstation (default zone)
Under "Services tab" check "dns"
Under "Masquerading tab" check "Masquerade zone"
(this should permit communications between FedoraWorkstation
and the outside world via NAT)
In a VM the gateway (/etc/resolv.conf) should be the IP address
of the virtual bridge created for communicating with the outside
(NAT).
Example of virtual bridge interface:
6: virbr0: mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 52:54:00:50:8f:2e brd ff:ff:ff:ff:ff:ff
inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
valid_lft forever preferred_lft forever
Even after making the above changes to the firewall settings,
you may still experience lack of communication when rebooting into VM.
To resolve, try to restart firewall service on host,
and on VM restart NetworkManager.
Reboot and see if networking works.
DHCP
[DHCP]
If you are running a dhcpd server (e.g. on a router), and computers on the
network cannot reach you, then its possible the dhcp daemon has failed to run.
To test its status :
$ systemctl status dhcpd.service
If everything is OK you'll get something like
* dhcpd.service - DHCPv4 Server Daemon
Loaded: loaded (/usr/lib/systemd/system/dhcpd.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2019-06-14 17:21:00 IDT; 6min ago
...
If the dhcp daemon fails to run, check for reported errors.
If you get an error such as "multiple interfaces ...",
make sure you don't have two addresses attached to an interface.
Use nmcli graphical interface or command line tool to check how
many ipv4 addresses are associated with your interface.
$ nmcli c show intern0 # will list all properties for intern0 connection
- DHCP not initiating properly.
I have in the past had problems with dhcp initiating properly for a given
installation. In which case I've had to enable it manually.
I first look up the name given to the network interface card (names to network
interfaces are usually assigned automatically by the OS or by a udev rule)
$ ip link show
Say the network interface is named enp0s3, then I enable the dhcpd service
for that interface card:
$ systemctl enable dhcpcd@enp0s3.service
- What if I change network cards and the its name changes?
(This can happen when converting a virtual machine for use with a different
hypervisor, or when creating a udev rule to change its name).
In such a case when the computer boots, it will spend a significant
amount of time trying to initiate the service dhcpcd@enp0s3.service
until eventually skipping it.
In such a situation I would need to disable the dhcp service associated
with the old network interface.
Say the new network interface is named "ens0", then:
$ systemctl disable dhcpcd@enp0s3.service
Then enable a dhcp service associated with the interface under its new name:
$ systemctl enable dhcpcd@ens0.service
(Note, in the new installation it might not be necessary to re-enable dhcpcd
manually)
SAMBA
[SAMBA]
- Unable to find suitable address, or Host Unreachable
If mounting or attempting to access a samba share using smbclient,
you get the message "Unable to find suitable address."
Try turning off the firewall on the server and/or client side.
If that fixes the problem, then configure the firewall to accept
samba traffic.
Samba has separate entries for samba-client and samba (server) entries.
Make sure both are on on server side.
If using firewall-config tool, make sure you select "permament" mode,
so that changes will persist accross boots.
- NT_STATUS_BAD_NETWORK_NAME
If mounting or attempting to access a samba share using smbclient
you obtain the message "NT_STATUS_BAD_NETWORK_NAME"
Try turning off SELinux (setenforce 0) on server side.
If that fixes the problem, then configure share directory and its
decendents, as well as its parent directories to type "samba_share_t"
(see more about that in netman.)
- NT_STATUS_ACCESS_DENIED
If you try to list contents of directory using smbclient you get the error
"NT_STATUS_ACCESS_DENIED listing", then you don't have permissions to read
that directory.
This can be resolved by logging in as a different user.
For instance,
$ smbclient -U authuser -W mydomain sharename (e.g. //10.0.0.1/myshare)
will login as authorized user "authuser" on domain "mydomain".
If mounting share, place a line in /etc/fstab
//hostaddress/sharename mountdir cifs username=authname,uid=myuid,...
The option "username" causes samba to login as authname which would be
a user authorized to access files in that share.
For instance if user "michael" owns the share directory, then applying
the options username=michael,uid=myself will log in as michael.
However, all files in the share will appear on the client side as belonging
to user "myself".
So you can read and write files as though the share belongs to you.
However, the files/directories will be created using michael as the owner
on the server side.
This is useful for sharing a virtual machine as noted in section on
VIRTUALBOX.
Alternatively, on the server side, the user might not be registered.
To add user (see netman):
$ smbpasswd -L -a user_name
Alternatively, on the server side, SELinux might be preventing the contents of
the share from being accessed.
You can easily test if this is the case by temporarily switching off SELinux
$ setenforce 0
If this turns out to be the problem see subsection Samba and SELinux in netman.
- NT_STATUS_HOST_UNREACHABLE
If you get the above message then your system is unable to ...
- Permission denied
If smbclient is able to access the share, or the share is mounted and
readable.
However:
* if using smbclient and received message:
"NT_STATUS_ACCESS_DENIED opening remote file \anyfile".
or
* you have a share mounted and you get a "permission denied" message
when attempting to create a file or save onto an existing file.
Then you most probably need to add the following line to the smb.conf file
(on the server) for each share entry where you are experiencing this problem:
force user = privileged_user
where privileged_user is a user who has access to that directory.
Changing permissions on the server side might also work.
- protocol negotiation failed: NT_STATUS_CONNECTION_RESET
This can occur if the server only allows the client to communicate with
protocol 2 or 3.
If using smbclient use option -m SMB2 or -m SMB3.
If using mount, add option to fstab line: vers=2 or vers=2.1 or vers=3
(see netman for more)
NFS
[NFS]
- mount.nfs: requested NFS version or transport protocol is not supported
Usually the NFS version or transport protocol should not be an issue here.
First see if an NFS server is running on the host.
$ systemctl is-enabled nfs-server.service
Second, check if host address is correct (you may have put in the client
address by mistake.)
If the address is correct ..
Virtualbox
[VIRTUALBOX]
* sharing virtual machine between users
If sharing a virtual machine you will inevitably run into a problem
whereby Virtualbox writes its files using umask 022 owned by the
login user with the same group.
It does not respect the user's or system umask setting.
A potential solution is to masqerade as the owner of the virtual machine.
This can be accomplished using samba (and perhaps nfs).
See netman for more info.
Another option is to create an alias and correpsonding sudo entry to
change permission for the virtual machine folder and its contents.
Also, create an alias to change permissions back to owner.
The first alias will be invoked prior to starting the VM,
and the second after stopping it.
The alias will ovbiously have to invoke sudo, since one user can't change
the permissions to that of another user.
* USB on Virtualbox
- none of the usb devices connected show up on VBox's menu
Try installing USB extension pack.
Go to VBox site www.virtualbox.org, select downloads, select extension
pack with version number as close to the version of your VBox.
In dialog box select "install" (will be prompted for adminstrator password).
Also add user to "vboxusers" group.
Reboot computer, and your USB devices should appear in the menu.
- USB controller on Win7
If Windows fails to install Universal Serial Bus (USB) controller driver
on the virtual machine, check which kind of controller is selected
in virtual machine's settings. If its USB3, change it to USB2.
That should do the trick, and windows will then install the USB controller.
- USB3 device plugged into USB3 port gives error when virtual machine
attempts to capture device (VERR_PDM_NO_USB_PORTS).
Solution: if virtualbox extension pack is not installed, install it.
Then go to machine settings (while machine is powered off) and set
radio button "USB 3.0 (xHCI controller)". This should do the job.
- Ipod/Ipad doesn't connect to Win7 VM
Make sure USB controller is installed properly (check device manager
in control panel).
If not follow steps above.
MLTERM
[MLTERM]
* Hebrew (UTF8) characters not displaying
Check if font supports utf8 Hebrew characters (e.g. devjavu sans).
* Hebrew characters displayed, but cannot type them in.
This is probably a locale issue. Try
$ export LC_ALL="en_US.UTF-8"
Eclipse
[Eclipse]
* When opening eclipse getting error:
"Unrecognized VM option 'UseStringDeduplication'"
If you get this error you probably need to set the default java version to 8.
In arch linux use the following to get a list of installed java environments:
$ archlinux-java status
java-10-openjdk
java-7-openjdk/jre (default)
java-8-openjdk
This shows that java-8 is installed, but it is not the default.
To set it to the default:
$ rchlinux-java set java-8-openjdk
This should do the trick.
If not installed then install it (see arch wiki on java).
Uncategorized
[UNCATEGORIZED]
* Very slow in presenting password prompt
Never solved it. But problem hasn't come up in many years.
Revision History
********************************************************************************
- Revision History -
********************************************************************************
2020_06_17us: Comprehensive editing
2020_10_29us: Minor editing