====== (X)Ubuntu tweaks ======
===== Wine: INTERNAL ERROR: Cannot create temporary directory! =====
Znalezione TU: https://ubuntuforums.org/showthread.php?t=2468575
INTERNAL ERROR: Cannot create temporary directory!
The Problem still exists, the problem is marked as "solved" but I got a better Workaround:
Supply Temp with a (virtual) Floppy Disk. VFAT is always writeable (unless mounted ro)
wine ./some.exe (typically Python ...)
[42] INTERNAL ERROR: cannot create temporary directory!
┌──(user㉿host)-[~/somedir]
└─$ file some.exe
some.exe: PE32+ executable (console) x86-64, for MS Windows
┌──(user㉿host)-[~/somedir]
└─$ ls -laFtr ~/.wine/drive_c/users/user/Temp 255 ⨯
total 0
drwxr-xr-x 1 user user 384 Nov 3 12:36 ../
d--------- 1 user user 0 Nov 3 18:01 _MEI424/
d--------- 1 user user 0 Nov 3 18:01 _MEI423/
d--------- 1 user user 0 Nov 3 18:01 _MEI422/
d--------- 1 user user 0 Nov 3 18:01 _MEI426/
d--------- 1 user user 0 Nov 3 18:01 _MEI425/
drwxr-xr-x 1 user user 70 Nov 3 18:01 ./
┌──(user㉿host)-[~/somedir]
└─$
┌──(user㉿host)-[~]
└─$ dd if=/dev/zero of=dos.img bs=1M count=100
100+0 records in
100+0 records out
104857600 bytes (105 MB, 100 MiB) copied, 0.0647699 s, 1.6 GB/s
┌──(user㉿host)-[~]
└─$ ll dos.img
-rw-rw-rw- 1 user user 104857600 Nov 3 17:07 dos.img
┌──(user㉿host)-[~]
└─$ mkfs.fat dos.img
mkfs.fat 4.2 (2021-01-31)
┌──(root💀host)-[~]
└─# sudo vi /etc/fstab
:
/home/user/dos.img /home/user/.wine/drive_c/users/user/Temp vfat loop,user 0 1
┌──(user㉿host)-[~/somedir]
└─$ mount /home/user/.wine/drive_c/users/user/Temp
┌──(user㉿host)-[~/somedir]
└─$ df
Filesystem 1K-blocks Used Available Use% Mounted on
:
/dev/loop0 102182 4 102178 1% /home/user/.wine/drive_c/users/user/Temp
┌──(user㉿host)-[~/somedir]
└─$ ll /home/user/.wine/drive_c/users/user/Temp
total 22
drwxrwxrwx 3 user user 16384 Jan 1 1970 ./
drwxr-xr-x 17 user user 4096 Nov 3 12:36 ../
drwxrwxrwx 3 user user 2048 Nov 3 17:11 a/
┌──(user㉿host)-[~/somedir]
└─$ mkdir /home/user/.wine/drive_c/users/user/Temp/abc
┌──(user㉿host)-[~/somedir]
└─$ chmod u-rwx /home/user/.wine/drive_c/users/user/Temp/abc
┌──(user㉿host)-[~/somedir]
└─$ ll /home/user/.wine/drive_c/users/user/Temp/
total 24
drwxrwxrwx 4 user user 16384 Jan 1 1970 ./
drwxr-xr-x 17 user user 4096 Nov 3 12:36 ../
drwxrwxrwx 3 user user 2048 Nov 3 17:11 a/
drwxrwxrwx 2 user user 2048 Nov 3 18:29 abc/
┌──(user㉿host)-[~/somedir]
└─$ wine ./some.exe
:
running !
===== Wyłączanie Tumblerd =====
Znalezione [[http://forum.xfce.org/viewtopic.php?id=8722|tutaj]]
Tumblerd using up CPU, and memory on Xfce and thunar
Recently, I've had some trouble with tumblerd using a lot more resources than it should. I did some research and found this script that basically puts a leache on tumbler, while allowing you to keep using it to make thumbnails.
Copy and paste this script into a blank file, mark it executable, and set up Xfce to run it at startup...problem solved!
#!/bin/bash
# Tumblerdwatcher v 1.0
# Script to check and kill tumblerd process if a loop is suspected. To be automatically scheduled at user session start.
# Homemade workaround for bug: http://forums.linuxmint.com/viewtopic.php?f=110&t=97079&p=767460&hilit=tumblerd#p554241
# The author has no responsibility for the execution. Feel free to distribute and modify it.
# Advice are welcome to rs2809@yahoo.it.
period=60 # check period (sec)
process="/usr/lib/i386-linux-gnu/tumbler-1/tumblerd" # tumblerd binary path
Pcpu=20 # tolerated cpu usage (%)
Pmem=25 # tolerated memory usage (%)
mountpath="/media" # automatic mount point for removable storage
sec=10 # time limit (sec) for opened file at $mountpath for thumbnail generation
sg="-15" # process termination signal (-15 is OK)
logpath="/tmp/Tumblerdwatcher.log" # log path
cat /dev/null > $logpath
exec >$logpath 2>&1
# reset log file
while true
# execute endlessly
do
sleep $period
# wait a set period of time
[[ `ps -ef | grep $process | grep -v 'grep' | wc -l` -eq 0 ]] && continue
# skip to next period if not executing
ps -eo pcpu,pid,pmem,args | grep $process | grep -v 'grep' | while read dpcpu pid dpmem
# catch proccess id, cpu usage and memory usage
do
pcpu=`echo $dpcpu | cut -d'.' -f1`
pmem=`echo $dpmem | cut -d'.' -f1`
[[ $pcpu -gt $Pcpu ]] || [[ $pmem -gt $Pmem ]] && kill $sg $pid && echo "`date` PID $pid $pcpu/$Pcpu %cpu $pmem/$Pmem %mem" && continue
# if cpu usage or memory usage exceed, kill it and report values in the log file
[[ `lsof -p $pid | grep $mountpath | wc -l` -eq 0 ]] && continue
# if no opened file by tumblerd at removable storage mountpoint, skip to next period
lsof -p $pid | grep $mountpath | tr -s ' ' | cut -d' ' -f9 > /tmp/tumblerd.lsof.old
# list opened files
sleep $sec
# wait for tolerated time limit
[[ `lsof -p $pid | grep $mountpath | wc -l` -eq 0 ]] && continue
# if no more opened file skip to next period
lsof -p $pid | grep $mountpath | tr -s ' ' | cut -d' ' -f9 > /tmp/tumblerd.lsof.new
# list opened files again
for opened_file in `cat /tmp/tumblerd.lsof.old`
# if some file was open before....
do
grep $opened_file /tmp/tumblerd.lsof.new && kill $sg $pid && echo "`date` PID $pid ^^^^^^^^^^^^^^^^^^^^^^^^" && continue
# ...and it's still hung open, kill tumblerd
done
done
done
===== GoogleDrive =====
==== Mount GoogleDrive ====
* http://www.ubuntugeek.com/how-to-mount-google-drive-in-ubuntu-linux-using-google-drive-ocamlfuse.html
* http://xmodulo.com/mount-google-drive-linux.html
==== Synchronizacja wielu kont Google Drive ====
==== UMGAGA! Ostatnio Grive przestało mi działać na Xubuntu 14.04. Czytaj niżej. ====
W związku z powyżej wykazanym notorycznym błędzeniem grive:
Zapomnialem zkopiovac logó
Postanowiłem przerzucić się na program ''drive'', którego opis można znaleźć pod adresem: https://github.com/odeke-em/drive/
Jak już się nauczę, jak nim posługiwać, wtedy poprawię niżej napisane skrypty. Na razie niech leżą, może komuś się przydadzą.
=== Skrypt ===
Napisałem do tego celu własny {{:linux:grive-sync.sh.text|skrypt}}. Nie jest to nic specjalnego, bo żaden ze mnie programista, po prostu użytkownik Linuxa. Dość łatwo go dostosować do własnych potrzeb.
Powinienem go rozbudować o pytania i opublikować na GitHubie, to dołączę do elyty ;-)
Hmmm... Ten skrypt nie zawsze działa. Zatem na wypadek awarii oraz ewentualnie dla ukrycia śladów warto też odpalać taki {{:linux:grive-sync-always.sh.text|skrypt}}. On wykona synchronizację zawsze, bez sprawdzania i pytania.
=== Instalacja ===
Aby korzystać z dobrodziejstw automagicznej synchronizacji wielu kont Google Drive na Xubuntu, należy najsampierw zainstalować sobie opensorsowego klienta GoogleDrive:
=== instalacja Grive ===
sudo add-apt-repository ppa:thefanclub/grive-tools
sudo apt-get update
sudo apt-get install grive-tools
To zainstaluje o wiele więcej niż potrzebujemy, ale przynajmniej świadczy aktualizację kodu Grive.
Następnie trzeba wejść do katalogu, w którym chcemy, aby się znalazły synchronizowane z serwerem pliki i odpalić:
cd /path/to/my/GoogleDrive/
grive -a
Poczekać, aż się zsynchronizuje.
Następne synchronizacje robi się tak, że:
cd /path/to/my/GoogleDrive/
grive
Następnie trzeba zainstalować niezbędne narzędzia:
=== instalacja md5deep ===
sudo apt-get install md5deep
== aplikacja skryptu w crontab ==
Na razie nie znalazłem metody, jak odpalać synchronizację po każdej zmianie, więc po prostu można wrzucić skrypt do ''crontab'', aby wykonywał się np. co 5 minut, kiedy jesteśmy zalogowani:
crontab -e
Odpali nam w domyślnym edytorze tekstowym terminala pliku z ''/var/spool/cron/crontabs/mojekonto'':
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/tmp/crontab.uop5Gq/crontab installed on Sat Dec 13 12:06:46 2014)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
# Edit this file to introduce tasks to be run by cron.
#
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
#
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').#
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
#
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h dom mon dow command
#
#
#
## odpal google drive sync co 5 min
*/5 * * * * /home/myself/myscripts/grive-sync/grive-sync.sh > /dev/null
To powinno działać.
===== Łatwa zmiana szerokości okna w Xubuntu =====
Niestety, graficy z okolic Ubuntu wymyślili, że granica okna będzie miała najwyżej 1px szerokości - ale zapomnieli, że obszar na którym można by je "chwycić", powinien być znacznie szerszy, aby łatwo było taką operację wykonać. Ten obszar, niestety, także ma szerokość 1px, co prawie uniemożliwia sukces...
Ale znalazłem prawdopodobną przyczynę i jednocześnie obejście problemu: skrót klawiszowy, wbudowany w Xubuntu:
==== skrót klawiszowy ====
Have you tried the **Alt+Right-click+drag** trick? **//Hold down the Alt key, press and hold the right mouse button, and then move the mouse in the direction of the resize.//**
Tłumaczę: wciśnij i przytrzymaj Alt, wciśnij i przytrzymaj prawy przycisk myszy - i "pociągnij" czyli przesuń myszkę. Okno zmieni rozmian razem z tym ruchem.
===== Zamiana Ubuntu desktop na serwer server jednym ruchem? =====
Da się? Da się!
apt-get install tasksel && tasksel remove ubuntu-desktop && tasksel install server && apt-get update && apt-get install linux-server linux-image-server && apt-get purge lightdm
===== Kiedy zamykam pokrywę laptopa =====
Zwykle wtedy jest opcja wstrzymania, nic nierobienia lub zablokowania ekranu. Jednak w Xubuntu coś nie ten-teges jest z zarządzaniem WiFi po obudzeniu laptoka. A że mam dysk SSD, budzenie i restart trwają podobnie długo, więc...
[[http://ubuntuhandbook.org/index.php/2014/04/shutdown-ubuntu-14-04-lts-when-the-lid-is-closed/|... trzeba zmienić konfigurację systemd-logind (/etc/systemd/logind.conf)]], żeby po zamknięciu klapy laptok się wyłączał.
===== Linki i sznurki =====
==== Inteligentny rozpakowywacz ====
http://netbit73.blogspot.com/2013/09/dtrx-inteligentny-rozpakowywacz.html#more
==== Zaplanowane operacje, użycie at ====
http://www.computerhope.com/unix/uat.htm
==== Użycie .htaccess ====
http://www.tecmint.com/apache-htaccess-tricks/
==== Wyłączenie konta guest Xubuntu i inne ====
http://askubuntu.com/questions/62564/how-do-i-disable-the-guest-session/169105#169105
==== Gdy Firefox żre za dużo CPU ====
http://www.wikihow.com/Stop-Firefox-from-Consuming-CPU-Cycles
==== Przegląd kart i sieci WiFi w terminalu (CLI) (nmcli) ====
https://fedoraproject.org/wiki/Networking/CLI
====== Wake-on-LAN ======
http://www.cyberciti.biz/tips/linux-send-wake-on-lan-wol-magic-packets.html
====== Instalacja Google SketchUp ======
http://ubuntuhandbook.org/index.php/2014/06/install-google-sketchup-ubuntu1404/