Nabídka

Zobrazit příspěvky

Zde lze prohlédnout všech příspěvky uživatele. Jsou zde vidět pouze příspěvky z oblastí, do kterých máte přístup.

Nabídka Zobrazit příspěvky

Příspěvky - Petr Gajdůšek

#1
Ahoj,

napiš prosím, co přesně jsi zkusil a s jakým výsledkem; případně přilož .rdp soubor s odstraněnými citlivými údaji, aby mohl problém někdo reprodukovat.

Remmina umí
- importovat .rdp soubory v GUI (menu položka "Import")
- připojit se dle .rdp souboru zadaného z příkazové řádky remmina -c FILE nebo --connect=FILE
- v mém systému je asociovaná s .rdp soubory a automaticky se v ní otevírají; pokud u tebe ne, tak se dá nastavit např. pomocí mimeopen -d <cesta k RDP souboru>

.rdp soubor je pokud vím textový soubor, takže by neměl být ani problém ho přečíst a vytvořit spojení ručně v GUI remminy.

Remminu k RDP používám často a zatím bez problémů. .rdp soubory ale nepoužívám.

Petr
#2
Programování / Re:Problém s pravý
11. 01. 2018, 19:45:37
Ahoj,

Ty se v tom PHP pokoušíš otevřít /dev/ttyAMA0 pro zápis a čtení
Kód (php) [Vybrat]
fopen('/dev/ttyAMA0','r+'); Ale protože je používáno jako sériová console (terminál), je na něm spuštěno getty, a tedy k němu má přístup jen skupina tty, a to jen pro zápis.

Kód (bash) [Vybrat]
$ ls -l /dev/ttyAMA0
crw--w---- 1 root tty 204, 64 Jun  1 21:10 /dev/ttyAMA0


Proto ti pod Apachem funguje např.
Kód (php) [Vybrat]
system ('echo hups> /dev/ttyAMA0'); když je Apache (uživatel www-data) ve skupině tty.

Podívej se do /proc/cmdline a uvidíš tam něco jako console=ttyAMA0,115200. Systemd potom na tomhle portu pustí getty a to nastaví zařízení  /dev/ttyAMA0  práva jako consoli (terminálu). Do terminálu smí zapisovat jen skupina tty, ale nesmí z něho číst. Zápis je nutný např. pokud chceš poslat zprávu na všechny terminály, můžeš použít /usr/bin/wall, který je vlastněn skupinou tty a má nastaven SETGID bit.

Ten odkaz ti měl napovědět. Jen tam místo řešení příčiny - /dev/ttyAMA0 se používá jako sériová console - ji obchází tím, že zakážou systemd unitu serial-getty@.service, která na zařízení /dev/ttyAMA0  spustí getty.

man 8 systemd-getty-generator

Odstraň z /boot/cmdline.txt text console=ttyAMA0,115200 a rebootuj.

Nyní už nebude /dev/ttyAMA0 používán jako console (nepoběží na něm getty), ale bude dostupný jako seriový port, ke kterému budou mít přístup uživatelé ve skupině dialout, pro čtení i zápis.

Kód (bash) [Vybrat]
$ ls -l /dev/ttyAMA0
crw-rw---- 1 root dialout 204, 64 Jun  2 11:29 /dev/ttyAMA0


Dej apache (uživatele www-data) do skupiny dialout; odstraň ho ze skupiny tty a restartuj.

Viz. https://wiki.debian.org/SystemGroups
#4
Volná diskuze / Re:Úkol :-)
12. 12. 2017, 04:45:15
Musíš ten script přece volat s parametry, který očekává.
muj_skript.sh <uzivatel> <home>

Přidej ty parametry do ExecStart= své systemd unity, stejně jako bys script spouštěl z příkazové řádky.

Jinak ten script má celkem dost problémů:

Volání adduser bys měl ošetřit pro libovolné (i nevalidní) hodnoty parametrů, např. obsahující mezery nebo začínající pomlčkou:
/usr/sbin/adduser --home="$home_directory" -- "$user"

