Näytä kirjoitukset

Tässä osiossa voit tarkastella kaikkia tämän jäsenen viestejä. Huomaa, että näet viestit vain niiltä alueilta, joihin sinulla on pääsy.


Aiheet - teele

Sivuja: [1] 2 3 ... 19
1
Jos käynnistää pilvikoneessa ohjelman taustalle, niin jääkö käynnistetty ohjelma käyntiin pilvikoneella, kun käynnistänyt pääteyhteys katkeaa.

Nyt käynnistyksessä on käytetty byobua, mutta onnistuisiko myös pelkillä bash-komennoilla.

Sitten tietysti ohjelma pitäisi saada pysäytettyä uudessa pääteikkunassa, kun joskus myöhemmin kirjautuu pilvikoneelle. Onnistuuko tavallsilla bash-konsteilla.

2

Käytössä on ollut meiliboxi.fi -palvelun sähköposti ja sattumalta tuli ilmi, että otulook.com: iin menevien viestien ilmoitetaan olevan estolistalla. Ilmoituksesta, joka ilmestyy tulleisiin sähköposteihin, olisin ymmärtävinäni, että outlook on laittanut meiliboxin estolistalle.

onko tämä yleistä ja miten mahtaisi käydä, jos lähettäisi sähköpostin suoraan php:stä, tulisiko silloin varmenteiden tms. kanssa ongelmia?

3
Tässä win-koneen käyttömahdollisuutta odotellessa on tullut mieleen, kannattaisiko muistitikku laittaa suoraan ext4-muotoon.

Windowsin kanssa ei paljon oikeassa elämässä ole ollut tekemistä. Kirjaston kopiokoneiden kanssa jo ntfs-muotoisella tikulla on ollut ongelmia ja kopioitavaksi halutut tekstit olisi jo nyt pitänyt laittaa sähköpostin kautta kirjaston tikulle.

Yksi vaihtoehto olisi kopioida tikun tiedostot väliaikaisesti levylle, alustaa vanha tikku ext4-muotoon ubuntu 24.04-koneella ja laittaa tiedostot sinne takaisin. Voisiko tämän tehdä ubuntu 22.04-koneessa niin, että mahdollisesti uudemman ext4-version kanssa ei tulisi sitten samanlaisia ongelmia kuin nyt ntfs-muotoisen tikun kanssa.

Tikku on käytössä varmuuskopioita ja tiedostojen siirtämistä ubuntu-koneiden välillä varten.Koneissa voi olla eri versiopäivitykset. Onko olemassa joku syy, jota en keksi, miksi ext-muotoinen tikku ei olisi hyvä ratkaisu.



4

Ubuntun ehdottaman päivityksen 22.04 -> 24.04 jälkeen yksi muistitikku ei tunnistu. Virheilmoituksena tulee varmaan kaikki mahdolliset syyt ikkunaan, josta en saanut tekstiä kopioiduksi.

Toinen tikku tunnistuu tässä ongelmakoneessa ja  "ongelmatikku" tunnistuu 22.04 -koneessa. Muuten päivitetty kone näyttää toimivan tavallisesti.

Epäilys siis on, että päivityksessä meni jotain pieleen. Miten asiaa voisi alkaa selvittää?


5

Päivitin juuri kotikoneen 24.04 -versioon vain napsauttamalla asiasta muistuttaneen ikkunan ponnahdettua auki, ja kaikki näyttää menneen hyvin ja helposti. Mutta kun aloitin versiopäivityksen ssh:n kautta pilvikoneella pilvikoneen bashilla, tuli varoitus

Koodia: [Valitse]
Checking package manager

Continue running under SSH?

This session appears to be running under ssh. It is not recommended
to perform a upgrade over ssh currently because in case of failure it
is harder to recover.

If you continue, an additional ssh daemon will be started at port
'1022'.
Do you want to continue?

Continue [yN]

