Why does package size during installation differs from package size reported during removal?

The packages have something known as dependencies. For example , package cowsay depends on perl ( and you can verify that with apt-cache show pkgname). When you install a package, apt-get installs additional dependencies as well, but when removing a package - apt-get leaves dependencies alone, and you have to use autoremove option

On the other hand, it also doesn't account for the cache packages, i.e. the actual .deb package which apt downloads, then extracts stuff from it and compiles.

Check this:

$ apt-cache show cowsay | grep -i size
Installed-Size: 88
Size: 18532

Alldeb packages have this Installed-Size information field which by definition is

  estimated installed size in bytes, divided by 1024 and rounded up

( Notice, it's estimated, it's may vary with the actual amount of installed files, and depend on how meticulous the package maintainer is about the details )
So the estimated installation will be 88*1024 = 90112 or 90.1 kB in size. And it coincides with what purge says:

After this operation, 90.1 kB disk space will be freed.

After I have purged the package, the archive however is still there:

$ ls /var/cache/apt/archives/cowsay_3.03+dfsg1-6_all.deb
/var/cache/apt/archives/cowsay_3.03+dfsg1-6_all.deb

You can use apt-get flags clean and autoclean as well as remove those manually


Cannot install RawTherapee from PPA on Ubuntu 18.04

The package topmenu-gtk3 does not exist in 18.04.  The problem described is likely caused by attempting to install a package compiled for 17.10.  For instance, if installing from a ppa in which old binaries were copied rather than recompiled.

The most expedient solution is to remove the offending ppa (or other nonstandard repository) and install the official packages.

One may also choose to download the source; edit debian/control to remove the dependency; then recompile or upload to a ppa.  This is the route I typically take, and the result may be found by searching launchpad for rawtherapee.  However, the problem with relying on other's ppa is you're beholden to their whims and fancies.


Delete folders that match name in different path

The following bash script should do what you describe. You may want to put an echo in front of the rm the first time you run it, just to make sure that it's going to do what you expect.

#!/bin/bash

if test -d "$1"
then
    from="$1"
else
    echo "could not find source directory \`$1'" >&2
    exit 1
fi

if test -d "$2"
then
    to="$2"
else
    echo "could not find destination directory \`$2'" >&2
    exit 1
fi