Pokud má být script neinteraktivní, nemá v něm co dělat volání interaktivního sudo. Můžeš explicitně kontrolovat ještě před voláním adduser, zda je skript spuštěn pod rootem, jinak skončit chybou; místo toho abys nechal na nedostatek práv selhat až volání adduser.
if [[ $(whoami) != root ]]; then echo "You must run this script as root" >&2; exit 1; fi

Volat adduser jenom tehdy, pokud uživatel neexistuje, aby ses vyhnul neustálému selhávání a logování chyby. Ke zjištění, zda uživatel existuje se dá použít návratový kód příkazu getent passwd
if ! getent passwd -- "$user" >/dev/null; then ... fi

Mohl bys lépe parsovat parametry scriptu a případně vypisovat help.
http://wiki.bash-hackers.org/scripting/posparams

Hodně zdaru!
#5
Volná diskuze / Re:Úkol :-)
10. 12. 2017, 17:18:45
Ten postup je v pořádku.

Snad jen zvýšit přesnost pomocí AccuracySec=, protože výchozí hodnota je 1 minuta, takže se ti skript bude volat každých 20 - 21 minut.

Zkontroluj status toho timeru a podívej se na logy.

TIP: Pokud ten script něco zapíše na standardní výstup (nebo standardní chybový výstup) tak se to objeví v logách. Toho můžeš využít k ladění.


$ sudo systemctl status myscript.timer
$ sudo journalctl --no-tail --follow --boot --unit myscript.service


Případně všechny logy (při omezení na unitu mně journalctl vynechává logy).

$ sudo journalctl --no-tail --follow --boot

#6
Volná diskuze / Re:Úkol :-)
10. 12. 2017, 01:10:31
Ahoj,

nemám zkušenosti, ale kdybych chtěl co nejjednodušeji něco spouštět každých 20 minut po restartu, podíval bych se nejdříve na man 5 systemd.timer
a na popis voleb OnBootSec= a OnUnitActiveSec=, případně OnUnitInactiveSec=
#7
Všeobecná podpora / Re:Debian 9 Backports
17. 09. 2017, 00:12:22
Už jsou otevřený. Tuším od konce června.
#8
Hardware / Re:USB tiskárna a výstup
10. 07. 2017, 22:08:27
Pro USB pass through musí být uživatel, pod kterým běží virtualbox ve skupině vboxusers.

http://www.virtualbox.org/manual/ch03.html#idm1624

Kód (shell) [Vybrat]

petr:~$ VBoxManage list usbhost
Host USB Devices:

<none>

petr:~$ sudo VBoxManage list usbhost
Host USB Devices:

UUID:               07299018-f375-4b29-af48-2a02f2c7c96b
VendorId:           0x1c4f (1C4F)
ProductId:          0x0002 (0002)
Revision:           1.16 (0116)
Port:               0
USB version/speed:  1/Low
Manufacturer:       USB
Product:            USB Keykoard
Address:            sysfs:/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.1//device:/dev/vboxusb/001/003
Current State:      Busy

UUID:               60452d66-aa23-470f-9921-727c177eff69
VendorId:           0x093a (093A)
ProductId:          0x2510 (2510)
Revision:           1.0 (0100)
Port:               1
USB version/speed:  2/Low
Manufacturer:       PixArt
Product:            USB Optical Mouse
Address:            sysfs:/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.2//device:/dev/vboxusb/001/004
Current State:      Busy

petr:~$ sudo adduser petr vboxusers
petr:~$ newgrp vboxusers
petr:~$ VBoxManage list usbhost
Host USB Devices:

UUID:               75f56655-b9bc-4afb-99a6-e38124d8499d
VendorId:           0x1c4f (1C4F)
ProductId:          0x0002 (0002)
Revision:           1.16 (0116)
Port:               0
USB version/speed:  1/Low
Manufacturer:       USB
Product:            USB Keykoard
Address:            sysfs:/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.1//device:/dev/vboxusb/001/003
Current State:      Busy