Miten tässä kohdassa pitäisi toimia, mikä olisi mahdollinen toinen tapa, jos ssh:ta ei käytä. Muistelen, että versiopäivitys on ehkä onnistunut aikaisemmin helposti ssh:n kautta samalla pilvikoneella.




6
Pitäisi lukea calciin pieni csv-tiedosto, jossa on ääkkösiä. Ääkköset näkyvät mustina salimakkeina, joiden keskellä on kysymysmerkki.

Oma calcini on englantilainen, koska haluan tutut funktionimet. Kokeilin myös valita kieleksi suomen ja/tai englannin, kun calc esitti valikon lukuoptioista csv-tiedostoa avattaessa. Kummallkaan valinnalla en saanut ääkkösiä näkymään oikein.

Merkistö on tiedostossa utf-8, ja se näkyy oikein kun avaan tiedoston geditillä. Calc ikkunaan voi kirjoittaa näppäimistöltä ääkkösiä ja ne näkyvät oikein.

Luultavasti etsi - ja -korvaa -toiminnolla voi tunnistamattomat salmiakit korvata, mutta olisiko olemassa joku keino, millä calcin saisi lukemaan ne suoraan oikein ääkkösinä, kun kuitenkin ääkköset toimivat ihan hyvin calc laskentataulukoissa.

En haluaisi suomentaa calcin funktionimiä eli vaihtaa maa- tms. asetuksia.

 

7

Mikä olisi edullinen ja helppokäyttöinen pilvikonepalvelu, josta saisi oman pilvikoneen, jossa voisi  ajaa ubuntua päätemuodossa.

Tarkoitus on vain pitää helppoja php-avusteisia html-sivuja vakio-osoitteessa. Luuisin jopa 2 Gt muistin olevan riittävän ja ehkä parikymmentä gt :tä levytilaa olisi sopiva tai riittävä.

Pilvikoneiden luonti ei ole milllään tavalla tuttua ja toivoisin pilvikoneiden hallinnoinnin olevan yksinkertaista, yksi kone voisi olla käytössä koko ajan. Onko pilvikoneissa kyse lxd- tai docker-systeemistä eli niitä voisi olla kotikoneellakin, mutta sehän ei ole päällä kuin silloin, kun itse sitä käytän eikä sen osoitekaan varmaan ole vakio.


8
Onko avoimen wifin käyttöön esimerkiksi kirjastossa tai liiketilassa liittyviä tietoturvariskejä, jos esimerkiksi lukee omaa sähköpostia tai vaikkapa kirjautuu näille sivuille omalla tunuksella, voiko joku ulkopuolinen lukea tunnuksen ja salasanan wifistä.

9
En ole mistään löytänyt tavis-tasoisia dy.fi -sivuston käyttöohjeita.

Esimerkiksi oman sivun nettiosoitteen päivittäminen pitänee tehdä kahden viikon tai viikon välein dy.fi :lle, jotta sivun osoite pysyy aktiivisena palvelussa. Nyt päivitys menee ilmeisesti perl-skriptin kautta, joka ajetaan palvelimen uudelleenkäynnistyksen yhteydessä.

Oman palvelimeni päivitysjärjestely on tehty ihan palvelinkokeilujen alussa ystävällisen asiantuntijan osaamisella, mutta en valitettavasti pysynyt hyvin nopeasti edenneiden työvaiheiden mukana. Nyt kun palvelin on jo jonkun aikaa ollut toiminnass, voisi olla järkevää opetella itsekin, miten se ja sen dy.fi-päivitys toimivat.

Tällä keskustelualustalla nm on jo ehkä vuosi - kaksi sitten kertonut, että dy.fi-päivityksen voisi tehdä jopa selaimen avulla, mutta silloin en päässyt asiassa eteen päin. Vaarana on, että pelkät kokeiluni ilman osaamista voisivat johtaa oman nettisivun katoamiseen kokonaan dy.fi-palvelusta.

