To make the Lenovo Thinkpad t440s fingerprint scanner in Ubuntu (16.04.3) work, install the following:
sudo apt install fprintd libpam-fprintd
After the install – update the following file to set the timer to unlimited, otherwise the fingerprint scanner will time out during login:
sudo vi /etc/pam.d/common-auth
and look for the line that has the pam_fprintd in the name
auth [success=2 default=ignore] pam_fprintd.so max_tries=1 timeout=10
Usually the default is timeout=10 and max_tries=1, I updated mine like below, so it never times out and I have 2 tries
auth [success=2 default=ignore] pam_fprintd.so max_tries=2 timeout=-1
This works on sudo auth and login from lock, haven’t fully tested yet like startup etc. It is a little unstable though, I had it fail on me few times where it wouldn’t recognize the scanner anymore. I will update this post if I find anything.
If you install Tomcat8 (even tomcat7) via apt you will need to edit the file /etc/default/tomcat8 (or tomcat7) and look for the JAVA_OPTS variable. The Xmx value is there and you can set it as required.
To get apache2 working with php7 (or even lower perhaps?) on Linux you might need to download also the mod for php7
sudo apt-get install libapache2-mod-php7.0
A new Ubuntu 16.04.1 installation – after short usage the computer slows down and the CPUs are about 50% busy. There are some kidle_inject processes running which take this valuable CPU.
Top shows the following:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 6898 root -51 0 0 0 0 S 47.1 0.0 1:20.16 kidle_inject/5 6900 root -51 0 0 0 0 S 47.1 0.0 1:20.38 kidle_inject/7 6894 root -51 0 0 0 0 S 41.2 0.0 1:13.55 kidle_inject/1 6895 root -51 0 0 0 0 S 41.2 0.0 1:16.90 kidle_inject/2 6896 root -51 0 0 0 0 S 41.2 0.0 1:18.28 kidle_inject/3 6897 root -51 0 0 0 0 S 41.2 0.0 1:18.64 kidle_inject/4 6899 root -51 0 0 0 0 S 41.2 0.0 1:20.02 kidle_inject/6 6893 root -51 0 0 0 0 S 29.4 0.0 1:08.23 kidle_inject/0
To stop these processes run the following command – it will disable them only for the current session. I very rarely reboot so I haven’t looked into making it permanent yet.
$ sudo rmmod intel_powerclamp
$ sudo ip link set dev enp0s25 alias test $ ip link 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: enp0s25: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN mode DEFAULT group default qlen 1000 link/ether 68:f7:28:84:38:ce brd ff:ff:ff:ff:ff:ff alias test 3: wlp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT group default qlen 1000 link/ether 60:57:18:cf:0c:6a brd ff:ff:ff:ff:ff:ff
When setting up environment variables, for example in .profile you can write the following near the top of the file to enable exporting of all the environment variables without explicitly writing “export” each time:
set -o allexport
with the above, then you can just write the following, for example:
To disable the all export:
set +o allexport
You are also able to set environment variables without the export or allexport, however that will NOT make the variable available to sub-processes.
Count bytes and characters with wc
wc -c filename == counts the bytes
wc -m filename == counts the characters
this can be combined with other commands like grep, awk, sed
example with sed:
sed -n '1p' filename | wc -c
the above will print the first line from filename and count the bytes in that line
Sometimes if you edit a file in windows and then open it in Linux/UNIX it will have the special characters ^M at the end of each sentence. To fix ^M in Linux/UNIX using vi/vim run the following:
%s/[ctrlkey+v and ctrl-key+M]//g
Replace all multi-blankspaces (more than one spaces/tabs) in file with mono-blankspace (one space):
sed 's/[<space>][<tab>][<space>][<tab>]*/ /g' filename
can also be:
sed 's/[<space>][<tab>][<space>][<tab>]*/ /g' filename > newfilename
note: g in the end means GLOBAL
In the above samples, <space> means ‘ ‘ (empty space) and <tab> means ‘ ‘ (tab key press).
See which queries are currently executing in Oracle (11g).
select s.username, s.sid, s.osuser, sql_text from v$sqltext_with_newlines t,v$session s where t.address = s.sql_address and t.hash_value = s.sql_hash_value and s.status = 'ACTIVE' and s.username <> 'SYSTEM' order by s.sid, t.piece