for fromdir in "${from}"/*/
do
    todir="${to}${fromdir#"${from}"}"
    if test -d "${todir}"
    then
        rm -rf "${todir}"
    fi
done

Name the script something appropriate like acd_prep and use chmod +x acd_prep to make it executable. For the example folders in the question, you would then run the script as acd_prep /ParentFolder /Mount.


VirtualBox not installing on Ubuntu 14.04 LTS

it seems that you're trying to install vagrant, that requires virtualbox to be installed, so try to install it explicitly first

i see 3 different versions available to install

virtualbox-4.2 - Oracle VM VirtualBox
virtualbox-4.3 - Oracle VM VirtualBox
virtualbox-5.0 - Oracle VM VirtualBox

Install with this command ( version 5.0 has USB 3.0 support ), this will also install the necessary kernel modules

sudo apt-get install virtualbox-5.0


This is probably happening to you because your dist-upgrade is set "only for LTS". In order to upgrade to Ubuntu 13.10 (which is NOT and LTS release) you have to set the upgrade to For any new version. You can do this by doing the follow:

Run the update-manager application from the Dash.

In Update Manager, click the Settings... button, and enter your password to start the Software Sources application.

Select the sub menu Updates from the Software Sources application.

Confirm the "Notify me of a new Ubuntu version:" option is set to "For any new version", and change it if otherwise.

Close the Software Sources application and return to Update Manager.
In Update Manager, click the Check button to check for new updates.

If there are any updates to install, use the Install Updates button to install them, and press Check again after that is complete.

A message will appear informing you of the availability of the new release.
Click Upgrade.

Follow the on-screen instructions.


What does this string do in a Unity lens?

You have a basic understanding of Python, right?

It's a basic for-loop which iterates over the return value of the wikipedia_query() method and stores it as article for each iteration.
Same as each simple loop, like:

for x in range(4):
    print x


cudamat test exception: error initializing CUBLAS

ok...

Installing nvidia-331-uvm fixed it. It was not included in nvidia-331 and nvidia-cuda-toolkit.

sudo apt-get install nvidia-331-uvm


driver 8812au install with NO ethernet access

You can do the following:

On another computer go to that github site:
https://github.com/abperiasamy/rtl8812AU_8821AU_linux and download
the zip (bottom right)
Put that zip on a flash drive
Boot into ubuntu
Unzip the zip with unzip [file name] or do it by right clicking in
your file manager
cd to that folder (step 4 in your steps) and follow your steps from
there.

EDIT: You'll probably need build-essential if it's not already installed:

http://packages.ubuntu.com/precise/build-essential

Linux headers generic here: http://packages.ubuntu.com/trusty/linux-headers-generic


I had the same problem but I figured it out: click on the envelop icon for Empathy and then click on Chat and it will sign all your accounts online.  This really should be automatic, anyone know how to do that?


You can download and use skins from official site (or create your own):

Tools -> Interface -> Look and feel

By the way - try to change Force window style ( breeze looks better)

As I know, VLC allows only change subtitle fonts.


In short: You can't mount your Windows drives read-write in Ubuntu, when Windows fast boot is enabled, since Windows wont flush latest updates to disk when shutting down but keep them in a state-file, so the filesystem will not be in a consistent state.


How to auto un-maximize all windows for all applications?

By default, windows of a large size will automatically maximize indeed. This is controlled by a setting of the mutter window manager. You can turn that effect off with the command
gsettings set org.gnome.mutter auto-maximize false

That should solve your issue where you find that windows are maximized even if you did not explicitly do that yourself.
There is unfortunately little control on the default window size of a created window. This is in first instance determined by the application itself. Many applications "remember" sizes, Evince remembers sizes (annoyingly according to me) on a per document basis, others do not remember size and position and open each time the same way with some default size and a placement determined by the "smart" algorithm of mutter, or "centered" if you turn that option on in Gnome Tweaks.
There are old tools, i.e., devilspie and devilspie2, that allow to define rules so that newly created windows are sized and placed where you determine, but they are not that easy to work with.
Anyway, likely the configuration setting will already solve most of your current issue.


Extracting text from file and output the line into a file

Normally, I would advise that you use a proper HTML parser to parse HTML.

However, this data looks pretty straightforward: using a double quote (optionally followed by "v") as the field separator, grab the 2nd field of each line. Then join the pieces with commas

result=$( grep ... file.html | awk -F'"v?' '{print $2}' | paste -sd, )
echo "http://x.y.z/$result.mp3"


1st, you need to check the location where you have installed genymotion.

2nd, Supposing it to be default downloads folder. You can enter this folder by typing    these commands in the terminal:

$ sudo su

then you will be prompted for root password, then type

$ cd Downloads

here in the Downloads folder you can see the list of files typing ls

If you see genymotion directory then enter the directory typing cd genymotion  then type ./genymotion and it will run the application.

You are good to go now.

In case your default installation directory is something else then enter that directory and follow the last 2 commands(cd genymotion and then ./genymotion)

Let me know if there is any problem.


You can get Skype 4.3 on 16.04 by enabling the Partners repository, as others have said. However, it isn't really worth it. Skype will open, but you won't be able to do a lot of things, including group calls (this is a problem with all Linux distros). You may or may not also have dependency issues, as these have been reported on 16.04.

Instead of Skype 4.3, you should get the Skype for Linux Alpha app (download the DEB). It's still in alpha, as the name suggests, but it currently has all the features of Skype Web.

If you want to fully use Skype on Ubuntu 16.04, you'll need the Alpha version.


Depends what you want to do. If you want to monitor all what users run, then no, this is not easily possible. There is an administrative suite of programs called bos which can be used to monitor all running processes.

If, however, you just want to store all commands that you type, then yes, this is being done for you by bash. Bash stores a command history in ~/.bash_history.  By default, however, only when a shell exits the command history is written. Read this web page if you want to customize it such that most of your history is saved.


After installing ubuntu my pc still boots straight to windows 8.1

Boot again from your Ubuntu Live USB and open GParted. Set the boot flag to your Ubuntu partition.

This will result in using GRUB2 as boot loader, which is installed on your Ubuntu's partition. When the boot flag is set to the Windows partition, it will use Windows' boot loader.


Juju Bootstrap process is timing out. What you need to do is to increase the timeout in "/home/user/.juju/environments.yaml" file. Search for "bootstrap-timeout: 1800" and increase the value to 2500.

Alos, please make sure that your Power and ssh settings are right.

Do the clients need to be Pxe booted ...?

Make sure that your nodes are in "ready" state and not in "allocated" or in any other state.

Can I continue to do a juju deploy without having juju "reinstall the os on the clients"?

No, you can't. Juju deploy will fail without successfull Juju bootstrap.


Ubuntu FTP and SFTP client firewall rules for UFW

In /etc/proftpd/proftpd.conf
Unmark: PassivePorts                  65000 66000
(choose a span of passive ports)
In ufw open the span of ports
sudo ufw allow 65000:66000/tcp


How to set up server on Ubuntu 18.04 desktop?

First of all, if you don't have internet, you're gonna have a hard time doing anything on the internet. Unless you have some exotic unsupported ethernet card, it's unlikely that ubuntu is the issue.

Second of all, you seem unsure about what a server is. A server is just a computer running a piece of software (or often the term just refers to the software) to serve a specific kind of program as a client. You can't use an ftp server to play minecraft on it, an ftp server is only for ftp (filesharing). Also ftp is just a protocol, not a program.

Try this to install an ftp server, it should be installing. Maybe you forgot to run as root.

sudo apt install vsftpd

If the server should be public, you'd have to let your computer run 24/7, open up a port on your router and maybe buy a domain. Unless you're willing to learn a ton of required knowledge, you won't be able to do it. If you just want filesharing, you could try a normal cloud storage like mega.nz. The rclone client provides advanced functionalities like mounting it to the local file system and other stuff, assuming that you are more or less a beginner when it comes to the deeper linux stuff, that should do the trick.


Ubuntu 20.04: cannot shutdown properly, failing to start services

Have you tried the "recovery" mode to allow your system clean start & shutdown?
While "off"

Power on your system & watch for the manufacturer's logo on the screen.
Immediately press "Esc" which will take you to the "recovery Mode.
Scroll down to the latest version of Linux Kernel (first on top).
Select each option begin from top. (clean, file check, autoremove, etc)
Once done restart & shut down. If problem still insist.
repeat 1 @ 2. This time select the older Linux kernel & repeat the same.

Hopefully by this time your system should work fine.


"Sorry, ubuntu 12.10 has experienced an internal error". How to overcome the error?

Workaround to prevent the message appearing:

Press "Ignore Future Problem of This type", and you will prevent the message showing every time you do it. There is no known fix for this error found by searching.


I figured this out. I had to turn the colors in the VNC client down to 64 and now it stays connected to the server. This was for the default network settings (no inbound connections to guests).

I changed my KVM install to connect guests to a bridged network and now VNC works fine with more colors.


System hangs after resuming from suspend

Ya i too had the problem with my Dell laptop... I called the Dell service engg and he told that is a graphical device problem and need to change the graphics card... But since that is a laptop I have changed my entire motherboard and after that It works fine... Finally that is a graphics hardware problem...


It seems that arbtt, the automatic rule based time tracker, is what you are looking for. The code is here on Github.

Like you want it, the arbtt-capture daemon collects information about which window has been the active window for how long (while counting time without any action as "idle" once a configurable threshold is hit). You then use a second program arbtt-stats to analyze the collected data, providing statistics about how much time you spent on what.

(Source: this answer)


Synaptics TouchPad Driver (Logitech T650): How to fix false positive clicks when trying to two-finger scroll?

You can install libinput instead of using xorg-synaptics.

It can be done by running

sudo apt install xserver-xorg-input-libinput

If you need to enable tapping, you can do it in the config file.

For more details see this question.


HP Stream 11 late 2015 edition (r050sa) Wifi not working properly

The driver parameter ant_sel is to select one or the other of two antenna connections. Generally, one works well and the other doesn't work at all. You can test with:

sudo modprobe -rv rtl8723be
sudo modprobe -v rtl8723be ant_sel=2

How is the performance?

Then try:

sudo modprobe -rv rtl8723be
sudo modprobe -v rtl8723be ant_sel=1

Which is better? Set the parameter permanently with:

sudo -i
echo "options rtl8723be ant_sel=1"  >  /etc/modprobe.d/rtl8723be.conf
exit

Of course, specify the setting that yields the best performance from your experiment above.

As to why the performance is better in Windows, they are completely different drivers. Some things work better in Linux and some things work better in Windows.


Ubuntu 18.04.2 cannot log in local or SSH after power failure

I went to recovery mode, then went to "root" option

on 1st Ubuntu server,
I used command umount -l /dev/sda2 and rebooted.

On another Ubuntu server I did the same thing above but had I had to also run command fsck -p /dev/sda2 and I also ran fsck /dev/sda2 and rebooted.

They are now working and I can log in and SSH and all items seem to be working.


Why do I need to run source command for making .bash_profile alias available?

The ~/.bash_profile is only read in login session.

Also, having a ~/.bash_profile prevents the sourcing of ~/.profile, that is the preferred file to use for login shell in the bash configuration for Ubuntu.

When you log in the Display Manager (I suppose GDM), the ~/.profile is read by default (I don't know if GDM follows bash rules and read ~/.bash_profile instead, if exists).

Even if ~/.bash_profile were read from GDM, aliases are not inherited, so
the shell you have in a graphics terminal (that is not a login shell) cannot see them.

The solution is: put your aliases in ~/.bashrc, and use aliases only for very simple things, otherwise use functions.

The file ~/.bashrc is read by non-login interactive shells, and is sourced in ~/.profile, so that its content is also available in login shells.


You could try to repair apt-get. Try to run:
sudo apt-get -f install
and did you try to modify... err, your sudoers file? You could try this: ldconfig

or did you try to install packages from a different version of ubuntu than yours?


How to keep battery charge at 80% to increase its lifespan

Slightly duplicate of How can I limit battery charging to 80% capacity?, but I won't mind. And for those that say the 80% thing is a myth, that's not what Jorge ask for; he wanted to know how to enable it, whether or not it's a myth...discuss that elsewhere.

If you don't have an option in your BIOS, it's difficult to impossible to override the hardware in your computer without the proprietary company that made your computer (HP) making a special script for you. Look for something like that, otherwise, it won't work.

Maybe look in your BIOS again. Maybe also (if you are daring enough), to update your BIOS. This is tricky, but I will not explain it here. That MIGHT allow you enable this setting. I still think that it would be in your BIOS if anywhere, check over it again. If you do update your BIOS, ensure it's a newer version, AND that it includes the "enable batter saver" option that you want (you may have to read the update notes (bleah!)).

Hope this helps! If it does, +1 me :).

Zzzach...


How do I output display at 2560x1080? (am trying to add modeline with xrandr)

I have connected ultrawide monitor by HDMI with

Modeline "2560x1080_40.00"  147.25  2560 2680 2944 3328  1080 1083 1093 1108 -hsync +vsync

I used:

cvt 2560 1080 40

HDMI did not support > 165 Mhz, however HDMI 1.3 supports up to 340 MHz maximum pixel clock rate wiki.


Cannot install xserver-xorg-video-dummy on Ubuntu14.04

This is a dependency problem in package manager like this problem

I tried aptitude and the proposed solutions destroyed the entire ubuntu installation...

You need to install some other packages before installing dummy driver
Try this and it will resolve the problem:

apt-get install  libglew-dev libcheese7 libcheese-gtk23 libclutter-gst-2.0-0 libcogl15 libclutter-gtk-1.0-0 libclutter-1.0-0  xserver-xorg-input-all

P.S. I tried the above packages on ubuntu desktop x64 14.04.3 and 14.04.4 and worked for both.


Reconfigure the display-manager non-interactively

After reading up the .post*, '.pre*' and .config scripts of gdm3 and lightdm I have found a way to run dpkg-reconfigure interactively to change between the display managers and keep the magic of the mentioned pre, post and config scripts.

All you have to do is to update the /etc/X11/default-display-manager file with the display manager binary you want to change to. Then run dpkg-reconfigure non-interactively and you are done. Well, gdm3 does not update the debconf database, whereas lightdm does, but that is OK to do that manually.

Here we go...

Change from lightdm to gdm3.

$ echo "/usr/sbin/gdm3" > /etc/X11/default-display-manager
$ DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true dpkg-reconfigure gdm3
$ echo set shared/default-x-display-manager gdm3 | debconf-communicate

Change from gdm3 to lightdm.

$ echo "/usr/sbin/lightdm" > /etc/X11/default-display-manager
$ DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true dpkg-reconfigure lightdm
$ echo set shared/default-x-display-manager lightdm | debconf-communicate

As already mentioned the last step echo set shared/default-x-display-manager lightdm | debconf-communicate is not really necessary here as the scripts of lightdm will take care of it. But for the sake of a simplified script it does not hurt to set it.

Putting things together into a shell script could be as follows. One could add more control if needed.

$ cat set_dm.sh
#!/bin/bash

set_dm() {
    DISPLAY_MANAGER="gdm3"
    DISPLAY_MANAGER_SERVICE="/etc/systemd/system/display-manager.service"
    DEFAULT_DISPLAY_MANAGER_FILE="/etc/X11/default-display-manager"

    if [ -n "${1}" ]
    then
        DISPLAY_MANAGER="$1"
    fi

    DISPLAY_MANAGER_BIN="/usr/sbin/${DISPLAY_MANAGER}"
    if [ ! -e "${DISPLAY_MANAGER_BIN}" ]
    then
        echo "${DISPLAY_MANAGER} seems not to be a valid display manager or is not installed."
    exit 1
    fi

    echo "${DISPLAY_MANAGER_BIN}" > "${DEFAULT_DISPLAY_MANAGER_FILE}"
    DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true dpkg-reconfigure "${DISPLAY_MANAGER}"
    echo set shared/default-x-display-manager "${DISPLAY_MANAGER}" | debconf-communicate &> /dev/null

    echo -n "systemd service is set to: "
    readlink "${DISPLAY_MANAGER_SERVICE}"

    echo -n "${DEFAULT_DISPLAY_MANAGER_FILE} is set to: "
    cat "${DEFAULT_DISPLAY_MANAGER_FILE}"

    echo -n "debconf is set to: "
    echo get shared/default-x-display-manager | debconf-communicate
}

set_dm $1

The two variables DEBIAN_FRONTEND=noninteractive and  DEBCONF_NONINTERACTIVE_SEEN=true are needed to really run interactively.

What also helped was the environment variable DEBCONF_DEBUG to see what debconf is doing. It can be set to

user
developer
db
.* which is all of the above


How can I recover the files deleted from a folder synchronized with Ubuntu One?

Whenever you delete files using the file browsers in Ubuntu, Windows or MacOSX, those files will be moved to the trash folder. So, the first place to look is the trash folder of your current machine.

When one machine receives the message that some files where deleted in another, it will also move the files to its trash. So if you have emptied the trash or for some reason the files are not there, you can look on the trash folder of other synchronized machines.

Finally, if you have looked on the trash of all your devices and didn't find the files, you can contact the Ubuntu One support team telling the path of the folder you need to recover. There is a limited capability of what can be recovered from the server, so there might be cases where some files can't be restored. And only the latest version of the files are stored on the Ubuntu One servers, so it's not possible to restore an old version of a file.

There is an open wishlist bug to add a trash to the Ubuntu One website: https://bugs.launchpad.net/ubuntuone-servers/+bug/377905


Removing telepathy-butterfly (complete removal in synaptic) did the trick for me - no need for reinstallation.


32 bits DVD download (3.9 Gb) and 64 bits DVD download (3.9 Gb) are the dvd downloads. This listing shows the content of the dvd and should have all the packages you need.

If you want to make your own CD/DVD with all the packages specifically mentioned in your question you need to make it yourself. Luckily for you I posted an answer on that: How to customize the Ubuntu Live CD?

Being in Africa you might want to try the official Africa mirror


As on Wikipedia: Kubuntu, you need 384MB RAM for minimum requirements. If you still install it on your laptop, it can't works.

Why you didn't try the other derivative of Ubuntu like Xubuntu or Lubuntu? Two of them works on smaller RAM. (Note: Xubuntu 12.04 minimum requirements is 512MB, but Xubuntu 11.04 or 10.04 needs 256MB to works)


Terminal:

I don't know about the second error, but the first one (unless you are already doing so) should be solved by running it as superuser by running it with this in Terminal (CTRL + ALT + T):

sudo bleachbit

(It will prompt you then for a password, type it and press enter - for a security measure it will look like you are not typing anything, but you are.)

GUI:

Alternatively you could run it as superuser by searching for the application BleachBit (as root) and clicking on that as opposed to just the normal BleachBit.


Audio issues / driver name impact ? / snd-hda-intel or snd_hda_intel

I had similar problems with intermittent audio where the device was listed in aplay -l but there was still no sound. Output from dmesg showed the real issue:

snd_hda_intel: azx_get_response timeout, switching to polling mode: last cmd=0x01270700
snd_hda_intel: No response from codec, disabling MSI: last cmd=0x01270700
snd_hda_intel: azx_get_response timeout, switching to single_cmd mode: last cmd=0x01270700

To fix it by adding this line in /etc/modprobe.d/alsa-base.conf:

options snd-hda-intel probe_mask=1

Source: https://help.ubuntu.com/community/HdaIntelSoundHowto#Playing_with_probe_mask


It's not Windows, where any user can write into System Dir by just clicking 'Yes' on UAC Prompt.

To access system files and folders as RW, type on terminal or ALT+F2 sudo filemanager /, here I see you're using nautilus, so type

sudo nautilus / -> Enter Password -> Access / files.

To access other files or volume on your computer, click on 'Other Locations' and see if your volume are listed there and if not, type sudo fdisk -l to know volume information. and mount it accordingly.

Note : gksu is recommended over sudo for running GUI applications due to various of factors, however it's removed in latest version of Debian/Ubuntu. In that case use pkexec or gvfs admin backend.


Try export $(dbus-launch) before starting PulseAudio.


How to design login page with gtk3 c++ code?

I don't know if you are using a database but if not you need to create a function as you named in signal "create_window" (g_signal_connect(Login_button, "clicked", G_CALLBACK(create_window), NULL);)
inside this function add your checking code

If (Username and Password was correct)
    Login page destroy and seconde page (new page) open

If (Username was correct)
     Username is incorrect
If (Password was incorrect)
     Password is incorrect.

If that's doesn't work for you replay back and I will write the correct code using gtkmm/c++

this is the function but you need to write the messages

static void create_window (GtkWidget *widget, gpointer   data)
{
    if( USERNAME != gtk_entry_get_text (GtkEntry *u_name)  )
    {
        //your message dyalog here
        //g_print ("Username is incorrect. \n");
    }
    if( PASSWORD != gtk_entry_get_text (GtkEntry *pass)  )
    {
        //your message dyalog here
        //g_print ("Password is incorrect.\n");
    }

}


Configure Machine as both Web Server and Router

Use ip -a to find the IP address assigned to wl1ps0.

Make sure the webserver is also listening on this interface: lsof -i :8050. If not, update your apache config (probably /etc/apache2/sites-enabled/000-default.conf). Note, if the hotspot was set up after the web server was started you may just need to restart it to get it to listen on wl1ps0 as well: sudo service apache2 restart

Then, for systems connected to QuickHotspot use http://:8050/

This is probably easier and safer than turning port forwarding on.


The default rules that come with the Openstack security policy appear to make everything wide open but I am finding that's just not the case.  I had to manually add all the Egress and Ingress ports I needed before everything was working properly.  So in this case, it appears to be 100% related to the openstack security policy I was using on the instance


How to remote SSH to my home Ubuntu server without public IP's?

The usual way is to sign up for a DDNS service, with that service's application running on your home server.

The DDNS service and application work together to update your public IP address (which means your router's IP address) to internet nameservers.

So you use ssh me@myserver.myDDNSprovider.com, and the nameserver provides the correct IP address for your router and LAN.

Several free DDNS services are available. Your favorite search engine will happily point you to several.
Many consumer routers have DDNS clients built-in, so you needn't install anything on your server. Check your router settings.
You must still set up port forwarding on your router to connect to the server on your LAN.


Application installed as snap package can't see printer

It's not a bug. Snaps run in containers with separate environments which prevent applications to access all the system (as the classic applications do) for security. By default printers are not accessible, but can be enabled with:

sudo snap connect inkscape:cups-control :cups-control

That will allow printers to show in inkscape. Change inskcape for the name of the application (for example, gimp) if needed.
It happened to me with WPS Office: this was my question.

You need to restart the application to take effect.

In my personal opinion, it would be nice if during installation you could specify such permissions or that the applications could decide which permissions requires and let the user know about them (like android applications).


Ubuntu doesn't recognize extended logical volume, 18.04

I think the main problem is that you've resized the volume (the container), but not the filesystem, so the OS can only see the filesystem that already exists, and what it thinks is the space available.

There are two ways of extending a logical volume that contains a filesystem, essentially:

Automatically, getting LVM to try to resize the filesystem in the process, i.e. using the lvresize command with the --resizefs flag. Depending on your filesystem, this may or may not work. In your case the full command would have been lvresize --resizefs --size +25G /dev/computer/root. It's too late to do this, so you can use the second method:
Manually, using separate lvextend and resize2fs commands. This should work for ext4 and other commonly used filesystems but may not work for some. I leave it up to you to find out whether you filesystem of choice can be extended. In this case, try running resize2fs /dev/computer/root, in order to grow the filesystem to the available space in its container.

There is a blog post covering how to do this here.


Create a desktop launcher to launch the script, and put it in your .local/share/applications folder. Desktop lauchers are text files that end with the .desktop extension. When places in the folder mentioned, they are automatically picked up by your application menu.

Such .desktopfile must contain at least

[Desktop Entry]
Name=<Name of your application like you want to see it in the menu>
Exec=<path to your executable>
Type=Application
Terminal=false
Icon=<path to the icon>

Depending on what your script does, you may need to set Terminal to true. If set this way, the launcher will open your default terminal emulator, and run your script in the terminal emulator. Otherwise, it will be run in the background (where, eventually, it may open a GUI application).


How to moniter network usage through my Dongle, not laptop

You've just gotta tell nethogs what interface you're trying to keep an eye on

nethogs eth0

A few more helpful bits

-m : Change the units displayed for the bandwidth in units like KB/sec -> KB -> B-> MB.
-r : Sort by magnitude of respectively traffic.
-s : Sort by magnitude of sent traffic.
-q : Hit quit to the shell prompt.


I have found a solution. apt-get fails to be able to handle the situation, but aptitude can handle it.

sudo aptitude install ubuntu-desktop

Note that the first solution offered by aptitude doesn't correct the problem, because that chooses not to install the package. I had to select no the first time, and then aptitude offered a second solution of downgrading the compiz packages that caused all the problems. The downgrade fixes the dependency problem, and then ubuntu-desktop and unity are reinstalled.


There is an override file /etc/init/ssh.override, which disables password login to ssh. If you were to do

$ ssh phablet@192.168.x.x -v

from your client, you will see something like

debug1: Authentications that can continue: publickey

so, the only authentication option by default is publickey and not password. To enable the password authentication, you can either remove this override file, which you won't be able to do for some reason I can't figure out, or simply empty out the file

sudo tee /etc/init/ssh.override < /dev/null


Why are all of my dropdown menus a blank black screen?

I think this is related to graphics drivers.

Today I had the same problem and I fixed it like this:

sudo apt-get upgrade

If you have any graphical errors it shows the packages you have to install or upgrade.

I saw errors about

libllvm3.8 libllvm3.8:i386 libmirclient-dev libmircommon-dev libmircookie-dev libmircookie2 libprotobuf-dev libxkbcommon-dev

so I fixed it by installing those packages

sudo apt-get install libllvm3.8 libllvm3.8:i386 libmirclient-dev libmircommon-dev libmircookie-dev libmircookie2 libprotobuf-dev libxkbcommon-dev


I've never attempted to do exactly what you are doing, but I have set up mysql databases that would be accessible regardless of which OS I booted to. I did this by moving /var/lib/mysql/database to a shared partition /shared/database and then symlinked the directory back to /var/lib/mysql/database. If that procedure doesn't work for you, then I'd look into whether or not symlinking works at all with TrueCrypt (it should).

The file mentioned in the error (ibdata1) exists in /var/lib/mysql so I can only imagine that you moved one directory to many up the tree. Don't move /var/lib/mysql, move the specific directory for your database /var/lib/mysql/database


This line was your main problem:

if [ $word = "u" || $word = "U" ]

I've corrected the conditional, and tidied the control structure below:

#!/bin/bash
mount | grep 'sda[1-5]'
if [ $? -eq 0 ]
then
  echo "Volumes are already mounted."
  read -p  "Please type 'u' to unmount:" word
  if [ "$word" = "u" ] || [ "$word" = "U" ]
  then
     echo 'User wishes unmount.  Attempt umount here.'
  fi
else
  echo 'Volumes unmounted.  Attempt mount here.'
fi

See this bash operators page for examples.


How to autostart python GUI application on ubuntu boot?

To auto start application, place its binary path in gnome-session-properties:

Run in terminal:

gnome-session-properties

Add new item to the list specifying its Name and Command as it is for existent items.

In your case it would look like:

Use whereis python3 to find out your full path to python3 binary.

But it would be executed not at boot but at your user's log in.


Is there any way or theme that shows one applications' menu bar next to its title?

No, I don't think there is any window manager out there that does this.
This is because the menu is part of the application and the window border is usually handled by the window manager.


In LXD container, can I mount a disk image such that it is private to the container?

I could hide a mount by explicitly creating a new private mount namespace. First, I enabled loop devices and mounting as in this method.

$ lxc exec z1 touch foo
$ lxc exec z1 truncate -s 100M foo
$ lxc exec z1 mkfs.ext4 foo
mke2fs 1.43.4 (31-Jan-2017)
Discarding device blocks: done
Creating filesystem with 102400 1k blocks and 25688 inodes
Filesystem UUID: 79152d07-1b5e-4b60-b716-84e72a1cce50
Superblock backups stored on blocks:
    8193, 24577, 40961, 57345, 73729

Allocating group tables: done
Writing inode tables: done
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done

$ lxc exec z1 mount foo /mnt
$ lxc exec z1 touch /mnt/foo

With this config, the mount point is not easily visible outside the container (it's not listed mount's output, for example). I had to access it using /proc/<pid-of-container-process>/cwd (which in turn was accessible only to root, but not to my regular user, who can run lxc commands):

$ grep /mnt /proc/*/mounts | head
/proc/13782/mounts:/dev/loop2 /mnt ext4 rw,relatime,data=ordered 0 0
/proc/13858/mounts:/dev/loop2 /mnt ext4 rw,relatime,data=ordered 0 0
/proc/14266/mounts:/dev/loop2 /mnt ext4 rw,relatime,data=ordered 0 0
/proc/14394/mounts:/dev/loop2 /mnt ext4 rw,relatime,data=ordered 0 0
/proc/14397/mounts:/dev/loop2 /mnt ext4 rw,relatime,data=ordered 0 0
/proc/14398/mounts:/dev/loop2 /mnt ext4 rw,relatime,data=ordered 0 0
/proc/14406/mounts:/dev/loop2 /mnt ext4 rw,relatime,data=ordered 0 0
/proc/14407/mounts:/dev/loop2 /mnt ext4 rw,relatime,data=ordered 0 0
/proc/14420/mounts:/dev/loop2 /mnt ext4 rw,relatime,data=ordered 0 0
/proc/14421/mounts:/dev/loop2 /mnt ext4 rw,relatime,data=ordered 0 0