Miten pitäisi toimia, että voisi lähettää oman nettisivun osoitteen ja sen päivityksen dy.fi-palveluun esimerkiksi c++:lla tai selaimella, ja miten varmistan, että lähetys on todella onnistunut?

hmm, olisiko tämä sittenkin Ohjelmointi ja palvelimet alueen aihe?

10

Tarkoitus olisi lukea socketista pieni, alle 1024 merkijono ja kokeilen tällaista lukuohjelman pätkää

Koodia: [Valitse]

  int my_read()
  {
    if((new_sock = accept(listening_sock, (struct sockaddr *)&address, (socklen_t*)&address_length)) < 0)
      {
        perror("Accept");
        exit(EXIT_FAILURE);
      }
    n_of_read_chars = read(new_sock, in_buffer, 1024 - 1); // tila loppumerkille
    in_buffer[n_of_read_chars ] = '\0';  // lisätään loppumerkki
   
    return 0; // lukeminen onnistui
  }

eli jos luettavaa tulee ja listen huomaa sen, tehdään uusi socketti, josta luetaan (toivottavasti vain korkeintaan) 1023 merkkiä. Lukemisen varattu puskuritila on 1024 ja viimeisen luetun merkin jälkeen pitäisi lisätä '\0'. 

Onko koodissa näkyvissä todennäköisiä ongelmia, mahdollistaako se esimerkiksi ylivuodon ja osaako se lukea varmasti kaiken alle 1023 pituisen tulevan viestin, kun socket on

Koodia: [Valitse]
socket( AF_INET, SOCK_STREAM, 0))




11
Jos pavelimella olevan sivun osoitteesta unohtuu sivunimi, näkyy selaimessa hakemistolistaus.

Netissä olevan ohjeen mukaan

https://www.simplified.guide/apache/disable-directory-listing

näkymän voi estää .htaccess -asetuksella

/var/www/mysite/.htaccess -tiedostossa, mutta omalla palvelimella sivu on pehmolinkattu ja erilaisessa paikassa.

Muokk.

Sivulla

https://stackoverflow.com/questions/2530372/how-do-i-disable-directory-browsing?rq=4

neuvottiin, että .thaccess -tiedoston rivillä pitää olla enter lopussa, ehkä sen puute vaikutti ensimmäisessä kokeilussa. Nyt palvelimella on myös index.html -sivu, niin toivottavasti hakemistorakennata ei saa näkyville.

Parasta tietysti olisi, jos hakemistolistauksen näkyminen olisi estetty jo oletuksena joka paikassa, miten sen saisi kätevimmin päälle. En ole vielä uskaltanut kokeilla netistä löytyviä erilaisia ehdotuksia mahdollisten sivuvaikutusten takia.




Jos samaan hakemistoon, jossa sivu sijaitsee, laittaa .htacces tiedoston ja siihen (ainoan) rivin

Koodia: [Valitse]
$ cat .htaccess
Options -Indexes
$

haekmistotiedot näkyvät silti. Missä .htaccess pitäisi olla ja pitäisikö siinä olla jotain muutakin kuin vain yksi Options -rivi.

Olisko vain pelkän index.html -sivun lisääminen sivun hakemistoon turvallinen tapa estää hakemiston näkyminen, vaikka joku sitä yrittäisi luvattomasti kaivaakin.

 

12
Ubuntu tietokoneissa / 23.10 -> 24.04 päivitys
« : 07.09.24 - klo:13.42 »

Koneessa on

Koodia: [Valitse]
lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 23.10
Release: 23.10
Codename: mantic

Sitten yritettiin

Koodia: [Valitse]
$ sudo do-release-upgrade
Etsitään uutta Ubuntu-julkaisua
Uutta julkaisua ei löytynyt.

Pitääkö olla lts-versio, jotta sen päivitys onnistuisi. Miten 23.10 -koneen päivitys pitäisi tehdä, pitääkö olla kokonaan uusi 24.04 tikulla.