UUID:               f8c637c6-0832-4cb1-bd05-d1b214ce370a
VendorId:           0x093a (093A)
ProductId:          0x2510 (2510)
Revision:           1.0 (0100)
Port:               1
USB version/speed:  2/Low
Manufacturer:       PixArt
Product:            USB Optical Mouse
Address:            sysfs:/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.2//device:/dev/vboxusb/001/004
Current State:      Busy


#10
Ahoj,

Pokud jsou balíky staženy, lze použít apt-listchanges. Apticron nepoužívám, ale protože doporučuje apt-listchanges, tak ho snad i integruje.

Pokud chceš zobrazit seznam změn před stažením balíku, tak zbývá asi jedině packages.debian.org (nebo nějaké zrcadlo?). Například pomocí apt-get changelog <packages>

Potom by ale bylo potřeba z toho dostat jen začátek po aktuálně nainstalovanou verzi, např. pomocí parsechangelog --since <installed version> <path/to/changelog> z balíku libparse-debianchangelog-perl.
#11
Začal jsem ho  backportovat. Zítra balíčky uploaduji na mentors.debian.net, netuším ale jestli je účet na mentors.debian.net přístupný jako  repozitář, asi ne. Nemám žádné FTP, na kterém bych ho mohl poskytnout. Pokusím se to dostat do wheezy-backports, ale nejsem si jist úspěchem, už tam je backportovaný xfce4-weather-plugin pro xfce 4.8.
#12
Server / Re:nemohu najit httpd.conf
06. 02. 2014, 09:42:53
/etc/apache2/apache2.conf

Je rozdělen do menších souborů, struktura je popsána na začátku apache2.conf.


/etc/apache2/
|-- apache2.conf
|       `--  ports.conf
|-- mods-enabled
|       |-- *.load
|       `-- *.conf
|-- conf.d
|       `-- *
`-- sites-enabled
         `-- *
#13
Všeobecná podpora / Re:problem gcc
06. 02. 2014, 00:26:57
Citace od: tribalcz kdy 03. 02. 2014, 22:04:21

configure: error: no acceptable C compiler found in $PATH


Potřebuješ C překladač (třeba gcc  ;))

Citace
v repo jsem našel gcc 4.6 nejspise 4.6.4 ale tu nedokáže systém zavést

Co znamená "tu nedokáže systém zavést" ? GCC 4.6. by ti měl jít normálně nainstalovat z repozitáře. To nejde? Z repozitáře můžeš mít zároveň nainstalováno i více verzí, gcc-4.7 klidně ponechat, není důvod ho odstraňovat.

K instalaci nvidia driveru nepotřebuješ nic ručně kompilovat. Proč nenainstaluješ nvidia-kernel-dkms balík (nebo jeden z legacy pokud máš starou kartu) z repozitáře, o kompilaci se ti automaticky postará DKMS. Potřebuješ k tomu již jen nainstanstalovat balík s hlavičkovými soubory pro své jádro.
Návod (velice jednoduchý) je na https://wiki.debian.org/NvidiaGraphicsDrivers. Potřebuješ s ním poradit, nebo ti nefunguje?
#14

$ apt-cache madison flashplugin-nonfree
flashplugin-nonfree |      1:3.4 | http://ftp.cz.debian.org/debian/ sid/contrib i386 Packages
flashplugin-nonfree |      1:3.4 | http://ftp.cz.debian.org/debian/ testing/contrib i386 Packages
flashplugin-nonfree |      1:3.2 | http://ftp.cz.debian.org/debian/ wheezy/contrib i386 Packages


Blbá otázka, ale určitě máš v sources komponentu contrib a máš aktualizované indexy (apt-get update)?

Pokud ano, tak zkontroluj apt preferences, jestli ten balík nemáš třeba vypíchnutý.
apt-cache policy flashplugin-nonfree
#15
Volná diskuze / Re:Příkazový řadek
04. 12. 2013, 07:25:07
1) man 1 find
2) man 1 pgrep
man 1 pkill