$ ls /proc/14421/cwd/mnt
ls: cannot access '/proc/14421/cwd/mnt': Permission denied
$ sudo ls /proc/14421/cwd/mnt  # a process in the container
foo  lost+found

Now, making a private mount namespace using unshare:

$ lxc exec z1 bash
root@z1:~# umount /mnt
root@z1:~# unshare --mount -- /bin/bash
root@z1:~# mount --make-private foo /mnt
root@z1:~# ls /mnt
foo  lost+found
root@z1:~# exit
root@z1:~# ls /mnt
root@z1:~# exit

Now, these commands produced no output:

$ sudo ls /proc/14421/cwd/mnt
$ grep /mnt /proc/*/mounts | head

But now any processes in the container that need access to this mount point need to run in that mount namespace. This can done using nsenter, for example.


How can I change the contents of grub loader?

Try Try Grub Customizer

To install Grub Customizer in 13.04, just press Ctrl+Alt+T on your keyboard to open Terminal. When it opens, run the command(s) below:

sudo add-apt-repository ppa:adabbas/1stppa
sudo apt-get update
sudo apt-get install grub-customizer

Once installed, search for it in Dash, and click on it

Once opened, right click on the desired item that you want to rename, and then click on Rename, once done, just save and exit.


Unable To Initialize 5th Generation ipod Touch on GTKpod or Rythmbox

It should be supported out of the box on Ubuntu 14.04LTS, but for earlier versions of Ubuntu, you may want to read this page: https://help.ubuntu.com/community/PortableDevices/iPhone


When Win7 is installed after Vista, it pus some boot files in the Vista partition. When you deleted Vista, you removed also some Win7 boot files (eg BCD). That's why Win7 can't boot now.
Solution: fix the Windows boot via a Windows CD this way: https://help.ubuntu.com/community/RestoreUbuntu/XP/Vista/7Bootloader
Then use Boot-Repair Recommended repair to recover the GRUB menu.


How to correct auto/manual installation flags of installed packages?

Using the Python Apt API might be more efficient, especially in getting the dependencies:

#! /usr/bin/python3
from apt import cache

c = cache.Cache()
pkgs = set(pkg for pkg in c if pkg.is_installed)
seen = set()

def mark_deps(pkg):
    for dep in pkg.installed.dependencies:
        for ver in dep.installed_target_versions:
            if ver.package not in seen:
                seen.add(ver.package)
                pkg.mark_auto()
                mark_deps(ver.package)

for pkg in pkgs:
    mark_deps(pkg)

print(c.get_changes())
c.commit()

It will still be slow going, but should be still faster than calling apt-cache thousands of times. Run without sudo to see what changes will be made (c.commit() will fail), and run with sudo to perform those changes.


Wow, you just have to be a computer expert, than you can solve everything on Ubuntu. If you are not, good luck...
This is the solution that worked for me:

Open a terminal
Type cd ~/.config
nano zoomus.conf
(For the non-computer experts: nano is a text editor)
change the parameter autoScale=false to autoScale=true
Press ctrl+x and save the changes

This does not explain at all, why it worked yesterday, without me changing any parameters.
In the car analogy this would be like: Suddenly the car only goes backwards. Users would completely accept that as normal, would google for hours and hours how to fix it, open the hood, plug some cables into different holes, and voila! the car would go forward now.
And nobody would be complaining about that. You would just see often people on the highway, having their hood open, and trying to fix "unexpected errors"


Basic info on configuring LightDM: https://wiki.ubuntu.com/LightDM

And the following page explains how to change keyboard layout on the login screen (Lightdm GTK+ Greeter) in Ubuntu MATE:
https://ubuntu-mate.community/t/how-to-set-keyboard-layout-on-login-screen/1405

So, in Lightdm GTK+ Greeter Settings > Panel you can add the keyboard layout indicator by which you can change the default keyboard layout:

Also, add the following lines to /etc/lightdm/lightdm.conf in order to set default keyboard layout (French in this example):

[Seat:*]
display-setup-script = setxkbmap -model pc105 -layout fr


Use the CD or USB pen to boot the Ubuntu installation. With the partitioner erase the Fedora partitions, and join then in one big partition.

After that, use the installation menu that says Install Ubuntu alongside Windows, it should choose the partition you created.

Also, installing GRUB again will overwrite your existing Grub menu.


Sorry, just log out, in needed. Everything works.


Who (which code) is responsible how open file dialogues appear in Ubuntu applications

Who is responsible for the file-related dialogues of GUI programs?
These are dialogs of the GTK toolkit. These common dialogs can be used by different programs on the system.

There is a further complication, where two major versions of the GTK toolkit live on your system. Gimp still uses GTK2 dialogs. Gnome core applications like Gedit, other GTK3 programs and, by default on Ubuntu, Libreoffice, uses GTK3 dialogs. You can have Libreoffice use GTK2 dialogs, or you can even have it use its own dialogs (Tools - Options - LibreOffice, General). Then, if you are running a QT application, i.e., an application that uses the QT toolkit, you still will have other dialogs. Also there, we have the complication that at this time, both QT4 and QT5 are in use.

Thus, depending on the dialog that is in use, it are the developers of the used toolkits or of the application itself that determine how it works.

Is this one (or two) central instance(s)? Or is the appearance of dialogues involving file operations up to each application?
As outlined before, there are different toolkits and even different versions of a single toolkit. As outlined before, applications can opt to use the system wide dialogs provided by the toolkit their use, or have their own file dialog.

Bottom line: A linux operating system fundamentally is a very diverse ecosystem, running diverse software of very different sources and history. Distributions like Ubuntu still manage to give all a remarkably coherent feel.


It will never show your password for security reasons. Just type it in and press enter.


I have a global .gitignore but files aren't being ignored, why?

The gitignore man page doesn't mention of a global gitignore file.
Only of the global config core.excludesfile

But if the latter doesn't work, that might be because those files were previously added to the Git repo, in which case you must rm them.

git rm -r --cached .idea

See ".gitignore file not ignoring"


Pi-hole set dns for one device to 127.0.0.1 after uninstalling I can't change this back to my dns

What system did you install? Ubuntu 16.04, 18.04? Do you use netplan or ifupdown? Your /etc/resolv.conf is generated from various programs that manage your network setup.

Also if your network configuration has an error the config process stops residing with a not properly configured resolv.conf


Maven environment variable not working on other terminal

Okay finally what I did was the same I did for installing java jdk environment i.e adding maven variables in /etc/profile. The steps are described below:-

sudo pluma /etc/profile
Add these commands at the end of the text file

export M2_HOME=/opt/apache-maven-3.3.9

export M2=$M2_HOME/bin

export PATH=$M2:$PATH
Reload profile by typing source /etc/profile in command line
Restart the system
Verify M2 by typing echo $M2 in command line
Verify PATH by typing echo $PATH in command line. Check if there is maven directory in the PATH variable or not.
Check maven version by typing mvn -version in command line


No sound with a Creative Sound Blaster ZxR soundcard on Ubuntu 14.04

if i open in a terminal following command i have sound on my headphones wich stuck at my frontpanel. but microphone doesn't work.

sudo kill `ps uax |grep pulseaudio | grep -v grep | awk '{print $2}'`
sudo rmmod snd-hda-intel
sleep 3
sudo modprobe snd-hda-intel


I installed and ran boot repair and that fixed it


Answer from the OP:

We installed lightdm and it showed similar behavior, i.e. it halted at a certain step.

However, then it was possible to press ctrlaltF1 and then login. The problem that there was the existence of /etc/init/lightdm.override. Inside the file was the word manual.

This was how it was present on install of lightdm, and then running 'sudo dpkg reconfigure lightdm'. Upon removing this file the system went to the login screen with no problems!


Gmail and Thunderbird; changed password now won't connect - auth error

Well, it now works after an upgrade to version 68.2.1 (64-bit) appeared in software updates. So it must have been something within the connection, out of my control. But the new version of TB is working fine, link with Google very stable.


This is a previously discovered issue when using ubuntu with EDNS0 requests.. My understanding is that its no an error in ubuntu its a problem with the downstream server rejecting the valid request being sent to it.
The issue/reasons and answer is discussed in great detail here:-
Ubuntu 18.04 systemd-resolved error NXDOMAIN


There is a folder called .pida2 in the home directory. Inside it is a file called first_run_wizard, which contains this:

#Remove this to rerun the start wizard

So, just delete this file using a file manager or the command rm ~/.pida2/first_run_wizard.

Now, when you start PIDA, the first run wizard runs and allows you to pick an editor.


I am trying to install internet explorer on my ubuntu 18

The host of that file at http://www.tatanka.com.br  now advises

"The new Internet Explorer and Edge can not be run on Wine anymore"

Instead, they recommend

"So Microsoft has its own VMs for this:"

https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/

"Virtual Box, vagrant, VMWare and others are supported."


File counts not adding up: finding files ls -a misses

I'm not familiar with Filelight, but it sounds like it might be an issue in that software.

Particularly, if you have a lot of hard links in your filesystem, filelight will read them as if they are duplicate files, which can greatly inflate both the number and size count.

See here for more info: https://bugs.kde.org/show_bug.cgi?id=144948

You may have a lot of hard links if you use some backup software, for example.

That said, 111,804 vs 225 is a big difference.  And I can't see how it would explain why the recursive counts are OK.


There is a very simple way to install ubuntu on your system if you have windows installed in your system. for that you will need a .iso file of your ubuntu. you can make it from your dvd by using softwares like power iso or you can download ubuntu12.10.iso file too.once you have it follow these steps.

mount the iso file.
find the wubi.exe inside of your iso file
copy it to the folder congaing ubuntu.iso file
Run Wubi.exe

select the drive on which you want to install
select installation size
Enter the password and click on install
it will ask you to restart. now restart.
dont press "esc" key after reboot. your installation start automatically.


Nautilus and other file managers that mount drives (i.e., the GUI) use the udisks command.

This provides a dynamic mount, where the mount point is created for the drive on-the-fly, and when the drive is unmounted, the mount point goes away.

See man 1 udisks for details on how to use this command (either manually, or called from a script/application). To learn more about how udisks works, see man 7 udisks.

To mount a device with udisks, you must specify a valid device name for the device. Specifying the device's volume name will not work. So, you can use udisks like this:

udisks --mount /dev/sdb1

When manually using udisks from the command-line, you might be best off to simply plug in a device, then run dmesg | tail shortly thereafter (see man dmesg and man tail) to discover the device name of the newly attached device.

This may not be the best way to write a script that mounts devices with udisks, however. I don't know exactly how you should do it, and it would be difficult to know since you haven't told us precisely what you want this script to do and when you want it to mount devices.


Need Help Installing Steam With Wine (Bug)

Try download SteamInstall.msi from Steam website.

Then run it (as Install Windows Software) on wineskin wrapper


How do the keyboard shortcuts for Ubuntu (with Unity) compare to those of Windows?

basic shortcut similar to windows.
new shortcut for Ubuntu Desktop to know press ('super','Window') key for long
will see new dialog with shortcut clarification


How to prevent deletion of files in a mounted folder while trying to delete a mounted folder

My suggestion is that you learn using command line tools (in a terminal window). This way you will get full control of what you are doing.

Command lines to remove a folder (directory)

If you have an empty folder/directory, you can remove it with the following command line

rmdir /path/foldername

This command will not remove a folder/directory, that contains files or subdirectories.

If you want to remove a folder/directory and also the files and subdirectories in it, you can use the following command line

rm -ri /path/foldername

or if you are sure, without any question

rm -r /path/foldername

Elevate permissions (with sudo) only when necessary, because of the risk to remove 'too much'.

Command lines to 'see' and unmount a mounted folder (directory)

If you have a mounted {partition/file system/folder}, that you do not want the system to access, for example because you want to unplug a USB drive, you should unmount or eject it. Unmounting means that buffers will be flushed (all unfinished write operations will be finished) and the system will not longer have access to the folders and files in the {partition/file system/folder}. Ejecting means unmounting and also turning off the power (for USB pendrives).

You can list the mounted {partitions/file systems/folders} with the command

df

or if you prefer 'human readable' units

df -h

You will find more details with the following command lines

sudo lsblk -f
sudo lsblk -m

A mounted {partition/file system/folder} has

a device name /dev/sdxn where x is the drive letter and n is the partition number, for example /dev/sdb1
a mountpoint, for external drives usually /media/user/label or /media/user/uuid, for example /media/sudodus/usbdata (if the label is 'usbdata').

You can unmount it with the command line

sudo umount /mountpoint

for example

sudo umount /media/sudodus/usbdata

After unmounting you can unplug the USB drive safely (or turn off its power supply).

If you run

df

you will notice, that the {partition/file system/folder} is no longer listed, and the folders and files are no longer available. But they are not deleted, they will be available after you mount the {partition/file system/folder} again.


I suffered the similar problem today, when I upgraded a Lenovo V460 laptop to 16.04 from 15.10.

My case is due to bugs in kernel 4.4.0-21, and switching to kernel 4.5.2 solves the issue. You can try a newer kernel from here, and follow the instruction here.


Have you tried GMAMEUI ?

It's a fork of the defunct GXMame project.


Apt: Can't upgrade packages, and system still showing 16.04 / Xenial sources, after upgrade to 18.04 / Bionic

Basically, I followed the answer given here: https://askubuntu.com/a/1230743/870100
Just replaced 'xenial' with 'bionic' inside the 3 files, did the apt update / upgrade / dist-upgrade / autoremove / autoclean cycle, then rebooted, and miraculously everything worked. Even the php is now on the proper 18.04 packages, even though I didn't bother changing the list filenames for certbot or ondrej.
sudo sed -i "s/xenial/bionic/" /etc/apt/sources.list.d/certbot-ubuntu-xenial.list
sudo sed -i "s/xenial/bionic/" /etc/apt/sources.list.d/ondrej-ubuntu-php-xenial.list
sudo sed -i "s/xenial/bionic/" /etc/apt/sources.list
sudo apt update
sudo apt upgrade
sudo apt dist-upgrade
sudo shutdown -r now

Hopefully won't have to revisit this in two years when it's time to move to Focal. I had half a mind to go Xenial -> Bionic -> Focal in rapid succession but I now think it makes much more sense to actually work out the kinks in the following LTS first before introducing further complications by going to the next one after.


It won't work if you placed eclipse folder other than / partition.
For example if i placed eclipse folder in the desktop,i have to follow the below steps.

So go into the eclipse folder via terminal,
  cd ~/Desktop/eclipse

Give the executable permission for the file eclipse,
  sudo chmod 777 eclipse

Then run the eclipse file by,
  sudo ./eclipse


LIbreOffice new sheet different template

Chad, Thanks a bunch it worked for me!!!!!

To Create a Default Template

Create a document and the content and formatting styles that you want.
Choose File - Save As Template.
In the New Template box, type a name for the new template.
In the Categories list, select "My Templates", and then click OK.
Choose File - New - Templates.
Double-click the "My Templates" folder.
Click on the template that you created, and click Set as Default.
Close the dialog.

Taken from: https://help.libreoffice.org/Writer/Changing_the_Default_Template


To install a newer version of cmake, follow these steps:
Remove the old version of cmake:
sudo apt remove --purge cmake
hash -r

Install newer version of cmake:
1- first method: using Snap
sudo snap install cmake --classic

2- second method: install from source
sudo apt install build-essential libssl-dev
wget https://github.com/Kitware/CMake/releases/download/v3.16.5/cmake-3.16.5.tar.gz
tar -zxvf cmake-3.16.5.tar.gz
cd cmake-3.16.5
./bootstrap
make
sudo make install

Check cmake version:
cmake --version

If you want to download a different version, check this website
Credit: Installing the latest CMake on Ubuntu 18.04
N.B: I tested the second method (install from source) and it works well.


How can I change the functionality of the keys on my Ubuntu laptop?

Sure you can ask this question on this site. :)

You can do this:
1. Open up System Settings.
2. Choose Keyboard.
3. Go to the tab Shortcuts.
4. Remove any shortcuts you do not want.

This may not work for the WiFi key though.

EDIT

You could also try seeing if there's an option in the BIOS to change them. When you start your computer, at the very first screen where it says your manufacturer logo (HP), it should say something like F2 to enter setup. Press F2 at that time and it should take you into BIOS (which is a fancy name for the hardware options of your computer). There might be some options in there to disable fn keys.


This should work just fine(1st answer):

How do I add a custom launcher?


You can use the dconf dump command to backup all the options for Ubuntu Dock as follows

dconf dump /org/gnome/shell/extensions/dash-to-dock/

You can also save them to a file as follows

dconf dump /org/gnome/shell/extensions/dash-to-dock/ > /path/to/ubuntu-dock.backup

(replace /path/to/ by an actual proper path, you can also use any other name instead of ubuntu-dock.backup).

It is possible to restore the backed up options as follows

dconf load /org/gnome/shell/extensions/dash-to-dock/ < /path/to/ubuntu-dock.backup

but however, I would not recommend it as you're most likely going to face an incompatibility issue as the versions of Ubuntu Dock in those two Ubuntu releases are not the same. Instead it would be more reasonable to carefully examine the differences between the options for a freshly installed Ubuntu release and the backed-up one and manually make changes accordingly.

Also, you can get the list of the pinned apps (added to favourites) by any of the following commands

dconf read /org/gnome/shell/favorite-apps

or

gsettings get org.gnome.shell favorite-apps


How to remove bookmarks from sidebar in Nautilus on Ubuntu 18.04?

Edit the file:

$HOME/.config/gtk-3.0/bookmarks

and remove all the lines that correspond to the folders you want to remove from the sidebar. My end product looked like this:

file:///home/username/Downloads

replace 'username' with your username.


How to get the latest version of gcc on ubuntu 16.04 lts

The latest version is obtained simply by running:

sudo apt update && sudo apt dist-upgrade

then installing with

sudo apt install build-essential

This will install gcc and other programs you will need. Then of course if you want the latest you can compile it yourself. But using the above installation commands you will be able to get the latest for Ubuntu 16.04 lts


If you're using gnome desktop environment then install this extension.


Solved: OpenVPN Import Config Help Needed: Why am I getting a Proxy Tab Instead of Identity Tab?

I didn't have network-manager-openvpn-gnome installed. Identity tab from gnome is now called VPN tab in XFCE with the same fields. After installing the package, the options I had under Identity tab are now available in VPN tab.


Opening and controlling a window over ssh

Not sure how on-topic we are here given this is more about the non-Ubuntu Raspi than the local Ubuntu computer... But given that this also applies to a pure Ubuntu→Ubuntu set up and in the interest of being useful, I'll plod on...

You just need to point to the right DISPLAY when you run graphical things over SSH so in your case:

DISPLAY=:0 firefox

To then control the application is then a little harder. I found out about x2x a couple of weeks ago and it seems to do the job. You'll need to install x2x on the raspi and run a separate SSH session out to it like so:

ssh -X raspi x2x -to :0


Install dconf-editor using the command sudo apt-get install dconf-editor.
Launch it by typing dconf-editor in the terminal or by using dash.
Navigate to org>gnome>settings-daemon>plugins>power.
There you will have option of changing the value ofidle-brightness(Mine is 30).
To turn off dimming of the screen uncheck idle-dim.


How do I route my internet through a SSH tunnel?

sshuttle is a transparent proxy server that forwards over a SSH connection and sets up a proxy by running Python scripts on the remote server. sshuttle can be run under the following conditions:

client machine or router is Linux-based, FreeBSD or Mac OS
administrative privileges on client
access to remote network via SSH
no administrator privileges on remote network
availability of Python on remote server

Install sshuttle  from the Software Center or the Terminal:

sudo apt-get install sshuttle

The basic command for running sshuttle with routing all traffic is:

sshuttle -r username@sshserver:port 0/0

Upon the execution of the command, a sudo password prompt will appear and subsequently the password to SSH account. No other details will appear except for a short message and return to shell upon failure. For more status messages, run sshuttle in verbose mode with the -v flag.

In this example all internet traffic except DNS is routed through the VPN. -r flag denotes the remote hostname and optional username and port that follows in the above example. 0/0 is short for 0.0.0.0/0 that represents the subnets to route over the VPN. The usage of 0/0 routes all the traffic except DNS requests to the remote server. DNS tunelling is possible with the usage of -H flag.

Please read the man page (man sshuttle) for the details of options and modes under which sshuttle can run. For information about the concept and more examples, refer to the project page.


NetworkManager doesn't show ethernet connection

A fresh install, to server 17.10 with LXDE had this issue reading all over and trying everything. This also prevented me from using openvpn via network manager.

The following fixed the issue:

My /etc/network/interfaces file:
removed all lines except:

auto lo
iface lo inet loopback

Then I edited /etc/NetworkManager/NetworkManager.conf
from:

[main]
plugins=ifupdown,keyfile

[ifupdown]
managed=true

[device]
wifi.scan-rand-mac-address=no

Add in [keyfile] string

[keyfile]
unmanaged-devices=*,except:type:wifi,except:type:wwan,except:type:ethernet

Current /etc/NetworkManager/NetworkManager.conf

[main]
plugins=ifupdown,keyfile

[keyfile]
unmanaged-devices=*,except:type:wifi,except:type:wwan,except:type:ethernet

[ifupdown]
managed=true

[device]
wifi.scan-rand-mac-address=no

Last run command:

sudo service network-manager restart

and all showed correctly in the network manger after a couple hours of fighting! This is for a home server, it may have been caused me configuring the IP during setup, which added values for a static IP in /etc/network/interfaces .


can't install hashlib manually
$ pip install --user hashlib

Note1 : pip is usually a python2 command.
Note2 : A contemporary "hashlib" is present by default:
$ locate hashlib.py
/snap/core/4486/usr/lib/python3.5/hashlib.py
/snap/core/4571/usr/lib/python3.5/hashlib.py
/snap/pulsemixer/23/usr/lib/python3.5/hashlib.py
/snap/pulsemixer/8/usr/lib/python3.5/hashlib.py
/snap/software-boutique/31/usr/lib/python3.5/hashlib.py
/snap/ubuntu-mate-welcome/169/usr/lib/python3.5/hashlib.py
/usr/lib/python2.7/hashlib.py
/usr/lib/python2.7/hashlib.pyc
/usr/lib/python3.6/hashlib.py

Hashlib-2008 : Like the name says → year 2008: Files that old will often fail with gcc-7.
Manually : Get hashlib-20081119.zip https://files.pythonhosted.org/packages/74/bb/9003d081345e9f0451884146e9ea2cff6e4cc4deac9ffd4a9ee98b318a49/hashlib-20081119.zip
Example with Ubuntu 18.04 and python2 ( Fails with python3 ):
sudo apt install g++ g++-5

unzip hashlib-20081119.zip
cd hashlib-20081119/
export CC=gcc-5 && python setup.py build && sudo python setup.py install
.
.
Writing /usr/local/lib/python2.7/dist-packages/hashlib-20081119.egg-info


Broken npm, so tried aptitude, which broke apt AND aptitude leaving me with no package manager

I'm not OP, but I worked on the machine in question just now and figured it's best to put the solution here in case anyone else has the same problem in the future.

I first got a copy of the apt package he removed (1.6.3 instead of 1.7).  This gave me a missing dependency of libgcc1.4.9, which I went and fetched.  libgcc complained about not having gcc-4.9-base, which I then went and found.  gcc-4.9-base installed without issue.  libgcc had a conflict in /usr/local/doc/libgcc1 , so I removed what was already there and reinstalled the dependency.  Then apt installed without issue.  I was able to "apt list" without issue, and handed the machine back to mainstreetmark.


There are some updates showing up in my 'Apt-update indicator' but nothing is updated when i try update and upgrade in terminal

linux-generic-hwe-18.04

is the metapackage that upgrades the kernel and kernel-headers from Kerneltree 4.18.

If you have more than 1 metapackage on your system you get more kernel-packages than you need. Control which is the current one by runnnig uname -a Identify which metapackages are on your system. dpkg -l | fgrep linux-generic


Screen goes blank when VLC is playing a video

If you have set your screensaver to automatically turn on after x minutes, that explains it. Try going into your screensaver settings, disable your screensaver and then re-test.

I would tell you where those settings were, but i have no idea regarding UE 3.2, sorry.


How can i install jdk7 on ubuntu 18.04 lts 64bit?

Download the JDK for Linux 32-bit or 64-bit (for example: jdk-7u80-linux-x64.tar.gz)

Navigate to ~/Downloads:

cd /home/"your_user_name"/Downloads

Create a a directory in /usr/local where java will reside and copy tarball there:

sudo mkdir -p /usr/local/java
sudo cp -r jdk-7u80-linux-x64.tar.gz /usr/local/java/

Navigate to /usr/local/java:

cd /usr/local/java

Extract the tarball:

sudo tar xvzf jdk-7u80-linux-x64.tar.gz

Check if tarball has been successfully extracted:

ls –a    #you should see jdk1.7.0_80

Open /etc/profile with sudo privileges:

sudo nano /etc/profile

Scroll down to the end of the file using arrow keys and add the following lines below to the end of /etc/profile file:

JAVA_HOME=/usr/local/java/jdk1.7.0_80
JRE_HOME=/usr/local/java/jdk1.7.0_80
PATH=$PATH:$JRE_HOME/bin:$JAVA_HOME/bin

export JAVA_HOME
export JRE_HOME
export PATH

Update alternatives:

sudo update-alternatives --install "/usr/bin/java" "java" "/usr/local/java/jdk1.7.0_80/bin/java" 1
sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/local/java/jdk1.7.0_80/bin/javac" 1
sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/local/java/jdk1.7.0_80/bin/javaws" 1
sudo update-alternatives --set java /usr/local/java/jdk1.7.0_80/bin/java
sudo update-alternatives --set javac /usr/local/java/jdk1.7.0_80/bin/javac
sudo update-alternatives --set javaws /usr/local/java/jdk1.7.0_80/bin/javaws

Reload profile:

source /etc/profile

Verify installation:

java -version

You should receive a message which displays:

java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)


This actually started working on its own. I have no idea why, it just started working after two reboots.


Laptop getting hot after installing ubuntu 12.04:possibly a videocard driver problem

The newer Catalyst drivers do not support the HD4xxx series anymore, so you have to download the old drivers manually and install them.

Download your driver here

And then do what this website tells you.


Ubuntu 16.04: where to set Xim server name?

I have the same issue as you,I fixed it by remove the ibus .However  I found the unity desktop environment is gone after you remove ibus.


Unable to install software from Atomic Toolkit - 18.04

There's a known issue with the new Mono, they are working on a fix now.

https://github.com/htpcBeginner/AtoMiC-ToolKit/issues/281


Screen resolution issues after latest system update on Ubuntu 17.04

It seems the new kernel screwed up my setup, so I reverted back to the previous kernel (4.10.0-35). This post helped me how to revert back to the previous kernel. So, what I did was I removed the latest linux headers and image by running the following commands:

sudo apt-get remove linux-headers-4.10.0-37*
sudo apt-get remove linux-image-4.10.0-37*


It's often the file itself that is the problem, not Totem or VLC. Be sure you have encoded the file properly.

FFMpeg is great for encoding; encoding your file to a different format may solve the problem.

ffmpeg -i Test.mp4 -sameq -r 24 Test.mov

is usually the command I use.

Here is a long list of options for encoding video/audio files.


How to use "prime-select on-demand" in latest Kubuntu 19.10

This is a confusing new 'option' that isn't described and generally of no use to most users. The bug report that lead to this being added stated -

"Per current NV and intel GPU driver, if we load nvidia.ko only, we can do display on intel GPU and leave the NV to deep learning for a graphic workstation."

Report here - https://bugs.launchpad.net/ubuntu/+source/nvidia-prime/+bug/1824282

Bug filed about how poorly this was implemented  here -

https://bugs.launchpad.net/ubuntu/+source/nvidia-settings/+bug/1851416


Hash Sum mismatch error when I try to install docker

Ok, finally I resolved it and here is how.

Instead of the command

sudo apt-get install docker-ce docker-ce-cli containerd.io

or

sudo apt-get install containerd.io

I have used the following, first downloading the packages and then installing them.

curl -k -O -L https://download.docker.com/linux/ubuntu/dists/eoan/pool/stable/amd64/containerd.io_1.2.13-1_amd64.deb
curl -k -O -L https://download.docker.com/linux/ubuntu/dists/eoan/pool/stable/amd64/docker-ce-cli_19.03.8~3-0~ubuntu-eoan_amd64.deb
curl -k -O -L https://download.docker.com/linux/ubuntu/dists/eoan/pool/stable/amd64/docker-ce_19.03.8~3-0~ubuntu-eoan_amd64.deb

sudo apt install ./containerd.io_1.2.13-1_amd64.deb
sudo apt install ./docker-ce-cli_19.03.8~3-0~ubuntu-eoan_amd64.deb
sudo apt install ./docker-ce_19.03.8~3-0~ubuntu-eoan_amd64.deb

I had searched on the net to first get to the package page. For example for here is the link for docker_ce.

I found that apt install is inconsistent.

The other approach that worked for me was

sudo dpkg -i ./packageName


command:

iptables -t nat -A POSTROUTING -o <ext> -j MASQUERADE

Info:

-t nat:

  -t: For table

  NAT, or network address translation, is a general term for mangling packets in order to redirect them to an alternative address. Usually, this is used to allow traffic to transcend network boundaries. A host that implements NAT typically has access to two or more networks and is configured to route traffic between them. Used to translatethe packet’s source field or destination field

-A POSTROUTING:

  specifies the built-in POSTROUTING chain to "append" the rule to

  chain: Rule set found in the NAT table

-j MASQUERADE:

  The -j MASQUERADE target is specified to mask the private IP address of a node with the external IP address of the firewall/gateway.

-o <interface>:

  The firewall's external networking device

SUMMARY:

-t nat      select table "nat" for configuration of NAT rules.
-A POSTROUTING      Append a rule to the POSTROUTING chain (-A stands for "append").
-o eth1     this rule is valid for packets that leave on this network interface (-o stands for "output")
-j MASQUERADE       the action that should take place is to 'masquerade' packets, i.e. replacing the sender's address by the router's address.

Sources:

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/4/html/Security_Guide/s1-firewall-ipt-fwd.html

https://www.karlrupp.net/en/computer/nat_tutorial

https://www.thegeekstuff.com/2011/01/iptables-fundamentals/


How to combine quickly and my python program?

For learning Python, there's a few sites you should go:

http://wiki.python.org/moin/BeginnersGuide

http://docs.python.org/tutorial/

http://www.korokithakis.net/tutorials/python/

Interactive tutorial

http://www.learnpython.org/

Ubuntu related stuff

https://help.ubuntu.com/community/Programming/Python

http://www.trainsignal.com/blog/introduction-to-python-programming-in-ubuntu-linux

Programing in Quickly

http://developer.ubuntu.com/resources/tools/quickly/

Not sure about quickly but there's a GUI tool that many people use on Ubuntu to code in Python -  IDLE

http://onecore.net/how-topython-programming-under-ubuntu.htm

It's not the GUI tool itself that you must be concerned, but learning the basics itself.


ERROR: 32-bit Linux Android emulator binaries are DEPRECATED when attemping to run the Android emulator

You're getting this error because you are apparently running on a 32bit system and the Android emulator is designed to operate best in a 64 bit environment. The only real solution is to install a 64bit operating system.

If your hardware doesn't support 64bit or you can't reinstall right now you can temporarily bypass the problem by passing -force-32bit when you start the emulator from the commandline or by setting ANDROID_EMULATOR_FORCE_32BIT to true in your environment (as the error says). You can do this by running:

gedit .profile

From a terminal. Add the text:

export ANDROID_EMULATOR_FORCE_32BIT=true

to the end of the file and save and close it. I can't test it right now but you'll either need to run source .profile from the terminal or restart for the changes to take effect.

Try launching the emulator.

It is highly recommended that you install a 64bit operating system to continue your Android development because Google will eventually remove the 32bit binaries which will cause your emulator to stop working. Android itself is also moving towards a x64 architecture, so by staying with 32bit you will get left behind very soon.


Office365 mail doesn't open in linux browser

I was having a lot of trouble with https://outlook.office365.com/ as well. Sometimes the page would just load and load without ever giving an error. I take it this is some kind of DNS issue.

After reading this, I resolved the issue by setting the MTU for my internet connection to 1200 bytes. Here are helpful instructions on how to do that.


Disk usage reported as 100%, only 10% actually used

I had this problem in the past and it was caused for files stored in the mount point directories before the mount operation connected them to the corresponding partition/device.
To find out, reboot the system in recovery mode and launch a shell. Find the mount points of your system using cat /etc/fstab and looking in the second column of each uncommented line (the ones not starting with a # pound sign).
In recovery mode the root directory should be the only mounted partition, and read-only, but we are analyzing the system, so it doesn't matter, but if you have to make directories or edit files, remount it read-write using mount -o remount,rw / before doing that.
Check the actual space in use in the root filesystem with the command du -x /. This command ensures that du doesn't dive into other filesystems even if they were mounted. If the free space is low, then you have to find where it is used.
Next, use du -x /directory with each fstab mount point to check the space used in each directory. All should be empty, if not, you found the culprit. Check the contents looking if they are disposable and you could erase them, and if not, mount your backup partition to safely copy them there before the erasing.
If the mount point /mnt/backup is the one filled, simply make another directory, say, /root/tmpbackup, and mount the filesystem there temporarily. To avoid writing the full command for it, simply edit the /etc/fstab file, copy the desired mount line to have a duplicate, comment one of them with # at start of the line and change the second column of the other from /mnt/backup to /root/tmpbackup. Save the file and mount it with mount /root/tmpbackup. This way you can restore the changes after finishing the fixing operations.
Now, if all mount points are empty (except the root, of course), then you have to find where all that space are used in the rest of the root filesystem. For this I recommend installing the ncdu program (apt install ncdu). To run it use: ncdu -xq /directory in the console or terminal. This command will read all filesizes below the /directory tree and show them sorted by directory sizes. Press h to check the help screen, enter to check inside a subdirectory or q to quit. I always install it in every new system just in case.
If you cannot install ncdu, simulate it (without the easy navigation) with du. For example, to check the sizes under /var use:
du -csx /var/* | sort -nr | less
where -s checks individual * arguments, -c shows total and -x restricts du to a single filesystem. As the results are numeric in bytes, we used -nr to sort them numerically and in reverse, and paged them with less.
Other posible culprits I have discovered sometimes could be a system or program log in /var/log filling for a repetitive problem reported, or, if the system have full automatic updates, could be the downloaded/unpacked packages filling the remaining space, or some program/files we forgot to have stored somewhere in the system.
Good luck!
Note: Sorry for the sheer amount of text, but I prefer overexplaining terms for the future beginner users reading the answer.


As a general rule, you should avoid parsing ls and you certainly shouldn't do it with a for loop which will break it's arguments on whitespace (or whatever you have set $IFS to). A better way would be:

for i in /opt/metasploit-framework/*msf; do ln -s "$i" /usr/local/bin/; done

If you insist on using ls, a safer way would be:

ls -1 /opt/metasploit-framework/*msf | while IFS= read -r msf; do
    ln -s /opt/metasploit-framework/"$i" /usr/local/bin/; done


MySQL server Upstart script not working on boot

Turns out Upstart start up jobs can have problems on OpenVZ.

Changing:

start on (net-device-up
          and local-filesystems
      and runlevel [2345])

to:

start on runlevel [2345]

fixed the problem for me.


How to create LVM physical volume from free space in a disk

Instead of /dev/sdb, you can use a partition on your /dev/sda as a physical LVM partition but you have to create it first.

IMPORTANT NOTICE: Make a backup of the whole disk before modifying partitions on your hard drive.

If you can use GUI, use GParted to create the new partition. Otherwise, run:

sudo parted /dev/sda

In the parted environment (indicated by the (parted) prompt), issue:

print free

Then issue the following command where <START> is replaced by the number given by the previous command as the start of the free space after sda3.

mkpart primary ext4 <START> 100%

Quit parted.

quit

Then you should be able to issue the commands:

sudo pvcreate /dev/sda4
sudo vgcreate cinder-volumes /dev/sda4


Extracting and automating xkeycaps configuration

You can use xmodmap.

xmodmap -pke > current.config

saves your current keyboard config to the file current.config. You can open this file in an editor and make your changes. You can read the config with the command

xmodmap current.config

You can also this command in any script.


How can I set which application is launched by 'xdg-open'?

All of the above answers are basically correct, depending on what you're doing and how the programs you're using are invoking things. For me the problem was that my terminal emulator (Tilix) was still opening the wrong browser (Firefox instead of Chrome), as well as xdg-open foobar.html also opened the wrong browser.
Eventually I figured out that there's also xdg-mime:
xdg-mime query default x-scheme-handler/http
firefox.desktop
xdg-mime query default x-scheme-handler/https
firefox.desktop

That is not correct, so I changed those to:
xdg-mime default google-chrome.desktop 'x-scheme-handler/http'
xdg-mime default google-chrome.desktop 'x-scheme-handler/https'

Then there's also bindings for 'text/html', which I also changed:
xdg-mime default google-chrome.desktop 'text/html'

This, in combination with making sure that the following are also set correctly:

the BROWSER environment variable
sensible-browser (/usr/bin/sensible-browser, a wrapper script that tries to launch some of the other items in this list)
gnome-www-browser (/usr/bin/gnome-www-browser, a symlink to /etc/alternatives/gnome-www-browser)
x-www-browser (/usr/bin/x-www-browser, a symlink to /etc/alternatives/x-www-browser
www-browser (/usr/bin/www-browser, a symlink to /etc/alternatives/www-browser)
all of the "alternative" entries (see  update-alternatives --get-selections for a list) that point to a browser.
The GConf database (See @Isaiah's answer)

This finally opens the correct browser for most situations on my desktop. 2018 is surely the year of Linux on the desktop.


Trying to PXE Install 14.04 with local mirror, but install keeps reaching out to canonical IPs

The Canonical IPs you see maybe for security.ubuntu.com. You can set the location for this mirror using these preseed keys:

d-i apt-setup/security_protocol string http
d-i apt-setup/security_host string security.ubuntu.com
d-i apt-setup/security_path string /ubuntu


You can install it via command

sudo apt install ibus-m17n

or load a package manager tool and search there, eg. aptitude, synaptic, muon etc.

Some software tools (eg. Ubuntu Software, Software Boutique, Discover) limit themselves to major or popular packages and don't list all packages to avoid 'clutter' or confusion.  Package managers are useful for less-common packages.


"Software sources" crashes since I upgraded from 12.04 to 12.10

It seems that you installed some PPA which isn't available for Quantal (I guess, because its URL doesn't exist). You should open your sources.list file and delete the line for that PPA, with the command sudo gedit /etc/apt/sources.list.

The line may be something like:

deb http://ppa.launchpad.net/rye/ubuntuone-extras/ubuntu/ quantal main source

But I just guessed it, you should see if there's any line like that and delete it. Or, if you remember the name of that PPA, you could just remove it, with something like that (replace rye/ubuntuone-extras for PPA's name):

sudo add-apt-repository --remove ppa:rye/ubuntuone-extras


A first simple approach would be to use the time stamping capacity of wget, with this, you could only download the new files from the repository. But it leads to make a mirror of the repository (but refreshed smartly with only the new files :) ).


Ubuntu is vulnerable to viruses from the internet?

This question was asked before and referring to Oli's response yes they can be effected by some. If they are exploiting your browser you can be affected or they are java applet (since java is cross-platform and runs on java machine). However if they try to install a program or driver, (as most do) they cannot infect your system since those are mostly written for windwos machines.


How can I specifically download the 64-Bit version of Ubuntu?

You can download all (including the 64-bit) editions of Ubuntu from : releases.ubuntu.com

Here is the direct download link for : Ubuntu 16.04.2 desktop 64-bit edition (5 years support)

Here is the direct download link for : Ubuntu 16.10 desktop 64-bit edition (9 months support)

Important : Make sure that the host machine on which you want to run the virtual guest system is running a 64-bit operating system that supports virtualization technology and that virtualization support is activated in the BIOS of this machine when you are using the VirtualBox application.

Updated information : The direct download links are valid only until a new (point) release will be available - as of today (2017-02-20) these are currently Ubuntu 16.04.2 LTS and Ubuntu 16.10. If one wants to download older (point) releases, they are located here : old-releases.ubuntu.com


UFW is just a front end for iptables, and so those log entries are actually from iptables.

Line 1: Feb  6 16:27:08 jonasgroenbek kernel: [71910.873115]

date and time, your computer name, and kernel time since boot.

Line 2: [UFW BLOCK] IN=eth0 OUT=

whenever iptables does a log entry there is an optional --log-prefix, in this case [UFW BLOCK]. The seriously annoying thing about UFW is that it uses the same prefix for every type of log entry, making it difficult to correlate back to the iptables rule set. The IN is the network interface name that the packet arrived on. The OUT is blank because the packet is not been re-transmitted, which might be the case if this was a router application.

Line 3: MAC=a6:8d:e2:51:62:4c:f0:4b:3a:4f:80:30:08:00

These are the Machine Address Codes for the local area destination (a6:8d:e2:51:62:4c (eth0)) and source (f0:4b:3a:4f:80:30) network interface cards. In your case the source is probably the MAC of your ISP gateway NIC. 6 bytes each. The extra 2 bytes (08:00) at the end are the frame type, in this case it means "ethernet frame carried an IPv4 datagram".

Line 4: SRC=77.72.85.26 DST=157.230.26.180

Those are the IP addresses for where the packet came from, SRC, and where is it supposed to going, DST and should be your IP address.

Line 5: LEN=40 TOS=0x00 PREC=0x00 TTL=251 ID=62215 PROTO=TCP

Length of the payload portion of the raw packet; Type of service, Presedence, Time to live (how many hops left before the packet will die from too many hops); Identification; Protocol (in this case TCP).

Line 6: SPT=42772 DPT=3194 WINDOW=1024

Source port; Detestation port; TCP window size

Line 7: RES=0x00 SYN URGP=0

TCP flags, the important one here is "SYN" meaning it it attempting to make a NEW connection. This log entry means the attempt has been blocked.


As Törzsmókus pointed out, this is a known recurring bug. Totem's Youtube interoperation is achieved by reverse-engineering the Youtube API. So whenever Google changes the API, Totem breaks. The bug is marked fixed, but if it reappears, file a bug or comment on Launchpad.


difference between methods to use multiple ip addresses

In your user case, responding to ping, is the same net effect.

The first method, obviously, modifies your kernel routing table with route command manually / directly at a lower level if you will.

See https://www.cyberciti.biz/faq/what-is-a-routing-table/ for an explanation of the kernel routing table.

In the second example, you are editing a configuration file, /etc/network/interfaces, which does the same thing, in essence, via the networking scripts. See man interfaces for details.

Obviously, as a part of the networking scripts, the kernel routing table is updated via ifup / ifdown and /etc/network/interfaces / network scripts have additional configuration options and the possibility of custom pre/post up/down scripts thus you have more options with /etc/network/interfaces.

The first method is temporary, and will not survive a reboot (although you could add a custom init script to do so).

The second method will survive a reboot. At the time of boot, the networking scripts are a part of the boot process and other services that are dependent on them will wait for the network to come up (apache, ftp, samba, nfs, etc). If you simply call route during boot such services may error out if they are run before your route command.

Hope all that helps or at least points you in the right direction for the information you want.


Blank screen booting Ubuntu 14.04 iso on 2011 Macbook Pro 17"

As Bain suggested, adding the "nomodeset" parameter solved this issue for me.

From the GRUB menu when the Ubuntu installer boots, use 'e' to edit the boot parameters. Use the arrow keys to get down to the kernel line (which will probably include things like "nosplash" or "root=...". To this line, add "nomodeset" and then you can hit Ctrl-x or F10 to continue booting with the new parameters.

This should get you to the installer environment. If this works, you can continue installing Ubuntu, but the installer isn't going to put "nomodeset" in the GRUB config on the hard drive. So, when the installer reboots, you'll need to do this again when the GRUB menu from the hard drive comes up. Then, when you get to your Ubuntu desktop, run Terminal, and from there, edit /etc/default/grub:

sudo vim /etc/default/grub

and look for the line that says:

GRUB_CMDLINE_LINUX="...."

and add "nomodeset" to that line, and then save. Then, tell GRUB to refresh it's menu file with:

sudo update-grub

Then, you should be good to go.


Can't get directory listing on my Apache to work

The '+' symbol before 'Indexes' is not needed.

Options Indexes FollowSymLinks

Will suffice.


I finally succeeded to make my cams work. Actually I was using Ubuntu in Virtual Box. And to display the cam streaming in VLC one needs to download Virtual Box Extension Pack here. As a result, there is a new entry "Webcams" option in the Devices menu when the virtual machine is running. One can select the cam to use with this option.


The terminal command to do what I want is

xmodmap -e "keycode 133 = ISO_Level3_Shift"

so I just added this command to the XFCE Startup. There should be a more elegant way through a setup file in the Home directory though, although adding a .xmodmap file didn't work.

In this case 133 is the Left Win key; you can get this by running xev on a terminal, pressing the key for which you want the code and it will be printed on terminal. Hope this helps some other people.


Had the same behaviour a while ago on Xubuntu 15.10 (64bit) with bumblebee and nvidia-355 (installed from here). There might to be some issues in Bumblebee with removing nvidia kernel module when it has a alias in modprobe.d, something to do with modprobe vs. insmod/rmmod I think.

Warning: I tried other things before this one so this might or might not be the complete fix.

Starting point was that I had an otherwise working configuration except NVIDIA GPU stayed on after running something with optirun. I then edited /etc/modprobe.d/nvidia-graphics-drivers.conf and commented out line (which probably get overwritten on driver updates and will have to be fixed again):

#alias nvidia nvidia_355

In /etc/bumblebee/bumblebee.conf I use Driver=nvidia with these settings:

[driver-nvidia]
KernelDriver=nvidia_355
PMMethod=auto
LibraryPath=/usr/lib/nvidia-355:/usr/lib32/nvidia-355
XorgModulePath=/usr/lib/nvidia-355/xorg,/usr/lib/xorg/modules
XorgConfFile=/etc/bumblebee/xorg.conf.nvidia

After this Bumblebee removes nvidia_355 kernel module ok and optirun --status reports "Discrete video card is off".

EDIT: removed commenting out "alias nvidia-uvm", tested and no need to comment out, might even be bad idea.

EDIT2: these settings should work also with nvidia-361 drivers if you update the settings above from "355" to "361". In addition with current bumblebee package from universe (3.2.1-9), you have to add blacklisting for 361 to /etc/modprobe.d/bumblebee.conf and add nvidia-modeset to the "remove line" at the end of the file i.e. change:

# Workaround to make sure nvidia-uvm is removed as well
remove nvidia rmmod nvidia-uvm nvidia

to

# 361
blacklist nvidia-361
blacklist nvidia-361-updates
blacklist nvidia-experimental-361
# Workaround to make sure nvidia-uvm is removed as well
remove nvidia rmmod nvidia-modeset nvidia-uvm nvidia

EDIT3:
with nvidia-364 change remove line to:

remove nvidia rmmod nvidia-drm nvidia-modeset nvidia-uvm nvidia


Ubuntu 18.04, terminal has no option to use tabs

To add a new tab while in the terminal, click on File and select "New Tab".


There is usually another option that states lock screen after x minutes

Could be a separate application like Light Locker [usually found in System Settings] or xscreensaver (and if I remember right there may even be an xlockscreen).  I never auto lock my screens so it has been awhile since I last worked on something like this in-depth.  If it is essentially a base install I would check Power Management settings (see paragraph below :-) )

Could also be Power Manager [again in System Settings] once opened click Extended and there is a checkbox there to "Lock Screen When Going for Suspend/Hibernate" which you would want to uncheck.

Hope that helps.


It seems I've found the solution.

The driver doesn't handle dual band networks of the same name too well.  It would sometimes report 144mbps, and sometimes 867mbps link speeds after successfully connecting.

After giving the 5GHz band a different name, it now connects reliably every time.


Very poor performance on 19.10 fresh install

One consideration is the speed of the HD, which could impact if swap is in use.  Based on your model HD, it is a rotating disk, and as you use space further from the start, disk speed degrades.  Since you have your Linux partition after the majority of the space, you are using the slowest possible space on the drive.  This drive itself is pretty slow to begin with anyway.  To tell if swap space is being used, open a terminal window, and type "free".  You should get an output like the following (this is with 64GB of RAM):

$ free
              total        used        free      shared  buff/cache   available
Mem:       65881252    14549200    48598296      165048     2733756    50491124
Swap:       2097148           0     2097148

If a significant portion is used, then you may be swapping programs constantly, and this can certainly degrade your performance.
You also may want to specify what AMD processor you are using, as there are a wide range of processors at different speeds.


What is Autopilot?

From the Ubuntu wiki:

  Autopilot is a functional testing tool for Unity. It simulates user actions by generating keyboard and mouse events, and then testing the internal state of Unity and associated applications.

You can get involved with testing by joining the QA team. Here is a link to their mailing list - ubuntu-quality, their launchpad page, as well as the official Ubuntu QA page.

Installation

To install Autopilot from the command line, run the following commands:

sudo add-apt-repository ppa:autopilot/ppa
sudo apt-get update && sudo apt-get install python-autopilot

An example of a simple test unit:

autopilot run unity.tests.test_showdesktop.ShowDesktopTests.test_showdesktop_hides_apps

Warning:
Running autopilot tests on your default desktop will cause your pc to send mouse and keyboard movements without your control. Please read the articles below before blindly running this command.

Tutorials

There is a tutorial here. Additionally, there have been several good articles mentioned in the Ubuntu weekly newsletter. These were written by Nicholas Skaggs, a community coordinator on the testing team, that have been very useful for me.

Autopilot: part 1

Autopilot: part 2 - Here the author walks through a simple "hello world" use case of autopilot

Autopilot: part 3

I highly recommend reading the three above linked articles before getting started with autopilot.

Contributing Testcases

You can submit test cases by emailing the ubuntu-quality mailing list using a specified format outlined here.

Additionally, test cases can be pulled via bzr using the following command:

bzr branch lp:ubuntu-autopilot-tests

Adding test case changes to the code branch can be done with a bzr push comand:

bzr push lp:<username>/ubuntu-autopilot-tests/ubuntu-autopilot-tests

See http://code.launchpad.net/ubuntu-autopilot-tests for more information.


Err:4 downloads.plex.tv/repo/deb public InRelease The following signatures couldn't be verified because the public key is not available:

There is no problem with your password, all works. You have problem with the plex.tv repository.

Try removing that PPA, for example by unchecking it in Software Sources in Software and Updates. You can try adding it again if you need it.


serving multiple websites over a home DSL line

You can definitely do it, and it's not really hard at all. I used to do web site programming for a few small businesses part time, and I had several sites on my home server for demonstrating works in progress.  I used (and still use) dynDNS, for which I pay $25/year.  As someone else mentioned, there are free services, but they all require certain hoops to jump through.  I personally feel that the cost I pay is not enough to worry about.  When I signed up, they had free services, but I don't know if they still do.

The way DynDNS does it is you can register any number of names that you choose from their selection.  For example, they have one called homelinux.net; you then can register a name like "Bennypr0fane.homelinux.net", and it will be routed to your current IP address, which you maintain by running an update client periodically (they have help on how to do that, and even supply a client for Ubuntu).

Then, you have a web server running, such as Apache, which has a virtual site running under that name.  You can have other sites running under other names, or other servers running with other ports.  I have my ebook library accessible via a Caibre server, plus websites.  You will need to tell your router about each port that needs to be accessed.


You can set options in your sources.list (located at /etc/apt/sources.list):

deb [trusted=yes] http://www.deb-multimedia.org jessie main

The trusted option is what turns off the GPG check. See man 5 sources.list for details.

You can either edit the file within the terminal with vim ( or whatever you prefer) or any non-terminal editor like gedit.


./ is an absolute path and points to the current working directory.

By providing an absolute path the shell won't search PATH.

So just type: sonar-runner -h and it should work.


Make sure that you have the libavcodec-extra-53 package for encoding to mp3 installed. To install libavcodec-extra-53 from the terminal run:
sudo apt-get install libavcodec-extra-53

Libav codec library:
Libav is a complete, cross-platform solution to decode, encode, record, convert and stream audio and video.

In Ubuntu 14.04 the Libav codec library (libavcodec-extra-53) has been updated to libavcodec-extra-54.
In Ubuntu 15.10 and 16.04 the Libav codec library has been updated to libavcodec-ffmpeg-extra56.
In Ubuntu 16.10, 17.04, 17.10, and 18.04 Libav codec library has been updated to libavcodec-extra57.
In Ubuntu 18.10, 19.04, 19.10, 20.04, 20.10 and 21.04 Libav codec library has been updated to libavcodec-extra58.


Webmin is not in the ubuntu repositories. see http://packages.ubuntu.com/search?lang=en&suite=all&searchon=names&keywords=webmin.
 You have to download the debian package from the Webmin website and install this package via:

dpkg -i <package>

But anyway, your Webmin is the newest version (1.660).


searching for "created_at": followed in the next line by "retweeted": in lots of json files for a specific range

To answer your first question: the expression 2(1:[0-5][0-9]:[0-5][0-9]|2:([0-2][0-9]:[0-5][0-9]|30:00)) is simply a regular expression, matching strings that start with a 2, followed either by 1:AB:CD, where A and C are digits from 0-5 and B and D are digits from 0-9, or by 2:AB:CD, where A is a digit from 0-2, C is a digit from 0-5, and B and D are digits from 0-9, or by 2:30:00. This is a very crude way to match all times between 21:00:00 and 22:30:00, inclusive. Writing such a regular expression to match dates or times between some arbitrary starting point and endpoint would be a very tedious exercise.

The link to your JSON file is no longer active, but I'll try to answer your main question based on the information you provided. By the way, your original grep command is a bit contradictory, since you give both the option -n (print line numbers) and -c (print only the count of the number of lines matching), which are mutually exclusive. So I am not exactly sure what information you want to extract (line numbers or count).

Here is a command that will extract all the lines containing the words created_at and which precede a line containing the words retweeted:

grep -rn -B1 'retweeted' * | grep 'created_at'

The idea is that the first grep prints each line matching retweeted and also the line before it. The second grep filters out the lines containing created_at.

Now you'll have a list of all the dates, with their line numbers. Filtering out the date range is harder; if you only have to do this rarely, you could use the regular expression

grep -E '(July (1[7-9]|[23].)|August .*|September .*|October .*|November [1-8]), 2016'

for your particular date range (but the more complicated the range, the harder this method gets).