13
Nettiohjeiden mukaan ! -operaattorin pitäisi kääntää totuusarvo, mutta en keksi, miksi niin ei näytä tapahtuvan tässä pienessä kokeiluohjelmassa

Koodia: [Valitse]

<?php 

if(1)
{
  echo(
"luku alkaa \n\n");
  
$qs readline("anna arvo1 arvo2 arvo3 ja arvot4: ");
  echo(
"\n\n luku loppu \n\n");
  
  
$_POST[&#39;arvo1&#39;] = explode(&#39; &#39;, $qs)[0] . &#39; &#39;;
  
$_POST[&#39;arvo2&#39;] = explode(&#39; &#39;, $qs)[1] . &#39; &#39;;
  
$_POST[&#39;arvo3&#39;] = explode(&#39; &#39;, $qs)[2] . &#39; &#39;;
  
$_POST[&#39;arvot4&#39;] = implode(&#39; &#39;, array_slice(explode(&#39; &#39;, $qs), 3));
/*
  echo( $_POST[&#39;arvo1&#39;] );
  echo( $_POST[&#39;arvo2&#39;] );
  echo("\n\n loppu \n\n");
*/
  
}  // if loppuu

if(empty($_POST["arvo1"]))
  {
    die(
"arvo1 puuttuu");
  }
 
 echo(
$_POST["arvo1"] ) ;
 echo( 
" arvon1:n pituus on " strlen(trim($_POST["arvo1"] )) . "\n"  );
  
if( !
is_int(trim($_POST["arvo1"] ))  )
  {
    die(
"\narvo1:n on oltava kokonaisluku\n ");  // <<<====== vaikka arvo on 1, tullaan tänne ????
  
}

$my_number str_replace(&#39; &#39;, &#39;&#39;, $_POST[&#39;arvo1&#39;] );    // tyhjät pois 
$my_number filter_var($my_numberFILTER_SANITIZE_STRING);
$my_number substr($my_number040); 

?>


kokeilu meni näin

Koodia: [Valitse]
php kokeilu_05.php

luku alkaa

anna arvo1 arvo2 arvo3 ja arvot4: 1 aa oo 2 3 4

 luku loppu

1  arvon1:n pituus on 1

arvo1:n on oltava kokonaisluku


Voi olla, että kyseessä on joku yksinkertainen logiikkavirhe omassa logiikassani, mutta itse sitä on vaikea huomata

Miten pitäisi testata, että syötettävä arvo on kokonaisluku php:ssä.



14
Yritin tehdä kahta luokka niin, että luokka1 käyttää luokka2:n tyyppistä muuttujaa ja luokka2 käyttää luokka1:n tyyppistä muuttujaa.

Kokeilun rakenne on tällainen

luokka1
{ fun1( luokka2 x);
}

luokka2
{ fun2 (luokka1 y);
}

Käännös ei onnistu, koska luokka1:ssä luokka2:ta ei tunnisteta. Netissä on std::forward- ja std::class -asioista ohjeita, mutta en ainakaan vielä ole keksinyt, miten niistä voisi olla apua.

Joskus muistan nähneeni directiivin forward, jonka voisi kuvitella ratkaisevan tällaisen asian, mutta ainakaan vielä hakutuloksissa sitä ei ole näkynyt.

Mikä olisi ratkaisu, on kokeiltu myös luokkien esittelyä etukäteen ja määrittelyä suoraan funktioineen.

15

Joillakin sivuilla on järjestelmävalvonnan mukaan paljon suorintintehoa vievää koodia, vaikka näkyvä toiminnallisuus on vain tekstejä ja linkkejä.

Voisiko jollain vakiona tulevalla Firefoxin työkalulla nähdä, mitä sivusto tekee taustalla, voiko se olla piilolauhintasivu tms.

Tietysti javascriptin voi aina tällaista sivua katsellessa laittaa pois päältä, mutta siinä on taas pari ylimääräistä napsua, ja sitten on vielä uteliaisuus: mitä se sivu oikein tekee :)

16
Käytössäni on vanha stereo, jossa on aux in left- ja right-paikat. Tuloherkkyys (input sensitivity) on 400mV ja impedanssi > 3 Ohmia.

Millaista äänen laatua voi odottaa, jos yhdistää puhelimen kuulokepaikasta piuhat aux in -sisääntuloihin.

Onko puhelimien kuulokelähdöissä joku standardilähtöalue niin, että 400mV suunnilleen toimii.


17
Esimerkkitapauksena voisi olla vaikka tekstisivu, jossa on 40 riviä ja jokaisen rivin maksimi- tai vaikiopituus on 80 merkkiä.

Varmaan tavallisella c:llä pitäisi tehdä kaksiulotteinen taulukko

char sivu[rivimäärä][merkkimäärä]

mutta haluaisin sivun c++ -tyylisesti eli rivit vakiopituisina stringeinä ja rivit vektoriin tai arrayhin niin, että kääntäjä ymmärtää, että mitään lisätilaa sivulle ei koskaan tarvita ja jos riviä muutetaan, se pysyy aina omassa tilassaan eli uusi rivi mahtuu vanhan rivin tilaan.

Jos vakiotilavaatimusta ei olisi, sivu olisi varmaan

std::vector<std::string> -muotoinen.

Toiveena olisi siis saada kääntäjä tekemään sellaista koodia, joka ei vaatisi mitään ylimääräistä tilaa eriputuisille stringeille tai muille varauksille.







18
Taas on tullut vastaan pieni ainakin toistaiseksi ratkaisematon pulma.

Koodia: [Valitse]

#include <vector>
#include <iostream>

int main()
{
  int ktab[10];
  ktab[4] = 44;
  for(auto i : ktab) std::cout << ktab[i] << " ";
  std::cout <<ktab[4];
return 0;
}


Ohjelma on kännetty näin
Koodia: [Valitse]
g++ -std=c++20 -pedantic koe.cpp -o koe

Käännös ja suoritus menevät hyvin, mutta tulostus on tällainen
Koodia: [Valitse]
0 0 0 0 0 0 0 0 0 0 44

Ajatuksena on, että taulukon kohdan 4 pitäisi näkyä myös for-osassa. Eikö automaattinen for toimikaan säilöjen ulkopuolella, virheilmoituksia eikä varoituksia kuitenkaan tule.

Olisiko tällainen kesäpähkinä sopiva: Etsi  virhe edellä esitetyssä päättelyssä     




19

Jos c++:ssa tehdään paljon objecteja listaan tai mappiin ja ne tuhotaan, niin milloin ja missä vaiheessa ne oikeasti vapautuvat käyttikselle eivätkä enää kuulu ohjelman muistitilaan.

Luultavasti on niin, että yksi merkkijonoobjecti listassa tai mapissa ei vapautuessaan näy käyttiksessä, mutta milloin iso määrä vapautettuja stringejä näkyisi. Millä tavalla c++ oikeasti varaa muistia ohjelmalle, ehkä jonkilaisina muistilohkoina tms?

Onnistuisiko käytännössä ohjelman muistinkäytön seuraaminen system monitorilla vai onko olemassa joku sopiva käyttiskomento ohjelman kulloinkin viemän muistimäärän seuraamiseksi.


20
Olisiko jotain tekstinkäsittelyohjelmaa, joka osaisi tehdä vaikka kaksipalstaista html-koodia. Kokeilujen mukaan palstat eivät onnistu libreofficen tekstinkäsittelyllä, muistaakseni ei kumpaankaan suuntaan.

Ehkä on joku muu tapa kirjoittaa suunnilleen oikein myös selaimessa näkyvä sivu, joku sivusto tms?

Sivuja: [1] 2 3 ... 19